Files
runelite/runescape-client/src/main/java/ByteArrayPool.java
2019-07-18 15:21:46 +02:00

101 lines
2.8 KiB
Java

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("kr")
@Implements("ByteArrayPool")
public class ByteArrayPool {
@ObfuscatedName("q")
@ObfuscatedGetter(
intValue = -2074547709
)
@Export("ByteArrayPool_smallCount")
static int ByteArrayPool_smallCount;
@ObfuscatedName("w")
@ObfuscatedGetter(
intValue = 371626607
)
@Export("ByteArrayPool_mediumCount")
static int ByteArrayPool_mediumCount;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = -1320623185
)
@Export("ByteArrayPool_largeCount")
static int ByteArrayPool_largeCount;
@ObfuscatedName("p")
@Export("ByteArrayPool_small")
static byte[][] ByteArrayPool_small;
@ObfuscatedName("k")
@Export("ByteArrayPool_medium")
static byte[][] ByteArrayPool_medium;
@ObfuscatedName("l")
@Export("ByteArrayPool_large")
static byte[][] ByteArrayPool_large;
@ObfuscatedName("b")
@Export("ByteArrayPool_alternativeSizes")
public static int[] ByteArrayPool_alternativeSizes;
static {
ByteArrayPool_smallCount = 0;
ByteArrayPool_mediumCount = 0;
ByteArrayPool_largeCount = 0;
ByteArrayPool_small = new byte[1000][];
ByteArrayPool_medium = new byte[250][];
ByteArrayPool_large = new byte[50][];
}
@ObfuscatedName("q")
@ObfuscatedSignature(
signature = "(IZB)[B",
garbageValue = "58"
)
@Export("ByteArrayPool_get")
static synchronized byte[] ByteArrayPool_get(int var0, boolean var1) {
byte[] var2;
if (var0 != 100) {
if (var0 < 100) {
}
} else if (ByteArrayPool_smallCount > 0) {
var2 = ByteArrayPool_small[--ByteArrayPool_smallCount];
ByteArrayPool_small[ByteArrayPool_smallCount] = null;
return var2;
}
if (var0 != 5000) {
if (var0 < 5000) {
}
} else if (ByteArrayPool_mediumCount > 0) {
var2 = ByteArrayPool_medium[--ByteArrayPool_mediumCount];
ByteArrayPool_medium[ByteArrayPool_mediumCount] = null;
return var2;
}
if (var0 != 30000) {
if (var0 < 30000) {
}
} else if (ByteArrayPool_largeCount > 0) {
var2 = ByteArrayPool_large[--ByteArrayPool_largeCount];
ByteArrayPool_large[ByteArrayPool_largeCount] = null;
return var2;
}
if (class189.ByteArrayPool_arrays != null) {
for (int var4 = 0; var4 < ByteArrayPool_alternativeSizes.length; ++var4) {
if (ByteArrayPool_alternativeSizes[var4] != var0) {
if (var0 < ByteArrayPool_alternativeSizes[var4]) {
}
} else if (class43.ByteArrayPool_altSizeArrayCounts[var4] > 0) {
byte[] var3 = class189.ByteArrayPool_arrays[var4][--class43.ByteArrayPool_altSizeArrayCounts[var4]];
class189.ByteArrayPool_arrays[var4][class43.ByteArrayPool_altSizeArrayCounts[var4]] = null;
return var3;
}
}
}
return new byte[var0];
}
}