Control structure analysis and recovery of embedded binaries

Weixing Ji, Yuanhong Huo, Yizhuo Wang, Yujin Gao, Feng Shi

Research output: Contribution to journalArticlepeer-review

Abstract

Existing decompilers use rule-based algorithms to transform unstructured Control flow graph (CFG) into equivalent high-level programming language constructs with "goto" statements. One problem of such approaches is that they generate a large number of "goto"s in the output code, which reduce the readability and hinder the understanding of input binaries. A global search algorithm is proposed based on structural analysis. This algorithm restructures a CFG and generates fewer number of "goto" statements than the rule-based algorithm does. We also present a Genetic algorithm (GA) for the global search approach to locate near optimal solutions for large CFGs. Evaluation results on a set of real CFGs show that the genetic algorithm-based heuristic for global search is capable of finding high-quality solutions.

Original languageEnglish
Pages (from-to)1118-1124
Number of pages7
JournalChinese Journal of Electronics
Volume26
Issue number6
DOIs
Publication statusPublished - 10 Nov 2017

Keywords

  • Control flow graph restructuring
  • Decompiling
  • Genetic algorithm (GA).
  • Structural analysis

Fingerprint

Dive into the research topics of 'Control structure analysis and recovery of embedded binaries'. Together they form a unique fingerprint.

Cite this