Package codechicken.lib.asm

Examples of codechicken.lib.asm.ObfMapping


        return this;
    }
   
    public ObfuscationEntry addClass(String obf, String srg)
    {
        return addEntry(new ObfMapping(obf, "", ""), new ObfMapping(srg, "", ""));
    }
View Full Code Here


        return addEntry(new ObfMapping(obf, "", ""), new ObfMapping(srg, "", ""));
    }
   
    public ObfuscationEntry addField(String obf_owner, String obf_name, String srg_owner, String srg_name)
    {
        return addEntry(new ObfMapping(obf_owner, obf_name, ""),
                new ObfMapping(srg_owner, srg_name, ""));
    }
View Full Code Here

                new ObfMapping(srg_owner, srg_name, ""));
    }
   
    public ObfuscationEntry addMethod(String obf_owner, String obf_name, String obf_desc, String srg_owner, String srg_name, String srg_desc)
    {
        return addEntry(new ObfMapping(obf_owner, obf_name, obf_desc),
                new ObfMapping(srg_owner, srg_name, srg_desc));
    }
View Full Code Here

        public Map<String, ObfuscationEntry> srgMap = new HashMap<String, ObfuscationEntry>();
        public Map<String, ObfuscationEntry> obfMap = new HashMap<String, ObfuscationEntry>();
       
        public ClassEntry(String obf, String srg)
        {
            super(new ObfMapping(obf, "", ""),
                    new ObfMapping(srg, "", ""),
                    new ObfMapping(srg, "", ""));
        }
View Full Code Here

        if(matchesDesc(insn))
        {
            LdcInsnNode node1 = (LdcInsnNode) insn;
            LdcInsnNode node2 = (LdcInsnNode) node1.getNext();
            LdcInsnNode node3 = (LdcInsnNode) node2.getNext();
            ObfMapping mapping = new ObfMapping((String) node1.cst, (String) node2.cst, (String) node3.cst).map(obf);
            node1.cst = mapping.s_owner;
            node2.cst = mapping.s_name;
            node3.cst = mapping.s_desc;
        }
    }
View Full Code Here

        return cw.toByteArray();
    }

    private byte[] injectCallback(byte[] bytes) {
        ClassNode cnode = ASMHelper.createClassNode(bytes);
        MethodNode mnode = ASMHelper.findMethod(new ObfMapping(cnode.name, "<clinit>", "()V"), cnode);
        mnode.instructions.insert(new MethodInsnNode(INVOKESTATIC, "codechicken/core/asm/MCPDeobfuscationTransformer", "loadCallback", "()V"));
        return ASMHelper.createBytes(cnode, 0);
    }
View Full Code Here

        for (Entry<String, ?> entry : modifiers.entries()) {
            Object mod = entry.getValue();
            String m_owner = entry.getKey().replace('.', '/');
            String m_name = (String) get(f_Modifier_name, mod);
            String m_desc = ((String) get(f_Modifier_desc, mod)).replace('.', '/');
            ObfMapping map;
            if (m_name.equals("*")) {
                map = new ObfMapping(m_owner);
                map.s_name = m_name;
                map.s_desc = m_desc;
            } else {
                try {
                    map = new ObfMapping(m_owner, m_name, m_desc).toClassloading();
                } catch (Exception e) {
                    new Object();
                    continue;
                }
            }

            set(f_Modifier_name, mod, map.s_name);
            set(f_Modifier_desc, mod, map.s_desc);
            t_modifiers.put(map.javaClass(), mod);
        }
        set(f_modifiers, t, t_modifiers);
    }
View Full Code Here

        }
       
        if(replaceWater || replaceLava)
        {
            MinecraftForge.EVENT_BUS.register(new LiquidTextures());
            field_tex = ReflectionManager.getField(new ObfMapping("net/minecraft/block/BlockLiquid", "field_149806_a", "[Lnet/minecraft/util/IIcon;"));
        }
    }
View Full Code Here

     
      ClassNode cnode = getClassNode(cname);
      for(MethodNode method : cnode.methods)
        if(names.contains(method.name+method.desc)) {
          impls.add(method);
          method.desc = new ObfMapping(cnode.name, method.name, method.desc).toRuntime().s_desc;
        }
    }
View Full Code Here

    }

    public boolean patch(ClassNode cnode) {
      LinkedList<String> names = new LinkedList<String>();
      for(MethodNode method : cnode.methods) {
        ObfMapping m = new ObfMapping(cnode.name, method.name, method.desc).toRuntime();
        names.add(m.s_name+m.s_desc);
      }

      boolean changed = false;
      for(MethodNode impl : impls) {
View Full Code Here

TOP

Related Classes of codechicken.lib.asm.ObfMapping

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.