WinBowl Version 3.2 PJ小记(1)

时间:2005-12-20 来源: 作者: 点击:
破解作者:master 软件名称:WinBowl Version 3.2 软件简介:一款打保龄球的休闲娱乐游戏 下载地址: http://members.aol.com/revtjb/wb32.exe 破解工具:TRW2000 W32Dasm 破解过程:用TRW载入Winbwl32.exe;点注册随便填入注册信息;激活TRW下bpx hmemcpy;点0K;拦后下
  破解作者:master
软件名称:WinBowl Version 3.2
软件简介:一款打保龄球的休闲娱乐游戏
下载地址: http://members.aol.com/revtjb/wb32.exe
破解工具:TRW2000 & W32Dasm
破解过程:用TRW载入Winbwl32.exe;点注册随便填入注册信息;激活TRW下bpx hmemcpy;点0K;拦后下pmodule;F10来到:

:0040D8ED 57                      push edi
:0040D8EE E8AD590100              call 004232A0
:0040D8F3 83C404                  add esp, 00000004
:0040D8F6 85C0                    test eax, eax<-----------------测试输入的注册码是否为空
:0040D8F8 7536                    jne 0040D930<------------------不为空则跳
:0040D8FA 6800010000              push 00000100
:0040D8FF BFC0D34300              mov edi, 0043D3C0
:0040D904 57                      push edi

跳到此处:
:0040D930 8D45E0                  lea eax, dword ptr [ebp-20]<---EAX为输入的假码
:0040D933 50                      push eax
:0040D934 E897800100              call 004259D0<-----------------处理假注册码,将其转化为一个十六进制数
:0040D939 668BD8                  mov bx, ax<--------------------在此处下? EAX显示假注册码的十六进制数
:0040D93C 83C404                  add esp, 00000004
:0040D93F 53                      push ebx
:0040D940 E893FAFFFF              call 0040D3D8
:0040D945 83C404                  add esp, 00000004
:0040D948 57                      push edi

* Possible Reference to String Resource ID=00032: "Unregistered Shareware"
                                  |
:0040D949 6A20                    push 00000020

* Possible Reference to String Resource ID=00013: "Don't give up!"
                                  |
:0040D94B 6A0D                    push 0000000D
:0040D94D BF07040000              mov edi, 00000407
:0040D952 57                      push edi
:0040D953 FF7508                  push [ebp+08]
:0040D956 FFD6                    call esi
:0040D958 50                      push eax

* Reference To: USER32.SendMessageA, Ord:01C6h
                                  |
:0040D959 FF15BCF64300            Call dword ptr [0043F6BC]
:0040D95F 8D45E0                  lea eax, dword ptr [ebp-20]<----EAX为输入的注册名
:0040D962 50                      push eax
:0040D963 E838590100              call 004232A0
:0040D968 83C404                  add esp, 00000004
:0040D96B 85C0                    test eax, eax<------------------测试注册名是否为空
:0040D96D 7536                    jne 0040D9A5<-------------------不为空则跳
:0040D96F 6800010000              push 00000100
:0040D974 BBC0D34300              mov ebx, 0043D3C0
:0040D979 53                      push ebx
:0040D97A A11CD84300              mov eax, dword ptr [0043D81C]

* Possible Reference to String Resource ID=00039: "You must enter your name."
                                  |
:0040D97F 6A27                    push 00000027
:0040D981 50                      push eax

* Reference To: USER32.LoadStringA, Ord:0177h
                                  |
:0040D982 FF15E4F64300            Call dword ptr [0043F6E4]
:0040D988 53                      push ebx
:0040D989 6A00                    push 00000000
:0040D98B E882B60000              call 00419012
:0040D990 83C408                  add esp, 00000008
:0040D993 57                      push edi
:0040D994 FF7508                  push [ebp+08]
:0040D997 FFD6                    call esi
:0040D999 50                      push eax

* Reference To: USER32.SetFocus, Ord:01E1h
                                  |
:0040D99A FF1594F74300            Call dword ptr [0043F794]
:0040D9A0 E9DF010000              jmp 0040DB84

跳到这里:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040D96D(C)
|
:0040D9A5 8D45E0                  lea eax, dword ptr [ebp-20]
:0040D9A8 50                      push eax
:0040D9A9 E86AFAFFFF              call 0040D418
:0040D9AE 83C404                  add esp, 00000004
:0040D9B1 E8C4FAFFFF              call 0040D47A<--------计算注册码关键处,跟进
:0040D9B6 85C0                    test eax, eax<--------测试注册标记
:0040D9B8 0F840B010000            je 0040DAC9<----------注册失败则跳转
:0040D9BE 53                      push ebx
:0040D9BF 8D45E0                  lea eax, dword ptr [ebp-20]
:0040D9C2 50                      push eax
....................
....................
显示成功注册对话框:
* Possible Reference to String Resource ID=00043: "Your game has now been registered. Save your code - it can b"
                                  |
:0040DA27 6A2B                    push 0000002B
:0040DA29 50                      push eax


下面将假注册码处理为一个十六进制处,由0040D934 E897800100  call 004259D0到此:
============================================================================
:004259D0 8B442404                mov eax, dword ptr [esp+04]
:004259D4 50                      push eax
:004259D5 E846FFFFFF              call 00425920<--------想CALL就进去
:004259DA 83C404                  add esp, 00000004
:004259DD C3                      ret

CALL到此:
:00425920 53                      push ebx
:00425921 56                      push esi
:00425922 8B74240C                mov esi, dword ptr [esp+0C]
:00425926 57                      push edi
:00425927 55                      push ebp
.....................
.....................
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0042596A(C)
|
:00425971 33DB                    xor ebx, ebx
:00425973 8A1E                    mov bl, byte ptr [esi]<----取一位注册码存入BL
:00425975 46                      inc esi

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0042596F(C)
|
:00425976 33ED                    xor ebp, ebp<--------------累加器清零

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004259AF(U)
|
:00425978 833DEC6E430001          cmp dword ptr [00436EEC], 00000001
:0042597F 7E0D                    jle 0042598E
..............
..............
:0042598E 8B0DE06C4300            mov ecx, dword ptr [00436CE0]
:00425994 33C0                    xor eax, eax
:00425996 668B0459                mov ax, word ptr [ecx+2*ebx]
:0042599A 83E004                  and eax, 00000004

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0042598C(U)
|
:0042599D 85C0                    test eax, eax
:0042599F 7410                    je 004259B1<-----------------------处理完毕跳出去
:004259A1 8D44AD00                lea eax, dword ptr [ebp+4*ebp]<----计算处理注册码
:004259A5 46                      inc esi<---------------------------注册码移一位
:004259A6 8D6C43D0                lea ebp, dword ptr [ebx+2*eax-30]<-计算处理注册码
:004259AA 33DB                    xor ebx, ebx<----------------------清空EBX
:004259AC 8A5EFF                  mov bl, byte ptr [esi-01]<---------取下一位注册码
:004259AF EBC7                    jmp 00425978

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0042599F(C)
|
:004259B1 8BC5                    mov eax, ebp<----------------------EBP为假注册码的十六进制数
..............
:004259BE C3                      ret
------分隔线----------------------------
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容