炒股理财_3.21
注册形式:序列号/用户名/注册码
限制:试用一百次左右,未注册版最多可记录五十次交易记录
难度点评:初级、变态形
声 明:偶不是搞汉化的那个、注册名一大一小(Yy)搞汉化的那谓两个大大(YY)别弄错嘎!
对本解析的惊喜打击~~~概不负责=======================================================================================东东用ASProtect_1.2X加壳、可自动或手动脱掉、运行跳出个窗口说有毒~~~靠~~~有呕像味
把 42DA91 的 7434 改为 EB34 运行、又跳出个数据库密码登陆窗口~~~再靠一下、Cancel掉
再出个什么鸟就不搞了~~~倒~~~注册提示窗口、进去、发现加载后主窗口的内容少了点东东
这个东东算法重点在重启验证、软件注册那里、取硬盘型号、硬盘ID、转换为序列号、并判断注册码形式及位数、把相关的信息写入注册表 注册码形式是这样 ****-****-****=======================================================================================***算法解析***重启验证***=======================================================================================这个东东比较烦、反复调用变态MD5算算算、对付的办法就是在变态MD5初始化那里设断、想看的信息会随着程序的流程显现出来、只要弄懂前后的变换算法就能搞定。---------------------------------------------------------------------------------------***注册码变换算法***(填入注册码 => 1234-ABCD-5678)-----------------------------------------------------3412 CDAB 7856 => 0097FBC8 34 12 CD AB 78 56
3412<<=1;==682512cd<<=1;==259bcdab<<=1;==9b56ab78<<=1;==56f07856<<=1;==f0ac5634<<=1;==AC68
6825 9B56 F0AC => 0097F9A0 68 25 9B 56 F0 AC => 0097FBC8 68 25 9B 56 F0 AC6825<<=1;==d04a259B<<=1;==4b369B56<<=1;==36ac56F0<<=1;==ade0F0AC<<=1;==e158AC68<<=1;==58d0 <= 逆运算密文 3 2 1 逆推回去得出注册码D04B AD36 E158 => 0097FBC8 D0 4B 36 AD E1 58
调用变态MD5算出三组最终注册码密文 <= 不可逆=======================================================================================序列号 变换算法 =>====================00420A30 <= 取硬盘型号、取硬盘ID
1:取硬盘型号调用算法1 算出硬件代码计算常量前四位
2:取硬盘 ID 调用算法1 算出硬件代码计算常量后四位
3:硬件代码计算常量 => 0x564B9D85 => 转换为系列号
0x564B9D85^=0x12345678;==0x447FCBFD
0097F640 FD CB 7F 44
FDCB<<=1;==fb96CB7F<<=1;==96fe7F44<<=1;==fe8944FD<<=1;==89FB
0097F344 FB 96 FE 89 <= 系列号
系列号 <=> 硬件代码计算常量 <= 互逆
~~~什么、逆不回去!那就在下面的点位设断 =>
004210C8 . 8B45 98 MOV EAX,DWORD PTR SS:[EBP-68] <= 硬件代码计算常量004210CB . 8945 9C MOV DWORD PTR SS:[EBP-64],EAX <= 硬件代码计算常量==========================-------------------------------------------------------------序列号+用户名 变换算法 =>===========================1:用户名转换为大写
2:硬件代码计算常量+用户名 调用 变态MD5+128位转换得出逆运算密文1
0097FA2C 85 9D 4B 56 00 59 59 5B 43 43 47 5D <= 厺KV.YY[CCG]
变态MD5运算结果 =>
0097FA14 |3906DB740097FA18 |02CDEF800097FA1C |3DDDBF940097FA20 |8898E7D3
128位转换 => 0097FB66 0A 92 <= 逆运算密文1---------------------------------------------------------------------------------------3:用户名+硬件代码计算常量 调用 变态MD5+128位转换得出逆运算密文2
0097FA2C 59 59 5B 43 43 47 5D 00 85 9D 4B 56 <= YY[CCG].厺KV
变态MD5运算结果 =>
0097FA6C 0226F32C0097FA70 F79858DA0097FA74 45813EE30097FA78 78E64F34
128位转换 => 0097FB66 F0 29 <= 逆运算密文2---------------------------------------------------------------------------------------4:逆运算密文1+逆运算密文2 调用 变态MD5+128位转换得出逆运算密文3
0097FB74 0A 92 F0 29
变态MD5运算结果 =>
0097FA14 |3B48F5D40097FA18 |5A8C4FCD0097FA1C |5B7BBC470097FA20 |93BBDD1C
128位转换 => 0097FB66 1B 64 <= 逆运算密文3---------------------------------------------------------------------------------------5:逆运算密文 1 2 3 调用 变态MD5算出三组最终硬件密文 <= 不可逆---------------------------------------------------------------------------------------6:最终硬件密文 和 最终注册码密文 对比后得出注册结果=======================================================================================***算法描述***=======================================================================================算法 => 1:(128位转换、硬盘型号转换、硬盘ID转换)-------------------------------------------------h1(*p){把p[]=“E7D0C697F6F28CDA434DDAD160244AB8”转换为这样=>t[]={E7 D0 C6 97 F6 F2 8C DA 43 4D DA D1 60 24 4A B8};
***(硬盘型号转换、硬盘ID转换)不用上面的转换***
k=0xffffffff;t1=0x00000000;for(i=0;i<strlen(t)或者用strlen(p);i++){t2=0x00000080;t1=t[i];或者用t1=p[i];for(;t2!=0;){k1=k;k1&=0x8000;k+=k;t4=t1&t2;if(t4==0x0)t3=0x00000000,k|=t3;else t3=0x00000001,k|=t3;if(k1==0x0)t2>>=1;else k^=0x1021,t2>>=1;}}return(k);}=============--------------------------------------------------------------------------变态MD5设置=============MD5算法 网上搜噎吓就是一堆 (略)
A=0x76543210;B=0xFEDCBA98;C=0x89ABCDEF;D=0x01234567;
第四轮对换第一轮相应的参数对换掉、其它的接着按顺序调换(4=>1;1=>2;2=>3;3=>4;)========================================================================================算法总结:========================================================================================1:用户名转换为大写、序列号转换为硬件代码计算常量
2:硬件代码计算常量+用户名 调用 变态MD5+128位转换得出逆运算密文1
3:用户名+硬件代码计算常量 调用 变态MD5+128位转换得出逆运算密文2
4:逆运算密文1+逆运算密文2 调用 变态MD5+128位转换得出逆运算密文3
5:逆运算密文 3 2 1 用注册码变换算法的逆运算反推回去得出注册码========================================================================================--------------------------用户名 <= Yy[CCG]--------------------------系列号 <= 89FE96FB--------------------------注册码 <= A402-0ABC-D946--------------------------========================================================================================---------------注册机:(略)-------------------------------------------------------------------------------------------------------如你写出注册机勿大肆传播、哪怕你觉得偶写的这堆东东如同香烟盒上吸烟有害健康的广告、那在你行动之前先考虑清楚~~~----------------------------------------------------------------------------------------============================================================================================================-------------------- Yy--------------------China Cracking Group--------------------===========----------- 2002.12.1 -----------==========================================