Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Decompiling code (language independent) [closed]

What software can be used to view the source code in a .dll file, irrespective of the programming language used for the source code?

like image 772
Naruto Avatar asked Oct 22 '09 11:10

Naruto


People also ask

Is it illegal to decompile code?

Higher-level reverse engineering such as decompilation is illegal as it is a threat to the ideas and intellectual property of the software creators via recreating the source code, which is the protected element.

Is there a way to Uncompile code?

You can't recover original source code - the process of compilation is inherently lossy and some detail will inevitably be lost. How much is lost will depend on the source language, target language and choices made by developers.

What does it mean to decompile code?

What is a decompile? To decompile means to convert executable or ready-to-run program code -- sometimes called object code -- into some form of higher-level programming language that humans can easily understand. Decompilation is a type of reverse-engineering that performs the opposite operations of a compiler.

What is the difference between disassembler and decompiler?

A decompiler takes one from a binary to source code–or something similarly high-level that can easily be read by humans. A disassembler takes one from binary to assembler–which is much lower level and is more difficult to read for humans.


2 Answers

If it's a managed DLL (.NET), you can open it using tools such as Reflector or ILDASM and you'll see the IL code. (Edit 2017-02-03: In 7+ years, .NET disassemblers have of course progressed a lot and are now able to produce very decent C# code)

If it's an unmanaged DLL (native), you're out of luck. The best you can do is load a disassembler. Which leads you nearly nowhere unless you know exactly where you want to go.

like image 89
Serge Wautier Avatar answered Sep 19 '22 18:09

Serge Wautier


You're interested in decompiling assemblies. Well here's a start on decompiling .NET assemblies: http://aspnet.4guysfromrolla.com/articles/080404-1.aspx

A popular tool in the .NET community for decompiling assemblies is .NET Reflector

like image 22
pyrocumulus Avatar answered Sep 20 '22 18:09

pyrocumulus