Publication Details
Generic Plugin-Based Convertor of Executable File Formats and Its Usage in Retargetable Decompilation
object file conversion, object file formats, decompilation, Lissom, LOFF, ELF, PE, E32Image, Mach-O, DEX, BFD
The objective of a decompiler (i.e. reverse compiler) is to translate a binary file into a high level language (HLL) representation. One of the preliminary tasks of retargetable decompilation is to handle different platform-specific object file formats on its input. This paper presents a concept of a generic object file format converter, which supports conversions between several commonly used object file formats (e.g. ELF, PE) and the LOFF format, which is used in the Lissom project. The basic information about algorithms manipulating these formats is described. The conversion is done by mapping all critical information from one format structure to another. The conversion from the common formats into the LOFF format is important for the Lissom retargetable decompiler because the LOFF format is used for its internal code representation. However, we also briefly describe utilization of an opposite conversion in the Lissom project. The result is a plugin-based application capable of creating valid executable files in all the mentioned formats. Experimental results can be found at the end of the paper.
@INPROCEEDINGS{FITPUB9786, author = "Jakub K\v{r}oustek and Peter Matula and Luk\'{a}\v{s} \v{D}urfina", title = "Generic Plugin-Based Convertor of Executable File Formats and Its Usage in Retargetable Decompilation", pages = "127--130", booktitle = "Proceedings of the 6th International Scientific and Technical Conference (CSIT'2011)", year = 2011, location = "Lviv, UA", publisher = "Ministry of Education, Science, Youth and Sports of Ukraine, Lviv Polytechnic National University, Institute of Computer Science and Information Technologies", ISBN = "978-966-2191-04-2", language = "english", url = "https://www.fit.vut.cz/research/publication/9786" }