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; import net.runelite.rs.ScriptOpcodes; @ObfuscatedName("kf") @Implements("PacketBuffer") public class PacketBuffer extends Buffer { @ObfuscatedName("n") static final int[] field3695; @ObfuscatedName("z") @ObfuscatedSignature( signature = "Llg;" ) @Export("isaacCipher") IsaacCipher isaacCipher; @ObfuscatedName("v") @ObfuscatedGetter( intValue = -1801396377 ) @Export("bitIndex") int bitIndex; static { field3695 = new int[]{0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215, 33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, Integer.MAX_VALUE, -1}; } public PacketBuffer(int var1) { super(var1); } @ObfuscatedName("z") @ObfuscatedSignature( signature = "([II)V", garbageValue = "2116683841" ) @Export("newIsaacCipher") public void newIsaacCipher(int[] var1) { this.isaacCipher = new IsaacCipher(var1); } @ObfuscatedName("n") @ObfuscatedSignature( signature = "(Llg;B)V", garbageValue = "100" ) @Export("setIsaacCipher") public void setIsaacCipher(IsaacCipher var1) { this.isaacCipher = var1; } @ObfuscatedName("v") @ObfuscatedSignature( signature = "(II)V", garbageValue = "1358666817" ) @Export("writeByteIsaac") public void writeByteIsaac(int var1) { super.array[++super.offset - 1] = (byte)(var1 + this.isaacCipher.nextInt()); } @ObfuscatedName("u") @ObfuscatedSignature( signature = "(I)I", garbageValue = "-2099772642" ) @Export("readByteIsaac") public int readByteIsaac() { return super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; } @ObfuscatedName("r") @ObfuscatedSignature( signature = "(I)Z", garbageValue = "-1080759401" ) public boolean method5380() { int var1 = super.array[super.offset] - this.isaacCipher.method6191() & 255; return var1 >= 128; } @ObfuscatedName("p") @ObfuscatedSignature( signature = "(I)I", garbageValue = "427431431" ) @Export("readSmartByteShortIsaac") public int readSmartByteShortIsaac() { int var1 = super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255; return var1 < 128 ? var1 : (var1 - 128 << 8) + (super.array[++super.offset - 1] - this.isaacCipher.nextInt() & 255); } @ObfuscatedName("q") @ObfuscatedSignature( signature = "([BIII)V", garbageValue = "1740365961" ) public void method5385(byte[] var1, int var2, int var3) { for (int var4 = 0; var4 < var3; ++var4) { var1[var4 + var2] = (byte)(super.array[++super.offset - 1] - this.isaacCipher.nextInt()); } } @ObfuscatedName("m") @ObfuscatedSignature( signature = "(I)V", garbageValue = "1647095141" ) @Export("importIndex") public void importIndex() { this.bitIndex = super.offset * 8; } @ObfuscatedName("y") @ObfuscatedSignature( signature = "(II)I", garbageValue = "1367970229" ) @Export("readBits") public int readBits(int var1) { int var2 = this.bitIndex >> 3; int var3 = 8 - (this.bitIndex & 7); int var4 = 0; for (this.bitIndex += var1; var1 > var3; var3 = 8) { var4 += (super.array[var2++] & field3695[var3]) << var1 - var3; var1 -= var3; } if (var3 == var1) { var4 += super.array[var2] & field3695[var3]; } else { var4 += super.array[var2] >> var3 - var1 & field3695[var1]; } return var4; } @ObfuscatedName("i") @ObfuscatedSignature( signature = "(B)V", garbageValue = "4" ) @Export("exportIndex") public void exportIndex() { super.offset = (this.bitIndex + 7) / 8; } @ObfuscatedName("c") @ObfuscatedSignature( signature = "(II)I", garbageValue = "586994412" ) @Export("bitsRemaining") public int bitsRemaining(int var1) { return var1 * 8 - this.bitIndex; } @ObfuscatedName("aa") @ObfuscatedSignature( signature = "(ILcu;ZB)I", garbageValue = "82" ) static int method5408(int var0, Script var1, boolean var2) { int var3; int var4; int var6; if (var0 == ScriptOpcodes.ENUM_STRING) { Interpreter.Interpreter_intStackSize -= 2; var3 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize]; var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1]; EnumDefinition var5 = UserComparator10.getEnum(var3); if (var5.outputType != 's') { } for (var6 = 0; var6 < var5.outputCount; ++var6) { if (var4 == var5.keys[var6]) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var5.strVals[var6]; var5 = null; break; } } if (var5 != null) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var5.defaultStr; } return 1; } else if (var0 != ScriptOpcodes.ENUM) { if (var0 == ScriptOpcodes.ENUM_GETOUTPUTCOUNT) { var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; EnumDefinition var10 = UserComparator10.getEnum(var3); Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var10.size(); return 1; } else { return 2; } } else { Interpreter.Interpreter_intStackSize -= 4; var3 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize]; var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1]; int var9 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 2]; var6 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 3]; EnumDefinition var7 = UserComparator10.getEnum(var9); if (var3 == var7.inputType && var4 == var7.outputType) { for (int var8 = 0; var8 < var7.outputCount; ++var8) { if (var6 == var7.keys[var8]) { if (var4 == 115) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.strVals[var8]; } else { Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.intVals[var8]; } var7 = null; break; } } if (var7 != null) { if (var4 == 115) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.defaultStr; } else { Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.defaultInt; } } return 1; } else { if (var4 == 115) { Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = "null"; } else { Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = 0; } return 1; } } } }