- UID
- 2
注册时间2004-12-1
阅读权限255
最后登录1970-1-1
总坛主
TA的每日心情 | 开心 2024-12-1 11:04 |
---|
签到天数: 12 天 [LV.3]偶尔看看II
|
发表于 2010-12-20 04:37:43
|
显示全部楼层
花了几分钟反了一下,你参考下吧,没细看,,应该差不多就是这样了.... BTW:那个音乐听着蛮蛋疼的说~~
.
.
.
.
省略若干
004012D9 fild dword ptr [ebp-18] ; 第一位用户名的ASCII = A
004012DC fstp qword ptr [ebp-20]
004012DF fld qword ptr [ebp-20]
004012E2 fsub qword ptr [481BB9] ; A = ascii - 100
004012E8 fstp qword ptr [ebp-28]
004012EB push 80000601
004012F0 push dword ptr [ebp-24]
004012F3 push dword ptr [ebp-28]
004012F6 push 1
004012FB mov ebx, 00401E90
00401300 call 00401DE9
00401305 add esp, 10
.
.
.
.
.省略若干
0040139F add esp, 4
004013A2 pop eax
004013A3 mov dword ptr [ebp-C], eax
004013A6 push 80000004
004013AB push 0
004013AD mov eax, dword ptr [526BC0] ; //机器码,,,,全局变量,汗~
004013B2 test eax, eax
004013B4 jnz short 004013BB
004013B6 mov eax, 00481BA1
004013BB push eax
004013BC push 1
004013C1 mov ebx, 00402120
004013C6 call 00401DE9
004013CB add esp, 10
004013CE mov dword ptr [ebp-14], eax
004013D1 mov dword ptr [ebp-10], edx
004013D4 push 80000004
004013D9 push 0
004013DB mov eax, dword ptr [ebp-4]
004013DE test eax, eax
004013E0 jnz short 004013E7
004013E2 mov eax, 00481BA1
004013E7 push eax
004013E8 push 1
004013ED mov ebx, 00402120
004013F2 call 00401DE9
004013F7 add esp, 10
004013FA mov dword ptr [ebp-1C], eax
004013FD mov dword ptr [ebp-18], edx
00401400 fld qword ptr [ebp-1C] ; A
00401403 fmul qword ptr [481BC1] ; A × 10000000 = B
00401409 fstp qword ptr [ebp-24]
0040140C fld qword ptr [ebp-14] ; 机器码
0040140F fsub qword ptr [ebp-24] ; 机器码 - B = C
00401412 fstp qword ptr [ebp-2C]
00401415 fld qword ptr [ebp-2C]
00401418 fadd qword ptr [481BC9] ; C + 2011 = SN
0040141E fstp qword ptr [ebp-34]
00401421 push 80000601
00401426 push dword ptr [ebp-30]
00401429 push dword ptr [ebp-34]
0040142C push 1
00401431 mov ebx, 00402330
00401436 call 00401DE9
0040143B add esp, 10
.
.
.
.
.省略若干
004014AB mov dword ptr [ebp-24], eax
004014AE mov dword ptr [ebp-20], edx
004014B1 fld qword ptr [ebp-14]
//=====================================
004014B4 fsub qword ptr [ebp-24] ; 减法运算,传说中的关键比较,在易语言中是下面这个样子,哈~~
004014B7 ftst
004014B9 fstsw ax
004014BB test ah, 1
004014BE je short 004014C2
004014C0 fchs
004014C2 fcomp qword ptr [481BD1]
004014C8 fstsw ax
004014CA test ah, 41
004014CD jnz 0040150D
//=====================================
004014D3 push 0
004014D5 push 0
004014D7 push 0
004014D9 push 80000301
004014DE push 0
004014E0 push 0
004014E5 push 80000004
004014EA push 0
004014EC push 00481BD9 ; 注册码不对,请重试!
004014F1 push 3
004014F6 mov ebx, 00402560
004014FB call 00401DE9
00401500 add esp, 28
00401503 jmp 00401591
00401508 jmp 0040153D
0040150D push 0
0040150F push 0
00401511 push 0
00401513 push 80000301
00401518 push 0
0040151A push 0
0040151F push 80000004
00401524 push 0
00401526 push 00481BEE ; 恭喜你,注册成功,放个小段子来奖励你一下!
0040152B push 3
00401530 mov ebx, 00402560
00401535 call 00401DE9
- //注册机:
- {-------------------------------------------------------------------------------
- 过程名: GetRegCode
- 作用: 计算注册码
- 作者: piaoyun/P.Y.G
- 日期: 2010.12.20
- 参数: sMachineCode,sUserName: string
- 返回值: string
- 特别说明: 无
- -------------------------------------------------------------------------------}
- function GetRegCode(sMachineCode,sUserName: string):string;
- var
- cUserNameIndex_1: Char;
- bAsc: Byte;
- dwSum: DWORD;
- begin
- cUserNameIndex_1 := sUserName[1];
- bAsc := Ord(cUserNameIndex_1) - 100;
- dwSum := StrToInt(sMachineCode)- bAsc * 10000000;;
- dwSum := dwSum + 2011;
- Result := IntToStr(dwSum);
- end;
复制代码 |
评分
-
查看全部评分
|