-
您的位置:首页 → 精文荟萃 → 破解文章 → 龙文输入通 3.03 注册分析
龙文输入通 3.03 注册分析
时间:2004/10/15 0:57:00来源:本站整理作者:蓝点我要评论(6)
-
星期五 2003年3月7日
今天在001看到一个输入法设断点的方法,很是好用,立即开始工作.
首先用Ollydbg加载一个记事本,输入法切换到龙文,到注册界面.然后回到Ollydbg界面里,查找到lwsrf.ime模块,进入后,搜索模块名称"ChatupperA".
向上翻页,找到算法部分.
;取机器码的第一组
10024B96 66:8B45 00 MOV AX,WORD PTR SS:[EBP]
10024B9A C1E0 05 SHL EAX,5
10024B9D 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024BA1 66:8945 00 MOV WORD PTR SS:[EBP],AX
10024BA5 33C0 XOR EAX,EAX
;取机器码的第二组
10024BA7 66:8B45 02 MOV AX,WORD PTR SS:[EBP+2]
10024BAB 8D04C0 LEA EAX,DWORD PTR DS:[EAX+EAX*8]
10024BAE C1E0 02 SHL EAX,2
10024BB1 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024BB5 66:8945 02 MOV WORD PTR SS:[EBP+2],AX
10024BB9 33C0 XOR EAX,EAX
;取机器码的第三组
10024BBB 66:8B45 04 MOV AX,WORD PTR SS:[EBP+4]
10024BBF 8D0C80 LEA ECX,DWORD PTR DS:[EAX+EAX*4]
10024BC2 8D0448 LEA EAX,DWORD PTR DS:[EAX+ECX*2]
10024BC5 33C9 XOR ECX,ECX
10024BC7 8D0480 LEA EAX,DWORD PTR DS:[EAX+EAX*4]
10024BCA 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
;取机器码的第四组
10024BCE 66:8B4D 06 MOV CX,WORD PTR SS:[EBP+6]
10024BD2 66:8945 04 MOV WORD PTR SS:[EBP+4],AX
10024BD6 8BC1 MOV EAX,ECX
10024BD8 C1E0 04 SHL EAX,4
10024BDB 03C1 ADD EAX,ECX
10024BDD D1E0 SHL EAX,1
10024BDF 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024BE3 66:8945 06 MOV WORD PTR SS:[EBP+6],AX
10024BE7 8B4424 10 MOV EAX,DWORD PTR SS:[ESP+10]
10024BEB 25 FFFF0000 AND EAX,0FFFF
10024BF0 8BD0 MOV EDX,EAX
10024BF2 C1E2 04 SHL EDX,4
10024BF5 03D0 ADD EDX,EAX
10024BF7 33C0 XOR EAX,EAX
;取机器码的第五组
10024BF9 66:8B45 08 MOV AX,WORD PTR SS:[EBP+8]
10024BFD 8D0C40 LEA ECX,DWORD PTR DS:[EAX+EAX*2]
10024C00 C1E1 03 SHL ECX,3
10024C03 2BC8 SUB ECX,EAX
10024C05 8D0449 LEA EAX,DWORD PTR DS:[ECX+ECX*2]
10024C08 8D0450 LEA EAX,DWORD PTR DS:[EAX+EDX*2]
10024C0B 33D2 XOR EDX,EDX
10024C0D 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024C11 66:8945 08 MOV WORD PTR SS:[EBP+8],AX
10024C15 33C0 XOR EAX,EAX
;取机器码的第六组
10024C17 66:8B45 0A MOV AX,WORD PTR SS:[EBP+A]
10024C1B 8D0CC0 LEA ECX,DWORD PTR DS:[EAX+EAX*8]
10024C1E 8D0488 LEA EAX,DWORD PTR DS:[EAX+ECX*4]
10024C21 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024C25 66:8945 0A MOV WORD PTR SS:[EBP+A],AX
;第六组的结果与第四组运算
10024C29 8B4424 10 MOV EAX,DWORD PTR SS:[ESP+10]
10024C2D 66:8B55 00 MOV DX,WORD PTR SS:[EBP]
10024C31 25 FFFF0000 AND EAX,0FFFF
10024C36 8BC8 MOV ECX,EAX
10024C38 C1E1 05 SHL ECX,5
10024C3B 03C8 ADD ECX,EAX
10024C3D 8D0451 LEA EAX,DWORD PTR DS:[ECX+EDX*2]
10024C40 33D2 XOR EDX,EDX
10024C42 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024C46 66:8B55 04 MOV DX,WORD PTR SS:[EBP+4]
10024C4A 66:8945 0A MOV WORD PTR SS:[EBP+A],AX
10024C4E 33C0 XOR EAX,EAX
;第五组的结果与第三组运算
10024C50 66:8B45 08 MOV AX,WORD PTR SS:[EBP+8]
10024C54 8D0450 LEA EAX,DWORD PTR DS:[EAX+EDX*2]
10024C57 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024C5B 66:8945 08 MOV WORD PTR SS:[EBP+8],AX
10024C5F 399C24 80000000 CMP DWORD PTR SS:[ESP+80],EBX
10024C66 0F84 16010000 JE lwsrf.10024D82
;-----------------------------------------------------------
10024EB4 C705 E0600510 3>MOV DWORD PTR DS:[100560E0],1234
10024EBE FF15 58930410 CALL DWORD PTR DS:[<&USER32.CharUpperA>] ; USER32.CharUpperA ;注册码转换为大写
;-----------------------------------------------------------
;对注册码进行一次变换
10024F3D 33C0 XOR EAX,EAX
10024F3F 66:8B01 MOV AX,WORD PTR DS:[ECX]
10024F42 83C1 02 ADD ECX,2
10024F45 83C0 34 ADD EAX,34
10024F48 4E DEC ESI
10024F49 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
10024F4D 66:8941 FE MOV WORD PTR DS:[ECX-2],AX
10024F51 ^ 75 EA JNZ SHORT lwsrf.10024F3D
10024F53 B9 09000000 MOV ECX,9
10024F58 8BFA MOV EDI,EDX
10024F5A 8D7424 54 LEA ESI,DWORD PTR SS:[ESP+54]
10024F5E 33C0 XOR EAX,EAX
;比较前两组注册码,应该相等
10024F60 F3:A6 REPE CMPS BYTE PTR ES:[EDI],BYTE PTR DS:>
10024F62 895C24 10 MOV DWORD PTR SS:[ESP+10],EBX
10024F66 74 22 JE SHORT lwsrf.10024F8A
;-----------------------------------------------------------
;累加注册码,求和
10024FB0 66:8B444D 00 MOV AX,WORD PTR SS:[EBP+ECX*2]
10024FB5 66:F7D0 NOT AX
10024FB8 66:89444D 00 MOV WORD PTR SS:[EBP+ECX*2],AX
10024FBD 25 FFFF0000 AND EAX,0FFFF
10024FC2 03D8 ADD EBX,EAX
10024FC4 83F9 03 CMP ECX,3
10024FC7 75 03 JNZ SHORT lwsrf.10024FCC
;第四组时多一次运算,*2后加上累计和
10024FC9 8D1C43 LEA EBX,DWORD PTR DS:[EBX+EAX*2]
10024FCC 41 INC ECX
10024FCD 83F9 06 CMP ECX,6 ;六组是否加完
10024FD0 ^ 7C DE JL SHORT lwsrf.10024FB0
;-----------------------------------------------------------
10024FD6 85F6 TEST ESI,ESI
10024FD8 7D 11 JGE SHORT lwsrf.10024FEB
10024FDA 33C9 XOR ECX,ECX
10024FDC 66:8B4D 00 MOV CX,WORD PTR SS:[EBP]
10024FE0 0FAFCE IMUL ECX,ESI
10024FE3 D1E1 SHL ECX,1
10024FE5 894C24 10 MOV DWORD PTR SS:[ESP+10],ECX
10024FE9 EB 44 JMP SHORT lwsrf.1002502F
10024FEB 8B17 MOV EDX,DWORD PTR DS:[EDI]
10024FED 8D4424 10 LEA EAX,DWORD PTR SS:[ESP+10]
10024FF1 50 PUSH EAX
10024FF2 8D4C24 28 LEA ECX,DWORD PTR SS:[ESP+28]
10024FF6 68 48C50410 PUSH lwsrf.1004C548 ; ASCII "%lx"
10024FFB 51 PUSH ECX
10024FFC C64424 34 00 MOV BYTE PTR SS:[ESP+34],0
10025001 895424 30 MOV DWORD PTR SS:[ESP+30],EDX
10025005 E8 D2CB0100 CALL lwsrf.10041BDC
1002500A 83C4 0C ADD ESP,0C
;如果为第六组则跳
1002500D 83FE 05 CMP ESI,5
10025010 7D 06 JGE SHORT lwsrf.10025018
10025012 035C24 10 ADD EBX,DWORD PTR SS:[ESP+10]
10025016 EB 17 JMP SHORT lwsrf.1002502F
10025018 8B4424 10 MOV EAX,DWORD PTR SS:[ESP+10]
1002501C 81E3 FFFF0000 AND EBX,0FFFF
10025022 25 FFFF0000 AND EAX,0FFFF
;比较累加和是否相等,第一次比较时是不相等的,作者的桩了.
10025027 3BC3 CMP EAX,EBX
10025029 894424 10 MOV DWORD PTR SS:[ESP+10],EAX
1002502D 75 3D JNZ SHORT lwsrf.1002506C
1002502F 46 INC ESI
10025030 83C5 02 ADD EBP,2
10025033 83C7 05 ADD EDI,5
10025036 83FE 06 CMP ESI,6
10025039 ^ 7C 9B JL SHORT lwsrf.10024FD6
;-----------------------------------------------------------
子程序返回
100258DF FF15 68930410 CALL DWORD PTR DS:[<&USER32.GetWindowTex>; USER32.GetWindowTextA
100258E5 6A 01 PUSH 1
100258E7 6A 00 PUSH 0
100258E9 8D4C24 20 LEA ECX,DWORD PTR SS:[ESP+20]
100258ED 6A 01 PUSH 1
100258EF 51 PUSH ECX
;此处是第二次比较,进入.过程跟上边的是一样的.唯一区别就是六组注册码的累加和比较应该相等.此时会显示注册成功的.
100258F0 E8 FBF1FFFF CALL lwsrf.10024AF0
|
相关阅读
Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
-
热门文章
去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有6条评论>>