Access the full text.
Sign up today, get DeepDyve free for 14 days.
Zhibo Liu, Shuai Wang (2020)
How far we have come: testing decompilation correctness of C decompilersProceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis
Iman Hosseini, Brendan Dolan-Gavitt (2022)
Beyond the C: Retargetable Decompilation using Neural Machine TranslationArXiv, abs/2212.08950
J Zhang (2015)
Deep Neural Networks in Machine Translation: An OverviewIEEE Intell Syst, 30
Ruigang Liang, Ying Cao, Peiwei Hu, Kai Chen (2021)
Neutron: an attention-based neural decompilerCybersecurity, 4
Y Wang (2023)
Comput Secur, 125
Eric Schulte, Jason Ruchti, M. Noonan, David Ciarletta, Alexey Loginov (2018)
Evolving Exact Decompilation
Gengbiao Chen, Zhengwei Qi, Shiqiu Huang, Kangqi Ni, Y. Zheng, Walter Binder, Haibing Guan (2010)
A Refined Decompiler to Generate C Code with High Readability2010 17th Working Conference on Reverse Engineering
C. Cifuentes, K. Gough (1995)
Decompilation of binary programsSoftware: Practice and Experience, 25
Ying Cao, Ruigang Liang, Kai Chen, Peiwei Hu (2022)
Boosting Neural Networks to Decompile Optimized BinariesProceedings of the 38th Annual Computer Security Applications Conference
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.
Neural Computing and Applications – Springer Journals
Published: Mar 1, 2025
Keywords: Decompilation; Copying mechanism; Seq2seq; Single-pass; End-to-end
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.