• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 200
  • Last Modified:

De-compile program

Hi, we had a small application made for us  (I think made with delphi) which we never received the code for and now cannot contact the programmer. We need to make changes to it and was wondering if it would be easy to decompile the exe,
  • 2
1 Solution
käµfm³d 👽Commented:
More than likely, you won't get the exact source code back because usually when code is built into an executable it is done so with instructions to the compiler to make optimizations where it can. If the code was obfuscated during compilation, then you certainly won't get back the original source code.

I am not experienced with Delphi, so hold out for more responses from others who may have experience with decompilation of that language.
Giovanni HewardCommented:
Check out the tutorial @ http://thelegendofrandom.com/blog/archives/1472

IDR (Interactive Delphi Reconstructor)
DeDe ( Delphi Decompiler )
Decompiled C++ is very tough to read. You lose all comments of course, and most names are mangled (even with Delphi). Also, the optimizer does things like inline functions and unroll for loops, so the code will be a nasty mess. (If an irresponsible person wrote it in the first place, it may have been pretty messy to start with).

In short, if you want to make some small tweak and go on, it will take some time, but you can do it.
If you want to make larger changes and continue to maintain the code, it would probably save time to just rewrite it from scratch.

What kind of contract did you have with the programmer? Is he legally obligated to provide you the code if he abandons the project? If not, make sure to build a clause like that into future contracts. (Or just have the code be deliverable along with the application).
Giovanni HewardCommented:
make sure to build a clause like that into future contracts.

Excellent point.  A legal means to this end would be to require the source code to be placed in escrow by a trusted third party fiduciary, to be released to you in the event of x, y, or z.

I've personally used https://www.escrowtech.com/ for this purpose.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now