Název:
Anotující disassembler pro AMD64
Překlad názvu:
An annotating disassembler for AMD64
Autoři:
Láska, Ladislav ; Mareš, Martin (vedoucí práce) ; Děcký, Martin (oponent) Typ dokumentu: Bakalářské práce
Rok:
2012
Jazyk:
cze
Abstrakt: [cze][eng] Cílem práce je vytvořit disassembler pro architekturu AMD64, který bude sloužit pro zjednodušení analýzy programů na úrovni strojového kódu. Práce popisuje formát instrukcí, binárních souborů a systémové konvence, které jsou následně využity ve vypracovaném disassembleru. Ten umí například analyzovat a vizualizovat skoky, pracovat s výchozím obsahem paměti, interpretovat volací konvence ABI, přejmenovávat a zjednodušovat výrazy, u kterých známe hodnoty a další. Nedílnou součástí je také skriptovací API pro Python, které umožňuje psát rozšiřující pluginy a přidávat funkce za hranice toho, na co myslel autor.The goal of this work is to create a disassembler for the AMD64 architecture which would simplify program analysis in machine code. The work describes low-level instruction format, object file format and system conventions, on which we base our program. Its features are for example branch analysis and visualization, the ability to work with default memory contents, interpretation of ABI calling conventions, expression renaming and simplification based on known values. Scripting API for Python is integrated, which enables the user to write custom plug-ins, and extend its abilities beyond what the author has anticipated.
Klíčová slova:
AMD64; analýza kódu; disassembler; AMD64; code analysis; disassembler