在看雪看到了两篇关于Source insight的破解,一篇只大概讲了分析过程,另一篇只写了注册机。
Source insight也算是一个很牛的软件了,希望能破掉提升一下逆向能力
逆完之后才看见网上的人说这个算法比较简单,有些失落
Setp1: 查壳,没壳,VC6.0的MFC写的(有壳我也不会脱,我只会脱压缩壳哈哈)
Step2:打开软件注册随便按下按钮看看提示信息,然后在OD处找到对应位置,拉倒对应位置最上面(函数开头)
00448AC3 55 push ebp
00448AC4 8BEC mov ebp,esp
00448AC6 83EC 0C sub esp,0C
00448AC9 C745 FC BC535E00 mov dword ptr ss:[ebp-4],Insight3.005E53BC
00448AD0 8365 F8 00 and dword ptr ss:[ebp-8],0
00448AD4 EB 07 jmp short Insight3.00448ADD
00448AD6 8B45 F8 mov eax,dword ptr ss:[ebp-8]
00448AD9 40 inc eax
........................此处省略一万字.......................................
00448C32 68 6CE95300 push Insight3.0053E96C ; ASCII "You typed an invalid serial number."
00448C37 E8 22F2FBFF call Insight3.00407E5E
00448C3C 59 pop ecx
00448C3D 68 E8030000 push 3E8
00448C42 FF15 E4925200 call dword ptr ds:[<&KERNEL32.Sleep>] ; kernel32.Sleep
00448C48 ^ E9 89FEFFFF jmp Insight3.00448AD6
00448C4D 33C0 xor eax,eax
00448C4F C9 leave
00448C50 C2 0400 retn 4
上面有一个这样的CALL(如下代码,我说的是00448BD9处的那个)其后的je跳到了00448C32处(显示错误信息处)
00448BBF 68 BC535E00 push Insight3.005E53BC ; ASCII "AAAAAAAA"
00448BC4 E8 223FFFFF call Insight3.00