-
-
[旧帖] 学习跟踪 riijj Crackme 14遇到的问题 0.00雪花
-
发表于: 2013-6-28 12:12 1102
-
在学习跟踪 riijj Crackme 14 的时候遇到的问题:
00401AD3 . 8965 E8 mov dword ptr [ebp-18], esp
00401AD6 . C745 FC 00000>mov dword ptr [ebp-4], 0
00401ADD . 33C0 xor eax, eax
00401ADF . C600 00 mov byte ptr [eax], 0 <= 产生异常
00401AE2 . C745 FC FFFFF>mov dword ptr [ebp-4], -1
00401AE9 . EB 4C jmp short 00401B37
00401AEB . B8 01000000 mov eax, 1
00401AF0 . C3 retn
00401AF1 8B65 E8 mov esp, dword ptr [ebp-18] <= [1]异常处理完之后,会执行到这里
00401AF4 . C745 FC 01000>mov dword ptr [ebp-4], 1
00401AFB . 33C0 xor eax, eax
00401AFD . 33D2 xor edx, edx
00401AFF . F7F0 div eax <= 又产生一个异常
00401B01 . 83C8 FF or eax, FFFFFFFF
00401B04 . EB 2B jmp short 00401B31
00401B06 . B8 01000000 mov eax, 1
00401B0B . C3 retn
00401B0C . 8B65 E8 mov esp, dword ptr [ebp-18]
00401B0F . C745 FC 02000>mov dword ptr [ebp-4], 2
00401B16 . E8 E5F4FFFF call 00401000
00401B1B . EB 0E jmp short 00401B2B <= [2] 异常处理完之后,会执行到这里
00401B1D . B8 01000000 mov eax, 1
00401B22 . C3 retn
00401B23 . 8B65 E8 mov esp, dword ptr [ebp-18]
00401B26 . E8 F5FDFFFF call 00401920
如果要自己一步步跟踪,怎么知道在哪里设置断点,也就是怎么判断异常处理完之后会执行哪里
如上面的例子,怎么确定[1]和[2]就是异常处理完之后会执行的语句。
请高手们解惑~~
00401AD3 . 8965 E8 mov dword ptr [ebp-18], esp
00401AD6 . C745 FC 00000>mov dword ptr [ebp-4], 0
00401ADD . 33C0 xor eax, eax
00401ADF . C600 00 mov byte ptr [eax], 0 <= 产生异常
00401AE2 . C745 FC FFFFF>mov dword ptr [ebp-4], -1
00401AE9 . EB 4C jmp short 00401B37
00401AEB . B8 01000000 mov eax, 1
00401AF0 . C3 retn
00401AF1 8B65 E8 mov esp, dword ptr [ebp-18] <= [1]异常处理完之后,会执行到这里
00401AF4 . C745 FC 01000>mov dword ptr [ebp-4], 1
00401AFB . 33C0 xor eax, eax
00401AFD . 33D2 xor edx, edx
00401AFF . F7F0 div eax <= 又产生一个异常
00401B01 . 83C8 FF or eax, FFFFFFFF
00401B04 . EB 2B jmp short 00401B31
00401B06 . B8 01000000 mov eax, 1
00401B0B . C3 retn
00401B0C . 8B65 E8 mov esp, dword ptr [ebp-18]
00401B0F . C745 FC 02000>mov dword ptr [ebp-4], 2
00401B16 . E8 E5F4FFFF call 00401000
00401B1B . EB 0E jmp short 00401B2B <= [2] 异常处理完之后,会执行到这里
00401B1D . B8 01000000 mov eax, 1
00401B22 . C3 retn
00401B23 . 8B65 E8 mov esp, dword ptr [ebp-18]
00401B26 . E8 F5FDFFFF call 00401920
如果要自己一步步跟踪,怎么知道在哪里设置断点,也就是怎么判断异常处理完之后会执行哪里
如上面的例子,怎么确定[1]和[2]就是异常处理完之后会执行的语句。
请高手们解惑~~
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
他的文章
- [求助]mac下网络协议的逆向 5229
- [求助]静态编译的MFC程序用OD加载时看不到符号 1263
- 学习跟踪 riijj Crackme 14遇到的问题 1103
看原图
赞赏
雪币:
留言: