Re: ASM to C

From: Steve Meyer (spamtrap_at_crayne.org)
Date: 09/07/04


Date: Tue, 7 Sep 2004 02:47:38 +0000 (UTC)

In comp.lang.asm.x86, you wrote:
> Scott Moore <spamtrap@crayne.org> wrote in message news:<N5S_c.301570$eM2.191095@attbi_s51>...
>> Its known as a "decompiler". Its a myth. The idea that you can automatically
>> reverse engineer code is not reasonable. Even if you are able to recognize a
>> few basic contructs in the assembly, such as loops, there is always going
>> to be code that your recogizer does not understand.
>
> I think the big myth here is that decompilation is not possible. It
> seems this myth spreads like wildfire, dispite evidence to the
> contrary. Sure, it's true that fully automated decompilation of
> arbitrary machine-code programm is not possible (it's equivilant to
> the halting problem) -- however, this is true of many things.

<snip>

  There has been recent progress in the automated decompilation area
that builds flow graphs and uses the techniques of modern flow graph
based optiming compilers in reverse. I just heard a paper at SCOPES
conference (Software and Compilers for Embedded Systems) that describes
the algorithms for decompiling digital signal processing code.
Z80 decompilation should be much easier.

  Reference is: Johnstone, A. and Scott, E., "Suppression of Redundant
Operations in Reverse Compiled Code Using Global DataFlow Analysis",
in Schepers H. (ed.), 'Software and Compilers for Embedded Systems',
8th International Workshop, SCOPES 2004, September 2-3, 2004, Springer.
Author's email addresses are: A.Johnstone@rhul.ac.uk and E.Scott@rhul.ac.uk.

  See Morgan book for detailed flow graph compilation algorithms:
Morgan, R. 'Building an Optimizing Compiler', Digital Press (now
Elsevier), 1998.
/Steve

-- 
Steve Meyer                             Phone: (612) 371-2023
Pragmatic C Software Corp.              email: sjmeyer@pragmatic-c.com
520 Marquette Ave. So., Suite 900
Minneapolis, MN 55402


Relevant Pages

  • Re: ASM to C
    ... > Cristina Cufentes's phd thesis is regarded as many to be one of the ... > most important modern papers on decompilation theory, ... > has the best overview of what's possible with decompilation. ... based optiming compilers in reverse. ...
    (comp.lang.asm.x86)
  • Re: How many bytes per Italian character?
    ... Here is a story about somebody who writes compilers I highly admire. ... The question was how to reverse a string using only 1 free character. ... nobody is name my Hello ... interview. ...
    (microsoft.public.vc.mfc)
  • Re: ASM to C
    ... >>that builds flow graphs and uses the techniques of modern flow graph ... >>based optiming compilers in reverse. ... >>Z80 decompilation should be much easier. ... ISO 7185 Standard Pascal web site: http://www.moorecad.com/standardpascal ...
    (comp.lang.asm.x86)
  • Re: ASM to C
    ... > There has been recent progress in the automated decompilation area ... > that builds flow graphs and uses the techniques of modern flow graph ... > based optiming compilers in reverse. ... > Z80 decompilation should be much easier. ...
    (comp.lang.asm.x86)
  • Re: Why would someone use c++ compiler on a C code?
    ... Probably the reverse, C++ and its compilers are more pedantic about a ... unless you are aware of the risks. ... Ian Collins. ...
    (comp.lang.c)