Moving easy 2006 serial number crack algorithm announcement _ application Skills

Source: Internet
Author: User
Tags crypt modulus trim


Unit Unit1;

Interface

Uses
Windows, Messages, sysutils, variants, Classes, Graphics, Controls, Forms,
Dialogs, STDCTRLS,MD5,BASE64,MATH,CLIPBRD, extctrls,dateutils;

Type
TForm1 = Class (Tform)
Edit1:tedit;
Button1:tbutton;
Label1:tlabel;
Groupbox1:tgroupbox;
Combobox1:tcombobox;
Label4:tlabel;
Combobox2:tcombobox;
Label3:tlabel;
Combobox3:tcombobox;
Label5:tlabel;
Checkbox1:tcheckbox;
Checkbox2:tcheckbox;
Checkbox3:tcheckbox;
Checkbox4:tcheckbox;
Checkbox5:tcheckbox;
Radiogroup1:tradiogroup;
Image1:timage;
Edit2:tedit;
Procedure Button1Click (Sender:tobject);
Procedure Formcreate (Sender:tobject);
Private
{Private declarations}
Procedure Genpe2006key ();
Public
{Public declarations}
End

Var
Form1:tform1;

Implementation

{$R *.DFM}

Const
publickey=63169;
modulus=43679;
Function Crypt (const plngmessage, plngkey:integer): integer;
Var
Llngmod,llngresult,llngindex:integer;
Begin
If plngkey Mod 2 = 0 Then
Begin

Llngresult: = 1;
For llngindex: = 1 to plngkey Div 2 do
Begin
Llngmod: = Round (Power (Plngmessage, 2)) Mod modulus;
Mod may error on key generation
Llngresult: = (Llngmod * llngresult) Mod modulus
End
End
Else
Begin
Llngresult: = Plngmessage;
For llngindex: = 1 to plngkey Div 2 do
Begin
Llngmod: = Round (Power (Plngmessage, 2)) Mod modulus;

Mod may error on key generation
Llngresult: = (Llngmod * llngresult) Mod modulus;

End
End;
Result: = Llngresult;
End;

Function Encode (const pstrmessage:string): String;
Var
Llngindex,llngmaxindex:integer;
Lbytascii:byte;
Llngencrypted:integer;
Begin
Result: = ';
Llngmaxindex: = Length (Pstrmessage);
If llngmaxindex = 0 Then
Exit;
For llngindex: = 1 to Llngmaxindex do
Begin
Lbytascii: = Ord (Pstrmessage[llngindex]);
llngencrypted: = Crypt (Lbytascii, PublicKey);
Result: = result + Inttohex (llngencrypted, 4)
End
End;

Procedure Gen2006key (var st1:string; Const Ssitename,syear,sversion:string;istr:integer);
Var
ssitemd5,sa,scrc:string;
I,k:integer;
Begin
Sa:= ';
ssitemd5:= cmd5.uppermd5 (Cbase64.strtobase64 (ssitename) + cbase64.strtobase64 (sversion));

Scrc:=encode (Trim (Copy (ssitemd5,1,5));
SA:=SSITEMD5+SSITEMD5+SYEAR+SCRC;

Fill Hash
K:=ISTR;
For I:=1 to Length (SA) do
Begin
St1[k]:= Sa[i];
k:= k + (i mod 9) +1;
End

End

Procedure Tform1.genpe2006key;
Const
Sbase= ' 123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz-= ';
Var
ssitename,syear:string;
sn:string;
st1,st2:string;

I:integer;

F1:textfile;

Begin

Ssitename:=trim (Edit1.text);

DateSeparator: = '-';
Shortdateformat: = ' yyyy-mm-dd ';

Case Radiogroup1.itemindex of
0:syear:=datetostr (Incday (date,3));
1:syear:=datetostr (Incday (date,10));
2:syear:=datetostr (Incday (date,365));
3:syear:=datetostr (Incday (date,3650));
4:syear:=trim (Edit2.text);
End
syear:= Trim (Cbase64.strtobase64 (syear));

SetLength (sn,4096);

Generate random numbers
SetLength (st1,4064);
Randomize;
For I:=1 to Length (ST1) do
st1[i]:= Sbase[random (63) +1];

If Combobox1.itemindex >0 Then
Gen2006key (st1,ssitename,syear, ' CMS ' +inttostr (Combobox1.itemindex), 1);

If Combobox2.itemindex >0 Then
Gen2006key (st1,ssitename,syear, ' eshop ' +inttostr (combobox2.itemindex), 501);

If Combobox3.itemindex >0 Then
Gen2006key (st1,ssitename,syear, ' CRM ' +inttostr (combobox3.itemindex), 1001);

Supply
If Checkbox1.checked Then
Gen2006key (st1,ssitename,syear, ' SD ', 3001);

Property
If Checkbox2.checked Then
Gen2006key (st1,ssitename,syear, ' house ', 3501);

Company Recruitment
If Checkbox3.checked Then
Gen2006key (st1,ssitename,syear, ' HR ', 2501);

Registration of the room field
If Checkbox4.checked Then
Gen2006key (st1,ssitename,syear, ' Equipment ', 2001);

Student Status
If Checkbox5.checked Then
Gen2006key (st1,ssitename,syear, ' SDMS ', 1501);

st2:= cmd5.uppermd5 (ST1);

Fill serial Number
For I:=1 to 4000 do
Sn[i]:= St1[i];
For I:=1 to Length (ST2) do
Sn[4000+i]:= St2[i];
For I:=1 to
Sn[4032+i]:= St1[4000+i];


Clipboard.astext: = SN;

AssignFile (F1, ' [' +ssitename+ ']sn.txt ');
Rewrite (F1);
Write (F1,SN);
CloseFile (F1);

End

Procedure Tform1.button1click (Sender:tobject);
Begin
Genpe2006key ();
End

Procedure Tform1.formcreate (Sender:tobject);
Begin
Radiogroup1.color: = RGB (78,111,214);
Groupbox1.color: = RGB (78,111,214);
End

End.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.