-
-
[旧帖] [求助]跳转从哪里来,跳迷糊了! 0.00雪花
-
发表于: 2009-4-16 21:39 2469
-
我很菜,
有以下代码片段:
......
1.jmp 0057BF08
2.pop esp
3.jmp 0057BF08
4.pop ecx
5.pop dword ptr [ecx] // 通过内存写入(地址是:005ACFE0)断点断到这里,ecx地址放注册标记
6.jmp 0057BF08
7.mov ax, word ptr [esi]
8.add ax, bx
9.sub ax, 0FF57
......
dword ptr[ecx] 的值为0没有注册,1已注册。ecx=005ACFE0
我现在已经通过内存写入断点断到了写注册标记的代码位置,现在怎么知道是从哪跳过来的,看哪里能知道,之前执行了什么代码。周围全是跳转,迷糊啊!
注: 如果在5的位置设置断点,从新运行,要被断很多次(次数很多,就是说4行5行被反复执行了N遍)才会出现ecx=005ACFE0的时候。
==Edit===
还有一个问题,这个东西之前加过壳ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov,已经脱壳成功,并且已经破解掉了,现在是想写注册机,练练手。
脱壳之后用PEid v0.94测试是Delphi6-7,但EP段为什么显示是空呢(正常的是.text),要补什么东西?即使显示空也能正常运行。
有以下代码片段:
......
1.jmp 0057BF08
2.pop esp
3.jmp 0057BF08
4.pop ecx
5.pop dword ptr [ecx] // 通过内存写入(地址是:005ACFE0)断点断到这里,ecx地址放注册标记
6.jmp 0057BF08
7.mov ax, word ptr [esi]
8.add ax, bx
9.sub ax, 0FF57
......
dword ptr[ecx] 的值为0没有注册,1已注册。ecx=005ACFE0
我现在已经通过内存写入断点断到了写注册标记的代码位置,现在怎么知道是从哪跳过来的,看哪里能知道,之前执行了什么代码。周围全是跳转,迷糊啊!
注: 如果在5的位置设置断点,从新运行,要被断很多次(次数很多,就是说4行5行被反复执行了N遍)才会出现ecx=005ACFE0的时候。
==Edit===
还有一个问题,这个东西之前加过壳ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov,已经脱壳成功,并且已经破解掉了,现在是想写注册机,练练手。
脱壳之后用PEid v0.94测试是Delphi6-7,但EP段为什么显示是空呢(正常的是.text),要补什么东西?即使显示空也能正常运行。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
看原图
赞赏
雪币:
留言: