QQ聊天记录查看器 4.5 寻码手记
【文章标题】: QQ聊天记录查看器 4.5 寻码手记【文章作者】: lzq1973
【作者邮箱】: [email protected]
【作者QQ号】: 150787972
【软件名称】: QQ聊天记录查看器 4.5
【软件大小】: 96KB
【下载地址】: http://nj.onlinedown.net/soft/47456.htm
【加壳方式】: 无
【保护方式】: SN
【编写语言】: Microsoft Visual C++ 6.0
【使用工具】: OD、PEID
【操作平台】: WIN2000
【软件介绍】: QQ聊天记录查看器 又名QQ聊天记录者或QQ聊天记录读取器本软件绿色软件,无需安装,对所有QQ版本都有效. 使用方法,把本程序放到QQ安装目录下,双击启动.然后通过启动QQ按钮来启动QQ,这个时候可以不需要密码就可以登录本机上已经登录过的QQ号,验证的时候会出现网络密码验证错误,点击确定,不要理会,然后你点中一个QQ好友,右键点击查看聊天记录,你就可以看到这个QQ号的所有本地聊天记录了
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
这个星期如何过呢,看到胡一刀大哥出的是补丁,我想可否找到注册码呢,于是就干上了~~~~
OD载入,很容易来到这里
00402BA0 .6A FF PUSH -1
00402BA2 .68 58344200 PUSH QQ聊天记.00423458 ;SE 处理程序安装
00402BA7 .64:A1 0000000>MOV EAX,DWORD PTR FS:
00402BAD .50 PUSH EAX
00402BAE .64:8925 00000>MOV DWORD PTR FS:,ESP
00402BB5 .83EC 08 SUB ESP,8
00402BB8 .56 PUSH ESI
00402BB9 .8BF1 MOV ESI,ECX
00402BBB .6A 01 PUSH 1
00402BBD .E8 56720100 CALL QQ聊天记.00419E18
00402BC2 .A1 24E64200 MOV EAX,DWORD PTR DS:
00402BC7 .894424 04 MOV DWORD PTR SS:,EAX
00402BCB .8D8E 1C010000 LEA ECX,DWORD PTR DS:
00402BD1 .C74424 14 000>MOV DWORD PTR SS:,0
00402BD9 .51 PUSH ECX
00402BDA .8D4C24 08 LEA ECX,DWORD PTR SS:
00402BDE .E8 F4860100 CALL QQ聊天记.0041B2D7
00402BE3 .51 PUSH ECX
00402BE4 .8D5424 08 LEA EDX,DWORD PTR SS:
00402BE8 .8BCC MOV ECX,ESP
00402BEA .896424 0C MOV DWORD PTR SS:,ESP
00402BEE .52 PUSH EDX
00402BEF .E8 63830100 CALL QQ聊天记.0041AF57
00402BF4 .E8 77FEFFFF CALL QQ聊天记.00402A70 ;这里是算法部分
00402BF9 .83C4 04 ADD ESP,4
00402BFC .85C0 TEST EAX,EAX
00402BFE .6A 00 PUSH 0
00402C00 .68 A0E24200 PUSH QQ聊天记.0042E2A0 ;ngnsss
00402C05 74 15 JE SHORT QQ聊天记.00402C1C
00402C07 .68 A8E24200 PUSH QQ聊天记.0042E2A8 ;注册成功
00402C0C .8BCE MOV ECX,ESI
00402C0E .E8 A96A0100 CALL QQ聊天记.004196BC
00402C13 .8BCE MOV ECX,ESI
00402C15 .E8 C8990100 CALL QQ聊天记.0041C5E2
00402C1A .EB 0C JMP SHORT QQ聊天记.00402C28
00402C1C >68 94E24200 PUSH QQ聊天记.0042E294 ;注册号无效
00402C21 .8BCE MOV ECX,ESI
00402C23 .E8 946A0100 CALL QQ聊天记.004196BC
00402C28 >8D4C24 04 LEA ECX,DWORD PTR SS:
00402C2C .C74424 14 FFF>MOV DWORD PTR SS:,-1
00402C34 .E8 A9850100 CALL QQ聊天记.0041B1E2
00402C39 .8B4C24 0C MOV ECX,DWORD PTR SS:
00402C3D .5E POP ESI
00402C3E .64:890D 00000>MOV DWORD PTR FS:,ECX
00402C45 .83C4 14 ADD ESP,14
00402C48 .C3 RETN
00402C49 90 NOP
----- 在这里 00402BF4 .E8 77FEFFFF CALL QQ聊天记.00402A70 F7跟进 ------
00402A70/$6A FF PUSH -1
00402A72|.68 38344200 PUSH QQ聊天记.00423438 ;SE 处理程序安装
00402A77|.64:A1 0000000>MOV EAX,DWORD PTR FS:
00402A7D|.50 PUSH EAX
00402A7E|.64:8925 00000>MOV DWORD PTR FS:,ESP
00402A85|.83EC 18 SUB ESP,18
00402A88|.53 PUSH EBX
00402A89|.8B4C24 2C MOV ECX,DWORD PTR SS: ;(ASCII "9265811133659283")
00402A8D|.33C0 XOR EAX,EAX
00402A8F|.894424 05 MOV DWORD PTR SS:,EAX
00402A93|.33DB XOR EBX,EBX
00402A95|.66:894424 09MOV WORD PTR SS:,AX
00402A9A|.895C24 24 MOV DWORD PTR SS:,EBX
00402A9E|.884424 0B MOV BYTE PTR SS:,AL
00402AA2|.8B41 F8 MOV EAX,DWORD PTR DS:
00402AA5|.83F8 10 CMP EAX,10 ;注册码位数16
00402AA8|.885C24 04 MOV BYTE PTR SS:,BL
00402AAC|.0F8C C0000000 JL QQ聊天记.00402B72 ;不为16则跳
00402AB2|.56 PUSH ESI
00402AB3|.68 04010000 PUSH 104
00402AB8|.8D4C24 34 LEA ECX,DWORD PTR SS:
00402ABC|.E8 E08A0100 CALL QQ聊天记.0041B5A1
00402AC1|.8B10 MOV EDX,DWORD PTR DS:
00402AC3|.33F6 XOR ESI,ESI
00402AC5|.895424 10 MOV DWORD PTR SS:,EDX
00402AC9|.8B48 04 MOV ECX,DWORD PTR DS:
00402ACC|.894C24 14 MOV DWORD PTR SS:,ECX
00402AD0|.8B50 08 MOV EDX,DWORD PTR DS:
00402AD3|.895424 18 MOV DWORD PTR SS:,EDX
00402AD7|.8B40 0C MOV EAX,DWORD PTR DS:
00402ADA|.894424 1C MOV DWORD PTR SS:,EAX
00402ADE|>8A4C34 10 /MOV CL,BYTE PTR SS: ;逐一检验
00402AE2|.51 |PUSH ECX
00402AE3|.E8 68FFFFFF |CALL QQ聊天记.00402A50
00402AE8|.83C4 04 |ADD ESP,4
00402AEB|.884434 10 |MOV BYTE PTR SS:,AL
00402AEF|.46 |INC ESI
00402AF0|.83FE 10 |CMP ESI,10
00402AF3|.^ 7C E9 \JL SHORT QQ聊天记.00402ADE ;循环
00402AF5|.33C0 XOR EAX,EAX ;EAX=36353406
00402AF7|.8D4C24 10 LEA ECX,DWORD PTR SS:
00402AFB|.5E POP ESI
00402AFC|>8A51 01 /MOV DL,BYTE PTR DS: ;注册码的偶数位(从左至右),即十位
00402AFF|.8A19 |MOV BL,BYTE PTR DS: ;注册码的奇数位(从左至右),即个位
00402B01|.C0E2 04 |SHL DL,4 ;偶数位乘10(即十位)
00402B04|.02D3 |ADD DL,BL ;再加个位
00402B06|.83C1 02 |ADD ECX,2
00402B09|.885404 04 |MOV BYTE PTR SS:,DL
00402B0D|.40 |INC EAX
00402B0E|.83F8 08 |CMP EAX,8
00402B11|.^ 7C E9 \JL SHORT QQ聊天记.00402AFC ;循环
00402B13|.8A4424 07 MOV AL,BYTE PTR SS: ;堆栈 SS:=11,第8、7位
00402B17|.8A5C24 04 MOV BL,BYTE PTR SS: ;堆栈 SS:=29 (')'),第2、1位
00402B1B|.8A4C24 0B MOV CL,BYTE PTR SS: ;堆栈 SS:=38 ('8'),第16位、15位
00402B1F|.8A5424 05 MOV DL,BYTE PTR SS: ;堆栈 SS:=56 ('V'),第4位、3位
00402B23|.32C3 XOR AL,BL ;AL=XOR(AL1,BL1)
00402B25|.8A5C24 06 MOV BL,BYTE PTR SS: ;BL=第4、3位
00402B29|.32CA XOR CL,DL ;CL=XOR(CL,DL)
00402B2B|.8A5424 09 MOV DL,BYTE PTR SS: ;DL=第12、11位
00402B2F|.32D3 XOR DL,BL
00402B31|.8A5C24 08 MOV BL,BYTE PTR SS: ;BL=第10、9位
00402B35|.325C24 0A XOR BL,BYTE PTR SS:
00402B39|.3C 38 CMP AL,38
00402B3B 75 35 JNZ SHORT QQ聊天记.00402B72
00402B3D|.80F9 6E CMP CL,6E
00402B40 75 30 JNZ SHORT QQ聊天记.00402B72
00402B42 80FA 4E CMP DL,4E
00402B45 75 2B JNZ SHORT QQ聊天记.00402B72
00402B47|.80FB 1A CMP BL,1A
00402B4A|.75 26 JNZ SHORT QQ聊天记.00402B72
00402B4C|.8D4C24 2C LEA ECX,DWORD PTR SS:
00402B50|.C74424 24 FFF>MOV DWORD PTR SS:,-1
00402B58|.E8 85860100 CALL QQ聊天记.0041B1E2
00402B5D|.B8 01000000 MOV EAX,1
00402B62|.5B POP EBX
00402B63|.8B4C24 18 MOV ECX,DWORD PTR SS:
00402B67|.64:890D 00000>MOV DWORD PTR FS:,ECX
00402B6E|.83C4 24 ADD ESP,24
00402B71|.C3 RETN
00402B72|>8D4C24 2C LEA ECX,DWORD PTR SS:
00402B76|.C74424 24 FFF>MOV DWORD PTR SS:,-1
00402B7E|.E8 5F860100 CALL QQ聊天记.0041B1E2
00402B83|.8B4C24 1C MOV ECX,DWORD PTR SS:
00402B87|.33C0 XOR EAX,EAX
00402B89|.5B POP EBX
00402B8A|.64:890D 00000>MOV DWORD PTR FS:,ECX
00402B91|.83C4 24 ADD ESP,24
00402B94\.C3 RETN
--------------------------------------------------------------------------------
【经验总结】
看了下,算法不是很难,试着分析了下。
奇数位 1 3 5 7 9 11 13 15
偶数位 2 4 6 8 10 12 14 16
BL1DL1 BL2 AL1 BL3 DL2 BL4 CL1
上面的(1、2、3、....15、16)表示对应的注册码位数(长度必须为16位),BL1、DL1、BL2、AL1、BL3、DL2、BL4、
CL1为对应的注册码(十位为偶数,个位为奇数)。
现举例如下:
分析代码得知,
AL=38
CL=6E
DL=4E
BL=1A
令BL4=32,则
BL3=XOR(BL,BL4)
=XOR(1A,32)
=28
令BL2=57,DL1=DL2,则
DL2=XOR(DL,BL2)
=XOR(4E,57)
=19
CL1=XOR(CL,DL1)
=XOR(6E,19)
=77
令BL1=11,则
AL1=XOR(AL,BL1)
=XOR(38,11)
=29
注:所有假设的(如,BL4、BL2、BL1),参与异或后的值应数字,只有满足此条件,以已等式才能成立。
注册码一:9265811133659283
注册码二:8393770022938375
注册码三:1191759282912377
--------------------------------------------------------------------------------
【版权声明】: 本文纯属技术交流[请支持正版], 转载请注明作者并保持文章的完整, 谢谢!
2006年04月09日 8:37:08 谢谢提供注册码,呵呵 学习了,不错 很详细
解释很清楚~
谢谢楼主~ 学习了xiexie 基本看不懂! 汗 谢谢提供注册码,呵呵 很详细
解释很清楚~
谢谢楼主~ 学习了,不错/:good 呵呵,这个小工具其实是很实用的,我的个人隐私呀,
页:
[1]
2