新CrackMe160之053 - KeyGen-me#3
-
脱壳
ESP定律轻松脱壳 -
破解
OD载入脱壳后程序,搜索界面直接定位到成功关键词入口00401154,单步调试分析算法
1). 用户名倒序
2). 循环用户名: user[i] = user[i] ^ 0x30
3). 循环注册码: code[i] = code[i] ^ 0x20
4). 对比两个结果
所以code[i] = user[i] ^ 0x10
注册机:
#include <stdio.h>
#include <string.h>
int main() {
char user[21] = {0};
printf("用户名: ");
fgets(user, sizeof(user), stdin);
int i, eax, ebx = 0, len = strlen(user) - 1;
printf("系列号: ");
for(i=len-1; i>=0; i--){
printf("%c", user[i] ^ 0x10);
}
getchar();
return 0;
}
运行示例:
用户名: abcde
系列号: utsrq
使用的工具连接(工具有点多有点大,可以先下OD,其它的后面慢慢下) 点击前往下载
下面是我的OD的界面布局,我觉得这4个是最常用的界面,其它的我基本上没用到~