Slow, incompatible, buggy, unsupported CLR metadata parser (hopefully an interpreter in the future), implemented in Rust. Requires the nightly compiler.
- PE executable parser
- Some CLR metadata parsing
- Image header
#Strings
and#US
string heaps#~
header- Tagged/coded indices
- The following metadata tables:
- Module
- TypeRef
- TypeDef
- MethodDef
- MemberRef (MethodRef)
- CustomAttribute
- Assembly
- AssemblyRef
- That's pretty much it
Anatomy of a .NET assembly: PE headers
Peering Inside the PE: A Tour of the Win32 Portable Executable File Format
Anatomy of a .NET assembly: CLR metadata (series)
Open source under the MIT license.