Archived

This topic is now archived and is closed to further replies.

gambit

uncompilers ?

Recommended Posts

gambit    122
A friend of mine mentioned the existence of Uncompilers ..??? I dont know that much about C++ ...so I''ll ask u guyz (the experts) is there such a thing as a Uncompiler ?

Share this post


Link to post
Share on other sites
Nypyren    12074
They''re usually called disassemblers...

The major obstacle that you''ll run into is the complete lack of variable names.

And you won''t get the original source no matter how hard you try.

But it''s technically possible to write a program that takes the assembly code inside of an EXE and writes C++ that represents the same thing.

Share this post


Link to post
Share on other sites
gambit    122
ty Nypyren I''ll look into disassemblers...
I have a prog called winhex or something like that which
dissassembles an exe into hex ..but its very confusing at this stage....ty all u guyz !

Share this post


Link to post
Share on other sites
VizOne    598
In fact, the resulting "source" will be *very* confusing, as function and class names are ommited, too, of course. For any larger project I guess it is easier to rewrite the programm than trying to reverse-engineer it (as opposed to .net programs which carry a lot of meta data with them that allows disassambling, s.a. Anakrino)

Not to mention that reverse engineering is *illegal* for practically any program that you did not write.

- VizOne

Share this post


Link to post
Share on other sites
Dobbs    164
Reverse engineering itself isn''t illegal - it depends on your intentions and what you do with the knowledge you gained from it. For example, reverse engineering any technology for the sake of bypassing copy protection is illegal, but reverse engineering can be used legally to make a compatible, alternative product. That''s basically how the existence of "clone" computers happened after IBM introduced the PC.

Share this post


Link to post
Share on other sites
VizOne    598
quote:
Original post by Dobbs
Reverse engineering itself isn''t illegal - it depends on your intentions and what you do with the knowledge you gained from it. For example, reverse engineering any technology for the sake of bypassing copy protection is illegal, but reverse engineering can be used legally to make a compatible, alternative product.


Nevertheless do practically all software products have a clause within their license agreement that explicitly prohibits reverse engineering - that is what I referred to.

- VizOne

Share this post


Link to post
Share on other sites
SpaceRogue    122
quote:
Original post by Dobbs ...reverse engineering can be used legally to make a compatible, alternative product.


That is only legal under certain very rigidly controlled circumstances. You cannot simply reverse engineer something, study it and build something similar. You have to COMPLETELY separate the group that will reverse engineer the product from the ones who will build the new one. The reverse engineers must ''abstract'' the functionality of the original and present that to the design team. Any crossover of information about the original product to the new one can and will result in lawsuits against you.


Share this post


Link to post
Share on other sites
Dobbs    164
VizOne: There has never been a case where the legality of a software EULA has been tested, so whether they''re legally binding or just a threat is debatable. Certainly some of the things they mention are forbidden under criminal law in many countries but that doesn''t mean everything in them is.

SpaceRoge: Yes I didn''t mean RE is always legal for creating alternatives, notice I said RE "can be used legally" not "can always be used legally." I know all about the chinese wall or whatever it''s called.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
I hate when such topics drift into legal/ethical BS

Share this post


Link to post
Share on other sites
dede    132
I''m doing this from memory from like 14 years ago, so I cannot guarentee what I say here is correct(this is from word of mouth)...

I believe Microsoft C++ 7.0 had a decompiler, where you could decompile code if and only if it was written with Microsoft C++ 7.0. That would prevent companies from accidently deleting source code, if they had the executable.

The .exe would help the decompiler out a bit, so the executables were larger, (which is bad, in the dos days), it wasn''t a compiler option, so any code you wrote could be decompiled. Microsoft took it out on the next release.

(MC is not .net, Microsoft C was its dos compilers, Visual C is its Windows compilers)

Share this post


Link to post
Share on other sites
dede    132
A land without GUI, a land without WIMP, a land without printer drivers, a land without menus, this is the kingdom of DOS.

And into this land came Microsoft C++, and it was *bad*, it was so bad, saying it was bad is like saying it man who got hit by lighting is a "little under the weather". Low and behold, a savior, Borland C++ came, and all was good and right(tm) in the kingdom.

Microsoft continued, onward, releasing 2, and 3, and 4, and 5, and 6, and 7, and they all continued to be horrible messes of bugs and everything not right with computers...

Borland, ruled the land of DOS, creating *perfect* compilers, cheaply($69) w/IDE too, and all where happy.

Sadly, no one is king forever, DOS is no more, and the legacy of BC is over. VC rules the windows kingdom, until the cheap BC(or competing compiler) will rises again and slay the beast!!

the end.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
@"When did Microsoft C/C++ 7 come out? It may have been before I was"

www.google.com

Share this post


Link to post
Share on other sites