绿星锄大D注册机的制作
【文章标题】: 绿星锄大D注册机的制作【软件名称】: 绿星锄大D
【软件大小】: 1694k
【下载地址】: 自己搜索下载;已经上传到sjmzsf.ys168.com,大家也可以在那里下载!
【加壳方式】: 无壳
【使用工具】: OD KEYMAKER1.73
【软件介绍】: 扑克游戏,支持联网!
【作 者】: jjdg
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
安装完成后,运行程序,会出现版权说明,同时在程序的标题栏显示[未注册],点击注册,在弹出的注册对话框里面,输入用户名jjddgg,注册码1234567890,确定,
弹出提示:用户名或注册码输入错误,请重新注册!
OD载入,右键,查找字符串,找到“用户名或注册码输入错误,请重新注册!”双击来到,
004095AA . /74 5D JE SHORT Dadi.00409609 |跳到出错的地方去!
004095AC . |8D5424 2C LEA EDX,DWORD PTR SS:
004095B0 . |6A 01 PUSH 1 ; /Arg5 = 00000001
004095B2 . |52 PUSH EDX ; |Arg4
004095B3 . |68 BC114300 PUSH Dadi.004311BC ; |usename
004095B8 . |68 E8114300 PUSH Dadi.004311E8 ; |software\luxing dadi\
004095BD . |68 02000080 PUSH 80000002 ; |Arg1 = 80000002
004095C2 . |8D4C24 24 LEA ECX,DWORD PTR SS: ; |
004095C6 . |E8 05DF0000 CALL Dadi.004174D0 ; \Dadi.004174D0
004095CB . |8D4424 20 LEA EAX,DWORD PTR SS:
004095CF . |6A 01 PUSH 1 ; /Arg5 = 00000001
004095D1 . |50 PUSH EAX ; |Arg4
004095D2 . |68 B4114300 PUSH Dadi.004311B4 ; |useid
004095D7 . |68 E8114300 PUSH Dadi.004311E8 ; |software\luxing dadi\
004095DC . |68 02000080 PUSH 80000002 ; |Arg1 = 80000002
004095E1 . |8D4C24 24 LEA ECX,DWORD PTR SS: ; |
004095E5 . |E8 E6DE0000 CALL Dadi.004174D0 ; \Dadi.004174D0
004095EA . |6A 40 PUSH 40
004095EC . |68 DC164300 PUSH Dadi.004316DC ;用户授权方式
004095F1 . |68 BC164300 PUSH Dadi.004316BC ;已注册成功, 请重新启动游戏 !
004095F6 . |8BCD MOV ECX,EBP
004095F8 . |C745 48 02000>MOV DWORD PTR SS:,2
004095FF . |E8 1E330100 CALL <JMP.&MFC42.#4224_?MessageBoxA@CWnd@@QAE>
00409604 . |E9 90000000 JMP Dadi.00409699
00409609 > \6A 10 PUSH 10 |<--注意!这是从上面跳过来的!所以往上看!
0040960B .68 DC164300 PUSH Dadi.004316DC ;用户授权方式
00409610 .68 94164300 PUSH Dadi.00431694 ;用户名或注册码输入错误, 请重新注册 ! |<--来到这里!
00409615 .8BCD MOV ECX,EBP
再往上看,注册码验证的部分一定还在前面,
00409589 .8B00 MOV EAX,DWORD PTR DS:
0040958B .8B4C24 18 MOV ECX,DWORD PTR SS: |注意啊!
0040958F .50 PUSH EAX ; /s2 |接连2个数据入栈了
00409590 .51 PUSH ECX ; |s1 |后面跟了个call
00409591 .FF15 34894200 CALL DWORD PTR DS:[<&MSVCRT._mbscmp>] ; \_mbscmp| 看看mbscmp!是不是对注册码作比较呢?好!就在00409589下个断看看!
00409597 .83C4 08 ADD ESP,8
0040959A .8D4C24 1C LEA ECX,DWORD PTR SS:
0040959E .85C0 TEST EAX,EAX
004095A0 .0F94C3 SETE BL
004095A3 .E8 FE2D0100 CALL <JMP.&MFC42.#800_??1CString@@QAE@XZ>
004095A8 .84DB TEST BL,BL
f9,运行,注册,输入注册名和注册码,确定,回到OD,
停在00409589处,看看OD右下角里面的内容,
0012F960 00378BB0
0012F964 00428F40Dadi.00428F40
0012F968 0012FA24
0012F96C 00000001
0012F970 0042AC40Dadi.0042AC40
0012F974 00377028ASCII "jjddgg" <--我输入的注册名
0012F978 00377B68ASCII "1234567890" <--我输入的注册码
0012F97C 00377C58ASCII "ySkmqsymkm" <--这个是什么呢?会不会就是真正的注册码呢?先不忙,f8往下看看再说!
f8一下,注意寄存器里面的EAX的值变化了:EAX 00377C58 ASCII "ySkmqsymkm",这么巧!
再f8一下,
0040958F .50 PUSH EAX ; /s2 = "ySkmqsymkm"
再来一下,
00409590 .51 PUSH ECX ; |s1 = "1234567890"
看看寄存器里面
EAX 00377C58 ASCII "ySkmqsymkm" |哇!真的是在输出注册码哦!
ECX 00377B68 ASCII "1234567890" |
实际上,看到这里基本上就可以确定了!
要不,带进去试试,注册成功!
好了!
打开keymaker1.73,“其它”-->“内存注册机”,填入以下信息:
中断地址:40958F,
次数:1,
指令:50,
长度:1
右边的注册码框里面,选择内存方式,寄存器,EAX,生成注册机。
现在好破的软件越来越少了,好不容易能够找到这么个来增强一下信心,真是不错啊!
[ 本帖最后由 jjdg 于 2006-7-14 11:43 编辑 ] 是明码比较,分析得不错,还需继续努力!呵呵~~ 写得好,值得初学者学习。 是的分析的不错!! 现在好破的软件越来越少了,好不容易能够找到这么个来增强一下信心,真是不错啊!
有同感啊!此文不错,很适合我这样的菜鸟学习!谢谢 怎么看不到算法?
页:
[1]