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("dk") @Implements("ClanSettings") public class ClanSettings { @ObfuscatedName("q") @Export("useHashes") boolean useHashes; @ObfuscatedName("f") @Export("useNames") boolean useNames; @ObfuscatedName("j") @ObfuscatedGetter( longValue = 7796320747279199629L ) long field1446; @ObfuscatedName("m") @ObfuscatedGetter( intValue = -1295795639 ) int field1447; @ObfuscatedName("k") @Export("name") public String name; @ObfuscatedName("t") @ObfuscatedGetter( intValue = -1935991065 ) int field1449; @ObfuscatedName("a") @Export("allowGuests") public boolean allowGuests; @ObfuscatedName("e") public byte field1450; @ObfuscatedName("i") public byte field1452; @ObfuscatedName("y") public byte field1459; @ObfuscatedName("w") public byte field1466; @ObfuscatedName("g") @ObfuscatedGetter( intValue = 1332721669 ) @Export("memberCount") public int memberCount; @ObfuscatedName("v") @Export("memberHashes") long[] memberHashes; @ObfuscatedName("s") @Export("memberRanks") public byte[] memberRanks; @ObfuscatedName("c") @Export("sortedMembers") int[] sortedMembers; @ObfuscatedName("b") int[] field1463; @ObfuscatedName("x") public int[] field1460; @ObfuscatedName("p") public boolean[] field1461; @ObfuscatedName("z") @ObfuscatedGetter( intValue = 1162827635 ) @Export("currentOwner") public int currentOwner; @ObfuscatedName("h") @ObfuscatedGetter( intValue = 236960675 ) public int field1451; @ObfuscatedName("o") @ObfuscatedGetter( intValue = 999682497 ) @Export("bannedMemberCount") public int bannedMemberCount; @ObfuscatedName("r") @Export("bannedMemberHashes") long[] bannedMemberHashes; @ObfuscatedName("n") @Export("memberNames") public String[] memberNames; @ObfuscatedName("u") @Export("bannedMemberNames") public String[] bannedMemberNames; @ObfuscatedName("d") @ObfuscatedSignature( descriptor = "Lnz;" ) @Export("parameters") IterableNodeHashTable parameters; @ObfuscatedSignature( descriptor = "(Lot;)V" ) public ClanSettings(Buffer var1) { this.field1447 = 0; this.name = null; this.field1449 = 0; this.currentOwner = -1; this.field1451 = -1; this.method2601(var1); } @ObfuscatedName("l") @ObfuscatedSignature( descriptor = "(II)V", garbageValue = "404680173" ) void method2582(int var1) { if (this.useHashes) { if (this.memberHashes != null) { System.arraycopy(this.memberHashes, 0, this.memberHashes = new long[var1], 0, this.memberCount); } else { this.memberHashes = new long[var1]; } } if (this.useNames) { if (this.memberNames != null) { System.arraycopy(this.memberNames, 0, this.memberNames = new String[var1], 0, this.memberCount); } else { this.memberNames = new String[var1]; } } if (this.memberRanks != null) { System.arraycopy(this.memberRanks, 0, this.memberRanks = new byte[var1], 0, this.memberCount); } else { this.memberRanks = new byte[var1]; } if (this.field1463 != null) { System.arraycopy(this.field1463, 0, this.field1463 = new int[var1], 0, this.memberCount); } else { this.field1463 = new int[var1]; } if (this.field1460 != null) { System.arraycopy(this.field1460, 0, this.field1460 = new int[var1], 0, this.memberCount); } else { this.field1460 = new int[var1]; } if (this.field1461 != null) { System.arraycopy(this.field1461, 0, this.field1461 = new boolean[var1], 0, this.memberCount); } else { this.field1461 = new boolean[var1]; } } @ObfuscatedName("q") @ObfuscatedSignature( descriptor = "(II)V", garbageValue = "-390978502" ) void method2602(int var1) { if (this.useHashes) { if (this.bannedMemberHashes != null) { System.arraycopy(this.bannedMemberHashes, 0, this.bannedMemberHashes = new long[var1], 0, this.bannedMemberCount); } else { this.bannedMemberHashes = new long[var1]; } } if (this.useNames) { if (this.bannedMemberNames != null) { System.arraycopy(this.bannedMemberNames, 0, this.bannedMemberNames = new String[var1], 0, this.bannedMemberCount); } else { this.bannedMemberNames = new String[var1]; } } } @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(Ljava/lang/String;I)I", garbageValue = "1080888296" ) public int method2584(String var1) { if (var1 != null && var1.length() != 0) { for (int var2 = 0; var2 < this.memberCount; ++var2) { if (this.memberNames[var2].equals(var1)) { return var2; } } return -1; } else { return -1; } } @ObfuscatedName("j") @ObfuscatedSignature( descriptor = "(IIIB)I", garbageValue = "45" ) public int method2585(int var1, int var2, int var3) { int var4 = var3 == 31 ? -1 : (1 << var3 + 1) - 1; return (this.field1463[var1] & var4) >>> var2; } @ObfuscatedName("m") @ObfuscatedSignature( descriptor = "(IB)Ljava/lang/Integer;", garbageValue = "26" ) @Export("getTitleGroupValue") public Integer getTitleGroupValue(int var1) { if (this.parameters == null) { return null; } else { Node var2 = this.parameters.get((long)var1); return var2 != null && var2 instanceof IntegerNode ? new Integer(((IntegerNode)var2).integer) : null; } } @ObfuscatedName("k") @ObfuscatedSignature( descriptor = "(I)[I", garbageValue = "-1998425612" ) @Export("getSortedMembers") public int[] getSortedMembers() { if (this.sortedMembers == null) { String[] var1 = new String[this.memberCount]; this.sortedMembers = new int[this.memberCount]; for (int var2 = 0; var2 < this.memberCount; this.sortedMembers[var2] = var2++) { var1[var2] = this.memberNames[var2]; if (var1[var2] != null) { var1[var2] = var1[var2].toLowerCase(); } } int[] var3 = this.sortedMembers; WorldMap.method6612(var1, var3, 0, var1.length - 1); } return this.sortedMembers; } @ObfuscatedName("t") @ObfuscatedSignature( descriptor = "(JLjava/lang/String;IB)V", garbageValue = "60" ) void method2646(long var1, String var3, int var4) { if (var3 != null && var3.length() == 0) { var3 = null; } if (var1 > 0L != this.useHashes) { throw new RuntimeException(""); } else if (this.useNames != (var3 != null)) { throw new RuntimeException(""); } else { if (var1 > 0L && (this.memberHashes == null || this.memberCount >= this.memberHashes.length) || var3 != null && (this.memberNames == null || this.memberCount >= this.memberNames.length)) { this.method2582(this.memberCount + 5); } if (this.memberHashes != null) { this.memberHashes[this.memberCount] = var1; } if (this.memberNames != null) { this.memberNames[this.memberCount] = var3; } if (this.currentOwner == -1) { this.currentOwner = this.memberCount; this.memberRanks[this.memberCount] = 126; } else { this.memberRanks[this.memberCount] = 0; } this.field1463[this.memberCount] = 0; this.field1460[this.memberCount] = var4; this.field1461[this.memberCount] = false; ++this.memberCount; this.sortedMembers = null; } } @ObfuscatedName("a") @ObfuscatedSignature( descriptor = "(IB)V", garbageValue = "23" ) void method2589(int var1) { if (var1 >= 0 && var1 < this.memberCount) { --this.memberCount; this.sortedMembers = null; if (this.memberCount == 0) { this.memberHashes = null; this.memberNames = null; this.memberRanks = null; this.field1463 = null; this.field1460 = null; this.field1461 = null; this.currentOwner = -1; this.field1451 = -1; } else { System.arraycopy(this.memberRanks, var1 + 1, this.memberRanks, var1, this.memberCount - var1); System.arraycopy(this.field1463, var1 + 1, this.field1463, var1, this.memberCount - var1); System.arraycopy(this.field1460, var1 + 1, this.field1460, var1, this.memberCount - var1); System.arraycopy(this.field1461, var1 + 1, this.field1461, var1, this.memberCount - var1); if (this.memberHashes != null) { System.arraycopy(this.memberHashes, var1 + 1, this.memberHashes, var1, this.memberCount - var1); } if (this.memberNames != null) { System.arraycopy(this.memberNames, var1 + 1, this.memberNames, var1, this.memberCount - var1); } this.updateOwner(); } } else { throw new RuntimeException(""); } } @ObfuscatedName("e") @ObfuscatedSignature( descriptor = "(I)V", garbageValue = "-878605016" ) @Export("updateOwner") void updateOwner() { if (this.memberCount == 0) { this.currentOwner = -1; this.field1451 = -1; } else { this.currentOwner = -1; this.field1451 = -1; int var1 = 0; byte var2 = this.memberRanks[0]; for (int var3 = 1; var3 < this.memberCount; ++var3) { if (this.memberRanks[var3] > var2) { if (var2 == 125) { this.field1451 = var1; } var1 = var3; var2 = this.memberRanks[var3]; } else if (this.field1451 == -1 && this.memberRanks[var3] == 125) { this.field1451 = var3; } } this.currentOwner = var1; if (this.currentOwner != -1) { this.memberRanks[this.currentOwner] = 126; } } } @ObfuscatedName("i") @ObfuscatedSignature( descriptor = "(JLjava/lang/String;I)V", garbageValue = "2091341339" ) void method2637(long var1, String var3) { if (var3 != null && var3.length() == 0) { var3 = null; } if (this.useHashes != var1 > 0L) { throw new RuntimeException(""); } else if (var3 != null != this.useNames) { throw new RuntimeException(""); } else { if (var1 > 0L && (this.bannedMemberHashes == null || this.bannedMemberCount >= this.bannedMemberHashes.length) || var3 != null && (this.bannedMemberNames == null || this.bannedMemberCount >= this.bannedMemberNames.length)) { this.method2602(this.bannedMemberCount + 5); } if (this.bannedMemberHashes != null) { this.bannedMemberHashes[this.bannedMemberCount] = var1; } if (this.bannedMemberNames != null) { this.bannedMemberNames[this.bannedMemberCount] = var3; } ++this.bannedMemberCount; } } @ObfuscatedName("y") @ObfuscatedSignature( descriptor = "(II)V", garbageValue = "1252789986" ) void method2592(int var1) { --this.bannedMemberCount; if (this.bannedMemberCount == 0) { this.bannedMemberHashes = null; this.bannedMemberNames = null; } else { if (this.bannedMemberHashes != null) { System.arraycopy(this.bannedMemberHashes, var1 + 1, this.bannedMemberHashes, var1, this.bannedMemberCount - var1); } if (this.bannedMemberNames != null) { System.arraycopy(this.bannedMemberNames, var1 + 1, this.bannedMemberNames, var1, this.bannedMemberCount - var1); } } } @ObfuscatedName("w") @ObfuscatedSignature( descriptor = "(IBS)I", garbageValue = "-6827" ) int method2619(int var1, byte var2) { if (var2 != 126 && var2 != 127) { if (this.currentOwner == var1 && (this.field1451 == -1 || this.memberRanks[this.field1451] < 125)) { return -1; } else if (this.memberRanks[var1] == var2) { return -1; } else { this.memberRanks[var1] = var2; this.updateOwner(); return var1; } } else { return -1; } } @ObfuscatedName("g") @ObfuscatedSignature( descriptor = "(II)Z", garbageValue = "1553488108" ) boolean method2594(int var1) { if (this.currentOwner != var1 && this.memberRanks[var1] != 126) { this.memberRanks[this.currentOwner] = 125; this.field1451 = this.currentOwner; this.memberRanks[var1] = 126; this.currentOwner = var1; return true; } else { return false; } } @ObfuscatedName("v") @ObfuscatedSignature( descriptor = "(IZI)I", garbageValue = "976194960" ) int method2595(int var1, boolean var2) { if (this.field1461[var1] == var2) { return -1; } else { this.field1461[var1] = var2; return var1; } } @ObfuscatedName("s") @ObfuscatedSignature( descriptor = "(IIIIB)I", garbageValue = "2" ) int method2596(int var1, int var2, int var3, int var4) { int var5 = (1 << var3) - 1; int var6 = var4 == 31 ? -1 : (1 << var4 + 1) - 1; int var7 = var6 ^ var5; var2 <<= var3; var2 &= var7; int var8 = this.field1463[var1]; if ((var8 & var7) == var2) { return -1; } else { var8 &= ~var7; this.field1463[var1] = var8 | var2; return var1; } } @ObfuscatedName("c") @ObfuscatedSignature( descriptor = "(III)Z", garbageValue = "2016619423" ) boolean method2597(int var1, int var2) { if (this.parameters != null) { Node var3 = this.parameters.get((long)var1); if (var3 != null) { if (var3 instanceof IntegerNode) { IntegerNode var4 = (IntegerNode)var3; if (var2 == var4.integer) { return false; } var4.integer = var2; return true; } var3.remove(); } } else { this.parameters = new IterableNodeHashTable(4); } this.parameters.put(new IntegerNode(var2), (long)var1); return true; } @ObfuscatedName("b") @ObfuscatedSignature( descriptor = "(IIIII)Z", garbageValue = "-16777216" ) boolean method2598(int var1, int var2, int var3, int var4) { int var5 = (1 << var3) - 1; int var6 = var4 == 31 ? -1 : (1 << var4 + 1) - 1; int var7 = var6 ^ var5; var2 <<= var3; var2 &= var7; if (this.parameters != null) { Node var8 = this.parameters.get((long)var1); if (var8 != null) { if (var8 instanceof IntegerNode) { IntegerNode var9 = (IntegerNode)var8; if ((var9.integer & var7) == var2) { return false; } var9.integer &= ~var7; var9.integer |= var2; return true; } var8.remove(); } } else { this.parameters = new IterableNodeHashTable(4); } this.parameters.put(new IntegerNode(var2), (long)var1); return true; } @ObfuscatedName("x") boolean method2599(int var1, long var2) { if (this.parameters != null) { Node var4 = this.parameters.get((long)var1); if (var4 != null) { if (var4 instanceof class367) { class367 var5 = (class367)var4; if (var5.field4072 == var2) { return false; } var5.field4072 = var2; return true; } var4.remove(); } } else { this.parameters = new IterableNodeHashTable(4); } this.parameters.put(new class367(var2), (long)var1); return true; } @ObfuscatedName("p") @ObfuscatedSignature( descriptor = "(ILjava/lang/String;I)Z", garbageValue = "-1075042811" ) boolean method2614(int var1, String var2) { if (var2 == null) { var2 = ""; } else if (var2.length() > 80) { var2 = var2.substring(0, 80); } if (this.parameters != null) { Node var3 = this.parameters.get((long)var1); if (var3 != null) { if (var3 instanceof ObjectNode) { ObjectNode var4 = (ObjectNode)var3; if (var4.obj instanceof String) { if (var2.equals(var4.obj)) { return false; } var4.remove(); this.parameters.put(new ObjectNode(var2), var4.key); return true; } } var3.remove(); } } else { this.parameters = new IterableNodeHashTable(4); } this.parameters.put(new ObjectNode(var2), (long)var1); return true; } @ObfuscatedName("z") @ObfuscatedSignature( descriptor = "(Lot;I)V", garbageValue = "-2130306293" ) void method2601(Buffer var1) { int var2 = var1.readUnsignedByte(); if (var2 >= 1 && var2 <= 6) { int var3 = var1.readUnsignedByte(); if ((var3 & 1) != 0) { this.useHashes = true; } if ((var3 & 2) != 0) { this.useNames = true; } if (!this.useHashes) { this.memberHashes = null; this.bannedMemberHashes = null; } if (!this.useNames) { this.memberNames = null; this.bannedMemberNames = null; } this.field1447 = var1.readInt(); this.field1449 = var1.readInt(); if (var2 <= 3 && this.field1449 != 0) { this.field1449 += 16912800; } this.memberCount = var1.readUnsignedShort(); this.bannedMemberCount = var1.readUnsignedByte(); this.name = var1.readStringCp1252NullTerminated(); if (var2 >= 4) { var1.readInt(); } this.allowGuests = var1.readUnsignedByte() == 1; this.field1450 = var1.readByte(); this.field1452 = var1.readByte(); this.field1459 = var1.readByte(); this.field1466 = var1.readByte(); int var4; if (this.memberCount > 0) { if (this.useHashes && (this.memberHashes == null || this.memberHashes.length < this.memberCount)) { this.memberHashes = new long[this.memberCount]; } if (this.useNames && (this.memberNames == null || this.memberNames.length < this.memberCount)) { this.memberNames = new String[this.memberCount]; } if (this.memberRanks == null || this.memberRanks.length < this.memberCount) { this.memberRanks = new byte[this.memberCount]; } if (this.field1463 == null || this.field1463.length < this.memberCount) { this.field1463 = new int[this.memberCount]; } if (this.field1460 == null || this.field1460.length < this.memberCount) { this.field1460 = new int[this.memberCount]; } if (this.field1461 == null || this.field1461.length < this.memberCount) { this.field1461 = new boolean[this.memberCount]; } for (var4 = 0; var4 < this.memberCount; ++var4) { if (this.useHashes) { this.memberHashes[var4] = var1.readLong(); } if (this.useNames) { this.memberNames[var4] = var1.readStringCp1252NullTerminatedOrNull(); } this.memberRanks[var4] = var1.readByte(); if (var2 >= 2) { this.field1463[var4] = var1.readInt(); } if (var2 >= 5) { this.field1460[var4] = var1.readUnsignedShort(); } else { this.field1460[var4] = 0; } if (var2 >= 6) { this.field1461[var4] = var1.readUnsignedByte() == 1; } else { this.field1461[var4] = false; } } this.updateOwner(); } if (this.bannedMemberCount > 0) { if (this.useHashes && (this.bannedMemberHashes == null || this.bannedMemberHashes.length < this.bannedMemberCount)) { this.bannedMemberHashes = new long[this.bannedMemberCount]; } if (this.useNames && (this.bannedMemberNames == null || this.bannedMemberNames.length < this.bannedMemberCount)) { this.bannedMemberNames = new String[this.bannedMemberCount]; } for (var4 = 0; var4 < this.bannedMemberCount; ++var4) { if (this.useHashes) { this.bannedMemberHashes[var4] = var1.readLong(); } if (this.useNames) { this.bannedMemberNames[var4] = var1.readStringCp1252NullTerminatedOrNull(); } } } if (var2 >= 3) { var4 = var1.readUnsignedShort(); if (var4 > 0) { this.parameters = new IterableNodeHashTable(var4 < 16 ? InvDefinition.method2881(var4) : 16); while (var4-- > 0) { int var5 = var1.readInt(); int var6 = var5 & 1073741823; int var7 = var5 >>> 30; if (var7 == 0) { int var12 = var1.readInt(); this.parameters.put(new IntegerNode(var12), (long)var6); } else if (var7 == 1) { long var10 = var1.readLong(); this.parameters.put(new class367(var10), (long)var6); } else if (var7 == 2) { String var8 = var1.readStringCp1252NullTerminated(); this.parameters.put(new ObjectNode(var8), (long)var6); } } } } } else { throw new RuntimeException("" + var2); } } @ObfuscatedName("f") @ObfuscatedSignature( descriptor = "(Lky;IIIBZI)V", garbageValue = "-1472110152" ) @Export("requestNetFile") static void requestNetFile(Archive var0, int var1, int var2, int var3, byte var4, boolean var5) { long var6 = (long)((var1 << 16) + var2); NetFileRequest var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityWrites.get(var6); if (var8 == null) { var8 = (NetFileRequest)NetCache.NetCache_pendingPriorityResponses.get(var6); if (var8 == null) { var8 = (NetFileRequest)NetCache.NetCache_pendingWrites.get(var6); if (var8 != null) { if (var5) { var8.removeDual(); NetCache.NetCache_pendingPriorityWrites.put(var8, var6); --NetCache.NetCache_pendingWritesCount; ++NetCache.NetCache_pendingPriorityWritesCount; } } else { if (!var5) { var8 = (NetFileRequest)NetCache.NetCache_pendingResponses.get(var6); if (var8 != null) { return; } } var8 = new NetFileRequest(); var8.archive = var0; var8.crc = var3; var8.padding = var4; if (var5) { NetCache.NetCache_pendingPriorityWrites.put(var8, var6); ++NetCache.NetCache_pendingPriorityWritesCount; } else { NetCache.NetCache_pendingWritesQueue.addFirst(var8); NetCache.NetCache_pendingWrites.put(var8, var6); ++NetCache.NetCache_pendingWritesCount; } } } } } }