CrackMe32
时间:2021-07-26 16:25:29
收藏:0
阅读:0
进去od发现 push call 有壳
脱完
第一个打开有个弹窗 直接
bp MessageBoxA 下断点
找到关键地方下个断点重新运行分析
判断了当前文件夹是否有reg.dat 文件
接着看他们的窗体事件
应该又是几个失焦事件 来算密码把ok解开
定位看1第一个事件代码
这段代码是吧 输入值转成十进制储存
进去
这里发现了 计算方式 name大于5
去name 前4位分别除10
接着对长度大于2的继续除
成功解开
char pName[] = "name1"; char pNum[4] = {0}; pNum[0] = pName[0] / 0x0A; pNum[1] = pName[2] / 0x0A; pNum[2] = pName[3] / 0x0A; pNum[3] = pName[4] / 0x0A; for ( int i=0;i<4;i++) { if ( pNum[i]>=0x0A ) // 程序中是通过转为字符串,判断字符串长度 { pNum[i] = pNum[i]/0x0A; } } printf("Num: %d - %d - %d - %d\r\n",pNum[0],pNum[1],pNum[2],pNum[3]);
评论(0)