请教,汇编的代码
发布网友
发布时间:2023-02-11 07:09
我来回答
共4个回答
热心网友
时间:2024-07-06 19:52
每条汇编语句的意思如下:
:00411CB0 6860444600 push 00464460 意思是把00464460放入堆栈栈顶
:00411CB5 8D4C2420 lea ecx, dword ptr [esp+20]意思是将内存[esp+20]的偏移地址送给ECX寄存器
:00411CB9 50 push eax 意思是将EAX内容入栈
:00411CBA 51 push ecx 意思是将ECX内容入栈
:00411CBB C684244C04000001 mov byte ptr [esp+0000044C], 01 意思是将字节01存入内容[esp+0000044C]中
:00411CC3 E823EF0200 call 00440BEB意思是调用00440BEB开始的过程
:00411CC8 8B00 mov eax, dword ptr [eax]意思是将内存[EAX]中的双字内容送入寄存器EAX中
:00411CCA 50 push eax 意思是将EAX内容入栈
* Reference To: SHLWAPI.PathFileExistsA, Ord:0028h
|
:00411CCB FF1588034500 Call dword ptr [00450388]意思是调用[00450388]处远过程
:00411CD1 85C0 test eax, eax 意思是EAX自身内容相与,进行测试
:00411CD3 8D4C241C lea ecx, dword ptr [esp+1C] 意思是将内存[esp+1C]的偏移地址送ECX中
:00411CD7 0F94442423 sete byte ptr [esp+23] 意思是
:00411CDC E875EC0200 call 00440956 意思是调用00440956处过程
:00411CE1 385C2423 cmp byte ptr [esp+23], bl 意思是将内存[esp+23]中内容与bl内容比较
:00411CE5 7420 je 00411D07 意思是相等转移到00411D07处执行
:00411CE7 8D4C2414 lea ecx, dword ptr [esp+14] 意思是将内存[esp+14]的偏移地址送入ECX中
:00411CEB 889C2440040000 mov byte ptr[esp+00000440], bl 意思是将BL中内容送入内存[esp+00000440]中
:00411CF2 E85FEC0200 call 00440956 意思是调用00440956处过程
:00411CF7 C7842440040000FFFFFFFF mov dword ptr [esp+00000440], FFFFFFFF 意思是将FFFFFFFF送入内存[esp+00000440]中
:00411D02 E951050000 jmp 00412258意思是无条件转移到00412258处执行
热心网友
时间:2024-07-06 19:52
push 压栈
lea 转送地址
热心网友
时间:2024-07-06 19:53
push 压栈
lea 转送传送原操作数的偏移地址
解释可以分呢????
热心网友
时间:2024-07-06 19:54
PUSH是压栈, LEA,我也不知道了.你想从这堆东西里面看出什么来?
提个醒,API的参数是从堆栈中调用的.