啊哈,分析完算法,不吃饭先,怕忘
看也知道是IDA的拉
.text:00401281 03 D3 add edx, ebx ; byte
.text:00401283 C1 E2 14 shl edx, 14h
.text:00401286 03 D1 add edx, ecx ; ecx--;ecx==length
.text:00401288 40 inc eax
.text:00401289 83 C1 FF add ecx, 0FFFFFFFFh
.text:0040128C 85 D2 test edx, edx
.text:0040128E 75 01 jnz 00401291 ; if(edx==0)break;
.text:00401291 85 C9 test ecx, ecx
.text:00401293 75 DB jnz 算法开头
如果长度是5
(t[0]左移14位+长度)+(t[1]左移14位+长度-1)+(t[2]左移14位+长度-2)...直到长度减到0fail
是0pass 是0pass 是0pass
这样看来这个算法很幼稚啊...妈的就是没见过算面,这点分析出来也兴奋.
特别之处在于长度可变 哦 因为移动14位后的范围似乎解密有点麻烦 哦我又开始兴奋了
啊 吃完饭睡觉 咱们零晨见