Slashdot Mirror


Famous Last Words: You can't decompile a C++ program

The Great Jack Schitt writes "I've always heard that you couldn't decompile a program written with C++. This article describes how to do it. It's a bit lengthy and it doesn't seem like the author usually writes in English, but it might just work (haven't tried it, but will when I have time)."

11 of 479 comments (clear)

  1. Oop by Suffering+Bastard · · Score: 5, Funny

    it doesn't seem like the author usually writes in English

    Surely he now understands the English infinitive "to be Slashdotted".

    --
    "Molest me not with this pocket calculator stuff."
    - Deep Thought
  2. Re:You can't by Morologous · · Score: 5, Funny

    Like turning hamburgers into cows...

    I'm going to use that line.
  3. Re:You can't by NewbieProgrammerMan · · Score: 5, Funny

    Heh. You're assuming that you're attempting to decompile something that had human-understandable source to start with. :)

    --
    [b.belong('us') for b in bases if b.owner() == 'you']
  4. let's get back to basics by 1nv4d3r · · Score: 5, Funny

    Hell, I'd be happy if the people working for me could consistently compile their c/c++. I need a new job...

  5. Re:You can't by cperciva · · Score: 5, Funny

    We're talking about C++ here, not perl.

    Compiled C++ code can't be decompiled into anything approximating the readability of the original; compiled perl code can.

  6. You're right, that is nonsense. by Anonymous Coward · · Score: 5, Funny

    I damn well know computers. I have been working with them since 1904, when the Black Man made the first computer out of a peanut. I now work for Cray research making 18 figures.

    I can scratch a superscalar CPU out of silicon with a pocket knife. I even have friends who can write major programs in binary code (yes, just 1s and 0s)... even though writing a simple "hello world" program can ammount to 92,752 bits. I fail to realize that this ability does not a good computer scientist make. Things like intelligent design and research make a CS good.

    The parent post is fluff. It's stupid, the man is flamboyant and exagerating. He clearly has no real education of computer engineering and does not recognize that any executable code can be reverse-engineered or decompiled. Especially since every langage (save interpreted languages like Java) are compiled to machine code -- specific, unambiguous, structured code. "Decompiling" this is only really a matter of translating it into your langauge of choice.

    So, Mr. Proud American, please get off your imaginary high horse. You're not fooling anyone.

  7. Anyone want to decompile SCO? by pchown · · Score: 4, Funny
    You might decompile one file and find a comment like this at the top:

    * This program is free software; you can redistribute it and/or
    * modify it under the terms of the GNU General Public License
    * as published by the Free Software Foundation; either version
    * 2 of the License, or (at your option) any later version.
    ;-)
  8. I couldn't help it by Fnkmaster · · Score: 4, Funny
    Neo: Do you always look at it in binary?


    Cypher: Well you have to. The compilers work for the construct program. But there's way too much information to decode the Matrix. You get used to it. I...I don't even see the code. All I see is an array, function pointer, integer. Hey, you uh... want a drink?


    Neo: Sure.


    Cypher: You know, I know what you're thinking, because right now I'm thinking the same thing. Actually, I've been thinking it ever since I got here. Why, oh why didn't I sell my VA Linux stock?... Good shit, huh? Cowboy Neal makes it. It's good for two things, degreasing Perl code and killing brain cells.

  9. Re:You can't by Paradise+Pete · · Score: 5, Funny
    I'd prefer... Like turning shit backing into pizza.

    Clearly you haven't tried Domino's.

  10. Re:You can't by Waffle+Iron · · Score: 4, Funny
    Like turning shit backing into pizza

    Here's how:

    Flush shit down toilet -> let shit mellow at sewage plant -> strain shit residue out of bottom of sewage vat -> haul to field -> spread on grass -> grass grows -> cow eats grass -> pull cow's udder, direct milk into bucket -> ferment milk to cheese -> shred cheese -> spread on dough -> Pizza!

  11. Re:sure you can go from asm - c++ by rsheridan6 · · Score: 4, Funny

    My girlfriend just read that over my shoulder and said "Is that a poem?"

    --
    Don't drop the soap, Tommy!