Tool
AsmResolver
C# library for reading, modifying and rebuilding Portable Executable files, covering both native Windows images and images with .NET metadata. It offers three levels of abstraction: raw headers and sections (PEFile); interpreted data directories such as imports, exports, TLS, exceptions, debug data and Win32 resources (PEImage); and a System.Reflection-like model of .NET assemblies and modules with managed, native and dynamic method bodies. It also extracts files from AppHost/single-file bundles, supports ReadyToRun images and reads PDB and Portable PDB symbols without DIA, and upstream designs it to stay robust against malformed or obfuscated binaries.
Requirements and limitations
- Release at review: v6.0.1, published 2026-07-25 on GitHub and NuGet; the reviewed master commit is one contributing-guide commit ahead. Nightly builds come from a separate NuGet feed. Version 6.0 changed the API, and upstream publishes a guide for migrating from v5.x.
- Distributed as layered NuGet packages: AsmResolver, AsmResolver.PE.File, AsmResolver.PE, AsmResolver.PE.Win32Resources, AsmResolver.DotNet, AsmResolver.DotNet.Dynamic and AsmResolver.Symbols.Pdb. The libraries target .NET Framework 3.5, 4.6.2 and 4.7.2, .NET Standard 2.0 and 2.1, .NET Core 3.1 and .NET 6, 8, 9 and 10, and the README lists Windows, Unix-like systems, Mono and NixOS. Building uses the .NET SDK; the full test suite needs additional .NET runtimes, plus Mono and Wine on macOS and Linux.
- It is a library without a GUI or a C# decompiler: users write .NET code against its API and supply their own PE files or .NET assemblies. Modified or rebuilt images still have to be checked by running them.
- MIT license. The test resources are purpose-built sample binaries. Robustness against malformed or obfuscated binaries is an upstream design goal, not a guarantee for any particular protector. No binaries were processed for this entry.
About this entry
- Type
- Tool
- Category
- .NET tools
- Relationship
- Foundation tool
- Targets
- App · Binary
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · Washi1337/AsmResolver · Revision 0715000
- docs/guides/overview.md GitHub · Washi1337/AsmResolver · Revision 0715000
- docs/guides/dotnet/bundles.md GitHub · Washi1337/AsmResolver · Revision 0715000
- docs/guides/migration-v5-v6.md GitHub · Washi1337/AsmResolver · Revision 0715000
- src/Directory.Build.props GitHub · Washi1337/AsmResolver · Revision 0715000
- Directory.Build.props GitHub · Washi1337/AsmResolver · Revision 0715000
- LICENSE.md GitHub · Washi1337/AsmResolver · Revision 0715000
- https://github.com/Washi1337/AsmResolver/releases/tag/v6.0.1
- https://www.nuget.org/packages/AsmResolver/6.0.1