riijj [求助]riijj 的crack me算法
发表于:
2006-6-8 22:53
5304
riijj [求助]riijj 的crack me算法
在四级备考的一个晚上,我逃掉啦词汇课,逃掉啦听力课,pick up od,捣鼓啦三四个小时,把
http://bbs.pediy.com/showthread.php?s=&threadid=12136的底一个crackme的算法
还原成啦伪c语言,估计有错, ,还请riijj 大哥也pick up 陈年的美好回忆,帮忙看看.局部变量没有定义,运算全部以十六进制进行,不会转换,不过反正是伪c语言.......
VOID F5(NAME,EAX){//获得初始的EAX
EDX=NAME[1]%NANE[2];
ECX=EDX*NAME[3]+1;
EAX=FFFFFFFF/ECX;
} VOID F4(NAME,H){
A=NAME;
EDX=5*A
A=A+8*(5*A);
A=3*A;
H=A;
} VOID f(name,number){EBX=0;
FOR(INT I=1;I〈=SIZEOF(NAME);I++){
C=NAME[I];
SAR C,5;
F4(NAME[I],H);
FOR(I=1;I〈=H;I++){
F3(EAX,EDX){
EAX=EAX*343FD;
GAX=EAX/16;
GAX=GAX AND 7FFF ;
}
}
F3(EAX,EDX){
EAX=EAX*343FD;
GAX=GAX/16;
GAX=GAX AND 7FFF ;
}
EDX=GAX%1A
GAX=GAX/1A;
ECX=NUMBER[I];
EDX=EDX+41;
EAX=EDX;
EAX=EAX-ECX;
EBX=EBX-EAX; }
IF(EAX==0)PRINTF("RIGHT")
ELSE PRINTF("ERROR"); }
MAIN(){
CHAR NAME[],NUMBER[];
PUT(NAME);
PUT(NUMBER);
f(NAME,NUMBER);
}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课