Files
runelite/runescape-client/src/main/java/Interpreter.java
zeruth e4d6e9fe13 Port Injector to main layout
Adds deobfuscator
Adds injected-client
Adds injector-plugin
Adds runescape-client

Replaces RL's apis

Small bug with sprites atm, will be resolved soon. tired af.

Builds, probably
2019-06-08 05:43:03 -04:00

230 lines
7.0 KiB
Java

import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Calendar;
import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("bv")
@Implements("Interpreter")
public class Interpreter {
@ObfuscatedName("w")
@Export("Interpreter_stringLocals")
static String[] Interpreter_stringLocals;
@ObfuscatedName("o")
@Export("Interpreter_arrayLengths")
static int[] Interpreter_arrayLengths;
@ObfuscatedName("u")
@Export("Interpreter_arrays")
static int[][] Interpreter_arrays;
@ObfuscatedName("g")
@Export("Interpreter_intStack")
static int[] Interpreter_intStack;
@ObfuscatedName("e")
@Export("Interpreter_stringStack")
static String[] Interpreter_stringStack;
@ObfuscatedName("x")
@ObfuscatedGetter(
intValue = -114766123
)
@Export("Interpreter_stringStackSize")
static int Interpreter_stringStackSize;
@ObfuscatedName("d")
@ObfuscatedGetter(
intValue = 545127349
)
@Export("Interpreter_frameDepth")
static int Interpreter_frameDepth;
@ObfuscatedName("k")
@ObfuscatedSignature(
signature = "[Lbn;"
)
@Export("Interpreter_frames")
static ScriptFrame[] Interpreter_frames;
@ObfuscatedName("a")
@Export("Interpreter_calendar")
static Calendar Interpreter_calendar;
@ObfuscatedName("z")
@Export("__bv_z")
static final String[] __bv_z;
@ObfuscatedName("s")
@Export("__bv_s")
static boolean __bv_s;
@ObfuscatedName("t")
@Export("__bv_t")
static boolean __bv_t;
@ObfuscatedName("y")
@ObfuscatedGetter(
intValue = -1019558835
)
@Export("__bv_y")
static int __bv_y;
@ObfuscatedName("r")
@Export("__bv_r")
static final double __bv_r;
static {
Interpreter_arrayLengths = new int[5];
Interpreter_arrays = new int[5][5000];
Interpreter_intStack = new int[1000];
Interpreter_stringStack = new String[1000];
Interpreter_frameDepth = 0;
Interpreter_frames = new ScriptFrame[50];
Interpreter_calendar = Calendar.getInstance();
__bv_z = new String[]{"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
__bv_s = false;
__bv_t = false;
__bv_y = 0;
__bv_r = Math.log(2.0D);
}
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "(Lgs;Lhn;I)Lgg;",
garbageValue = "-370104720"
)
public static PacketBufferNode method1915(ClientPacket var0, IsaacCipher var1) {
PacketBufferNode var2;
if(PacketBufferNode.__gg_u == 0) {
var2 = new PacketBufferNode();
} else {
var2 = PacketBufferNode.packetBufferNodes[--PacketBufferNode.__gg_u];
}
var2.__m = var0;
var2.__f = var0.length;
if(var2.__f == -1) {
var2.packetBuffer = new PacketBuffer(260);
} else if(var2.__f == -2) {
var2.packetBuffer = new PacketBuffer(10000);
} else if(var2.__f <= 18) {
var2.packetBuffer = new PacketBuffer(20);
} else if(var2.__f <= 98) {
var2.packetBuffer = new PacketBuffer(100);
} else {
var2.packetBuffer = new PacketBuffer(260);
}
var2.packetBuffer.setIsaacCipher(var1);
var2.packetBuffer.writeByteIsaac(var2.__m.id);
var2.__w = 0;
return var2;
}
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "(II)Ljw;",
garbageValue = "-1888252818"
)
@Export("getEnum")
public static EnumDefinition getEnum(int var0) {
EnumDefinition var1 = (EnumDefinition)EnumDefinition.EnumDefinition_cached.get((long)var0);
if(var1 != null) {
return var1;
} else {
byte[] var2 = EnumDefinition.EnumDefinition_indexCache.takeRecord(8, var0);
var1 = new EnumDefinition();
if(var2 != null) {
var1.read(new Buffer(var2));
}
EnumDefinition.EnumDefinition_cached.put(var1, (long)var0);
return var1;
}
}
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "(IIB)V",
garbageValue = "76"
)
static void method1975(int var0, int var1) {
int[] var2 = new int[4];
int[] var3 = new int[4];
var2[0] = var0;
var3[0] = var1;
int var4 = 1;
for(int var5 = 0; var5 < 4; ++var5) {
if(World.__bt_e[var5] != var0) {
var2[var4] = World.__bt_e[var5];
var3[var4] = World.__bt_l[var5];
++var4;
}
}
World.__bt_e = var2;
World.__bt_l = var3;
MilliClock.method3400(ItemContainer.worlds, 0, ItemContainer.worlds.length - 1, World.__bt_e, World.__bt_l);
}
@ObfuscatedName("w")
@ObfuscatedSignature(
signature = "(B)V",
garbageValue = "80"
)
public static void method1976() {
try {
File var0 = new File(WorldMapSection1.userHomeDirectory, "random.dat");
int var2;
if(var0.exists()) {
class168.randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0);
} else {
label38:
for(int var1 = 0; var1 < Canvas.__ao_s.length; ++var1) {
for(var2 = 0; var2 < WorldMapSection2.cacheDirectoryLocations.length; ++var2) {
File var3 = new File(WorldMapSection2.cacheDirectoryLocations[var2] + Canvas.__ao_s[var1] + File.separatorChar + "random.dat");
if(var3.exists()) {
class168.randomDat = new BufferedFile(new AccessFile(var3, "rw", 25L), 24, 0);
break label38;
}
}
}
}
if(class168.randomDat == null) {
RandomAccessFile var4 = new RandomAccessFile(var0, "rw");
var2 = var4.read();
var4.seek(0L);
var4.write(var2);
var4.seek(0L);
var4.close();
class168.randomDat = new BufferedFile(new AccessFile(var0, "rw", 25L), 24, 0);
}
} catch (IOException var5) {
;
}
}
@ObfuscatedName("iz")
@ObfuscatedSignature(
signature = "(IIIIIIIIB)V",
garbageValue = "-10"
)
@Export("drawWidgets")
static final void drawWidgets(int var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7) {
if(GroundItemPile.loadWidgetGroup(var0)) {
class279.__jx_ne = null;
DevicePcmPlayerProvider.drawWidgetGroup(Widget.widgets[var0], -1, var1, var2, var3, var4, var5, var6, var7);
if(class279.__jx_ne != null) {
DevicePcmPlayerProvider.drawWidgetGroup(class279.__jx_ne, -1412584499, var1, var2, var3, var4, class54.__bs_nb, class157.__fw_nm, var7);
class279.__jx_ne = null;
}
} else {
if(var7 != -1) {
Client.__client_od[var7] = true;
} else {
for(int var8 = 0; var8 < 100; ++var8) {
Client.__client_od[var8] = true;
}
}
}
}
}