Skip to main content
gamedev.net
🔒 Locked

Reverse Compiling?

Started by abd9e4790f Aug 13, 2003 at 9:31 PM 20 replies 1.1k views
Original Post
abd9e4790f
abd9e4790f
Is there any way to reverse compile an .exe file? I lost my project files but still have the .exe. DISCLAIMER: "DIRECTXMEN" does not guarantee that the upper message is free of grammatical as well as spelling errors so read at your own risk. "DIRECTXMEN" will no longer reply to any post considered "flaming" which is judge by "DIRECTXMEN" himself. Also, "DIRECTXMEN" will no longer reply to the following people: "xMcBaiNx", "cowsarenotevil" (or any other cow related name), "twix", "kordova", "neurokaotix", " Bakingsoda36", "Oluseyi" (or any moderator for that matter) and any other person that attack him. Further more, if you find my post offensive or not to your liking do not reply.
Xtremehobo
Xtremehobo
Well, all binary code is ''tokenized'' assembly which can be converted into a c like representation, but you won''t have your original variable names, etc.. they''ll all be generated at decompilation time by the decompiler.
pixelwrench.com | [email="matt[nospam]@pixelwrench[nospam]com"]email[/email] lethalhamster: gamedev keeps taking my money, but im too lazy to not let them
Sailorstick
Sailorstick
I like the disclaimer, mate!

"Do not destroy your oil wells" - George ''Dubya'' Bush
DukeAtreides076
DukeAtreides076
I''m surprised nes8bit didnt make the list.




Wednesday 8-13-03. 1516 threads locked.
abd9e4790f
abd9e4790f
Where can I get a "decompiler"?

DISCLAIMER: "DIRECTXMEN" does not guarantee that the upper message is free of grammatical as well as spelling errors so read at your own risk. "DIRECTXMEN" will no longer reply to any post considered "flaming" which is judge by "DIRECTXMEN" himself. Also, "DIRECTXMEN" will no longer reply to the following people: "xMcBaiNx", "cowsarenotevil" (or any other cow related name), "twix", "kordova", "neurokaotix", " Bakingsoda36", "Oluseyi" (or any moderator for that matter) and any other person that attack him. Further more, if you find my post offensive or not to your liking do not reply.
Xtremehobo
Xtremehobo
G O O G L E
O O G 0 E L
O G E G G G
G O O G L E
L E G 0 0 G
E G O O G L
pixelwrench.com | [email="matt[nospam]@pixelwrench[nospam]com"]email[/email] lethalhamster: gamedev keeps taking my money, but im too lazy to not let them
Bakingsoda36
Bakingsoda36
quote:
Original post by DIRECTXMEN
DISCLAIMER: "DIRECTXMEN" does not guarantee that the upper message is free of grammatical as well as spelling errors so read at your own risk. "DIRECTXMEN" will no longer reply to any post considered "flaming" which is judge by "DIRECTXMEN" himself. Also, "DIRECTXMEN" will no longer reply to the following people: "xMcBaiNx", "cowsarenotevil" (or any other cow related name), "twix", "kordova", "neurokaotix", " Bakingsoda36", "Oluseyi" (or any moderator for that matter) and any other person that attack him. Further more, if you find my post offensive or not to your liking do not reply.


I find your post offensive and I don't like it.

[edited by - Bakingsoda36 on August 14, 2003 1:20:49 AM]
Zorodius
Zorodius
quote:
Original post by DIRECTXMEN
DISCLAIMER: "DIRECTXMEN" does not guarantee that the upper message is free of grammatical as well as spelling errors

So just one or the other?
You don't need to vote for the "lesser of two evils"! Learn about Instant Runoff Voting, the simple cure for a broken democracy!
anyothercowrelatedname
anyothercowrelatedname
quote:
Original post by DIRECTXMEN


DISCLAIMER: ..."cowsarenotevil" (or any other cow related name), "twix", "kordova", "neurokaotix", " Bakingsoda36", "Oluseyi" (or any moderator for that matter) and any other person that attack him. Further more, if you find my post offensive or not to your liking do not reply.


You mean you won''t reply to me?

Oluseyi
Oluseyi
The process is called "reverse engineering" and the tool you''re looking for is called a "disassembler." One is included with Visual Studio, but with the proper name it should be easier to Google one. Note that there are legal contentions covering reverse engineering, but if you''re doing it just for interest and personal use and you never distribute your findings then it should be okay.

Disassembly will take you from platform-specific machine code to platform-specific assembly code. There are tools out there that try to give you C, but as Xtremehobo mentioned you won''t get your variable names back, plus the C you get is really just a close approximation and may not clearly communicate the intent (for example, if the original program was written in C++ using features outside the domain of C like templates and virtual methods).
Type O Negative
Type O Negative
Reverse Engineering is illegal on copyrighted programs also, so if you just wanted to reverse engineer something that you don''t own (which I am not saying you are I am just being hypothetical here), then you shouldn''t. Though what can my words do to stop you? =/

"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)
"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)THERMONUCLEAR ORANGE!!!1
Bossk
Bossk
quote:
Original post by DIRECTXMEN
"Oluseyi" (or any moderator for that matter)

This is funny considering Oluseyi is the first person to have given you any useful information.
blueEbola
blueEbola
If your program was coded in delphi, I know there are a few tools out there that can get 75-90% of your gui (forms, resources) back, but when it comes to code your screwed.
En Dum En
En Dum En
quote:
Original post by Type O Negative
Reverse Engineering is illegal on copyrighted programs also
get real.

'ROIDRAGE!!! - I wanna work for the chinese communist regime!
Type O Negative
Type O Negative
I am being real. Reverse Engineering can be used to alter the code and create "cracks"

Although if you were being sarcastic, I apologize.

"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)
"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)THERMONUCLEAR ORANGE!!!1
ShlomiSteinberg
ShlomiSteinberg
quote:
Original post by Type O Negative
I am being real. Reverse Engineering can be used to alter the code and create "cracks"

"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)



Like what I have done to IncrediBuild?

"C lets you shoot yourself in the foot rather easily. C++ allows you to reuse the bullet!"
Member of the Shove Pouya Off A Cliff club, SPOAC. (If you wish to join, add this line to your signature.)Member of "Un-Ban nes8bit" association, UNA (to join put this in your sig)
Type O Negative
Type O Negative
I am not familiar with IncrediBuild nor do I know what you did to it. But if it is a copyrighted program, and you did some reverse engineering on it to produce a crack to make it full version or what not, then yes, that is illegal since it is a form of piracy.

"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)
"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)THERMONUCLEAR ORANGE!!!1
Oluseyi
Oluseyi
quote:
Original post by Type O Negative
I am being real. Reverse Engineering can be used to alter the code and create "cracks"
You may be "real", but you''re also wrong. Reverse engineering is a critical activity sometimes necessary to maintain compatibility between disparate, closed systems or between closed and open systems. For example, Samba is almost entirely the result of reverse engineering the Windows version of the SMB protocol. Reverse engineering doesn''t pertain only to application binaries, and it doesn''t necessarily imply cracking or disassembling the code; you can easily reverse engineer many systems simply through observation (for example, by running a packet sniffer on his own conversations one guy reversed engineered the MSN Messenger protocol - which transmits all messages in cleartext, [un]fortunately).

There''s also clean room reverse engineering, in which one bunch of engineers actually hack the system to be RE''d and write down full specifications and descriptions, not including any actual code - just algorithms and processes. These descriptions are then transferred to persons who have had no physical contact with the former group, persons said to be in a "clean room" much like semiconductor engineers work in a sanitized environment of the same name virtually free of germs, who implement the algorithms and processes anew. This has been deemed ethical and legal.
Type O Negative
Type O Negative
no no no no no... I am not saying that reverse engineering itself is illegal. I am saying reverse engineering a program that you have not written and is legally copyrighted for the purpose of changing the code and redistributing it under you name is illegal. It is a form of priacy and plagerism. I am also not sayaing that reverse engineering for educational purposes is wrong, you may want to learn how a specific thing was done in a certain program so you RE it and examine the code. Samba... I am not familiar with that but I am sure it is not like an exact copy of windows or was done by a third party (though I could be wrong on that) so technically it is in the full bounds of the law.

"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)
"if God were condemned to live the life which he has inflicted on men, he would kill himself." - Alexander Dumas (1802- 1870)THERMONUCLEAR ORANGE!!!1
Oluseyi
Oluseyi
quote:
Original post by Type O Negative
no no no no no... I am not saying that reverse engineering itself is illegal. I am saying reverse engineering a program that you have not written and is legally copyrighted for the purpose of changing the code and redistributing it under you name is illegal.
Wow, thank you for that insightful observation. Or should I say... duh! You could strip the second sentence down to "I am saying... [taking] a program that you have not written and... redistributing it under your name is illegal" and still have an obvious truism.

Focus.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.