首页
社区
课程
招聘
[求助]求一条blx指令的decode
发表于: 2013-7-1 11:06 4373

[求助]求一条blx指令的decode

2013-7-1 11:06
4373
IDA分析出来的反汇编
.plt: 000083F0  sub_83F0       ...
...
.text:00008436  FF F7 DC EF    BLX sub_83F0
想知道FF F7 DC EF是怎么来的
---------------------------------------------

按照
91aK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4y4@1j5h3y4C8L8%4k6W2M7X3k6D9L8%4N6Q4x3X3g2U0L8$3#2Q4x3V1k6I4N6h3g2K6N6r3W2G2L8Y4y4Q4x3V1j5^5z5e0p5#2x3o6b7H3i4K6u0r3k6r3g2U0L8$3c8A6L8X3N6Q4x3X3c8T1L8s2S2Q4x3X3c8A6L8Y4y4@1M7Y4g2U0N6r3W2G2L8W2)9J5k6r3!0F1i4K6u0V1j5i4u0E0i4K6u0V1N6r3S2#2L8h3u0Q4x3X3c8A6L8%4x3`.
计算这个跳转的offset

FF F7 DC EF

F7 FF EF DC

11110111111111111110111111011100

11110  1  1111111111  11  1  0  1  1111101110  0
       S    imm10H        J1    J2   imm10L

I1 = NOT(J1 EOR S) = 1
I2 = NOT(J2 EOR S) = 1

imm32 = SignExtend(S:I1:I2:imm10H:imm10L:00)
      = SignExtend(1111111111111111110111000)
            = SignExtend(0x1FFFFB8)
            = ?
---------------------------------------------

那么offset是FFB8?

但是0x83F0-0X8436-4=0xFFB6
(-4 -> thumb指令长度为2,2*2=4)

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回