SBoT 1.0 decompiled with jad 1.5.8e
Same SBoT.jar, decompiled with jad instead of CFR for comparison -- jad is the same decompiler the community used on RSC client dumps back in 2004 (see DeobedMC201.rar). A few methods didn't fully resolve (jad is much less capable than CFR on complex control flow); those are marked inline where jad gave up.
This commit is contained in:
@@ -0,0 +1,170 @@
|
||||
// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
|
||||
// Jad home page: http://www.geocities.com/kpdus/jad.html
|
||||
// Decompiler options: packimports(3)
|
||||
// Source File Name: z.java
|
||||
|
||||
|
||||
public class z
|
||||
{
|
||||
|
||||
public z()
|
||||
{
|
||||
}
|
||||
|
||||
public static String a()
|
||||
{
|
||||
return a[b - 29];
|
||||
}
|
||||
|
||||
public static int b()
|
||||
{
|
||||
boolean flag = q.d;
|
||||
b;
|
||||
if(flag) goto _L2; else goto _L1
|
||||
_L1:
|
||||
29;
|
||||
JVM INSTR icmpeq 52;
|
||||
goto _L3 _L4
|
||||
_L3:
|
||||
b;
|
||||
if(flag) goto _L2; else goto _L5
|
||||
_L5:
|
||||
31;
|
||||
JVM INSTR icmpeq 52;
|
||||
goto _L6 _L4
|
||||
_L6:
|
||||
b;
|
||||
if(flag) goto _L2; else goto _L7
|
||||
_L7:
|
||||
33;
|
||||
JVM INSTR icmpeq 52;
|
||||
goto _L8 _L4
|
||||
_L8:
|
||||
b;
|
||||
if(flag) goto _L10; else goto _L9
|
||||
_L9:
|
||||
37;
|
||||
JVM INSTR icmpne 55;
|
||||
goto _L4 _L11
|
||||
_L4:
|
||||
43594;
|
||||
_L2:
|
||||
return;
|
||||
_L11:
|
||||
43595;
|
||||
_L10:
|
||||
return;
|
||||
}
|
||||
|
||||
public static void a(int i)
|
||||
{
|
||||
boolean flag = q.d;
|
||||
i;
|
||||
28;
|
||||
if(flag) goto _L2; else goto _L1
|
||||
_L1:
|
||||
JVM INSTR icmple 28;
|
||||
goto _L3 _L4
|
||||
_L3:
|
||||
i;
|
||||
if(flag) goto _L6; else goto _L5
|
||||
_L5:
|
||||
39;
|
||||
_L2:
|
||||
JVM INSTR icmpge 28;
|
||||
goto _L7 _L4
|
||||
_L7:
|
||||
i;
|
||||
_L6:
|
||||
b;
|
||||
_L4:
|
||||
}
|
||||
|
||||
public static String a[];
|
||||
public static int b;
|
||||
|
||||
static
|
||||
{
|
||||
local;
|
||||
toCharArray();
|
||||
JVM INSTR dup ;
|
||||
JVM INSTR arraylength .length;
|
||||
JVM INSTR swap ;
|
||||
int i = 0;
|
||||
JVM INSTR swap ;
|
||||
JVM INSTR dup_x1 ;
|
||||
1;
|
||||
JVM INSTR icmpgt 94;
|
||||
goto _L1 _L2
|
||||
_L1:
|
||||
JVM INSTR dup ;
|
||||
i;
|
||||
_L4:
|
||||
JVM INSTR dup2 ;
|
||||
JVM INSTR caload ;
|
||||
byte byte0;
|
||||
switch(i % 5)
|
||||
{
|
||||
case 0: // '\0'
|
||||
byte0 = 0x3b;
|
||||
break;
|
||||
|
||||
case 1: // '\001'
|
||||
byte0 = 52;
|
||||
break;
|
||||
|
||||
case 2: // '\002'
|
||||
byte0 = 111;
|
||||
break;
|
||||
|
||||
case 3: // '\003'
|
||||
byte0 = 85;
|
||||
break;
|
||||
|
||||
default:
|
||||
byte0 = 99;
|
||||
break;
|
||||
}
|
||||
byte0;
|
||||
JVM INSTR ixor ;
|
||||
(char);
|
||||
JVM INSTR castore ;
|
||||
i++;
|
||||
JVM INSTR swap ;
|
||||
JVM INSTR dup_x1 ;
|
||||
JVM INSTR ifne 94;
|
||||
goto _L3 _L2
|
||||
_L3:
|
||||
JVM INSTR dup2 ;
|
||||
JVM INSTR swap ;
|
||||
goto _L4
|
||||
_L2:
|
||||
JVM INSTR swap ;
|
||||
JVM INSTR dup_x1 ;
|
||||
i;
|
||||
JVM INSTR icmpgt 18;
|
||||
goto _L5 _L1
|
||||
_L5:
|
||||
JVM INSTR new #6 <Class String>;
|
||||
JVM INSTR dup_x1 ;
|
||||
JVM INSTR swap ;
|
||||
String();
|
||||
intern();
|
||||
JVM INSTR swap ;
|
||||
JVM INSTR pop ;
|
||||
JVM INSTR ret 0;
|
||||
String as[] = new String[10];
|
||||
as[0] = "S@\033%Y\024\033\037=P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[1] = "S@\033%Y\024\033\037=P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[2] = "S@\033%Y\024\033\032>R\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[3] = "S@\033%Y\024\033\032>R\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[4] = "S@\033%Y\024\033\0329P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[5] = "S@\033%Y\024\033\0329P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[6] = "S@\033%Y\024\033\0329P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[7] = "S@\033%Y\024\033\0329P\025F\032;\006HW\016%\006\025W\0008LXX\0060\rO\006@";
|
||||
as[8] = "S@\033%Y\024\033\f0\027\b\032\035 \r^G\f4\023^\032\f:\016\024W\003<\006U@]z";
|
||||
as[9] = "S@\033%Y\024\033\f0\027\b\032\035 \r^G\f4\023^\032\f:\016\024W\003<\006U@]z";
|
||||
a = as;
|
||||
b = 29;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user