• DocumentCode
    467065
  • Title

    Structuring 2-way Branches in Binary Executables

  • Author

    Wei, Tao ; Mao, Jian ; Zou, Wei ; Chen, Yu

  • Author_Institution
    Peking Univ., Beijing
  • Volume
    1
  • fYear
    2007
  • fDate
    24-27 July 2007
  • Firstpage
    115
  • Lastpage
    118
  • Abstract
    One of the major challenges of control flow analysis in decompilation is to structure 2-way branches into conditionals, loop conditionals and switches. In this paper, we propose a graph-based method to formally describe structures of 2-way branches via the introduction of concepts called "compound branch subgraph" and "cascade branch subgraph". We then present novel structuring algorithms based on such concepts. Compared with previous works, our algorithms are deterministic rather than heuristic, and they do not use complicated data structures such as Interval/DSG. We show that in theory our algorithm is more accurate and efficient than typical current approaches; furthermore, we have applied the algorithm to several real-world binary executables, and experimental results validate such theoretical analysis.
  • Keywords
    graph theory; program compilers; program control structures; binary executable; cascade branch subgraph; compound branch subgraph; control flow analysis; program decompilation; Algorithm design and analysis; Computer science; Data structures; Flow graphs; Graph theory; Heuristic algorithms; Level control; Research and development; Scattering; Switches;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Software and Applications Conference, 2007. COMPSAC 2007. 31st Annual International
  • Conference_Location
    Beijing
  • ISSN
    0730-3157
  • Print_ISBN
    0-7695-2870-8
  • Type

    conf

  • DOI
    10.1109/COMPSAC.2007.203
  • Filename
    4290993