-
-
[求助]Dalvik字节码 参数寄存器好几个都对不上顺序。
-
发表于: 2019-5-25 22:26 1747
-
12 5 2 |0007: const/4 v2, #int 5 // #5
12 3 3 |0008: const/4 v3, #int 3 // #3
如上两条Dalvik字节码,前两位相同的12对应格式ID11n,查询Dalvik 可执行指令格式得到如下格式:
const/4 vA, #+B 解释如下:
A: 目标寄存器(4 位)
B: 有符号整数(4 位)
将给定的字面值(符号扩展为 32 位)移到指定的寄存器中。
第一部分12对应格式第二部分 为什么是常数 #+5 而不是参数寄存器v2
第三部分
为什么是常数 #+3 而不是参数寄存器v3
----------------------------------------第二个问题-------------------------------
同上下面这句Dalvik字节码:查询6e得到的格式如下:
[A=3] op {vC, vD, vE}, kind@BBBB
解释如下:
A: 参数字数(4 位)B: 方法引用索引(16 位)C..G: 参数寄存器(每个寄存器各占 4 位)
第一部分6e对应格式,30对应A=3
第二部分0100对应方法常量01
第三部分参数寄存器 2003 这一部分应该这么对照呢,为什么对不上呢?
有高手指点下迷津么,谢谢。
@非虫
参考《Android软件安全与逆向分析》
1c1K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6K6L8%4g2J5j5$3g2Q4x3X3g2S2L8X3c8J5L8$3W2V1i4K6u0W2j5$3!0E0i4K6u0r3k6r3g2$3K9h3y4W2M7#2)9J5c8Y4c8W2j5$3S2Q4x3V1k6V1j5h3I4$3K9h3E0Q4x3V1k6V1j5h3I4$3K9h3E0Q4x3X3c8T1P5i4c8W2j5$3!0V1k6b7`.`.
7e5K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6K6L8%4g2J5j5$3g2Q4x3X3g2S2L8X3c8J5L8$3W2V1i4K6u0W2j5$3!0E0i4K6u0r3k6r3g2$3K9h3y4W2M7#2)9J5c8Y4c8W2j5$3S2Q4x3V1k6V1j5h3I4$3K9h3E0Q4x3V1k6A6L8Y4y4@1M7Y4g2U0N6r3W2G2L8W2)9J5k6r3k6G2M7X3#2S2N6s2x3`.
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
赞赏
雪币:
留言: