Iced
iced is a blazing fast and correct x86 (16/32/64-bit) instruction decoder, disassembler and assembler written in C#. - 👍 Supports all Intel and AMD instructions - 👍 Correct: All instructions are tested and iced has been tested against other disassemblers/assemblers (xed, gas, objdump, masm, dumpbin, nasm, ndisasm) and fuzzed - 👍 100% C# code - 👍 The formatter supports masm, nasm, gas (AT&T), Intel (XED) and there are many options to customize the output - 👍 The decoder is 2x+ faster than other similar libraries and doesn't allocate any memory - 👍 Small decoded instructions, only 32 bytes - 👍 Create instructions with code assembler, eg. `asm.mov(eax, edx)` - 👍 The encoder can be used to re-encode decoded instructions at any address - 👍 API to get instruction info, eg. read/written registers, memory and rflags bits; CPUID feature flag, control flow info, etc - 👍 Supports `.NET Standard 2.0/2.1+` and `.NET Framework 4.5+` - 👍 License: MIT
Install
dotnet add package Iced --version 1.15.0
Install-Package Iced -Version 1.15.0
<PackageReference Include="Iced" Version="1.15.0" />
Frameworks
Dependencies
No declared dependencies.
Adoption guide
Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.
Compatibility metadata lists 3 target frameworks; confirm the exact target used by your application.
How to read this guidance
Sources: published NuGet v3 registry metadata and explicit NuBrowse editorial guides. Refresh: package metadata is refreshed from NuGet when the page loads. Limit: this is not a security, legal or compatibility guarantee; validate the selected version in your project.
Useful next steps
Move from package metadata to a concrete selection or review workflow.