home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / Quantico / km / rbs-ue_v.pas.txt < prev    next >
Encoding:
Text File  |  2000-05-25  |  1.2 KB  |  47 lines

  1. Program UltraEditKeygen;
  2. Const
  3.    Tab : array [0..3,0..7] of byte =
  4.    (($6e,00,$de,00,$ff,00,$de,00),($35,0,$6f,00,$36,0,$de,00),
  5.    (0,$f7,0,$32,0,$a8,0,$79),(0,$74,0,$85,0,$59,0,$88));
  6. Var
  7.    Name,Key:String;
  8.    Sum,I,Tx,Ty,Temp,len:Byte;
  9. begin
  10.    Writeln('   UltraEdit32 V5.x *KEYGEN*');
  11.    Writeln('written by ^pain^ ''98 / Rebels');
  12.    writeln;
  13.    Write('Name:');
  14.    Readln(Name);
  15.    If length(Name)<6 then begin
  16.     writeln('Error - name must be over 5 Chars!!');
  17.     Halt(0);
  18.    end;
  19.    Sum:=0;
  20.    len:=length(name);
  21.    Name[3]:=chr(9);
  22.    Name[6]:=chr(ord(name[6]) or $55);
  23.    Name:=Name+Chr(00);
  24.    For I:=Length(Name) to $3c do
  25.       Name:=Name+chr($2e);
  26.    For I:=1 to len do
  27.       Sum:=Sum+ord(Name[I]);
  28.    sum:=not sum;
  29.    Key:='';
  30.    For I:=0 to 15 do
  31.    begin
  32.       Ty:=I mod 4;
  33.       Tx:=I mod 16;
  34.       tx:=tx shr 1;
  35.       Temp:=Tab[Ty,Tx];
  36.       Temp:=(Temp xor Sum)+1;
  37.       Name[I+1]:=Chr(Temp xor ord(Name[I+1]));
  38.       Temp:=ord(name[i+1]);
  39.       If I<8 then Key:=Key+chr(Temp mod 26+$41)
  40.        else Key:=Key+Chr(Temp mod 10+$30);
  41.    end;
  42.    writeln('Key :',Key);
  43.    writeln;
  44.    writeln('                       Enjoy!');
  45.  
  46. end.
  47.