English
Related papers

Related papers: Extending Source Code Pre-Trained Language Models …

200 papers

A binary's behavior is greatly influenced by how the compiler builds its source code. Although most compiler configuration details are abstracted away during compilation, recovering them is useful for reverse engineering and program…

Machine Learning · Computer Science 2023-05-09 Jason Kim , Daniel Genkin , Kevin Leach

A common tool used by security professionals for reverse-engineering binaries found in the wild is the decompiler. A decompiler attempts to reverse compilation, transforming a binary to a higher-level language such as C. High-level…

Software Engineering · Computer Science 2021-08-17 Qibin Chen , Jeremy Lacomis , Edward J. Schwartz , Claire Le Goues , Graham Neubig , Bogdan Vasilescu

While third-party libraries are extensively reused to enhance productivity during software development, they can also introduce potential security risks such as vulnerability propagation. Software composition analysis, proposed to identify…

Software Engineering · Computer Science 2024-08-27 Ling Jiang , Junwen An , Huihui Huang , Qiyi Tang , Sen Nie , Shi Wu , Yuqun Zhang

Decompilation -- recovering source code from compiled binaries -- is essential for security analysis, malware reverse engineering, and legacy software maintenance. However, existing decompilers produce code that often fails to compile or…

Software Engineering · Computer Science 2026-05-05 Yifan Zhang , Xiaohan Wang , Yueke Zhang , Yu Huang , Kevin Leach

Recovering high-level type information in binaries is a key task in reverse engineering and binary analysis. Binaries contain very little explicit type information. The structure of binary code is incredibly flexible allowing for ad-hoc…

Programming Languages · Computer Science 2024-09-04 Ian Smith

Retrieving binary code via natural language queries is a pivotal capability for downstream tasks in the software security domain, such as vulnerability detection and malware analysis. However, it is challenging to identify binary functions…

Software Engineering · Computer Science 2026-01-06 Guoqiang Chen , Lingyun Ying , Ziyang Song , Daguang Liu , Qiang Wang , Zhiqi Wang , Li Hu , Shaoyin Cheng , Weiming Zhang , Nenghai Yu

Source code summarization of a subroutine is the task of writing a short, natural language description of that subroutine. The description usually serves in documentation aimed at programmers, where even brief phrase (e.g. "compresses data…

Software Engineering · Computer Science 2021-03-23 Aakash Bansal , Sakib Haque , Collin McMillan

Assembly-to-source code translation is a critical task in reverse engineering, cybersecurity, and software maintenance, yet systematic benchmarks for evaluating large language models on this problem remain scarce. In this work, we present…

Software Engineering · Computer Science 2025-12-02 Parisa Hamedi , Hamed Jelodar , Samita Bai , Mohammad Meymani , Roozbeh Razavi-Far , Ali A. Ghorbani

Back-translation is widely known for its effectiveness in neural machine translation when there is little to no parallel data. In this approach, a source-to-target model is coupled with a target-to-source model trained in parallel. The…

Computation and Language · Computer Science 2023-02-14 Wasi Uddin Ahmad , Saikat Chakraborty , Baishakhi Ray , Kai-Wei Chang

Recent work learns contextual representations of source code by reconstructing tokens from their context. For downstream semantic understanding tasks like summarizing code in English, these representations should ideally capture program…

Machine Learning · Computer Science 2022-01-10 Paras Jain , Ajay Jain , Tianjun Zhang , Pieter Abbeel , Joseph E. Gonzalez , Ion Stoica

Source code summarization is the task of generating a high-level natural language description for a segment of programming language code. Current neural models for the task differ in their architecture and the aspects of code they consider.…

Machine Learning · Computer Science 2022-01-21 Moiz Rauf , Sebastian Padó , Michael Pradel

When source code or the original toolchain is unavailable, patching binaries is difficult because it requires editing low-level assembly code directly. As an alternative, one can decompile the binary, apply the patch at the source level,…

Cryptography and Security · Computer Science 2026-05-05 Han Dai , Soumyakant Priyadarshan , Abdullah Imran , Ruoyu Wang , Antonio Bianchi

Binary decompilation plays a vital role in various cybersecurity and software engineering tasks. Recently, end-to-end decompilation methods powered by large language models (LLMs) have garnered significant attention due to their ability to…

Software Engineering · Computer Science 2025-05-27 Peipei Liu , Jian Sun , Rongkang Sun , Li Chen , Zhaoteng Yan , Peizheng Zhang , Dapeng Sun , Dawei Wang , Xiaoling Zhang , Dan Li

Reverse engineering tools remain monolithic and imperative compared to the advancement of modern compiler architectures: analyses are tied to a single mutable representation, making them difficult to extend or refine, and forcing premature…

Programming Languages · Computer Science 2026-03-31 Chang Liu , Yihao Sun , Thomas Gilray , Kristopher Micinski

Knowledge of the input format of binary executables is important for finding bugs and vulnerabilities, such as generating data for fuzzing or manual reverse engineering. This paper presents an algorithm to recover the structure and semantic…

Cryptography and Security · Computer Science 2024-05-24 Seshagiri Prabhu Narasimha , Arun Lakhotia

Binary code summarization, while invaluable for understanding code semantics, is challenging due to its labor-intensive nature. This study delves into the potential of large language models (LLMs) for binary code comprehension. To this end,…

Cryptography and Security · Computer Science 2023-12-18 Xin Jin , Jonathan Larson , Weiwei Yang , Zhiqiang Lin

Binary malware summarization aims to automatically generate human-readable descriptions of malware behaviors from executable files, facilitating tasks like malware cracking and detection. Previous methods based on Large Language Models…

Cryptography and Security · Computer Science 2025-06-18 Haolang Lu , Hongrui Peng , Guoshun Nan , Jiaoyang Cui , Cheng Wang , Weifei Jin , Songtao Wang , Shengli Pan , Xiaofeng Tao

Repository summarization is a crucial research question in development and maintenance for software engineering. Existing repository summarization techniques primarily focus on summarizing code according to the directory tree, which is…

Software Engineering · Computer Science 2025-10-14 Yifeng Zhu , Xianlin Zhao , Xutian Li , Yanzhen Zou , Haizhuo Yuan , Yue Wang , Bing Xie

As pre-trained models automate many code intelligence tasks, a widely used paradigm is to fine-tune a model on the task dataset for each programming language. A recent study reported that multilingual fine-tuning benefits a range of tasks…

Software Engineering · Computer Science 2023-03-29 Deze Wang , Boxing Chen , Shanshan Li , Wei Luo , Shaoliang Peng , Wei Dong , Xiangke Liao

Source code summaries are important for program comprehension and maintenance. However, there are plenty of programs with missing, outdated, or mismatched summaries. Recently, deep learning techniques have been exploited to automatically…

Software Engineering · Computer Science 2022-02-14 Ensheng Shi , Yanlin Wang , Lun Du , Junjie Chen , Shi Han , Hongyu Zhang , Dongmei Zhang , Hongbin Sun