NuGet Package x86/x64 instruction decoder, encoder, disassembler

High performance x86 (16/32/64-bit) instruction decoder, encoder and formatter.
It can be used for static analysis of x86/x64 binaries, to rewrite code (eg.

remove garbage instructions), to relocate code or as a disassembler.

- Supports all Intel and AMD instructions
- The decoder doesn't allocate any memory and is 2x-5x+ faster than other similar libraries written in C or C#
- Small decoded instructions, only 32 bytes
- The formatter supports masm, nasm and gas (AT&T) and there are many options to customize the output
- The encoder can be used to re-encode decoded instructions at any address
- The block encoder encodes a list of instructions and optimizes branches to short, near or 'long' (64-bit: 1 or more instructions)
- API to get instruction info, eg. read/written registers, memory and rflags bits; CPUID feature flag, flow control info, etc
- All instructions are tested (decode, encode, format, instruction info)

License: MIT.


Version: 1.3.0
Author(s): 0xd4d
Last Update: Friday, May 31, 2019
.NET Fiddle: Create the first Fiddle
Project Url:
NuGet Url:

Install-Package Iced
dotnet add package Iced
paket add Iced
Iced Download (Unzip the "nupkg" after downloading)

.NETFramework 3.5
  • No dependencies.
.NETFramework 4.5
  • No dependencies.
.NETStandard 2.0
  • No dependencies.
1 package depend on this package.