diff options
Diffstat (limited to 'src/Java/gtPlusPlus')
10 files changed, 2459 insertions, 64 deletions
diff --git a/src/Java/gtPlusPlus/core/util/reflect/ReflectionUtils.java b/src/Java/gtPlusPlus/core/util/reflect/ReflectionUtils.java index 039cddb6d6..dee9d76a4c 100644 --- a/src/Java/gtPlusPlus/core/util/reflect/ReflectionUtils.java +++ b/src/Java/gtPlusPlus/core/util/reflect/ReflectionUtils.java @@ -311,6 +311,30 @@ public class ReflectionUtils { } return m; } + + public static Method getMethodRecursively(final Class<?> clazz, final String fieldName) throws NoSuchMethodException { + try { + Method k = clazz.getDeclaredMethod(fieldName); + makeMethodAccessible(k); + return k; + } catch (final NoSuchMethodException e) { + final Class<?> superClass = clazz.getSuperclass(); + if (superClass == null) { + throw e; + } + return getMethod(superClass, fieldName); + } + } + + public static void makeMethodAccessible(final Method field) { + if (!Modifier.isPublic(field.getModifiers()) || + !Modifier.isPublic(field.getDeclaringClass().getModifiers())) + { + field.setAccessible(true); + } + } + + public static Class<?> getNonPublicClass(final String className) { Class<?> c = null; diff --git a/src/Java/gtPlusPlus/preloader/CustomClassLoader.java b/src/Java/gtPlusPlus/preloader/CustomClassLoader.java new file mode 100644 index 0000000000..56394c11f0 --- /dev/null +++ b/src/Java/gtPlusPlus/preloader/CustomClassLoader.java @@ -0,0 +1,57 @@ +package gtPlusPlus.preloader; + +import java.security.AllPermission; +import java.security.CodeSource; +import java.security.Permissions; +import java.security.ProtectionDomain; +import java.security.cert.Certificate; +import java.util.HashMap; + +import org.objectweb.asm.ClassWriter; +import org.objectweb.asm.tree.ClassNode; + +public class CustomClassLoader extends ClassLoader { + + private HashMap<String, ClassNode> classes = new HashMap<String, ClassNode>(); + + @Override + + public Class<?> loadClass(String name) throws ClassNotFoundException { + return findClass(name); + } + + @Override + + protected Class<?> findClass(String name) throws ClassNotFoundException { + ClassNode node = classes.get(name.replace('.', '/')); + if (node != null) + return nodeToClass(node); + else + return super.findClass(name); + } + + public final void addNode(ClassNode node) { + classes.put(node.name, node); + } + + private final Class<?> nodeToClass(ClassNode node) { + if (super.findLoadedClass(node.name) != null) + return findLoadedClass(node.name); + ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); + node.accept(cw); + byte[] b = cw.toByteArray(); + return defineClass(node.name.replace('/', '.'), b, 0, b.length, getDomain()); + } + + private final ProtectionDomain getDomain() { + CodeSource code = new CodeSource(null, (Certificate[]) null); + return new ProtectionDomain(code, getPermissions()); + } + + private final Permissions getPermissions() { + Permissions permissions = new Permissions(); + permissions.add(new AllPermission()); + return permissions; + } + +}
\ No newline at end of file diff --git a/src/Java/gtPlusPlus/preloader/DevHelper.java b/src/Java/gtPlusPlus/preloader/DevHelper.java index 1be486724a..1bfbc0b6eb 100644 --- a/src/Java/gtPlusPlus/preloader/DevHelper.java +++ b/src/Java/gtPlusPlus/preloader/DevHelper.java @@ -28,9 +28,9 @@ public class DevHelper { public DevHelper() { } - - - + + + public boolean IsObfuscatedEnvironment() { // Are we in a 'decompiled' environment? boolean deobfuscatedEnvironment = false; @@ -55,16 +55,16 @@ public class DevHelper { s2 = getSRG(s); try { - a = ReflectionUtils.getMethod(c, s1, varags); - if (a != null) { - return a; - } - else { - b = ReflectionUtils.getMethod(c, s2, varags); - if (b != null) { - return b; + a = ReflectionUtils.getMethod(c, s1, varags); + if (a != null) { + return a; + } + else { + b = ReflectionUtils.getMethod(c, s2, varags); + if (b != null) { + return b; + } } - } } catch (Exception e) {} return null; @@ -117,11 +117,24 @@ public class DevHelper { return DevHelperInternals.srgToForge.get(mSrgName); } + public String getObfuscated(String mDeob) { + return DevHelperInternals.deObToOb.get(mDeob); + } + + public String getDeobfuscated(String mOb) { + return DevHelperInternals.obToDeOb.get(mOb); + } + public static class DevHelperInternals { public static Map<String, String> srgToForge = new HashMap<String, String>(); public static Map<String, String> forgeToSrg = new HashMap<String, String>(); private static WeakAutoMap<Pair<String, String>> mInitMap = new WeakAutoMap<Pair<String, String>>(); + //Obfuscation + public static Map<String, String> obToDeOb = new HashMap<String, String>(); + public static Map<String, String> deObToOb = new HashMap<String, String>(); + private static WeakAutoMap<Pair<String, String>> mObInitMap = new WeakAutoMap<Pair<String, String>>(); + private static boolean init() { init1(); init2(); @@ -135,8 +148,19 @@ public class DevHelper { forgeToSrg.put(forge, srg); } } - } - return srgToForge.size() > 0 && forgeToSrg.size() > 0; + } + + if (mObInitMap.size() > 0) { + for (Pair<String, String> p : mObInitMap) { + if (p != null) { + String ob = p.getKey(); + String deOb = p.getValue(); + obToDeOb.put(ob, deOb); + deObToOb.put(deOb, ob); + } + } + } + return srgToForge.size() > 0 && forgeToSrg.size() > 0 && obToDeOb.size() > 0 && deObToOb.size() > 0; } private static void init1() { @@ -4968,6 +4992,2050 @@ public class DevHelper { mInitMap.put(new Pair<String, String>("func_99999_d", "run")); } + public void init4() { + mObInitMap.put(new Pair<String, String>("aqc", "net/minecraft/world/chunk/storage/IChunkLoader")); + mObInitMap.put(new Pair<String, String>("amd", "net/minecraft/block/BlockMycelium")); + mObInitMap.put(new Pair<String, String>("aag", "net/minecraft/inventory/ContainerEnchantment")); + mObInitMap.put(new Pair<String, String>("aie", "net/minecraft/world/biome/WorldChunkManagerHell")); + mObInitMap.put(new Pair<String, String>("aub", + "net/minecraft/world/gen/structure/ComponentScatteredFeaturePieces$DesertPyramid")); + mObInitMap.put(new Pair<String, String>("bue", "net/minecraft/client/stream/ChatController")); + mObInitMap.put(new Pair<String, String>("bqf", "net/minecraft/client/renderer/texture/TextureManager")); + mObInitMap.put(new Pair<String, String>("bei", "net/minecraft/client/gui/achievement/GuiAchievements")); + mObInitMap.put(new Pair<String, String>("bih", "net/minecraft/client/model/ModelSquid")); + mObInitMap.put(new Pair<String, String>("bmg", "net/minecraft/client/shader/Framebuffer")); + mObInitMap.put(new Pair<String, String>("na", "net/minecraft/client/network/NetHandlerHandshakeMemory")); + mObInitMap + .put(new Pair<String, String>("jb", "net/minecraft/network/play/client/C02PacketUseEntity$Action")); + mObInitMap.put(new Pair<String, String>("fc", "net/minecraft/util/MessageDeserializer2")); + mObInitMap.put(new Pair<String, String>("bd", "net/minecraft/command/server/CommandPardonIp")); + mObInitMap.put(new Pair<String, String>("amw", "net/minecraft/block/BlockPumpkin")); + mObInitMap.put(new Pair<String, String>("aey", "net/minecraft/item/crafting/RecipeFireworks")); + mObInitMap.put(new Pair<String, String>("aaz", "net/minecraft/inventory/ContainerDispenser")); + mObInitMap.put(new Pair<String, String>("aix", "net/minecraft/world/biome/BiomeGenEnd")); + mObInitMap.put(new Pair<String, String>("z", "net/minecraft/command/CommandHandler")); + mObInitMap.put(new Pair<String, String>("bqy", "net/minecraft/client/resources/IResourceManager")); + mObInitMap.put(new Pair<String, String>("nt", "net/minecraft/server/management/PlayerProfileCache$1")); + mObInitMap.put(new Pair<String, String>("ju", "net/minecraft/network/login/server/S00PacketDisconnect")); + mObInitMap.put(new Pair<String, String>("fv", "net/minecraft/network/play/INetHandlerPlayClient")); + mObInitMap.put(new Pair<String, String>("abn", "net/minecraft/item/ItemSoup")); + mObInitMap.put(new Pair<String, String>("afm", "net/minecraft/enchantment/EnchantmentArrowDamage")); + mObInitMap.put(new Pair<String, String>("brm", "net/minecraft/client/resources/SkinManager$3")); + mObInitMap.put(new Pair<String, String>("aqu", "net/minecraft/world/gen/ChunkProviderFlat")); + mObInitMap.put(new Pair<String, String>("aut", + "net/minecraft/world/gen/structure/StructureStrongholdPieces$Prison")); + mObInitMap.put(new Pair<String, String>("ays", "net/minecraft/world/storage/WorldInfo")); + mObInitMap.put(new Pair<String, String>("bbq", "net/minecraft/util/MinecraftError")); + mObInitMap.put(new Pair<String, String>("bfp", "net/minecraft/util/EnchantmentNameParts")); + mObInitMap.put( + new Pair<String, String>("bjo", "net/minecraft/client/multiplayer/ServerData$ServerResourceMode")); + mObInitMap.put(new Pair<String, String>("bnn", "net/minecraft/client/renderer/entity/RenderManager")); + mObInitMap.put(new Pair<String, String>("ck", "net/minecraft/dispenser/IBlockSource")); + mObInitMap.put(new Pair<String, String>("zp", "net/minecraft/entity/projectile/EntityWitherSkull")); + mObInitMap.put( + new Pair<String, String>("vq", "net/minecraft/entity/ai/EntityAINearestAttackableTarget$Sorter")); + mObInitMap.put(new Pair<String, String>("rr", "net/minecraft/potion/PotionAbsoption")); + mObInitMap.put(new Pair<String, String>("ns", "net/minecraft/server/management/PlayerProfileCache")); + mObInitMap.put(new Pair<String, String>("anj", "net/minecraft/block/BlockSapling")); + mObInitMap.put(new Pair<String, String>("afl", "net/minecraft/item/crafting/RecipesWeapons")); + mObInitMap.put(new Pair<String, String>("ajk", "net/minecraft/block/Block$2")); + mObInitMap.put(new Pair<String, String>("avh", "net/minecraft/world/gen/structure/MapGenStructure$3")); + mObInitMap.put(new Pair<String, String>("bce", "net/minecraft/client/gui/GuiLabel")); + mObInitMap.put(new Pair<String, String>("bgd", "net/minecraft/client/gui/ServerListEntryNormal$1")); + mObInitMap.put(new Pair<String, String>("brl", "net/minecraft/client/resources/SkinManager$2")); + mObInitMap.put(new Pair<String, String>("we", "net/minecraft/entity/passive/EntityBat")); + mObInitMap.put(new Pair<String, String>("og", "net/minecraft/server/management/PreYggdrasilConverter$7")); + mObInitMap.put(new Pair<String, String>("kh", "net/minecraft/network/status/INetHandlerStatusServer")); + mObInitMap.put(new Pair<String, String>("gi", "net/minecraft/network/play/server/S3APacketTabComplete")); + mObInitMap.put(new Pair<String, String>("aca", "net/minecraft/creativetab/CreativeTabs$4")); + mObInitMap.put(new Pair<String, String>("azz", "net/minecraft/scoreboard/Score")); + mObInitMap.put(new Pair<String, String>("bgc", "net/minecraft/client/gui/ServerListEntryNormal")); + mObInitMap.put(new Pair<String, String>("boa", "net/minecraft/client/renderer/entity/RenderItem$2")); + mObInitMap.put(new Pair<String, String>("wx", "net/minecraft/entity/IEntityMultiPart")); + mObInitMap.put(new Pair<String, String>("sy", "net/minecraft/entity/IEntityLivingData")); + mObInitMap.put(new Pair<String, String>("oz", "net/minecraft/network/rcon/RConThreadClient")); + mObInitMap.put(new Pair<String, String>("aoq", "net/minecraft/tileentity/TileEntityBeacon")); + mObInitMap.put(new Pair<String, String>("akr", "net/minecraft/block/BlockDynamicLiquid")); + mObInitMap.put(new Pair<String, String>("act", "net/minecraft/item/ItemFishFood")); + mObInitMap.put(new Pair<String, String>("ags", "net/minecraft/block/BlockEventData")); + mObInitMap.put(new Pair<String, String>("bss", "net/minecraft/client/audio/SoundListSerializer")); + mObInitMap.put(new Pair<String, String>("bot", "net/minecraft/client/renderer/entity/RenderSlime")); + mObInitMap.put(new Pair<String, String>("azy", "net/minecraft/scoreboard/ScorePlayerTeam")); + mObInitMap.put(new Pair<String, String>("bcw", "net/minecraft/client/gui/GuiYesNo")); + mObInitMap.put(new Pair<String, String>("bgv", "net/minecraft/client/main/Main$2")); + mObInitMap.put(new Pair<String, String>("bku", "net/minecraft/client/particle/EntityReddustFX")); + mObInitMap.put(new Pair<String, String>("pn", "net/minecraft/util/TupleIntJsonSerializable")); + mObInitMap.put(new Pair<String, String>("lo", "net/minecraft/network/rcon/IServer")); + mObInitMap.put(new Pair<String, String>("hp", "net/minecraft/network/play/server/S0APacketUseBed")); + mObInitMap.put(new Pair<String, String>("dq", "net/minecraft/nbt/NBTTagList")); + mObInitMap.put(new Pair<String, String>("adh", "net/minecraft/item/ItemMap")); + mObInitMap.put(new Pair<String, String>("bph", "net/minecraft/client/shader/ShaderDefault")); + mObInitMap.put(new Pair<String, String>("aso", "net/minecraft/world/gen/feature/WorldGenSwamp")); + mObInitMap.put(new Pair<String, String>("aop", "net/minecraft/block/BlockCarpet")); + mObInitMap.put(new Pair<String, String>("bdk", "net/minecraft/client/gui/GuiLanguage$List")); + mObInitMap.put(new Pair<String, String>("bhj", "net/minecraft/client/model/ModelCreeper")); + mObInitMap.put(new Pair<String, String>("bli", "net/minecraft/util/MovementInput")); + mObInitMap.put(new Pair<String, String>("ee", "net/minecraft/nbt/JsonToNBT$List")); + mObInitMap.put(new Pair<String, String>("af", "net/minecraft/command/server/CommandBanIp")); + mObInitMap.put(new Pair<String, String>("xk", "net/minecraft/entity/item/EntityItem")); + mObInitMap.put(new Pair<String, String>("tl", "net/minecraft/entity/ai/attributes/BaseAttributeMap")); + mObInitMap.put(new Pair<String, String>("pm", "net/minecraft/stats/IStatType")); + mObInitMap + .put(new Pair<String, String>("atc", "net/minecraft/world/gen/structure/StructureMineshaftStart")); + mObInitMap.put(new Pair<String, String>("apd", "net/minecraft/tileentity/TileEntityEnchantmentTable")); + mObInitMap.put(new Pair<String, String>("ale", "net/minecraft/block/BlockFurnace")); + mObInitMap.put(new Pair<String, String>("adg", "net/minecraft/item/ItemLeaves")); + mObInitMap.put(new Pair<String, String>("ahf", "net/minecraft/world/World$4")); + mObInitMap.put(new Pair<String, String>("axb", "net/minecraft/world/gen/layer/GenLayerAddIsland")); + mObInitMap.put(new Pair<String, String>("bpg", "net/minecraft/client/util/JsonBlendingMode")); + mObInitMap + .put(new Pair<String, String>("net/minecraft/realms/RealmsMth", "net/minecraft/realms/RealmsMth")); + mObInitMap.put(new Pair<String, String>("qa", "net/minecraft/util/IntHashMap$Entry")); + mObInitMap.put(new Pair<String, String>("mb", "net/minecraft/server/gui/MinecraftServerGui$3")); + mObInitMap.put( + new Pair<String, String>("ic", "net/minecraft/network/play/server/S3BPacketScoreboardObjective")); + mObInitMap.put(new Pair<String, String>("ed", "net/minecraft/nbt/JsonToNBT$Compound")); + mObInitMap.put(new Pair<String, String>("net/minecraft/realms/RendererUtility", + "net/minecraft/realms/RendererUtility")); + mObInitMap.put(new Pair<String, String>("atv", + "net/minecraft/world/gen/structure/StructureNetherBridgePieces$Stairs")); + mObInitMap.put(new Pair<String, String>("apw", "net/minecraft/world/chunk/EmptyChunk")); + mObInitMap.put(new Pair<String, String>("alx", "net/minecraft/block/BlockLog")); + mObInitMap.put(new Pair<String, String>("adz", "net/minecraft/item/ItemSign")); + mObInitMap.put(new Pair<String, String>("ahy", "net/minecraft/world/biome/BiomeCache")); + mObInitMap.put(new Pair<String, String>("axu", "net/minecraft/world/gen/layer/GenLayerRiver")); + mObInitMap.put(new Pair<String, String>("bpz", "net/minecraft/client/renderer/texture/TextureMap")); + mObInitMap.put(new Pair<String, String>("yr", "net/minecraft/entity/monster/EntityZombie$1")); + mObInitMap.put(new Pair<String, String>("us", "net/minecraft/entity/ai/EntityAIMoveThroughVillage")); + mObInitMap.put(new Pair<String, String>("mu", "net/minecraft/world/WorldServer$1")); + mObInitMap.put( + new Pair<String, String>("iv", "net/minecraft/network/play/client/C0FPacketConfirmTransaction")); + mObInitMap.put(new Pair<String, String>("ew", "net/minecraft/network/NetworkStatistics$PacketStat")); + mObInitMap.put(new Pair<String, String>("ax", "net/minecraft/command/server/CommandListBans")); + mObInitMap.put( + new Pair<String, String>("net/minecraft/realms/ServerPing", "net/minecraft/realms/ServerPing")); + mObInitMap.put(new Pair<String, String>("aqk", "net/minecraft/world/chunk/storage/AnvilChunkLoader")); + mObInitMap.put(new Pair<String, String>("aml", "net/minecraft/block/BlockOldLeaf")); + mObInitMap.put(new Pair<String, String>("aen", "net/minecraft/potion/PotionHelper")); + mObInitMap.put(new Pair<String, String>("aao", "net/minecraft/inventory/ContainerHorseInventory$2")); + mObInitMap.put(new Pair<String, String>("aim", "net/minecraft/world/biome/BiomeGenMushroomIsland")); + mObInitMap.put(new Pair<String, String>("o", "net/minecraft/crash/CrashReportCategory$Entry")); + mObInitMap.put(new Pair<String, String>("bum", "net/minecraft/client/stream/IStream")); + mObInitMap.put(new Pair<String, String>("bqn", "net/minecraft/client/resources/AbstractResourcePack")); + mObInitMap.put(new Pair<String, String>("bar", "net/minecraft/client/Minecraft$11")); + mObInitMap.put(new Pair<String, String>("beq", "net/minecraft/client/gui/achievement/GuiStats$Stats")); + mObInitMap.put(new Pair<String, String>("bip", "net/minecraft/client/model/ModelZombie")); + mObInitMap.put(new Pair<String, String>("bmo", + "net/minecraft/client/renderer/tileentity/TileEntityEnderChestRenderer")); + mObInitMap.put(new Pair<String, String>("ni", "net/minecraft/network/NetHandlerPlayServer$1")); + mObInitMap.put(new Pair<String, String>("jj", "net/minecraft/network/play/client/C0BPacketEntityAction")); + mObInitMap.put(new Pair<String, String>("fk", "net/minecraft/util/IChatComponent$Serializer")); + mObInitMap.put(new Pair<String, String>("bl", "net/minecraft/command/ServerCommandManager")); + mObInitMap.put(new Pair<String, String>("yq", "net/minecraft/entity/monster/EntityZombie")); + mObInitMap.put(new Pair<String, String>("abc", "net/minecraft/item/ItemArmor$1")); + mObInitMap.put(new Pair<String, String>("afb", "net/minecraft/item/crafting/RecipesMapCloning")); + mObInitMap.put(new Pair<String, String>("brb", + "net/minecraft/client/resources/ResourcePackFileNotFoundException")); + mObInitMap.put(new Pair<String, String>("aqj", "net/minecraft/world/chunk/storage/RegionFileCache")); + mObInitMap.put( + new Pair<String, String>("aui", "net/minecraft/world/gen/structure/StructureStrongholdPieces")); + mObInitMap.put(new Pair<String, String>("bbf", "net/minecraft/client/Minecraft$9")); + mObInitMap.put(new Pair<String, String>("bfe", "net/minecraft/client/gui/GuiScreenBook")); + mObInitMap.put(new Pair<String, String>("bjd", "net/minecraft/client/multiplayer/ChunkProviderClient")); + mObInitMap.put(new Pair<String, String>("bnc", "net/minecraft/client/renderer/entity/RenderBat")); + mObInitMap.put(new Pair<String, String>("ze", "net/minecraft/entity/projectile/EntityFireball")); + mObInitMap.put(new Pair<String, String>("vf", "net/minecraft/entity/ai/EntityAIRestrictSun")); + mObInitMap.put(new Pair<String, String>("rg", "net/minecraft/client/renderer/texture/IIconRegister")); + mObInitMap.put(new Pair<String, String>("afa", "net/minecraft/item/crafting/FurnaceRecipes")); + mObInitMap.put(new Pair<String, String>("bby", "net/minecraft/client/gui/MapItemRenderer$1")); + mObInitMap.put(new Pair<String, String>("bfx", "net/minecraft/client/gui/inventory/GuiEditSign")); + mObInitMap.put(new Pair<String, String>("bra", "net/minecraft/client/resources/IResourcePack")); + mObInitMap.put(new Pair<String, String>("zx", "net/minecraft/inventory/ContainerBeacon")); + mObInitMap.put(new Pair<String, String>("vy", "net/minecraft/village/VillageDoorInfo")); + mObInitMap.put(new Pair<String, String>("arq", "net/minecraft/world/gen/feature/WorldGenFire")); + mObInitMap.put(new Pair<String, String>("anr", "net/minecraft/block/BlockStainedGlassPane")); + mObInitMap.put(new Pair<String, String>("abu", "net/minecraft/creativetab/CreativeTabs$1")); + mObInitMap.put(new Pair<String, String>("aft", "net/minecraft/enchantment/Enchantment")); + mObInitMap.put(new Pair<String, String>("ajs", "net/minecraft/block/BlockButton")); + mObInitMap.put(new Pair<String, String>("avp", "net/minecraft/world/gen/structure/StructureVillagePieces")); + mObInitMap.put(new Pair<String, String>("azo", "net/minecraft/world/storage/SaveHandlerMP")); + mObInitMap.put(new Pair<String, String>("brt", + "net/minecraft/client/resources/data/BaseMetadataSectionSerializer")); + mObInitMap.put(new Pair<String, String>("bfw", "net/minecraft/client/gui/GuiMerchant$MerchantButton")); + mObInitMap.put(new Pair<String, String>("bjv", "net/minecraft/client/particle/EntityBubbleFX")); + mObInitMap.put(new Pair<String, String>("bnu", "net/minecraft/client/renderer/entity/RenderGiantZombie")); + mObInitMap.put(new Pair<String, String>("wm", "net/minecraft/entity/passive/EntityMooshroom")); + mObInitMap.put(new Pair<String, String>("oo", "net/minecraft/server/management/UserList$Serializer")); + mObInitMap.put(new Pair<String, String>("kp", "net/minecraft/init/Bootstrap$12")); + mObInitMap.put(new Pair<String, String>("gq", "net/minecraft/network/play/server/S2FPacketSetSlot")); + mObInitMap.put(new Pair<String, String>("cr", "net/minecraft/util/EnumFacing")); + mObInitMap.put(new Pair<String, String>("aof", "net/minecraft/block/BlockTripWire")); + mObInitMap.put(new Pair<String, String>("akg", "net/minecraft/block/BlockDaylightDetector")); + mObInitMap.put(new Pair<String, String>("aci", "net/minecraft/item/ItemDoublePlant")); + mObInitMap.put(new Pair<String, String>("agh", "net/minecraft/enchantment/EnchantmentOxygen")); + mObInitMap.put(new Pair<String, String>("bsh", + "net/minecraft/client/resources/data/PackMetadataSectionSerializer")); + mObInitMap.put(new Pair<String, String>("bcl", "net/minecraft/client/gui/GuiOptionsRowList$Row")); + mObInitMap.put(new Pair<String, String>("bgk", "net/minecraft/client/gui/GuiResourcePackList")); + mObInitMap.put(new Pair<String, String>("bkj", "net/minecraft/client/particle/EntityHugeExplodeFX")); + mObInitMap.put(new Pair<String, String>("boi", "net/minecraft/client/renderer/entity/RenderMinecart")); + mObInitMap.put(new Pair<String, String>("pc", "net/minecraft/stats/AchievementList")); + mObInitMap.put(new Pair<String, String>("ld", "net/minecraft/client/util/JsonException$Entry")); + mObInitMap.put(new Pair<String, String>("he", "net/minecraft/network/play/server/S34PacketMaps")); + mObInitMap.put(new Pair<String, String>("df", "net/minecraft/nbt/NBTTagByteArray")); + mObInitMap.put(new Pair<String, String>("asd", "net/minecraft/world/gen/feature/WorldGenDungeons")); + mObInitMap.put( + new Pair<String, String>("awc", "net/minecraft/world/gen/structure/StructureVillagePieces$House3")); + mObInitMap.put(new Pair<String, String>("dy", "net/minecraft/nbt/NBTBase")); + mObInitMap.put(new Pair<String, String>("ta", "net/minecraft/entity/IEntityOwnable")); + mObInitMap.put(new Pair<String, String>("pb", "net/minecraft/stats/Achievement")); + mObInitMap.put(new Pair<String, String>("asw", "net/minecraft/world/gen/structure/MapGenMineshaft")); + mObInitMap.put(new Pair<String, String>("aox", "net/minecraft/tileentity/TileEntityCommandBlock")); + mObInitMap.put(new Pair<String, String>("aky", "net/minecraft/block/BlockFarmland")); + mObInitMap.put(new Pair<String, String>("agz", "net/minecraft/world/GameRules$Value")); + mObInitMap.put(new Pair<String, String>("awv", "net/minecraft/block/material/MapColor")); + mObInitMap.put(new Pair<String, String>("bds", "net/minecraft/client/gui/GuiFlatPresets$ListSlot")); + mObInitMap.put(new Pair<String, String>("bhr", "net/minecraft/client/model/ModelBase")); + mObInitMap.put(new Pair<String, String>("bsz", "net/minecraft/server/integrated/IntegratedServer$2")); + mObInitMap.put(new Pair<String, String>("xs", "net/minecraft/entity/item/EntityMinecartEmpty")); + mObInitMap.put(new Pair<String, String>("tt", "net/minecraft/entity/ai/EntityJumpHelper")); + mObInitMap.put(new Pair<String, String>("pu", "net/minecraft/util/JsonUtils")); + mObInitMap.put(new Pair<String, String>("lv", "net/minecraft/server/dedicated/DedicatedServer$2")); + mObInitMap.put(new Pair<String, String>("hw", "net/minecraft/network/play/server/S1CPacketEntityMetadata")); + mObInitMap.put(new Pair<String, String>("dx", "net/minecraft/nbt/NBTTagString")); + mObInitMap.put(new Pair<String, String>("atk", + "net/minecraft/world/gen/structure/StructureNetherBridgePieces$Corridor4")); + mObInitMap.put(new Pair<String, String>("apl", "net/minecraft/tileentity/TileEntityNote")); + mObInitMap.put(new Pair<String, String>("alm", "net/minecraft/block/BlockHay")); + mObInitMap.put(new Pair<String, String>("ado", "net/minecraft/item/ItemPiston")); + mObInitMap.put(new Pair<String, String>("ahn", "net/minecraft/world/EnumSkyBlock")); + mObInitMap.put(new Pair<String, String>("axj", "net/minecraft/world/gen/layer/GenLayerFuzzyZoom")); + mObInitMap.put(new Pair<String, String>("btn", + "net/minecraft/client/audio/SoundManager$SoundSystemStarterThread")); + mObInitMap.put(new Pair<String, String>("bpo", "net/minecraft/client/shader/ShaderUniform")); + mObInitMap.put(new Pair<String, String>("bhq", "net/minecraft/client/model/ModelMinecart")); + mObInitMap.put(new Pair<String, String>("blp", "net/minecraft/client/renderer/RenderSorter")); + mObInitMap.put(new Pair<String, String>("yg", "net/minecraft/entity/monster/EntityMob")); + mObInitMap.put(new Pair<String, String>("uh", "net/minecraft/entity/ai/EntityAIFollowParent")); + mObInitMap.put(new Pair<String, String>("qi", "net/minecraft/profiler/Profiler")); + mObInitMap.put(new Pair<String, String>("mj", "net/minecraft/client/renderer/DestroyBlockProgress")); + mObInitMap.put(new Pair<String, String>("ik", "net/minecraft/network/play/server/S18PacketEntityTeleport")); + mObInitMap.put(new Pair<String, String>("el", "net/minecraft/network/NetworkManager$2")); + mObInitMap.put(new Pair<String, String>("am", "net/minecraft/command/CommandEffect")); + mObInitMap.put(new Pair<String, String>("ama", "net/minecraft/block/BlockMobSpawner")); + mObInitMap.put(new Pair<String, String>("aec", "net/minecraft/item/ItemSnow")); + mObInitMap.put(new Pair<String, String>("aad", "net/minecraft/inventory/ContainerChest")); + mObInitMap.put(new Pair<String, String>("aib", "net/minecraft/world/biome/WorldChunkManager")); + mObInitMap.put(new Pair<String, String>("d", "net/minecraft/crash/CrashReport$2")); + mObInitMap.put(new Pair<String, String>("bub", + "net/minecraft/client/stream/BroadcastController$SwitchBroadcastState")); + mObInitMap.put(new Pair<String, String>("bqc", "net/minecraft/client/renderer/texture/TextureMap$3")); + mObInitMap.put(new Pair<String, String>("bag", "net/minecraft/scoreboard/ScoreHealthCriteria")); + mObInitMap.put(new Pair<String, String>("bef", "net/minecraft/client/gui/GuiVideoSettings")); + mObInitMap.put(new Pair<String, String>("bie", "net/minecraft/client/model/ModelSlime")); + mObInitMap.put(new Pair<String, String>("bmd", "net/minecraft/client/renderer/RenderList")); + mObInitMap.put(new Pair<String, String>("ba", "net/minecraft/command/server/CommandMessageRaw")); + mObInitMap.put(new Pair<String, String>("aev", "net/minecraft/item/crafting/RecipesArmor")); + mObInitMap.put(new Pair<String, String>("aaw", "net/minecraft/inventory/InventoryCraftResult")); + mObInitMap.put(new Pair<String, String>("w", "net/minecraft/client/audio/SoundCategory")); + mObInitMap + .put(new Pair<String, String>("bqv", "net/minecraft/client/resources/IReloadableResourceManager")); + mObInitMap.put(new Pair<String, String>("baz", "net/minecraft/client/Minecraft$3")); + mObInitMap.put(new Pair<String, String>("bey", "net/minecraft/client/gui/GuiRepair")); + mObInitMap.put(new Pair<String, String>("bix", "net/minecraft/client/model/ModelRenderer")); + mObInitMap.put(new Pair<String, String>("bmw", "net/minecraft/client/renderer/culling/ClippingHelperImpl")); + mObInitMap + .put(new Pair<String, String>("fs", "net/minecraft/util/ChatComponentTranslationFormatException")); + mObInitMap.put(new Pair<String, String>("bt", "net/minecraft/command/server/CommandStop")); + mObInitMap.put(new Pair<String, String>("yy", "net/minecraft/entity/player/InventoryPlayer$1")); + mObInitMap.put(new Pair<String, String>("uz", "net/minecraft/entity/ai/EntityAIPanic")); + mObInitMap.put(new Pair<String, String>("aqr", "net/minecraft/world/WorldProviderEnd")); + mObInitMap.put(new Pair<String, String>("ams", "net/minecraft/block/BlockCompressedPowered")); + mObInitMap.put(new Pair<String, String>("aeu", "net/minecraft/item/crafting/RecipesArmorDyes")); + mObInitMap.put(new Pair<String, String>("ait", "net/minecraft/world/biome/BiomeGenSavanna$Mutated")); + mObInitMap.put(new Pair<String, String>("auq", + "net/minecraft/world/gen/structure/StructureStrongholdPieces$Library")); + mObInitMap.put(new Pair<String, String>("ayp", "net/minecraft/world/storage/DerivedWorldInfo")); + mObInitMap.put(new Pair<String, String>("bbn", "net/minecraft/client/settings/GameSettings$Options$1")); + mObInitMap.put(new Pair<String, String>("bfm", + "net/minecraft/client/gui/inventory/GuiContainerCreative$ContainerCreative")); + mObInitMap.put(new Pair<String, String>("but", "net/minecraft/realms/RealmsServerStatusPinger$1")); + mObInitMap.put(new Pair<String, String>("bqu", "net/minecraft/client/resources/GrassColorReloadListener")); + mObInitMap.put(new Pair<String, String>("zm", "net/minecraft/entity/item/EntityEnderPearl")); + mObInitMap.put(new Pair<String, String>("vn", "net/minecraft/entity/ai/EntityAIHurtByTarget")); + mObInitMap.put(new Pair<String, String>("ro", "net/minecraft/util/DamageSource")); + mObInitMap.put( + new Pair<String, String>("np", "net/minecraft/server/network/NetHandlerLoginServer$LoginState")); + mObInitMap + .put(new Pair<String, String>("jq", "net/minecraft/network/handshake/INetHandlerHandshakeServer")); + mObInitMap.put(new Pair<String, String>("fr", "net/minecraft/util/ChatComponentTranslation")); + mObInitMap.put(new Pair<String, String>("arf", "net/minecraft/world/gen/feature/WorldGenBlockBlob")); + mObInitMap.put(new Pair<String, String>("ang", "net/minecraft/block/BlockRotatedPillar")); + mObInitMap.put(new Pair<String, String>("abj", "net/minecraft/item/ItemBoat")); + mObInitMap.put(new Pair<String, String>("afi", "net/minecraft/item/crafting/ShapelessRecipes")); + mObInitMap.put(new Pair<String, String>("ajh", "net/minecraft/block/BlockBed")); + mObInitMap.put(new Pair<String, String>("ave", "net/minecraft/world/gen/structure/MapGenStructure")); + mObInitMap.put(new Pair<String, String>("azd", "net/minecraft/client/AnvilConverterException")); + mObInitMap + .put(new Pair<String, String>("net/minecraft/client/main/Main", "net/minecraft/client/main/Main")); + mObInitMap.put(new Pair<String, String>("bri", "net/minecraft/client/resources/SimpleResource")); + mObInitMap.put(new Pair<String, String>("bfl", "net/minecraft/client/gui/inventory/GuiContainerCreative")); + mObInitMap.put(new Pair<String, String>("bjk", "net/minecraft/client/entity/EntityClientPlayerMP")); + mObInitMap.put(new Pair<String, String>("bnj", "net/minecraft/client/renderer/entity/RenderEntity")); + mObInitMap.put(new Pair<String, String>("wb", "net/minecraft/village/VillageSiege")); + mObInitMap.put(new Pair<String, String>("sc", "net/minecraft/entity/Entity$2")); + mObInitMap.put(new Pair<String, String>("od", "net/minecraft/server/management/PreYggdrasilConverter$4")); + mObInitMap.put(new Pair<String, String>("ke", "net/minecraft/network/ServerStatusResponse$Serializer")); + mObInitMap + .put(new Pair<String, String>("gf", "net/minecraft/network/play/server/S35PacketUpdateTileEntity")); + mObInitMap.put(new Pair<String, String>("cg", "net/minecraft/command/PlayerNotFoundException")); + mObInitMap.put(new Pair<String, String>("ary", "net/minecraft/world/gen/feature/WorldGenGlowStone1")); + mObInitMap.put(new Pair<String, String>("anz", "net/minecraft/block/BlockTallGrass")); + mObInitMap.put(new Pair<String, String>("bca", "net/minecraft/client/gui/ScaledResolution")); + mObInitMap.put(new Pair<String, String>("ow", "net/minecraft/network/rcon/RConThreadBase")); + mObInitMap.put(new Pair<String, String>("kx", "net/minecraft/init/Bootstrap$6")); + mObInitMap.put( + new Pair<String, String>("gy", "net/minecraft/network/play/server/S21PacketChunkData$Extracted")); + mObInitMap.put(new Pair<String, String>("cz", "net/minecraft/util/IRegistry")); + mObInitMap.put(new Pair<String, String>("acq", "net/minecraft/item/ItemFireball")); + mObInitMap.put(new Pair<String, String>("agp", "net/minecraft/command/server/CommandBlockLogic")); + mObInitMap.put(new Pair<String, String>("bsp", "net/minecraft/client/audio/SoundList")); + mObInitMap.put(new Pair<String, String>("boq", "net/minecraft/client/renderer/entity/RenderSheep")); + mObInitMap.put(new Pair<String, String>("arx", "net/minecraft/world/gen/feature/WorldGenLakes")); + mObInitMap.put(new Pair<String, String>("avw", + "net/minecraft/world/gen/structure/StructureVillagePieces$House4Garden")); + mObInitMap.put(new Pair<String, String>("azv", "net/minecraft/util/MovingObjectPosition$MovingObjectType")); + mObInitMap.put(new Pair<String, String>("bct", "net/minecraft/client/gui/GuiChat")); + mObInitMap.put(new Pair<String, String>("bgs", "net/minecraft/client/gui/stream/GuiTwitchUserMode")); + mObInitMap.put(new Pair<String, String>("bkr", "net/minecraft/client/particle/EffectRenderer$4")); + mObInitMap.put(new Pair<String, String>("dn", "net/minecraft/nbt/NBTTagIntArray")); + mObInitMap.put(new Pair<String, String>("wt", "net/minecraft/entity/monster/EntityIronGolem")); + mObInitMap.put(new Pair<String, String>("su", "net/minecraft/entity/EntityLeashKnot")); + mObInitMap.put(new Pair<String, String>("asl", "net/minecraft/world/gen/feature/WorldGenSpikes")); + mObInitMap.put(new Pair<String, String>("aom", "net/minecraft/block/BlockWood")); + mObInitMap.put(new Pair<String, String>("akn", "net/minecraft/block/BlockDoor")); + mObInitMap.put(new Pair<String, String>("ago", "net/minecraft/village/MerchantRecipeList")); + mObInitMap.put(new Pair<String, String>("awk", "net/minecraft/world/gen/NoiseGeneratorOctaves")); + mObInitMap.put(new Pair<String, String>("bdh", "net/minecraft/client/gui/GuiErrorScreen")); + mObInitMap.put(new Pair<String, String>("bhg", "net/minecraft/client/model/ModelChest")); + mObInitMap.put(new Pair<String, String>("bso", "net/minecraft/client/audio/PositionedSoundRecord")); + mObInitMap.put(new Pair<String, String>("xh", "net/minecraft/entity/effect/EntityLightningBolt")); + mObInitMap.put(new Pair<String, String>("ti", "net/minecraft/entity/ai/attributes/IAttributeInstance")); + mObInitMap.put(new Pair<String, String>("pj", "net/minecraft/stats/StatBase$2")); + mObInitMap.put(new Pair<String, String>("lk", "net/minecraft/server/MinecraftServer$4")); + mObInitMap.put(new Pair<String, String>("apa", "net/minecraft/tileentity/TileEntityDaylightDetector")); + mObInitMap.put(new Pair<String, String>("alb", "net/minecraft/block/BlockFire")); + mObInitMap.put(new Pair<String, String>("add", "net/minecraft/item/ItemStack")); + mObInitMap.put(new Pair<String, String>("ahc", "net/minecraft/world/World$1")); + mObInitMap.put(new Pair<String, String>("btc", + "net/minecraft/client/network/LanServerDetector$ThreadLanServerFind")); + mObInitMap + .put(new Pair<String, String>("bpd", "net/minecraft/client/renderer/tileentity/RenderWitherSkull")); + mObInitMap.put(new Pair<String, String>("bhf", "net/minecraft/client/model/ModelBook")); + mObInitMap.put(new Pair<String, String>("ble", "net/minecraft/client/particle/EntityFishWakeFX")); + mObInitMap.put(new Pair<String, String>("ea", "net/minecraft/nbt/NBTException")); + mObInitMap.put(new Pair<String, String>("ab", "net/minecraft/command/ICommandManager")); + mObInitMap.put(new Pair<String, String>("adw", "net/minecraft/item/ItemSeeds")); + mObInitMap.put(new Pair<String, String>("ahv", "net/minecraft/world/biome/BiomeGenBase$Height")); + mObInitMap.put(new Pair<String, String>("btv", "net/minecraft/client/audio/SoundEventAccessor")); + mObInitMap.put(new Pair<String, String>("bpw", "net/minecraft/client/renderer/texture/Stitcher$Holder")); + mObInitMap.put(new Pair<String, String>("bdz", "net/minecraft/client/gui/GuiShareToLan")); + mObInitMap.put(new Pair<String, String>("bhy", "net/minecraft/client/model/ModelSheep2")); + mObInitMap.put(new Pair<String, String>("blx", "net/minecraft/client/renderer/IImageBuffer")); + mObInitMap.put( + new Pair<String, String>("mr", "net/minecraft/server/management/PlayerManager$PlayerInstance")); + mObInitMap.put(new Pair<String, String>("is", "net/minecraft/network/play/client/C16PacketClientStatus")); + mObInitMap.put(new Pair<String, String>("et", "net/minecraft/network/PacketBuffer")); + mObInitMap.put(new Pair<String, String>("au", "net/minecraft/command/CommandHelp")); + mObInitMap.put(new Pair<String, String>("aek", "net/minecraft/item/ItemCloth")); + mObInitMap.put(new Pair<String, String>("aal", "net/minecraft/inventory/ContainerHopper")); + mObInitMap.put(new Pair<String, String>("l", "net/minecraft/crash/CrashReportCategory$1")); + mObInitMap.put( + new Pair<String, String>("bqk", "net/minecraft/client/renderer/texture/ITickableTextureObject")); + mObInitMap.put(new Pair<String, String>("atr", + "net/minecraft/world/gen/structure/StructureNetherBridgePieces$Throne")); + mObInitMap.put(new Pair<String, String>("aps", "net/minecraft/tileentity/TileEntityPiston")); + mObInitMap.put(new Pair<String, String>("axq", "net/minecraft/world/gen/layer/GenLayerRareBiome")); + mObInitMap.put(new Pair<String, String>("bao", "net/minecraft/client/Minecraft")); + mObInitMap.put(new Pair<String, String>("ben", "net/minecraft/client/gui/achievement/GuiStats$StatsItem")); + mObInitMap.put(new Pair<String, String>("bim", "net/minecraft/client/model/ModelWitch")); + mObInitMap.put(new Pair<String, String>("bml", + "net/minecraft/client/renderer/tileentity/TileEntitySpecialRenderer")); + mObInitMap.put(new Pair<String, String>("fh", "net/minecraft/event/ClickEvent")); + mObInitMap.put(new Pair<String, String>("bi", "net/minecraft/command/server/CommandSaveOff")); + mObInitMap.put(new Pair<String, String&g |
