lzq1973 发表于 2006-4-12 12:31:48

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

drw 发表于 2007-3-17 12:47:42

谢谢提供注册码,呵呵

bhcjl 发表于 2007-3-20 07:35:32

学习了,不错

xfuyct 发表于 2007-3-22 15:54:48

很详细
解释很清楚~
谢谢楼主~

jrstar 发表于 2007-3-30 13:20:14

学习了xiexie

puixi 发表于 2008-9-18 12:46:25

基本看不懂! 汗

linlinlin3 发表于 2008-9-18 14:28:54

谢谢提供注册码,呵呵

linlinlin3 发表于 2008-9-18 14:29:29

很详细
解释很清楚~
谢谢楼主~

linlinlin3 发表于 2008-9-18 14:30:04

学习了,不错/:good

lzgko 发表于 2008-9-18 16:13:03

呵呵,这个小工具其实是很实用的,我的个人隐私呀,
页: [1] 2
查看完整版本: QQ聊天记录查看器 4.5 寻码手记