C-ing Clearly: Enhanced Binary Code Explanations using C code
Teodor Poncu, Ioana Pintilie, Marius Dragoi, Dragos Tantaru, Florin Brad

TL;DR
This paper introduces C-ing Clearly, a synthetic data generation method that uses C code to improve large language models' understanding of assembly, leading to better binary code explanations and vulnerability detection.
Contribution
The paper presents a novel data augmentation technique leveraging C code to enhance LLM performance on low-level programming tasks.
Findings
Improved LLM performance in binary code summarization
Enhanced vulnerability detection accuracy
Consistent gains across various LLM models
Abstract
Large Language Models (LLMs) typically excel at coding tasks involving high-level programming languages, as opposed to lower-level programming languages, such as assembly. We propose a synthetic data generation method named C-ing Clearly, which leverages the corresponding C code to enhance an LLM's understanding of assembly. By fine-tuning on data generated through our method, we demonstrate improved LLM performance for binary code summarization and vulnerability detection. Our approach demonstrates consistent gains across different LLM families and model sizes.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Scientific Computing and Data Management · Software Testing and Debugging Techniques
