Využití informací o použitém překladači při zpětném překladu
No Thumbnail Available
Date
Authors
Rudolf, Josef
ORCID
Advisor
Referee
Mark
C
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
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.
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.
Description
Citation
RUDOLF, J. Využití informací o použitém překladači při zpětném překladu [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2014.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
prof. RNDr. Alexandr Meduna, CSc. (předseda)
doc. Ing. Zdeněk Kotásek, CSc. (místopředseda)
Ing. František Grézl, Ph.D. (člen)
Ing. Martin Hrubý, Ph.D. (člen)
RNDr. Marek Rychlý, Ph.D. (člen)
Date of acceptance
2014-06-18
Defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C. Otázky u obhajoby: Aký je postup vytvorenia novej gramatiky pre demangler? Aká je časová náročnosť tohoto vytvorenia?
Result of defence
práce byla úspěšně obhájena
Document licence
Přístup k plnému textu prostřednictvím internetu byl licenční smlouvou omezen na dobu 10 roku/let