*banner
 

Analysis of Low-Level Code Using Cooperating Decompilers
Bor-Yuh Evan Chang, Matthew Harren, George Necula

Citation
Bor-Yuh Evan Chang, Matthew Harren, George Necula. "Analysis of Low-Level Code Using Cooperating Decompilers". The 13th International Static Analysis Symposium (SAS), Kwangkeun Yi (ed.), 318-335, September, 2006.

Abstract
Analysis or verification of low-level code is useful for minimizing the disconnect between what is verified and what is actually executed and is necessary when source code is unavailable or is, say, intermingled with inline assembly. We present a modular framework for building pipelines of cooperating decompilers that gradually lift the level of the language to something appropriate for source-level tools. Each decompilation stage contains an abstract interpreter that encapsulates its findings about the program by translating the program into a higherlevel intermediate language. We provide evidence for the modularity of this framework through the implementation of multiple decompilation pipelines for both x86 and MIPS assembly produced by gcc, gcj, and coolc (a compiler for a pedagogical Java-like language) that share several low-level components. Finally, we discuss our experimental results that apply the BLAST model checker for C and the Cqual analyzer to decompiled assembly.

Electronic downloads

Citation formats  
  • HTML
    Bor-Yuh Evan Chang, Matthew Harren, George Necula. <a
    href="http://chess.eecs.berkeley.edu/pubs/43.html"
    >Analysis of Low-Level Code Using Cooperating
    Decompilers</a>,  The 13th International Static
    Analysis Symposium (SAS), Kwangkeun Yi (ed.), 318-335,
    September, 2006.
  • Plain text
    Bor-Yuh Evan Chang, Matthew Harren, George Necula.
    "Analysis of Low-Level Code Using Cooperating
    Decompilers".  The 13th International Static Analysis
    Symposium (SAS), Kwangkeun Yi (ed.), 318-335, September,
    2006.
  • BibTeX
    @inproceedings{ChangHarrenNecula06_AnalysisOfLowLevelCodeUsingCooperatingDecompilers,
        author = {Bor-Yuh Evan Chang and Matthew Harren and George
                  Necula},
        title = {Analysis of Low-Level Code Using Cooperating
                  Decompilers},
        booktitle = { The 13th International Static Analysis Symposium
                  (SAS)},
        editor = {Kwangkeun Yi},
        pages = {318-335},
        month = {September},
        year = {2006},
        abstract = {Analysis or verification of low-level code is
                  useful for minimizing the disconnect between what
                  is verified and what is actually executed and is
                  necessary when source code is unavailable or is,
                  say, intermingled with inline assembly. We present
                  a modular framework for building pipelines of
                  cooperating decompilers that gradually lift the
                  level of the language to something appropriate for
                  source-level tools. Each decompilation stage
                  contains an abstract interpreter that encapsulates
                  its findings about the program by translating the
                  program into a higherlevel intermediate language.
                  We provide evidence for the modularity of this
                  framework through the implementation of multiple
                  decompilation pipelines for both x86 and MIPS
                  assembly produced by gcc, gcj, and coolc (a
                  compiler for a pedagogical Java-like language)
                  that share several low-level components. Finally,
                  we discuss our experimental results that apply the
                  BLAST model checker for C and the Cqual analyzer
                  to decompiled assembly.},
        URL = {http://chess.eecs.berkeley.edu/pubs/43.html}
    }
    

Posted by Matthew Harren on 3 May 2006.
Groups: chess
For additional information, see the Publications FAQ or contact webmaster at chess eecs berkeley edu.

Notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright.

©2002-2018 Chess