REVIEW 6 cited by
Refining Decompiled C Code with Large Language Models
Not yet reviewed by Pith; the record is open.
This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.
SPECIMEN: schema-true, not a live event
T0 review · schema-true
One-sentence machine reading of the paper's core claim.
pith:XXXXXXXX · record.json · timestamp
read the original abstract
A C decompiler converts an executable into source code. The recovered C source code, once re-compiled, is expected to produce an executable with the same functionality as the original executable. With over twenty years of development, C decompilers have been widely used in production to support reverse engineering applications. Despite the prosperous development of C decompilers, it is widely acknowledged that decompiler outputs are mainly used for human consumption, and are not suitable for automatic recompilation. Often, a substantial amount of manual effort is required to fix the decompiler outputs before they can be recompiled and executed properly. This paper is motived by the recent success of large language models (LLMs) in comprehending dense corpus of natural language. To alleviate the tedious, costly and often error-prone manual effort in fixing decompiler outputs, we investigate the feasibility of using LLMs to augment decompiler outputs, thus delivering recompilable decompilation. Note that different from previous efforts that focus on augmenting decompiler outputs with higher readability (e.g., recovering type/variable names), we focus on augmenting decompiler outputs with recompilability, meaning to generate code that can be recompiled into an executable with the same functionality as the original executable. We conduct a pilot study to characterize the obstacles in recompiling the outputs of the de facto commercial C decompiler -- IDA-Pro. We then propose a two-step, hybrid approach to augmenting decompiler outputs with LLMs. We evaluate our approach on a set of popular C test cases, and show that our approach can deliver a high recompilation success rate to over 75% with moderate effort, whereas none of the IDA-Pro's original outputs can be recompiled. We conclude with a discussion on the limitations of our approach and promising future research directions.
Forward citations
Cited by 6 Pith papers
-
Evaluating Fine-Tuning and Metrics for Neural Decompilation of Dart AOT Binaries
Fine-tuning small LLMs for Dart decompilation yields no functional improvement and surface metrics can diverge from correctness.
-
CoDe-R: Refining Decompiler Output with LLMs via Rationale Guidance and Adaptive Inference
Rationale-guided fine-tuning plus dual-path adaptive inference lifts a 1.3B decompiler refiner to 50% average re-executability, a new lightweight SOTA on HumanEval-Decompile.
-
D-LiFT: Improving LLM-based Decompiler Backend via Code Quality-driven Fine-tuning
D-LIFT uses a composite quality score, D-Score, as a reinforcement-learning reward to fine-tune LLMs that rewrite decompiled code, claiming large gains in readability without losing accuracy.
-
Large Processor Chip Model
The paper proposes a three-level LLM-based framework for end-to-end computer architecture design, with a claimed 3DGS case study whose quantitative results are not fully supported.
-
Reasoning as a Resource: Optimizing Fast and Slow Thinking in Code Generation Models
Reasoning depth in code LLMs should be managed as a controllable resource across synthetic data generation, benchmarking, and deployment, rather than left implicit.
-
Position Paper: Programming Language Techniques for Bridging LLM Code Generation Semantic Gaps
A position paper arguing that PL techniques, especially formal verification and structure-aware representations, should be deeply integrated into LLM code generation.
Discussion (0). Sign in to comment.