# bddisasm x86/x64 指令解码库

> Bitdefender 开发的 x86/x64 指令解码库，以 C 编写且无外部依赖，可报告显式与隐式操作数及其访问方式、CPUID 特性标志、标志位访问和有效模式，并输出 Intel／MASM 风格的反汇编文本。精简 API 使用 64 字节的指令结构，以较少的信息换取速度；配套的 bdshemu 库在原始缓冲区中模拟基本的 x86/x64 代码，用于标记类似 shellcode 的行为，例如 NOP 滑板、读取指令指针、自修改、访问 TEB/PEB 和系统调用。命令行示例 disasmtool 可对文件或十六进制字符串进行解码或模拟。

- 类型：工具
- 目标：二进制
- 类别：二进制分析库
- 关联：基础工具
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/bitdefender/bddisasm>
- 一手来源：<https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/bddisasm/>
- 记录 JSON：<https://awesomerea.org/resources/bddisasm/record.json>
- 英文版：[English](https://awesomerea.org/resources/bddisasm/index.md)

## 使用条件与局限

- 所审阅的 master 提交即 2026-10-14 发布的 v3.1.0，该版本附带 Linux .deb 软件包以及 x86 和 x64 Windows 压缩包；README 说明 2.1.4 之后的版本可用 GitHub 制品证明进行校验。v3.1.0 移除了 Python 和 Rust 绑定，其目录中只剩说明，称绑定已不再支持、不得用于生产环境；README 还提醒 vcpkg 上的版本可能滞后。
- 可使用 CMake 3.16+ 构建，Ninja 为可选项，已在 Linux 上用 GCC 和 Clang、在 Windows 上用 MSVC 测试；Makefile 只构建静态库，Visual Studio 2019 解决方案配合 Windows SDK 10.0.18362.0 另提供 Windows 内核配置，需安装 WDK 1903。只有用 isagenerator 重新生成指令表时才需要 Python 3；使用 Make 或 MSBuild 构建时，nd_vsnprintf_s 和 nd_memset 需由集成方自行提供。
- 调用方需提供代码字节并选择 16、32 或 64 位模式，可另设厂商与特性偏好；反汇编文本只支持 Intel／MASM 风格语法。文档未描述可执行文件格式加载器，因此要在 PE、ELF 或固件镜像中定位代码需借助其他工具。README 说明 bdshemu 只支持基本指令，不模拟任何 API 调用，内存访问也仅限于 shellcode 本身及模拟栈，因此其标志反映的是类似 shellcode 的行为，而非完整的程序运行。
- CI 在 Linux、Windows 和 macOS 上构建，运行 cppcheck，并运行仓库自带的解码器与模拟器回归测试，将 disasmtool 对随附测试字节文件（多数附有 .asm 源文件）的输出与预期结果比较。README 还报告了内部模糊测试、mishegos 测试以及每条指令的速度数据。
- 采用 Apache-2.0 许可证。文档称 Bitdefender 在 Windows 和 Linux 用户态、Windows 内核态及其 Napoca 虚拟机监控器中使用该库。

## 一手来源

1. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/README.md>
2. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/README.md#L22-L176>
3. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/CHANGELOG.md>
4. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/CMakeLists.txt>
5. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/inc/bdshemu.h>
6. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/disasmtool/disasmtool.c>
7. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/tests/README.md>
8. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/.github/workflows/ci.yml>
9. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/bindings/pybddisasm/README.md>
10. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/docs/source/index.rst>
11. <https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/LICENSE>
12. <https://github.com/bitdefender/bddisasm/releases/tag/v3.1.0>

## 同分区更多条目：原生二进制

- [decompyle3 Python 3.7–3.8 字节码反编译器](https://awesomerea.org/zh/resources/decompyle3/index.md) · 工具
- [DRAKVUF 虚拟化黑盒二进制分析系统](https://awesomerea.org/zh/resources/drakvuf/index.md) · 工具
- [ViperMonkey VBA 恶意宏仿真分析引擎](https://awesomerea.org/zh/resources/vipermonkey/index.md) · 工具
- [BREAD BIOS 实模式调试器](https://awesomerea.org/zh/resources/bread-bios-debugger/index.md) · 工具
- [Mergen 反混淆 LLVM IR 提升器](https://awesomerea.org/zh/resources/mergen/index.md) · 工具
- [readpe（原名 pev）PE 文件分析工具集](https://awesomerea.org/zh/resources/readpe/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
