.text:00400540 sub_400540 proc near ; CODE XREF: DialogFunc+8p
.text:00400540
.text:00400540 arg_0 = byte ptr 4
.text:00400540
.text:00400540 000 push ecx
.text:00400541 004 cmp eax, 1000h ; Compare Two Operands
.text:00400546 004 lea ecx, [esp+4+arg_0] ; Load Effective Address
.text:0040054A 004 jb short loc_400560 ; Jump if Below (CF=1)
.text:0040054C
.text:0040054C loc_40054C: ; CODE XREF: sub_400540+1Ej
.text:0040054C 004 sub ecx, 1000h ; Integer Subtraction
.text:00400552 004 sub eax, 1000h ; Integer Subtraction
.text:00400557 004 test [ecx], eax ; Logical Compare
.text:00400559 004 cmp eax, 1000h ; Compare Two Operands
.text:0040055E 004 jnb short loc_40054C ; Jump if Not Below (CF=0)
.text:00400560
.text:00400560 loc_400560: ; CODE XREF: sub_400540+Aj
.text:00400560 004 sub ecx, eax ; Integer Subtraction
.text:00400562 004 mov eax, esp
.text:00400564 004 test [ecx], eax ; Logical Compare
.text:00400566 004 mov esp, ecx
.text:00400568 -04 mov ecx, [eax]
.text:0040056A -04 mov eax, [eax+4]
.text:0040056D -04 push eax
.text:0040056E 000 retn ; Return Near from Procedure
.text:0040056E sub_400540 endp
看了好久没看懂,哪位高手有时间帮我看下,这段代码实现了什么功能啊?
[课程]Android-CTF解题方法汇总!