iced [](https://crates.io/crates/iced-x86) [](https://www.nuget.org/packages/iced/) [](https://central.sonatype.com/artifact/io.github.icedland.iced/iced-x86/1.21.0) [](https://pypi.org/project/iced-x86/) [](https://github.com/icedland/iced/actions) [](https://codecov.io/gh/icedland/iced)

January 20, 2024 ยท View on GitHub

iced is a blazing fast and correct x86 (16/32/64-bit) instruction decoder, disassembler and assembler.

  • ๐Ÿ‘ 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
  • ๐Ÿ‘ Supports .NET, Rust, Python, JavaScript (WebAssembly)
  • ๐Ÿ‘ The formatter supports masm, nasm, gas (AT&T), Intel (XED) and there are many options to customize the output
  • ๐Ÿ‘ Blazing fast: Decodes >250 MB/s and decode+format >130 MB/s (Rust, see here)
  • ๐Ÿ‘ Small decoded instructions, only 40 bytes and the decoder doesn't allocate any memory
  • ๐Ÿ‘ 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
  • ๐Ÿ‘ License: MIT

Examples

License

MIT

Icon

Logo processor by Creative Stall from the Noun Project