Interprocedural Data Flow Recovery of High-Level Language Code from Assembly

Source: CiteSeer


We evaluate a CISC interprocedural data flow technique for the recovery of high-level language code from assembly code

Full-text preview

Available from:
  • Source
    • "The working set is unlimited and in many cases the algorithm does not con- verge. Past work on decompiling assembly code to high-level language is also relates to our goals [6] [7] [5]. However, that works have not done much to address the problem of recovering information about types of variables. "
    [Show abstract] [Hide abstract]
    ABSTRACT: This paper presents an algorithm for automatic type reconstruction from target assembly code compiled by a C compiler. The primitive language types are recovered by an iterative algorithm, which operates over the lattice of primitive types' properties. Layout of composite types is reconstructed by building set of accessible offsets for each composite type. The algorithm is the essential part of a tool for program decompilation being developed by the authors.
    Reverse Engineering, 2008. WCRE '08. 15th Working Conference on; 11/2008
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: Translation of assembly code to high-level language code is of importance in the maintenance of legacy code, as well as in the areas of program understanding, porting, and recovery of code.
  • [Show abstract] [Hide abstract]
    ABSTRACT: Software applications which run in a compromised environment and perform sensitive operations, such as providing a secure communication channel between two individuals, require protection in order to prevent them being run by an unauthorised adversary. This paper looks at how to build in some protection against an adversary who wishes to modify an application so that it no longer authenticates the user before running. This protection works against a casual observer, that is someone who has access only to standard debugging tools, visualisation tools, and decompilers. The tricks given in the paper do not work against an all powerful adversary. The paper treats the problem of protecting the code fragments dealing with authentication as equivalent to encrypting plaintext without revealing the secret key.
    Information Hiding, Third International Workshop, IH'99, Dresden, Germany, September 29 - October 1, 1999, Proceedings; 01/1999
Show more