Publication detail

Analýza a převod kódů do vyššího programovacího jazyka

KŘOUSTEK, J.

Original Title

Analýza a převod kódů do vyššího programovacího jazyka

English Title

Code Analysis and Transformation To a High-Level Language

Type

article in a collection out of WoS and Scopus

Language

Czech

Original Abstract

Práce popisuje metody a postupy používané k analýze a transformaci kódů. Obsahuje základní informace o vědním oboru reverzní inženýrství a jeho užití ve výpočetní technice i mimo ni. Hlavním cílem je vytvoření obecného zpětného překladače neboli dekompilátoru, tj. prostředku pro zpětný překlad z binární formy (případně jazyka symbolických instrukcí) do vyššího programovacího jazyka. Zmíněná činnost je silně závislá na konkrétní instrukční sadě a architektuře procesoru. Tento problém je řešen pomocí popisu sémantiky jednotlivých instrukcí jazykem navrženým pro tento účel. Výstupem je program napsaný ve vyšším programovacím jazyku, funkčně ekvivalentní vstupu. Program je tedy schopen pracovat s jakoukoliv instrukční sadou a kód v ní napsaný pak převést do zvoleného vyššího programovacího jazyku. Obecný dekompilátor je zcela nový pojem a pro jeho vytvoření byly autorem navrženy doposud nepublikované techniky z oblastí teorie překladačů a optimalizací.

English abstract

Primary objective of this thesis is a construction of a generic decompiler, i.e. tool that can recompile from any binary form to a chosen high level language. Output must be function-ally equivalent to the input. Process of decompilation is highly dependent on the processor architecture. This problem is solved with description of semantic of each instruction by a special language designed for this use. This proposal is implemented in practice as a part of project Lissom. Generic decompiler is completely new idea. The thesis contains entirely new techniques from theory of compilers and optimizations made by the author.

Keywords

Reverzní inženýrství, zpětný překlad, překladač, dekompilátor, disassembler, assembler, Lissom, ISAC, LLVM IR

Key words in English

Reverse engineering, recompilation, compiler, decompiler, disassembler, assembler, Lissom, ISAC, LLVM IR

Authors

KŘOUSTEK, J.

RIV year

2009

Released

23. 4. 2009

Publisher

Vysoké učení technické v Brně

Location

Brno

ISBN

978-80-214-3868-2

Book

Proceedings of the 15th Conference STUDENT EEICT 2009

Pages from

196

Pages to

198

Pages count

3

BibTex

@inproceedings{BUT32565,
  author="Jakub {Křoustek}",
  title="Analýza a převod kódů do vyššího programovacího jazyka",
  booktitle="Proceedings of the 15th Conference STUDENT EEICT 2009",
  year="2009",
  pages="196--198",
  publisher="Vysoké učení technické v Brně",
  address="Brno",
  isbn="978-80-214-3868-2"
}