首页
社区
课程
招聘
[讨论]第一题 WannaLOL解答
发表于: 2017-6-1 21:47 2136

[讨论]第一题 WannaLOL解答

2017-6-1 21:47
2136

函数位于LOC_4011F4位置,

分析

1.

.text:00401220 call    _strlen

.text:00401225 cmp     eax, 4

知道密码长度为4.

2.

.text:0040122F push    30h

.text:00401231 pop     ecx

.text:00401232 cmp     [ebp-1Ch], cl

.text:00401235 jz      loc_4012CF

.text:0040123B cmp     [ebp-1Bh], cl

.text:0040123E jz      loc_4012CF

.text:00401244 cmp     [ebp-1Ah], cl

.text:00401247 jz      loc_4012CF

.text:0040124D cmp     [ebp-19h], cl

.text:00401250 jz      short loc_4012CF

知道 1到4位都不是0x30即字符的0.

3.

.text:00401252 cmp     byte ptr [ebp-1Ch], 31h

.text:00401256 jnz     short loc_4012CF

.text:00401258 cmp     byte ptr [ebp-1Bh], 35h

.text:0040125C jnz     short loc_4012CF

知道第一位为0x31,第二位为0x35,就是字符的1和5.

4.

.text:00401267 xor     ax, 7

.text:0040126B movsx   eax, byte ptr [ebp-1Ah]

.text:0040126F sub     eax, ecx

.text:00401271 mov     [ebp-4], eax

.text:00401274 movsx   eax, byte ptr [ebp-1Ch]

.text:00401278 fild    dword ptr [ebp-4]

.text:0040127B sub     eax, ecx

.text:0040127D mov     [ebp-4], eax

.text:00401280 movsx   eax, byte ptr [ebp-1Bh]

.text:00401284 fild    dword ptr [ebp-4]

.text:00401287 sub     eax, ecx

.text:00401289 mov     [ebp-4], eax

.text:0040128C fidiv   dword ptr [ebp-4]

.text:0040128F movsx   eax, byte ptr [ebp-19h]

.text:00401293 sub     eax, ecx

.text:00401295 mov     [ebp-4], eax

.text:00401298 fsubp   st(1), st

.text:0040129A fimul   dword ptr [ebp-4]

.text:0040129D fmul    ds:flt_40711C

.text:004012A3 fstp    dword ptr [ebp-4]

运算出第三和第四位为5和5来。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

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