刚开始学习破解,看到一个小程序,delphi写的,本来以为很简单,因为很容易就找到了几个跳转,改了以后,注册程序不向下进行了,不指点为什么,用olly动态也不会用呵呵,请高手指点!
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00491E4B(C)
|
* Possible StringData Ref from Code Obj ->"请输入用户名和密码"
|
:00491E61 BA9C1F4900 mov edx, 00491F9C
:00491E66 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491E6C E8EBC7FAFF call 0043E65C
:00491E71 B201 mov dl, 01
:00491E73 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491E79 E8CEC6FAFF call 0043E54C
:00491E7E E9C8000000 jmp 00491F4B
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00491E5F(C)
|
:00491E83 8D55E0 lea edx, dword ptr [ebp-20]
:00491E86 8B83F0020000 mov eax, dword ptr [ebx+000002F0]
:00491E8C E89BC7FAFF call 0043E62C
:00491E91 8B45E0 mov eax, dword ptr [ebp-20]
:00491E94 50 push eax
:00491E95 8D55DC lea edx, dword ptr [ebp-24]
:00491E98 8B830C030000 mov eax, dword ptr [ebx+0000030C]
:00491E9E E889C7FAFF call 0043E62C
:00491EA3 8B45DC mov eax, dword ptr [ebp-24]
:00491EA6 5A pop edx
:00491EA7 E84CF3FFFF call 004911F8
:00491EAC 84C0 test al, al
:00491EAE 747E je 00491F2E //跳转1,等于则跳,修改为757e
:00491EB0 8D55D8 lea edx, dword ptr [ebp-28]
:00491EB3 8B830C030000 mov eax, dword ptr [ebx+0000030C]
:00491EB9 E86EC7FAFF call 0043E62C
:00491EBE 8B45D8 mov eax, dword ptr [ebp-28]
:00491EC1 E84E29F7FF call 00404814
:00491EC6 83F810 cmp eax, 00000010
:00491EC9 7C63 jl 00491F2E //跳转2,小于则跳,呵呵,修改为9090
:00491ECB 85FF test edi, edi
:00491ECD 747C je 00491F4B //跳转3,改为757c
:00491ECF 8D55D4 lea edx, dword ptr [ebp-2C]
:00491ED2 8B830C030000 mov eax, dword ptr [ebx+0000030C]
:00491ED8 E84FC7FAFF call 0043E62C
:00491EDD 8B45D4 mov eax, dword ptr [ebp-2C]
:00491EE0 50 push eax
:00491EE1 8D55D0 lea edx, dword ptr [ebp-30]
:00491EE4 8B83F0020000 mov eax, dword ptr [ebx+000002F0]
:00491EEA E83DC7FAFF call 0043E62C
:00491EEF 8B45D0 mov eax, dword ptr [ebp-30]
:00491EF2 5A pop edx
:00491EF3 E898F0FFFF call 00490F90
:00491EF8 84C0 test al, al
:00491EFA 751F jne 00491F1B //跳转4,改为741f
* Possible StringData Ref from Code Obj ->"注册表写保护,无法保存注册信息"
|
:00491EFC BAB81F4900 mov edx, 00491FB8
:00491F01 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491F07 E850C7FAFF call 0043E65C
:00491F0C B201 mov dl, 01
:00491F0E 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491F14 E833C6FAFF call 0043E54C
:00491F19 EB30 jmp 00491F4B
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00491EFA(C)
|
* Possible StringData Ref from Code Obj ->"注册成功
请重新启动软件"
|
:00491F1B B8E01F4900 mov eax, 00491FE0
:00491F20 E88F60FAFF call 00437FB4
:00491F25 8BC3 mov eax, ebx
:00491F27 E8308FFCFF call 0045AE5C
:00491F2C EB1D jmp 00491F4B
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:00491EAE(C), :00491EC9(C)
|
* Possible StringData Ref from Code Obj ->"用户名或注册码有误"
|
:00491F2E BA00204900 mov edx, 00492000
:00491F33 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491F39 E81EC7FAFF call 0043E65C
:00491F3E B201 mov dl, 01
:00491F40 8B8314030000 mov eax, dword ptr [ebx+00000314]
:00491F46 E801C6FAFF call 0043E54C
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:00491E7E(U), :00491ECD(C), :00491F19(U), :00491F2C(U)
|
:00491F4B 33C0 xor eax, eax
:00491F4D 5A pop edx
:00491F4E 59 pop ecx
:00491F4F 59 pop ecx
:00491F50 648910 mov dword ptr fs:[eax], edx
:00491F53 688A1F4900 push 00491F8A
我以为改了4个跳转就可以了,因为本来程序看起来也很简单,但改了后注册程序就不向下运行了,不知道为什么???
是不是还有其他东西要改呀??请高手指点,谢谢了!!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课