软件名称: asabili
软件版本: 1.0
软件类别: 娱乐游戏
应用平台: WIN9X/WINNT/WIN2K/WINXP
授权形式: 共享
软件介绍: 日本人做的一个台球游戏,分为9球、抢黑8、计分赛三种玩法。可惜的是未注册版本只能玩演示游戏解解馋了。解压到任意文件夹即可使用。这是我的第一个汉化作品,图片中的文字和帮助文件都没有汉化。
下断点bpx GetDlgItemTextA
我是下的bpx messageboxa,然后pmoudle以后提示注册失败,在向上找跳转,我个人习惯这样,方法很多,随便找一种你喜欢的.
00408C08 > 8BB424 0C03000>MOV ESI,DWORD PTR SS:[ESP+30C] ; Case 1 of switch 00408BA3
00408C0F . 8B3D D4E14000 MOV EDI,DWORD PTR DS:[<&user32.getdlgite>
00408C15 . 8D9424 0801000>LEA EDX,DWORD PTR SS:[ESP+108]
00408C1C . 68 00010000 PUSH 100 ; /Count = 100 (256.)
00408C21 . 52 PUSH EDX ; |Buffer
00408C22 . 68 EB030000 PUSH 3EB ; |ControlID = 3EB (1003.)
00408C27 . 56 PUSH ESI ; |hWnd
中断到这里:
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
00408C28 . FFD7 CALL EDI ; \GetDlgItemTextA
00408C2A . 8D8424 0801000>LEA EAX,DWORD PTR SS:[ESP+108]
00408C31 . 50 PUSH EAX
00408C32 . E8 F9FDFFFF CALL ASABILLI.00408A30 <---关键call,跟进
00408C37 . 83C4 04 ADD ESP,4
00408C3A . 85C0 TEST EAX,EAX <---关键比较点
00408C3C . 68 00010000 PUSH 100 ; /Count = 100 (256.)
00408C41 . 75 54 JNZ SHORT ASABILLI.00408C97 ; |<---关键跳转点
00408C43 . 8B15 FC404100 MOV EDX,DWORD PTR DS:[4140FC] ; |ASABILLI.00400000
00408C49 . 8B3D 84E14000 MOV EDI,DWORD PTR DS:[<&user32.loadstrin>; |
00408C4F . 8D8C24 0C02000>LEA ECX,DWORD PTR SS:[ESP+20C] ; |
00408C56 . 51 PUSH ECX ; |Buffer
00408C57 . 6A 03 PUSH 3 ; |RsrcID = STRING "注册码"
00408C59 . 52 PUSH EDX ; |hInst => 00400000
00408C5A . FFD7 CALL EDI ; \LoadStringA
00408C5C . 8B0D FC404100 MOV ECX,DWORD PTR DS:[4140FC] ; ASABILLI.00400000
00408C62 . 8D4424 08 LEA EAX,DWORD PTR SS:[ESP+8]
00408C66 . 68 00010000 PUSH 100 ; /Count = 100 (256.)
00408C6B . 50 PUSH EAX ; |Buffer
00408C6C . 6A 02 PUSH 2 ; |RsrcID = STRING "快乐码"
00408C6E . 51 PUSH ECX ; |hInst => 00400000
00408C6F . FFD7 CALL EDI ; \LoadStringA
00408C71 . 8D5424 08 LEA EDX,DWORD PTR SS:[ESP+8]
00408C75 . 6A 10 PUSH 10 ; /Style = MB_OK|MB_ICONHAND|MB_APPLMODAL
00408C77 . 8D8424 0C02000>LEA EAX,DWORD PTR SS:[ESP+20C] ; |
00408C7E . 52 PUSH EDX ; |Title
00408C7F . 50 PUSH EAX ; |Text
00408C80 . 56 PUSH ESI ; |hOwner
00408C81 . FF15 B8E14000 CALL DWORD PTR DS:[<&user32.messageboxa>>; \MessageBoxA
00408C87 . 5F POP EDI
00408C88 . B8 01000000 MOV EAX,1
00408C8D . 5E POP ESI
00408C8E . 81C4 00030000 ADD ESP,300
00408C94 . C2 1000 RETN 10
00408C97 > 68 00464100 PUSH ASABILLI.00414600
00408C9C . 68 EA030000 PUSH 3EA
00408CA1 . 56 PUSH ESI
00408CA2 . FFD7 CALL EDI
00408CA4 . 6A 08 PUSH 8
00408CA6 . 68 00414100 PUSH ASABILLI.00414100
00408CAB . 68 EB030000 PUSH 3EB
00408CB0 . 56 PUSH ESI
00408CB1 . FFD7 CALL EDI
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
跟进的关键call,CALL ASABILLI.00408A30
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
00408A30 /$ 53 PUSH EBX
00408A31 |. 56 PUSH ESI
00408A32 |. 8B7424 0C MOV ESI,DWORD PTR SS:[ESP+C]
00408A36 |. 57 PUSH EDI
00408A37 |. 8A46 07 MOV AL,BYTE PTR DS:[ESI+7] <---取注册码存放地址第8位
00408A3A |. 84C0 TEST AL,AL 比较是否为0
00408A3C |. 0F85 ED000000 JNZ ASABILLI.00408B2F <---如果有第8位则失败
00408A42 |. 33FF XOR EDI,EDI
00408A44 |> 8A0437 /MOV AL,BYTE PTR DS:[EDI+ESI]
00408A47 |. 50 |PUSH EAX
00408A48 |. E8 C3FFFFFF |CALL ASABILLI.00408A10 <---16进制转10进制
00408A4D |. 83C4 04 |ADD ESP,4
00408A50 |. 3C 24 |CMP AL,24
00408A52 |. 0F87 D7000000 |JA ASABILLI.00408B2F
00408A58 |. 47 |INC EDI
00408A59 |. 83FF 07 |CMP EDI,7
00408A5C |.^7C E6 \JL SHORT ASABILLI.00408A44
00408A5E |. 8A4E 05 MOV CL,BYTE PTR DS:[ESI+5] <---取第注册码6位
00408A61 |. 51 PUSH ECX
00408A62 |. E8 A9FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408A67 |. 8A56 02 MOV DL,BYTE PTR DS:[ESI+2] <---取第注册码2位
00408A6A |. 8AD8 MOV BL,AL
00408A6C |. 52 PUSH EDX
00408A6D |. 81E3 FF000000 AND EBX,0FF
00408A73 |. E8 98FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408A78 |. 25 FF000000 AND EAX,0FF
00408A7D |. B9 24000000 MOV ECX,24 <---24H入ecx
00408A82 |. 8D4458 26 LEA EAX,DWORD PTR DS:[EAX+EBX*2+26] <---eax=eax(第3位)+ebx(第6位)*2+26
00408A86 |. 99 CDQ
00408A87 |. F7F9 IDIV ECX edx=eax-24(我是观察出来的,请各位指教,IDIV ECX这句的意思)
00408A89 |. 8BFA MOV EDI,EDX
00408A8B |. 8A16 MOV DL,BYTE PTR DS:[ESI] <---取第注册码1位
00408A8D |. 52 PUSH EDX
00408A8E |. E8 7DFFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408A93 |. 25 FF000000 AND EAX,0FF
00408A98 |. 83C4 0C ADD ESP,0C
00408A9B |. 3BC7 CMP EAX,EDI <---第1位与第3位+第6位*2+26-24比较
00408A9D |. 0F85 8C000000 JNZ ASABILLI.00408B2F <---关键比较点,跳则失败
00408AA3 |. 8A46 04 MOV AL,BYTE PTR DS:[ESI+4] <---取第注册码5位
00408AA6 |. 50 PUSH EAX
00408AA7 |. E8 64FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408AAC |. 8A4E 01 MOV CL,BYTE PTR DS:[ESI+1] <---取第注册码2位
00408AAF |. 8AD8 MOV BL,AL
00408AB1 |. 51 PUSH ECX
00408AB2 |. 81E3 FF000000 AND EBX,0FF
00408AB8 |. E8 53FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408ABD |. 25 FF000000 AND EAX,0FF
00408AC2 |. B9 24000000 MOV ECX,24
00408AC7 |. 8D4458 26 LEA EAX,DWORD PTR DS:[EAX+EBX*2+26] <---eax=eax(第2位)+ebx(第5位)*2+26
00408ACB |. 99 CDQ
00408ACC |. F7F9 IDIV ECX <---edx=eax-24
00408ACE |. 8BFA MOV EDI,EDX
00408AD0 |. 8A56 06 MOV DL,BYTE PTR DS:[ESI+6] <---取第注册码7位
00408AD3 |. 52 PUSH EDX
00408AD4 |. E8 37FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408AD9 |. 25 FF000000 AND EAX,0FF
00408ADE |. 83C4 0C ADD ESP,0C
00408AE1 |. 3BF8 CMP EDI,EAX <---第7位与第2位+第5位*2+26-24比较
00408AE3 |. 75 4A JNZ SHORT ASABILLI.00408B2F <---关键比较点,跳则失败
00408AE5 |. 8A46 06 MOV AL,BYTE PTR DS:[ESI+6] <---取第注册码7位
00408AE8 |. 50 PUSH EAX
00408AE9 |. E8 22FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408AEE |. 8A0E MOV CL,BYTE PTR DS:[ESI] <---取第注册码1位
00408AF0 |. 8AD8 MOV BL,AL
00408AF2 |. 51 PUSH ECX
00408AF3 |. 81E3 FF000000 AND EBX,0FF
00408AF9 |. E8 12FFFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408AFE |. 25 FF000000 AND EAX,0FF
00408B03 |. B9 24000000 MOV ECX,24
00408B08 |. 8D4458 26 LEA EAX,DWORD PTR DS:[EAX+EBX*2+26] <---eax=eax(第1位)+ebx(第7位)*2+26
00408B0C |. 99 CDQ
00408B0D |. F7F9 IDIV ECX <---edx=eax-24
00408B0F |. 8BFA MOV EDI,EDX
00408B11 |. 8A56 03 MOV DL,BYTE PTR DS:[ESI+3] <---取第注册码4位
00408B14 |. 52 PUSH EDX
00408B15 |. E8 F6FEFFFF CALL ASABILLI.00408A10 <---16进制转10进制
00408B1A |. 25 FF000000 AND EAX,0FF
00408B1F |. 83C4 0C ADD ESP,0C
00408B22 |. 3BF8 CMP EDI,EAX <---第4位与第1位+第7位*2+26-24比较
00408B24 |. 75 09 JNZ SHORT ASABILLI.00408B2F <---关键比较点,跳则失败
00408B26 |. 5F POP EDI
00408B27 |. 5E POP ESI
00408B28 |. B8 01000000 MOV EAX,1 <---注册标志位eax=1,注册成功
00408B2D |. 5B POP EBX
00408B2E |. C3 RETN <---call结束,返回00408C32
00408B2F |> 5F POP EDI <---失败则跳转到这里
00408B30 |. 5E POP ESI
00408B31 |. 33C0 XOR EAX,EAX <---注册标志位eax=0,注册失败
00408B33 |. 5B POP EBX
00408B34 \. C3 RETN <---call结束,返回00408C32
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
总结:
注册成功条件:
① 注册码为7位
② 注册码第3位+第6位*2+26-24=第1位
③ 注册码第2位+第5位*2+26-24=第7位
④ 注册码第1位+第7位*2+26-24=第4位
一组可用的注册码:
Name:POW
Serial:2008002
注册信息放在HKEY_CURRENT_USER\Software\NAGI-P SOFT\ASABILLI下面的Name、ID键值中。
POW整理,转载请保持信息完整。
欢迎交流:pow@263.net
2003-5-15
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>