views:

2733

answers:

3

Is there a way to disassemble Pro*C/C++ executable files?

+3  A: 

In general there should be disassemblers available for executables, regardless how they have been created (gcc, proC, handwritten, etc.) but decompiling an optimized binary most probably leads to unreadable or source.

Also, Pro C/C++ is not directly a compiler but outputs C/C++ code which then in turn is compiled by a platform native compiler (gcc, xlc, vc++, etc.).

Furthermore the generated code is often not directly compilable again without lots of manual corrections.

If you still want to try your luck, have a look at this list of x86 disassemblers for a start.

Kosi2801
Can recommend IDA-Pro from this list. It's commercial product, and very good one.
Ilya
there is a freeware version 4.3 I think, or you can get the demo version of the newer one.
sfossen
+1  A: 

You should try disassembling with disassembler tool of your choice. At the end of the day, executables compiled with PRO C/C++ preprocessor are just plain C/C++ executables.

If what you're looking for is SQL sentences within your code, you might want to take a look at:

$ strings your_executable_file

It will give you a list of all constants strings present in your executable, and chances are that you are going to get SQL sentences with that.

Good luck.

Pablo Santa Cruz
That is nice.If you could provide me with disassembler tool, that's will be more nicer.
Ahmed
Also, I'm looking for all the program code, not only SQL statements.
Ahmed
Well, disassembler tool depends on the platform. Since you didn't specify one, I assumed that you already had the tool, or didn't want to comment on your OS or CPU architecture you're using.
Pablo Santa Cruz
+2  A: 

Try PE Explorer Disassembler, a very decent disassembler for 32-bit executable files.

Wylder