贴这个2.1的注册机 (1千字)
#include <stdio.h>#include <stdlib.h>
#include <ctype.h>
#include <dos.h>
long sturn(char a[80])
{
int i,j,l;
long d,s=0;
l=strlen(a);
for(i=0;i<l;i++)
{if(a[i]>47&&a[i]<58) d=a[i]-48;
if(a[i]>64&&a[i]<71) d=a[i]-55;
if(a[i]>96&&a[i]<103) d=a[i]-87;
for(j=l-i;j>1;j--)
d*=16;
s+=d;}
return s;
}
main(void)
{
long sn;
char cc[4];
char serial_no[10];
union REGS r;
struct SREGS s;
unsigned sno1, sno2;
struct date today;
getdate(&today);
cc[0]=(today.da_mon/10)%10+65;
cc[1]=(today.da_mon/1)%10+66;
cc[2]=(today.da_mon/10)%10+67;
cc[3]=(today.da_mon/1)%10+68;
r.x.ax = 0x6900;
r.h.bl = 3; /* A:=1, B:=2, C:=3 etc. */
segread(&s);
intdosx(&r, &r, &s);
if (r.x.cflag)
*serial_no = "";
else
{
sno2 = *((unsigned far *)MK_FP(s.ds, r.x.dx+2));
sno1 = *((unsigned far *)MK_FP(s.ds, r.x.dx+4));
sprintf(serial_no, "%04X%04X", sno1, sno2);
}
/*printf("The Serial Number of Login Disk [C] is %s\n", serial_no );*/
sn=sturn(serial_no);
sprintf(serial_no,"%ld",sn);
/*printf("%s\n",serial_no);*/
printf(" ******FJWDGL 2.1********\n This keygen is made by Pretender\n ");
printf("Your Register code is: ");
for(sn=0;sn<strlen(serial_no);sn++)
printf("%c",serial_no[sn]+17);
printf("%c",cc[0]);
printf("%c",cc[1]);printf("%c",cc[2]);printf("%c",cc[3]+1);
printf("\n ***************************** --- --- ---\n *Welcome to WWW.CRACKNOW.COM* / / / --\n ***************************** --- --- --/\n");}
