Detail publikace

Advanced Preprocessing of Binary Executable Files and its Usage in Retargetable Decompilation

Originální název

Advanced Preprocessing of Binary Executable Files and its Usage in Retargetable Decompilation

Anglický název

Advanced Preprocessing of Binary Executable Files and its Usage in Retargetable Decompilation

Jazyk

en

Originální abstrakt

Retargetable machine-code decompilation is used for a platform-independent transformation of executable files into a high level language (HLL) representation (e.g., C language). It is a complex task that must deal with a lot of different platform-specific features and missing information. Accurate preprocessing of input executable files is one of the necessary prerequisites in order to achieve the best results. Furthermore, we can use gathered information to achieve higher quality of decompilation. This paper presents an extended version of our previous system for an accurate code preprocessing. It is implemented as a generic preprocessing system that consists of a precise compiler and packer detector, plugin-based unpacker, converter into an internal platform-independent file format, and debugging information gathering library. We also describe an utilization of the collected information in a problem of automatic data-type reconstruction. This system has been adopted and tested in an existing retargetable decompiler. According to our experimental results, the proposed retargetable solution is fully competitive with existing platform-dependent tools.

Anglický abstrakt

Retargetable machine-code decompilation is used for a platform-independent transformation of executable files into a high level language (HLL) representation (e.g., C language). It is a complex task that must deal with a lot of different platform-specific features and missing information. Accurate preprocessing of input executable files is one of the necessary prerequisites in order to achieve the best results. Furthermore, we can use gathered information to achieve higher quality of decompilation. This paper presents an extended version of our previous system for an accurate code preprocessing. It is implemented as a generic preprocessing system that consists of a precise compiler and packer detector, plugin-based unpacker, converter into an internal platform-independent file format, and debugging information gathering library. We also describe an utilization of the collected information in a problem of automatic data-type reconstruction. This system has been adopted and tested in an existing retargetable decompiler. According to our experimental results, the proposed retargetable solution is fully competitive with existing platform-dependent tools.

BibTex


@article{BUT111534,
  author="Jakub {Křoustek} and Peter {Matula} and Dušan {Kolář} and Milan {Zavoral}",
  title="Advanced Preprocessing of Binary Executable Files and its Usage in Retargetable Decompilation",
  annote="Retargetable machine-code decompilation is used for a platform-independent
transformation of executable files into a high level language (HLL)
representation (e.g., C language). It is a complex task that must deal with a lot
of different platform-specific features and missing information. Accurate
preprocessing of input executable files is one of the necessary prerequisites in
order to achieve the best results. Furthermore, we can use gathered information
to achieve higher quality of decompilation. This paper presents an extended
version of our previous system for an accurate code preprocessing. It is
implemented as a generic preprocessing system that consists of a precise compiler
and packer detector, plugin-based unpacker, converter into an internal
platform-independent file format, and debugging information gathering library. We
also describe an utilization of the collected information in a problem of
automatic data-type reconstruction. This system has been adopted and tested in an
existing retargetable decompiler. According to our experimental results, the
proposed retargetable solution is fully competitive with existing
platform-dependent tools.",
  address="NEUVEDEN",
  booktitle="Internation Journal on Advances in Software (IJAS)",
  chapter="111534",
  edition="NEUVEDEN",
  howpublished="online",
  institution="NEUVEDEN",
  number="1",
  volume="7",
  year="2014",
  month="june",
  pages="112--122",
  publisher="NEUVEDEN",
  type="journal article - other"
}