Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 7-Day Trial for You or Your Team.

Learn More →

Single-pass end-to-end neural decompilation using copying mechanism

Single-pass end-to-end neural decompilation using copying mechanism Traditional decompilers utilize countless hardcoded rules written by subject matter experts, making them inflexible. Some recent systems address this using deep learning. The current consensus is that these systems have to include considerable domain knowledge and iterative heuristic components to solve parts of the decompilation problem, particularly the problem of predicting identifiers and literals. In this paper, we present a single-passend-to-end neural decompilation system that utilizes copying mechanism. The copying mechanism is able to copy the literals and (offsets of) variables directly from the assembly code, in a single step, as part of the single forward pass through the model. Additionally, we take a further step toward decompiling real-world code by addressing important programming constructs like switch statements, function definitions, and function calls. We compile a dataset of real-world programming competition code and evaluate our model on it. The method achieves a program accuracy of 73% on the hardest complexity level of our generated dataset and 51% on the real-world examples without any additional error correction (EC) techniques, which surpasses the results of previous works without EC. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Neural Computing and Applications Springer Journals

Single-pass end-to-end neural decompilation using copying mechanism

Loading next page...
 
/lp/springer-journals/single-pass-end-to-end-neural-decompilation-using-copying-mechanism-IcP7XnpTHd

References (15)

Publisher
Springer Journals
Copyright
Copyright © The Author(s), under exclusive licence to Springer-Verlag London Ltd., part of Springer Nature 2024
ISSN
0941-0643
eISSN
1433-3058
DOI
10.1007/s00521-024-10735-9
Publisher site
See Article on Publisher Site

Abstract

Traditional decompilers utilize countless hardcoded rules written by subject matter experts, making them inflexible. Some recent systems address this using deep learning. The current consensus is that these systems have to include considerable domain knowledge and iterative heuristic components to solve parts of the decompilation problem, particularly the problem of predicting identifiers and literals. In this paper, we present a single-passend-to-end neural decompilation system that utilizes copying mechanism. The copying mechanism is able to copy the literals and (offsets of) variables directly from the assembly code, in a single step, as part of the single forward pass through the model. Additionally, we take a further step toward decompiling real-world code by addressing important programming constructs like switch statements, function definitions, and function calls. We compile a dataset of real-world programming competition code and evaluate our model on it. The method achieves a program accuracy of 73% on the hardest complexity level of our generated dataset and 51% on the real-world examples without any additional error correction (EC) techniques, which surpasses the results of previous works without EC.

Journal

Neural Computing and ApplicationsSpringer Journals

Published: Mar 1, 2025

Keywords: Decompilation; Copying mechanism; Seq2seq; Single-pass; End-to-end

There are no references for this article.