windows優化大師序號產生器原始碼
unit unit1;
inte***ce
uses
windows, messages, sysutils, variants, classes, graphics, controls, forms,
dialogs, registry, stdctrls, buttons;
type
tform1 = class(tform)
label1: tlabel;
label2: tlabel;
edit1: tedit;
edit2: tedit;
label3: tlabel;
edit3: tedit;
getkeyspeedbutton: tspeedbutton;
checkbox1: tcheckbox;
label4: tlabel;
procedure getkeyspeedbuttonclick(sender: tobject);
procedure checkbox1click(sender: tobject);
private
public
end;
varform1: tform1;
family, model, stepping: byte;
implementation
//獲得cpu資訊的過程,用彙編**寫的
procedure getcpuid;
asmpush eax
mov eax, 1
dw $a20f //彙編指令cpuid的機器**
mov stepping, al
and stepping, 0fh //取得cpu stepping數送入到變數stepping中
and al, 0f0h
shr al, 4
mov model, al //取得cpu model數送入到變數model中
shr ax, 8
and al, 0fh
mov family, al //取得cpu familyg數送入到變數family中
pop eax
end;
//rsa的加密和解密函式,等價於(m^e) mod n(即m的e次冪對n求餘)
function encrypt_decrypt(m: int64; e: int64=$2c86f9; n: int64=$69aaa0e3): int64;
vara, b, c: int64;
begin
a:=m;
b:=e;
c:=1;
while b<>0 do
if (b mod 2)=0
then begin
b:=b div 2;
a:=(a * a) mod n;
endelse begin
b:=b - 1;
c:=(a * c) mod n;
end;
result:=c;
end;
procedure tform1.getkeyspeedbuttonclick(sender: tobject);
varid, username, cpuver: string;
s: array [1..4] of cardinal;
temp, num1, num2: cardinal;
code1, code2: int64;
i, ascii: byte;
reg: tregistry;
begin
if (edit1.text=) and (checkbox1.checked=false)
then application.messagebox(請輸入註冊申請碼!, 警告, mb_ok);
if (edit1.text=) and (checkbox1.checked=true)
then application.messagebox(請輸入註冊者姓名!, 警告, mb_ok);
if (checkbox1.checked=true) and (edit1.text<>)
then begin
username:=edit1.text; //從edit1.text中取得使用者名稱
getcpuid; //呼叫過程getcpuid
cpuver:=level +inttostr(family)+ rev. +inttostr(model)+.+inttostr(stepping);
temp:=1;
i:=1;
while username[i]<>#0 do begin
ascii:=ord(username[i]); //函式ord()的作用為取得字元的ascii碼
temp:=(temp*ascii+$d0878) mod $f4240;
inc(i);
end;
i:=1;
while cpuver[i]<>#0 do begin
ascii:=ord(cpuver[i]);
temp:=(temp*ascii+$2597d) mod $f4240;
inc(i);
end;
id:=inttostr(temp);
end;
if (checkbox1.checked=false) and (edit1.text<>)
then id:=edit1.text;
id:=id+1234567;
setlength(id, 8); //把字串id長度變為8個,並把後面的字元截掉
//下面四行語句是把字串you are big pig.的記憶體資料送到變數s中
s[1]:=$20756f59;
s[2]:=$20657261;
s[3]:=$20676962;
s[4]:=$2e676970;
num1:=0;
for i:=4 downto 2 do
num1:=(num1+ord(id[i])) shl 8;
num1:=num1+ord(id[1]);
num2:=0;
for i:=8 downto 6 do
num2:=(num2+ord(id[i])) shl 8;
num2:=num2+ord(id[5]);
temp:=0;
for i:=1 to 32 do begin
temp:=temp+$9e3779b9;
num1:=num1+(num2 shl 4)+(s[1] xor num2)+((num2 shr 5) xor temp)+s[2];
num2:=num2+(num1 shl 4)+(s[3] xor num1)+((num1 shr 5) xor temp)+s[4];
end;
code1:=(num1 mod $40000000) + 2;
code2:=($93e0014 shl 2)+ num1 div $40000000 + 2;
code1:=encrypt_decrypt(code1);
code2:=encrypt_decrypt(code2);
if (checkbox1.checked=false) and (edit1.text<>)
then begin
edit2.text:=inttohex(code1, 8);
edit3.text:=inttohex(code2, 8);
end;
if (checkbox1.checked=true) and (edit1.text<>)
then begin
reg:=tregistry.create;
reg.rootkey:=hkey_local_machine;
if reg.openkey(softwarewom, true)
then begin
reg.deletevalue(masters);
reg.writestring(register, username);
reg.writestring(register_1, inttohex(code1, 8));
reg.writestring(register_2, inttohex(code2, 8));
end;
reg.free;
application.messagebox(自動註冊完成!, 資訊, mb_ok);
end;
end;
procedure tform1.checkbox1click(sender: tobject);
begin
if checkbox1.checked=true
then begin
getkeyspeedbutton.caption:=自動註冊;
label1.caption:=註冊者姓名;
edit1.maxlength:=0;
label2.visible:=false;
label3.visible:=false;
edit2.visible:=false;
edit3.visible:=false;
endelse begin
getkeyspeedbutton.caption:=取得註冊碼;
label1.caption:=註冊申請碼;
edit1.maxlength:=8;
label2.visible:=true;
label3.visible:=true;
edit2.visible:=true;
edit3.visible:=true;
end;
end;
end.
Windows優化大師序號產生器原始碼
unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,registry,stdctrls,buttons type tform1 class tform l...
Flash Builder4序號產生器
我的eclipse下的flash builder 4正式版已經過期,之前在網上找到的註冊碼,都不能用了,花了很久時間,才做到這個序號產生器。flash builder 4 序號產生器 serial crack keygen 現在將adobe flash builder 4 正式版 序號產生器 共享出...
C 序號產生器的實現
softreg類 using system using system.collections.generic using system.linq using system.text using system.management 需要引用system.management.dll namespace...