java disassembler
JDA 1.2.0

厌倦了看到这个???
// $FF: Couldn't be decompiledJava拆卸器(JDA)是GUI逆向工程工具,可以转动以下方式:
// $FF: Couldn't be decompiled
// java.lang.IllegalArgumentException: Invalid type: @
// at org.jetbrains.java.decompiler.struct.gen.VarType.getType(VarType.java:405)
// at org.jetbrains.java.decompiler.struct.gen.VarType.<init>(VarType.java:90)
// at org.jetbrains.java.decompiler.struct.gen.VarType.<init>(VarType.java:62)
// ...介入:
public void keyPressed ( KeyEvent var1 ) {
super . keyPressed ( var1 );
int var10000 = var1 . getKeyCode ();
int var10001 = ( 3 << 2 & 9 | 5 | 7 ) ^ 5 ;
int var10003 = 0 ^ 1165448477 ^ 958591453 ^ 2085987521 ;
if ( var10000 == var10001 ) {
11. iiIIiiiiIiIIi ( this . IIiiIiiiIIiiI , this . IiIIiiiiiiiiI , this . IIiiiiiiIIiIi );
}
}最后是:
public void keyPressed ( KeyEvent var1 ) {
super . keyPressed ( var1 );
if ( var1 . getKeyCode () == 10 ) {
11. iiIIiiiiIiIIi ( this . IIiiIiiiIIiiI , this . IiIIiiiiiiiiI , this . IIiiiiiiIIiIi );
}
}JDA提供了强大的静态分析工具,例如控制和数据流分析,以及使用自定义IL构建的代码简化。此外,可以提供许多拆卸器(例如常数和字符串搜索)的任务。这些标准的核心实用程序与Mapleir插件一起使用。您还可以通过在Java中编写自己的插件来访问IL API并集成到UI中。在不久的将来,它将支持整个二进制交叉引用(XREF)等。

由于Java商业混淆计划的功能和复杂性的增长,因此有必要开发改进的逆向工程和静态分析工具。 JDA旨在为基于JVM的语言提供专业质量的静态分析工具。
JDA最初是字节码查看器(BCV)的叉子。 BCV因膨胀,性能差和停滞的发展而严重遭受痛苦。在JDA中,已经删除了许多无用或无关的功能,并且已完全清理或重写了代码库的重要部分。
考虑到这一点,JDA的目标是成为一个专注,轻巧但功能强大的Java静态拆卸器。 JDA的角色是为核心功能(例如分析和拆卸)提供平台和界面。因此,JDA的范围是成为Java反向工程工具的平台。
将来还有更多。
要安装插件,将插件jar放入~/.jda/plugins (或等效地,在Windows上的%USERPROFILE%.jdaplugins ),然后重新启动。
有关编译说明,请参见Comply.MD。