Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

What tool can decompile a DLL into C++ source code?

5,093 views
Skip to first unread message

Horizon68

unread,
Apr 17, 2019, 1:23:46 PM4/17/19
to
Hello,

Read this:


What tool can decompile a DLL into C++ source code?

This might be impossible or at least very hard. The DLL's contents don't
depend (a lot) on it being written in C++; it's all machine code. That
code might have been optimized so a lot of information that was present
in the original source code is simply gone.

About obfuscation for FreePascal / Lazarus and Delphi compiled files

Just compiling with optimizations (-O2 and up) and stripping all debug
and profile information, and apply smartlinking, will make it almost
un-decompilable. Not only FPC, but also Delphi. I remember using
Delphi decompilers for Delphi 6 and they were unable to decompile any
actual code except resources.


Thank you,
Amine Moulay Ramdane.

Bonita Montero

unread,
Apr 17, 2019, 1:32:29 PM4/17/19
to
I don't believe that a C++-decompiler would make sense because the
metainformation about classes, templates, exceptions and whatever
can't be regained from the machine code.
The only decompiler I know is the IDA decompiler and it decompiles
into C-code.

Rick C. Hodgin

unread,
Apr 17, 2019, 1:37:36 PM4/17/19
to
On Wednesday, April 17, 2019 at 1:23:46 PM UTC-4, Horizon68 wrote:
> What tool can decompile a DLL into C++ source code?

A recent tool released by the NSA may be a good place to start.
I've only read summaries about it, but if it lives up to the
hype...:

Article about Ghidra:
https://www.nsa.gov/News-Features/News-Stories/Article-View/Article/1775584/ghidra-the-software-reverse-engineering-tool-youve-been-waiting-for-is-here/

Download:
https://www.nsa.gov/resources/everyone/ghidra/

Highlight:

"One of Ghidra’s most noteworthy features is a processor
modeling language called Sleigh that specifies how machine
language instructions are dissembled and transformed into
the tool’s intermediate representation called P-code.
Other significant functions are an undo/redo feature, multi-
user collaboration repository, and scripting."

"Ghidra is a software reverse engineering (SRE) framework
developed by NSA's Research Directorate for NSA's cybersecurity
mission. It helps analyze malicious code and malware like
viruses, and can give cybersecurity professionals a better
understanding of potential vulnerabilities in their networks
and systems."

"We look forward to ideas and contributions from the community!"

--
Rick C. Hodgin
0 new messages