dnlib is a library that can read, write and create dotNET assemblies and modules.
Features- Supports reading, writing and creating .NET assemblies/modules targeting any .NET framework (eg. desktop, Silverlight, Windows Phone, etc).
- Supports reading and writing mixed mode assemblies (eg. C++/CLI).
- Can read and write non-ECMA compatible .NET assemblies that MS' CLR can load and execute.
- Very stable and can handle obfuscated assemblies that crash other similar libraries.
- High and low level access to the metadata.
- Output size of non-obfuscated assemblies is usually smaller than the original assembly.
- Metadata tokens and heaps can be preserved when saving an assembly.
- Assembly reader has hooks for decrypting methods and strings.
- Assembly writer has hooks for various writer events.
- Easy to port code from Mono.Cecil to dnlib.
- Add/delete Win32 resource blobs.
- Saved assemblies can be strong name signed and enhanced strong name signed.
Source:https://bitbucket.org/0xd4d/dnlibExceptional!!!