android汇编代码,[求助]反汇编android so 汇编代码中的几个疑问

[旧帖]

[求助]反汇编android so 汇编代码中的几个疑问

0.00元

2016-2-20 11:21

1718

[旧帖]

[求助]反汇编android so 汇编代码中的几个疑问

0.00元

2016-2-20 11:21

1718

在静态反汇编一个SO的过程中,开头得到这样一段汇编代码:

.text:00002770                 EXPORT Java_com_happyhour_android_xt_getKey

.text:00002770

.text:00002770 var_2D8         = -0x2D8

.text:00002770 var_2D4         = -0x2D4

.text:00002770 var_2D0         = -0x2D0

.text:00002770 var_2CC         = -0x2CC

.text:00002770 var_2C8         = -0x2C8

.text:00002770 var_2C4         = -0x2C4

.text:00002770 var_2C0         = -0x2C0

.text:00002770 var_2BC         = -0x2BC

.text:00002770 var_2B8         = -0x2B8

.text:00002770 var_2B4         = -0x2B4

.text:00002770 var_2B0         = -0x2B0

.text:00002770 var_2AC         = -0x2AC

.text:00002770 var_2A4         = -0x2A4

.text:00002770 var_294         = -0x294

.text:00002770 var_274         = -0x274

.text:00002770 dest            = -0x21C

.text:00002770 var_218         = -0x218

.text:00002770 s               = -0x214

.text:00002770 var_1C          = -0x1C

.text:00002770

.text:00002770                 PUSH    {R4-R7,LR}

.text:00002772                 MOVS    R6, R3

.text:00002774                 LDR     R3, =(__stack_chk_guard_ptr - 0x277E)

.text:00002776                 LDR     R4, =0xFFFFFD3C

.text:00002778                 MOVS    R5, R0

.text:0000277A                 ADD     R3, PC ; __stack_chk_guard_ptr

.text:0000277C                 LDR     R3, [R3] ; __stack_chk_guard

有几个疑惑的地方是:

1、__stack_chk_guard_ptr 这是什么东西?跟进去之后,发现这个地址放的是这样写的

00006f74                                 dd         0x00000000;

如果 这个真的是 0的话,那下面的语句就解释不清楚了,把地址为0的内容放入堆栈中。

.text:0000277E                 ADD     SP, R4

.text:00002780                 LDR     R1, [R3]

.text:00002782                 STR     R3, [SP,#0x2D8+var_2AC]

.text:00002784                 STR     R1, [SP,#0x2D8+var_1C]

.text:00002786                 CMP     R6, #0

.text:00002788                 BNE     loc_278C

.text:0000278A                 B       loc_2A64

对了。java jni 传递两个参数给一个是context 一个是hashmap

求各位帮忙看看,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值