Questions tagged [decompiler]

A decompiler performs, as far as possible, the reverse operation to that of a compiler.

That is, it translates a file containing information at a relatively low level of abstraction (usually designed to be computer readable rather than human readable) into a form having a higher level of abstraction (usually designed to be human readable).

The decompiler does not reconstruct the original source code, and its output is far less intelligible to a human than original source code.

Resources

614 questions
11
votes
2 answers

Java sources replaced by decompiled files in Intellij

When I'm opening a specific class using ctrl + right click I should be redirected to a window with the java sources which contains all the lines and the appropriate comments. But instead I get a window with the decompiled .class file. I have tried…
Lucian
  • 794
  • 1
  • 9
  • 21
11
votes
1 answer

Is there a replacement for java.decompiler.free.fr?

Searching in this site for a way to replace my long-lost Java source code with something reverse engineered from my old .class files, I found a reference to an online tool at http://java.decompiler.free.fr which worked great. Now (6-sep-2013),…
user292701
  • 170
  • 1
  • 1
  • 10
10
votes
2 answers

Differences between apktool and baksmali

As far as I know, both apktool and baksmali are able to produce smali code out of .apk (.dex) files, and apktool makes use of the dexlib2. They are both APK packing/unpacking tools But still I am not clear what are the main differences between…
Long
  • 1,482
  • 21
  • 33
10
votes
2 answers

Decompiler - how to structure loops

I'm writing a decompiler for a simple scripting language. Here is what I've done: Basic blocks Created a collection of basic blocks as described here: http://www.backerstreet.com/decompiler/basic_blocks.php Control flow graph, dominator tree and…
paulm
  • 5,629
  • 7
  • 47
  • 70
10
votes
6 answers

Eclipse Conditional Breakpoints Broken?

I am trying to set up a conditional breakpoint in decompiled code, but Eclipse keeps giving me the error: Conditional breakpoint has compilation error(s) Reason: Evaluations must contain either an expression or a block of well-formed statments My…
kand
  • 2,268
  • 6
  • 31
  • 43
9
votes
5 answers

Is there any Java Decompiler that can correctly decompile calls to overloaded methods?

Consider this (IMHO simple) example: public class DecompilerTest { public static void main(String[] args) { Object s1 = "The", s2 = "answer"; doPrint((Object) "You should know:"); for (int i = 0; i < 2; i++) { …
mihi
  • 6,507
  • 1
  • 38
  • 48
9
votes
2 answers

decompile an app binary to get back to source code

Is there anyway to take a binary - even signed by yourself, and get back to the code? I'm trying to recover something that I deleted a while ago... but have the binary here. Any ideas?
Sam Jarman
  • 7,277
  • 15
  • 55
  • 100
8
votes
2 answers

Decompiling obfuscated java bytecode

I work on a platform which runs Java apps. Those apps are often obfuscated, most of them using ProGuard, which makes debugging issues with our platform very difficult. Currently I'm using JD (http://java.decompiler.free.fr/ ) to decompile it those…
JoaoHornburg
  • 917
  • 1
  • 11
  • 22
8
votes
2 answers

Decompile Scala code: why there are two overridden methods in the derived class?

Decompile Scala code: why there are two overridden methods in the derived class? class A { private var str: String = "A" val x: A = this override def toString(): String = str def m1(other: AnyRef): AnyRef = { println("This is…
CodingNow
  • 998
  • 1
  • 11
  • 23
8
votes
3 answers

Is it possible to decompile Java bytecode back to original generic type parameters

I know Java compiler replace all type parameters in generic types with their bounds or Object if the type parameters are unbounded during the process of Type Erasure. The produced machine bytecode would reflect the replaced bounds or Object. Is…
OLIVER.KOO
  • 5,654
  • 3
  • 30
  • 62
8
votes
1 answer

How do we account for exception throws in static code analysis?

I wrote an utility to create a CFG (Control Flow Graph) for a java method whose nodes are basic blocks instead of instructions. I could not consider exception throws to be edges in CFG. The reasons are that: Every instruction in try block can…
user3911119
  • 273
  • 3
  • 14
8
votes
3 answers

decompile .NET Replace method (v4.6.1)

I want to see how the public String Replace(String oldValue, String newValue); method that is inside mscorlib.dll (System.String) works. I decompiled the mscorlib.dll with dotPeek and inside the method there is a call to ReplaceInternal method…
Pacurar Stefan
  • 235
  • 4
  • 9
8
votes
2 answers

Extract scala source code from jar

So I have a jar file that contains scala as the source code and I have lost the original code. Is there a way to convert the class files in the jar to scala functions and classes instead of the java classes the compiler makes? I have tried using a…
user3003510
  • 291
  • 1
  • 5
  • 10
8
votes
1 answer

How to decompile framework file in iOS to get source code?

I want to know is there any way/tools to decompile framework file in objective C to get the source code. Just like in java there are JAD and other tools to decompile byte code to source code.
Paresh
  • 138
  • 1
  • 1
  • 8
8
votes
4 answers

If all the bytecode which compiled from java sources can be decompiled to java sources?

I see some java decompilers can decompile bytecode to readable java sources, I wonder if all the bytecode which comes from java (not other JVM language) can be decompiled to java sources again? Update Sorry, let me make the question more…
Freewind
  • 193,756
  • 157
  • 432
  • 708