zoukankan      html  css  js  c++  java
  • Java反编译代码分析(一)

    浅析如何读懂这种反编译过来的文件,不喜勿喷。

    赋值

    Node node;
            Node node1 = _$3.getChildNodes().item(0);
            node1;
            node1;
            JVM INSTR swap ;
            node;
            getChildNodes();
            0;
            item();
            getChildNodes();
            0;
            item();
            getNodeValue();
            String s;
            s;

    原始语句:

    Node node;
    Node node1 = currDocument.getChildNodes().item(0);
    node = node1;
    String s = node.getChildNodes().item(0).getChildNodes().item(0).getNodeValue();
    //赋值语句
    // JVM INSTR swap ;

    不带参数创建对象

    JVM INSTR new #244 <Class CrossTable>;
            JVM INSTR dup ;
            JVM INSTR swap ;
            CrossTable();
            CrossTable crosstable;
            crosstable;
    CrossTable crosstable = new CrossTable();

    带参数创建对象

    JVM INSTR new #262 <Class StringBuffer>;
            JVM INSTR dup ;
            JVM INSTR swap ;
            String.valueOf(s2);
            StringBuffer();
            s.substring(j, i);
            append();
            s6;
            append();
            toString();
            s2;
    s2 = (new StringBuffer(String.valueOf(s2))).append(s.substring(j, i)).append(s6).toString();
    //s2 += s.substring(j, i) + s6;

    for循环

    int k = 0;
    goto _L4
    _L8:
     ...
     k++;
    _L4:
            if(k < as.length) goto _L8; else goto _L7
    for(int k=0;k < as.length;k++)
     {
         ...
     }

    while循环

    String s1 = "";
              goto _L1
    _L3:
            JVM INSTR new #262 <Class StringBuffer>;
            JVM INSTR dup ;
            JVM INSTR swap ;
            String.valueOf(s1);
            StringBuffer();
            _$2(resultset, s, l);
            append();
            toString();
            s1;
    _L1:
            if(resultset.next()) goto _L3; else goto _L2
    String s1 = "";
     while(resultset.next())
     {
      s1 = s1 + resultSetToString(resultset, s, l);
     }

    我是天王盖地虎的分割线

  • 相关阅读:
    ucosii事件控制块------信号量集
    ucosii事件控制块------消息邮箱与消息队列
    C语言中续行符“”说明
    HTTP请求方法
    HTTP消息结构
    如何在Linux系统上安装字体
    LibreOffice openoffice 区别
    解决linux下不生成core dump文件
    开源图形数据库Neo4j使用 php开发
    Aria2 懒人安装教程
  • 原文地址:https://www.cnblogs.com/yydcdut/p/4314546.html
Copyright © 2011-2022 走看看