新手破解练习Crackme160之097 - L99_ct1b
这个与上一个是同一个作者,算法完全一样~ 保留了中间两个部分,
算法部分也做了一丢丢调整~ keygen.c如下:
#include <stdio.h>
#include <string.h>
int main() {
char name[7] = {0};
int len = 0;
long code = 0, code1, val = 0x18C94966; //这里
while(len != 6){
printf("请输入用户名(6位): ");
scanf("%s", name);
len = strlen(name);
}
for(int i=0; i<6; i++){
code += name[i];
}
code += len;
code *= 0x15C10E;
code /= 3;
code += 0x29A;
code /= 0x1388;
code *= len;
code *= name[2];
code *= name[4];
if((code <= 0x5F5E0FF) || (code >= 0x3B9ACA00)) {
E77:
code += len;
code *= name[0];
//code *= val; //这里
//code &= 0xFFFFFFFF; //这里
if(code < 0) code *= -1;
if((code <= 0x5F5E0FF) || (code >= 0x3B9ACA00)) goto E77;
}
code1 = code;
EB6:
code1 /= len;
//code1 = code1 - val / code1; //这里
if(code1 < 0x2710) { code1 *= code1; } //平方
code1 &= 0xFFFFFFFF;
if((code1 <= 0x270F) || (code1 >= 0x186A0)) goto EB6;
printf("用户名为: %s\n注册码为: %ld\n滑块码为: %ld\n", name, code, code1);
getchar();getchar();
return 0;
}
运行示例:
用户名为: abc123
注册码为: 932907896
滑块码为: 19995
输入测试正常~
1~160每个破解过程,在吾爱破解论坛都有高手破解过了,也有整理好现成的, 我这边主要就是自己动手操作的过程,与他们的不太一样
附上高手们的连接: 点击前往查看
使用的工具连接(工具有点多有点大,可以先下OD,其它的后面慢慢下) 点击前往下载
新人入门教程"玩玩破解,写给新人看" 点击前往查看
我就是从这里开始的,对我这样的小白感觉超级友好~
下面是我的OD的界面布局,我觉得这4个是最常用的界面,其它的我基本上没用到~


浙公网安备 33010602011771号