工具
Zydis x86 反汇编与代码生成库
轻量级 C11 x86/x86-64 反汇编与代码生成库。解码器可报告每条指令的操作数、所访问的 CPU 与 FPU 标志、ISA 集与扩展以及分支类型;格式化器可输出 Intel、MASM 或 AT&T 语法,编码器则根据编码请求生成指令,请求也可由已解码的指令转换而来。仓库附带 ZydisDisasm 与 ZydisInfo 命令行工具,官方 Rust 与 Python 3 绑定位于独立仓库。
使用条件与局限
- 审阅时最新版本为 v4.1.1,发布于 2025-02-16,未附带文件;README 所述的 zydis-amalgamated 单头文件加单源文件压缩包见于 v4.1.0(2024-02-04)。README 说明 master 分支存放尚未发布的下一版本,不保证 API 稳定;所审阅的 master 提交(2026-07-27)声明版本 5.0.0,比 v4.1.1 标签多 121 个提交、少 59 个提交,因此本条目固定该提交仅用于引用文档。
- 可使用 CMake 3.10+(README 列出 Windows、macOS、Linux 和各 BSD)、Meson 1.3+ 构建文件、官方维护的 Visual Studio 2022 项目,或在任意 C11 编译器上使用合并版文件进行构建。递归克隆会从 zycore-c 子模块获取 Zycore 支持库,除非强制使用系统已安装的版本。README 列出 Arch、Debian、Ubuntu、Homebrew、NixOS 和 vcpkg 软件包;CMake 选项可关闭解码器、编码器、格式化器、AVX-512 或 KNC 支持,或强制使用最小解码模式。
- 调用方需提供代码字节,并选择 16、32 或 64 位机器模式;ZydisDisasm 读取原始字节文件。文档未描述可执行文件格式加载器,因此要在 PE、ELF 或固件镜像中定位代码需借助其他工具。
- MIT 许可证;Zycore 是 zyantific 的独立仓库,同样采用 MIT 许可证。README 中关于性能、无第三方依赖与无动态内存分配、线程安全、在 Windows、macOS、FreeBSD、Linux 和 UEFI 上测试以及被 x64dbg、Firefox 和 WebKit 采用的说法均未经测试;本次未解码或编码任何指令。
关于此条目
- 类型
- 工具
- 类别
- 二进制分析库
- 关联
- 基础工具
- 目标
- 二进制
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · zyantific/zydis · 修订 a95bb71
- README.md#L73-L135 GitHub · zyantific/zydis · 修订 a95bb71
- README.md#L159-L175 GitHub · zyantific/zydis · 修订 a95bb71
- CMakeLists.txt#L1-L80 GitHub · zyantific/zydis · 修订 a95bb71
- meson.build GitHub · zyantific/zydis · 修订 a95bb71
- include/Zydis/DecoderTypes.h GitHub · zyantific/zydis · 修订 a95bb71
- include/Zydis/Encoder.h GitHub · zyantific/zydis · 修订 a95bb71
- include/Zydis/Formatter.h GitHub · zyantific/zydis · 修订 a95bb71
- tools/ZydisDisasm.c GitHub · zyantific/zydis · 修订 a95bb71
- .gitmodules GitHub · zyantific/zydis · 修订 a95bb71
- LICENSE GitHub · zyantific/zydis · 修订 a95bb71
- https://github.com/zyantific/zydis/releases/tag/v4.1.1
- https://github.com/zyantific/zydis/releases/tag/v4.1.0
- https://github.com/zyantific/zydis/compare/v4.1.1...a95bb71013436547f689fc0b380f48edf663066e