import java.security.SecureRandom; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import net.runelite.mapping.Export; import net.runelite.mapping.Implements; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("co") @Implements("SecureRandomFuture") public class SecureRandomFuture { @ObfuscatedName("f") @ObfuscatedSignature( signature = "Ldg;" ) @Export("soundSystem") static SoundSystem soundSystem; @ObfuscatedName("gw") @Export("regionMapArchiveIds") static int[] regionMapArchiveIds; @ObfuscatedName("q") @Export("executor") ExecutorService executor; @ObfuscatedName("w") @Export("future") Future future; SecureRandomFuture() { this.executor = Executors.newSingleThreadExecutor(); this.future = this.executor.submit(new SecureRandomCallable()); } @ObfuscatedName("q") @ObfuscatedSignature( signature = "(I)V", garbageValue = "1961789418" ) @Export("shutdown") void shutdown() { this.executor.shutdown(); this.executor = null; } @ObfuscatedName("w") @ObfuscatedSignature( signature = "(I)Z", garbageValue = "-2036940847" ) @Export("isDone") boolean isDone() { return this.future.isDone(); } @ObfuscatedName("e") @ObfuscatedSignature( signature = "(I)Ljava/security/SecureRandom;", garbageValue = "1181780583" ) @Export("get") SecureRandom get() { try { return (SecureRandom)this.future.get(); } catch (Exception var4) { SecureRandom var3 = new SecureRandom(); var3.nextInt(); return var3; } } @ObfuscatedName("w") @ObfuscatedSignature( signature = "(ILkm;Liu;I)V", garbageValue = "-1214592487" ) static void method2056(int var0, ArchiveDisk var1, Archive var2) { byte[] var3 = null; synchronized(ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue) { for (ArchiveDiskAction var5 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.last(); var5 != null; var5 = (ArchiveDiskAction)ArchiveDiskActionHandler.ArchiveDiskActionHandler_requestQueue.previous()) { if ((long)var0 == var5.key && var1 == var5.archiveDisk && var5.type == 0) { var3 = var5.data; break; } } } if (var3 != null) { var2.load(var1, var0, var3, true); } else { byte[] var4 = var1.read(var0); var2.load(var1, var0, var4, true); } } @ObfuscatedName("e") @ObfuscatedSignature( signature = "(I)V", garbageValue = "-1709939450" ) @Export("WorldMapRegion_clearCachedSprites") static void WorldMapRegion_clearCachedSprites() { WorldMapRegion.WorldMapRegion_cachedSprites.clear(); } }