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,107 @@
|
||||
// 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: n.java
|
||||
|
||||
import java.math.BigInteger;
|
||||
import java.util.zip.CRC32;
|
||||
|
||||
public class n
|
||||
{
|
||||
|
||||
private n()
|
||||
{
|
||||
}
|
||||
|
||||
public n(byte abyte0[])
|
||||
{
|
||||
a = abyte0;
|
||||
b = 0;
|
||||
}
|
||||
|
||||
public void a(int i)
|
||||
{
|
||||
a[b++] = (byte)i;
|
||||
}
|
||||
|
||||
public void b(int i)
|
||||
{
|
||||
a[b++] = (byte)(i >> 24);
|
||||
a[b++] = (byte)(i >> 16);
|
||||
a[b++] = (byte)(i >> 8);
|
||||
a[b++] = (byte)i;
|
||||
}
|
||||
|
||||
public void a(String s)
|
||||
{
|
||||
s.getBytes(0, s.length(), a, b);
|
||||
b += s.length();
|
||||
a[b++] = 10;
|
||||
}
|
||||
|
||||
public void a(byte abyte0[], int i, int j)
|
||||
{
|
||||
int k = i;
|
||||
do
|
||||
{
|
||||
if(k >= i + j)
|
||||
break;
|
||||
a[b++] = abyte0[k];
|
||||
k++;
|
||||
} while(!q.d);
|
||||
}
|
||||
|
||||
public int a()
|
||||
{
|
||||
return a[b++] & 0xff;
|
||||
}
|
||||
|
||||
public int b()
|
||||
{
|
||||
b += 2;
|
||||
return ((a[b - 2] & 0xff) << 8) + (a[b - 1] & 0xff);
|
||||
}
|
||||
|
||||
public int c()
|
||||
{
|
||||
b += 4;
|
||||
return ((a[b - 4] & 0xff) << 24) + ((a[b - 3] & 0xff) << 16) + ((a[b - 2] & 0xff) << 8) + (a[b - 1] & 0xff);
|
||||
}
|
||||
|
||||
public void b(byte abyte0[], int i, int j)
|
||||
{
|
||||
int k = i;
|
||||
do
|
||||
{
|
||||
if(k >= i + j)
|
||||
break;
|
||||
abyte0[k] = a[b++];
|
||||
k++;
|
||||
} while(!q.d);
|
||||
}
|
||||
|
||||
public void a(BigInteger biginteger, BigInteger biginteger1)
|
||||
{
|
||||
int i = b;
|
||||
b = 0;
|
||||
byte abyte0[] = new byte[i];
|
||||
b(abyte0, 0, i);
|
||||
BigInteger biginteger2 = new BigInteger(abyte0);
|
||||
BigInteger biginteger3 = biginteger2.modPow(biginteger, biginteger1);
|
||||
byte abyte1[] = biginteger3.toByteArray();
|
||||
b = 0;
|
||||
a(abyte1.length);
|
||||
a(abyte1, 0, abyte1.length);
|
||||
}
|
||||
|
||||
public byte a[];
|
||||
public int b;
|
||||
static CRC32 c = new CRC32();
|
||||
private static final int d[] = {
|
||||
0, 1, 3, 7, 15, 31, 63, 127, 255, 511,
|
||||
1023, 2047, 4095, 8191, 16383, 32767, 65535, 0x1ffff, 0x3ffff, 0x7ffff,
|
||||
0xfffff, 0x1fffff, 0x3fffff, 0x7fffff, 0xffffff, 0x1ffffff, 0x3ffffff, 0x7ffffff, 0xfffffff, 0x1fffffff,
|
||||
0x3fffffff, 0x7fffffff, -1
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user