大家都知道,Winzip的注册码计算方法从来没改过,
这样做一个注册机就满有用的了,我稍微跟了一下,
发现并不是很复杂,只要看懂,你也可以写一个,
如果你愿意就练习一下吧!
从这里开始Ctrl+C
/**********************************************/
#include "stdio.h"
void main(void)
{
char str1[40],*pch=str1;
int c1=0,d1=0,eax=0,c2=0,ecx=0,n2=0,esi=0;
printf("RegWinZip (for v6.x--v8.x), Write by BetterWang!\n");
printf("Enter Your Name(1--39 letters):");
scanf("%s",str1);
while((*pch)!='\0'){
d1+=(*pch)*c1;pch++;c1++;};
pch=str1;
while (*pch!='\0')
{
ecx=(*pch)*0x100;
for(c2=0;c2<8;c2++){
esi=ecx;
esi^=eax;
if(esi&0x8000){
eax<<=1;
eax^=0x1021;
}
else{eax<<=1;}
ecx<<=1;}
c1++;pch++;
}
n2=eax+0x63;
n2&=0xffff;
printf("Try This Code: ");
printf("%04X",n2);
printf("%04X",d1);
}
/******************************************************************/
- 标 题:winzip注册机 (1千字)
- 作 者:8989
- 时 间:2001-4-12 23:07:29
- 链 接:http://bbs.pediy.com