DocumentCode :
1872657
Title :
Reconstruction of instruction idioms in a retargetable decompiler
Author :
Kroustek, Jakub ; Pokorny, Florian
Author_Institution :
Fac. of Inf. Technol., Brno Univ. of Technol., Brno, Czech Republic
fYear :
2013
fDate :
8-11 Sept. 2013
Firstpage :
1519
Lastpage :
1526
Abstract :
Machine-code decompilation is a reverse-engineering discipline focused on reverse compilation. It performs an application recovery from binary executable files back into the high level language (HLL) representation. One of its critical tasks is to produce an accurate and well-readable code. However, this is a challenging task since the executable code may be produced by one of the modern compilers that use advanced optimizations. One type of such an optimization is usage of so-called instruction idioms. These idioms are used to produce faster or even smaller executable files. On the other hand, decompilation of instruction idioms without any advanced analysis produces almost unreadable HLL code that may confuse the user of a decompiler. In this paper, we present a method of instruction-idioms detection and reconstruction back into a readable form with the same meaning. This approach is adapted in an existing retargetable decompiler developed within the Lissom project. The implementation has been tested on several modern compilers and target architectures. According to our experimental results, the proposed solution is highly accurate on the RISC (Reduced Instruction Set Computer) processor families, but it should be further improved on the CISC (Complex Instruction Set Computer) architectures.
Keywords :
high level languages; optimisation; program compilers; reduced instruction set computing; reverse engineering; HLL representation; Lissom project; RISC; high level language representation; instruction idiom reconstruction; machine-code decompilation; reduced instruction set computer processor; retargetable decompiler; reverse compilation; reverse-engineering; Computer architecture; Computers; Detection algorithms; Operating systems; Optimized production technology; Registers; Lissom; bit twiddling hacks; compiler optimizations; decompiler; instruction idioms; reverse engineering;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Computer Science and Information Systems (FedCSIS), 2013 Federated Conference on
Conference_Location :
Krako??w
Type :
conf
Filename :
6644218
Link To Document :
بازگشت