# DecLLM：借助大语言模型实现可重新编译的反编译，支持以程序化方式使用反编译代码

> DecLLM 将无法重新编译的反编译伪代码修复为可编译、可运行的 C 代码，使 CodeQL 等源码级工具能够用于二进制分析。其迭代流程把编译器错误反馈给现成的大语言模型，并回退非法输出和大段删除；随后利用重建程序与预期不符的测试输出及 AddressSanitizer 报告修复行为，最后对原始与重建的可执行文件进行模糊测试以发现行为差异。作者报告，使用 GPT-3.5 与 GPT-4 时，在 300 个 Code Contest 程序上的成功率分别为 74% 和 78.3%；在 Coreutils 与 CGC 二进制上，61.9%–70.9% 可重新编译，完全功能正常的占 48.1%–59.0%。

- 作者：Wai Kin Wong; Daoyuan Wu; Huaijin Wang; Zongjie Li; Zhibo Liu; Shuai Wang; Qiyi Tang; Sen Nie; Shi Wu
- 原标题：DecLLM: LLM-Augmented Recompilable Decompilation for Enabling Programmatic Use of Decompiled Code
- 发表载体：Proceedings of the ACM on Software Engineering (ISSTA 2025)
- 发表状态：期刊论文
- 出版／提交日期：2025 年 6 月 22 日
- 日期依据：ACM 文章页面与出版方提交的 Crossref 元数据均将出版日期列为 2025-06-22；本条目不以 ISSTA 报告日期替代该期刊出版日期。
- DOI：10.1145/3728958
- 来源复核于：2026-10-18
- 收录于：2026-10-19
- 原始论文：<https://dl.acm.org/doi/10.1145/3728958>
- PDF：<https://dl.acm.org/doi/pdf/10.1145/3728958>
- 项目：<https://sites.google.com/view/decllm>
- BibTeX：<https://awesomerea.org/papers/citations/paper-decllm.bib>
- 目录页面：<https://awesomerea.org/zh/papers/paper-decllm/>
- 记录 JSON：<https://awesomerea.org/papers/paper-decllm/record.json>
- 英文版：[English](https://awesomerea.org/papers/paper-decllm/index.md)

## 研究范围与局限

在 Code Contest 上，成功的含义是修复后的代码能够编译，且重建的可执行文件通过所提供的测试用例，并以 AFL++ 模糊测试作额外检查；Coreutils 与 CGC 的总体比率还计入功能异常或崩溃的重建二进制。这确立的是可编译性和基于测试的一致性，而非语义等价性，作者亦指出后者不可判定。结果依赖 IDA Pro 8.3 的输出（另以 Ghidra 10.4 重复一次实验），以及通过 API 提供、上下文上限为 4,096 个词元的 gpt-3.5-turbo-0613 与 gpt-4-0314 快照，因此所选程序须控制在该上限的一半以内。300 个 Code Contest 程序平均 112.9 行；Coreutils 9.5 与 CGC 二进制编译时未剥离符号，并逐函数修复，这种方式无法推断未定义的全局变量。约 30% 的困难案例仍然失败，主要原因包括反编译器混淆地址与数据、缓冲区大小推断错误、包含 STL 代码的过长输出，以及大语言模型以类型强制转换走捷径；测试未覆盖的行为偏差仍无法发现。对 Juliet 样本进行 CodeQL 分析时需要人工调整查询。

## 与本合集的关联

补充以可重新编译为目标的反编译输出修复方法，与以可读性为目标的大语言模型改写及神经反编译研究互补。

## 发表与复核说明

ACM 页面与 Crossref 的标题、九位作者顺序、DOI、第 2 卷 ISSTA 期、页码 1841–1864 及 2025-06-22 出版日期一致（2025-02-27 收稿，2025-03-31 接收）；文章编号 ISSTA081 由 ACM 页面提供，Crossref 未列出。ACM 将文章标为开放获取，采用 CC BY-ND 4.0 许可。未发现 DecLLM 的 arXiv 版本。相关预印本 arXiv:2310.06530《Refining Decompiled C Code with Large Language Models》（DecGPT；v1 为 2023-10-10，v2 为 2023-11-28）与本文共有九位作者中的八位（未列 Daoyuan Wu），研究目标同为可重新编译，但标题、作者列表与报告结果不同。数据可用性章节仅指向 Google Sites 产物页面。该页面介绍 DecRule 的预处理规则、错误示例、动态修复案例分析及 CWE 列表，未发现源码仓库、提示词包或数据集下载。原型针对商业反编译器 IDA Pro 的输出，所用 OpenAI 模型快照可能已停止提供。

## 一手来源

1. <https://dl.acm.org/doi/10.1145/3728958>
2. <https://api.crossref.org/works/10.1145/3728958>
3. <https://dl.acm.org/doi/pdf/10.1145/3728958>
4. <https://sites.google.com/view/decllm>
5. <https://sites.google.com/view/decllm/decrule>
6. <https://sites.google.com/view/decllm/decrule-errors>
7. <https://sites.google.com/view/decllm/dynamic-repairing>
8. <https://sites.google.com/view/decllm/cwe>
9. <https://arxiv.org/abs/2310.06530>

## 关于此条目

已依据论文及一手来源复核。请通过原始论文或 BibTeX 引用原作者。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
