很久没玩OD,正好机器上试用版的LeapFTP过期了,于是心血来潮准备写个注册机,LeapFTP版本v2.76
记得以前跟过LeapFTP,注册码分为两段,是明文存放在内存中,但是没有去细看算法,今天决定把算法搞定以后升级也方便^_^.
用OD,载入,下注册表断点(为什么下注册表断点?因为我跟过^_^),关键部分0x00484d89处停下,程序去读取"Software/LeapWare/Registry/"下有没有UserName和UserKey两个东西,往下看,这两个东西都必须有否则就直接跳走了.这个版本的Leap似乎有点改进,记得以前好像是无论成功失败都会去写注册表,现在是只有注册成功了里面才有东西,不管那么多,先手工添加方便分析-_-#.
走啊走啊走啊走,走到了一个地方
00484FB2 |
.
E8 B1FDFFFF
call
00484D68
00484FB7 |
>
807E
35
00
cmp byte ptr [esi
+
35
]
,
0
00484FBB |
.
75
33
jnz short 00484FF0
00484FBD |
.
807E
36
00
cmp byte ptr [esi
+
36
]
,
0
00484FC1 |
.
74
13
je short 00484FD6
00484FC3 |
.
A1 94C14B00 mov eax
,
dword ptr [4BC194]
00484FC8 |
.
8B00 mov eax
,
dword ptr [eax]
00484FCA |
.
8B56
28
mov edx
,
dword ptr [esi
+
28
]
00484FCD |
.
E8 22F8FFFF
call
004847F4
;
这个CALL比较长度是否合格
00484FD2 |
.
84C0 test al
,
al