Tool

Zydis

Lightweight C11 x86/x86-64 disassembler and code-generation library. Its decoder reports each instruction's operands, accessed CPU and FPU flags, ISA set and extension and branch type; the formatter prints Intel, MASM or AT&T syntax, and the encoder assembles instructions from encoder requests, which can also be derived from decoded instructions. ZydisDisasm and ZydisInfo command-line tools are included, and the official Rust and Python 3 bindings live in separate repositories.

Requirements and limitations

  • Latest release at review: v4.1.1, published 2025-02-16 with no attached files; v4.1.0 (2024-02-04) carries the zydis-amalgamated single-header and single-source archives the README describes. The README says master holds the next, unreleased version without API stability guarantees; the reviewed master commit (2026-07-27) declares 5.0.0 and is 121 commits ahead of and 59 behind the v4.1.1 tag, so this entry pins it for documentation only.
  • Build with CMake 3.10+ (the README lists Windows, macOS, Linux and the BSDs), the Meson 1.3+ build file, the maintained Visual Studio 2022 project, or the amalgamated files with any C11 compiler. A recursive clone fetches the Zycore support library from its zycore-c submodule unless a system copy is forced. The README lists Arch, Debian, Ubuntu, Homebrew, NixOS and vcpkg packages, and CMake options can disable the decoder, encoder, formatter, AVX-512 or KNC support or force minimal decoding mode.
  • The caller supplies code bytes and selects a 16-, 32- or 64-bit machine mode; ZydisDisasm reads a raw byte file. No executable-format loader is documented, so locating code in PE, ELF or firmware images needs another tool.
  • MIT license; Zycore is a separate MIT-licensed zyantific repository. The README's statements about performance, dependency-free and allocation-free operation, thread safety, testing on Windows, macOS, FreeBSD, Linux and UEFI, and use in x64dbg, Firefox and WebKit were not tested; no code was decoded or encoded.

About this entry

Type
Tool
Category
Binary analysis libraries
Relationship
Foundation tool
Targets
Binary

Sources reviewed

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Primary sources

  1. README.md GitHub · zyantific/zydis · Revision a95bb71
  2. README.md#L73-L135 GitHub · zyantific/zydis · Revision a95bb71
  3. README.md#L159-L175 GitHub · zyantific/zydis · Revision a95bb71
  4. CMakeLists.txt#L1-L80 GitHub · zyantific/zydis · Revision a95bb71
  5. meson.build GitHub · zyantific/zydis · Revision a95bb71
  6. include/Zydis/DecoderTypes.h GitHub · zyantific/zydis · Revision a95bb71
  7. include/Zydis/Encoder.h GitHub · zyantific/zydis · Revision a95bb71
  8. include/Zydis/Formatter.h GitHub · zyantific/zydis · Revision a95bb71
  9. tools/ZydisDisasm.c GitHub · zyantific/zydis · Revision a95bb71
  10. .gitmodules GitHub · zyantific/zydis · Revision a95bb71
  11. LICENSE GitHub · zyantific/zydis · Revision a95bb71
  12. https://github.com/zyantific/zydis/releases/tag/v4.1.1
  13. https://github.com/zyantific/zydis/releases/tag/v4.1.0
  14. https://github.com/zyantific/zydis/compare/v4.1.1...a95bb71013436547f689fc0b380f48edf663066e