Original title:
Využití informací o použitém překladači při zpětném překladu
Translated title:
Utilization of Compiler Information in Decompilation
Authors:
Rudolf, Josef ; Ďurfina, Lukáš (referee) ; Křoustek, Jakub (advisor) Document type: Bachelor's theses
Year:
2014
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Tato práce se zabývá nástrojem pro zpětný překlad strojového kódu na vyšší programovací jazyk, vyvíjený v rámci projektu Lissom. Je v ní navržena metoda pro zefektivnění získání informací z binárního souboru na základě detekovaného překladače. Konkrétně se jedná o získávání informací o parametrech, návratových typech a názvech funkcí z názvů symbolů pomocí tzv. demanglingu. V rámci práce jsou zkoumány rozdíly mezi způsoby kódování těchto informací různými překladači (tzv. mangling). Popsána je implementace demangleru a na závěr provedeny testy a porovnána úspěšnost demangleru při zpracování dat, vytvořených různými překladači. Navazujícím úkolem této práce je návrh a implementace jednotné integrace nástrojů v předzpracování a přední části zpětného překladače projektu Lissom a zefektivnění předávání informací mezi nimi.
This thesis deals with the tool for decompilation of binary code into a higher level language, which is being developed as a part of the Lissom project. In this thesis, we present a method to improve efficiency of extraction of information from binary files, based on the detected compiler. Namely the extraction of parameters, return types and names of function from symbol names via the so-called demangling. As a part of this thesis, differences between mangling schemes of different compilers are compared. Afterwards, the implementation of the demangler is described and finally, demangler is tested and demangling success rate is compared for mangled names created by different compilers. The subsequent task is to propose and implement better integration of tools in preprocessing and front-end parts of the Lissom decompiler and optimize parameter distribution among them.
Keywords:
decompilation; demangler; reverse engineering; XML; demangler; reverzní inženýrství; XML; zpětný překlad
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/56424