【破文标题】屏幕录像专家V6.0算法分析
【破文作者】山村小子
【作者邮箱】lhl8730@56.com
【作者主页】暂无
【破解工具】PEiD,W32DASM,UC32,OD
【破解平台】Windows 2K&XP
【软件名称】屏幕录像专家V60
【软件大小】6522KB
【原版下载】http://www.onlinedown.net/soft/3442.htm
【保护方式】序列号
【软件简介】软件介绍 : 《屏幕录像专家》是一款专业的屏幕录像制作工具。使用它你可以轻松地将屏幕上的软件操作过程等录制成FLASH动画、ASF动画、AVI动画或者自播放的EXE动画。本软件采用直接录制方式或者先录制,再生成的方式录制屏幕录像,使用户对制作过程更加容易控制。本软件使用简单,功能强大,是制作各种屏幕录像和软件教学动画的首选软件。
软件基本功能如下:
1.生成FLASH动画,文件小可以在网络上方便使用。
2.生成ASF动画,可以在网络上在线播放。
3.生成AVI动画,支持各种压缩方式。
4.生成EXE文件,可以自动播放动画不需附属文件。高度压缩,生成文件小。
5.支持后期配音和声音文件导入,使录制过程和配音分离。
6.录制目标自由选取:可以是全屏、选定窗口或者选定范围。
7.录制时可以设置是否同时录制声音,是否同时录制鼠标。
8.可以自动设置最佳帧数。
9.可以设置录音质量
10.可以自己定义快捷键
11.直接录制AVI功能
12.直接录制EXE功能
13.FLASH扩帧功能,使FLASH动画更加平滑。
14.EXE自动扩帧功能,更加平滑,即使是1帧/秒也有平滑的效果
15.AVI扩帧功能,可以制作25帧/秒的AVI动画
16.录制Realplay中播放的电影内容
17.鼠标点击自动提示功能
18.AVI合成、AVI截取、AVI转换压缩格式,EXE转成AVI
19.自由设置EXE录制播放时各种参数,比如位置、大小、背景色、控制窗体、时间等
20.支持EXE录像合成多节EXE
21.高度无损压缩,制作出最小的EXE录像
22.简单后期编辑功能,支持EXE截取、EXE合成、EXE转成LX、LX截取、LX合成等功能
23.EXE播放时可以定位到任意帧
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
------------------------------------------------------------------------
kerfier 兄已经发过屏幕录像专家V5.0算法分析,但是屏幕录像专家V6.0还有几个暗桩所以我在这里再把v6.0的算法写出来
因为刚学破解,不对的地方请大家指教。
1、查壳,没有加壳,编写语言Borland C++ 1999。
2、用OD载入,注册有错误提示。根据提示往上找到
0043B290 /. 55 PUSH EBP 在这里下断
3、找算法。
输入注册名:12345678 假码:12345678901234567890,按确定断下
0043B290 /. 55 PUSH EBP 往下一直F8
0043B291 |. 8BEC MOV EBP,ESP
0043B293 |. 81C4 B8FEFFFF ADD ESP,-148
0043B299 |. 53 PUSH EBX
0043B29A |. 8995 38FFFFFF MOV DWORD PTR SS:[EBP-C8],EDX
0043B2A0 |. 8985 3CFFFFFF MOV DWORD PTR SS:[EBP-C4],EAX
0043B2A6 |. B8 E47B5100 MOV EAX,屏录专家.00517BE4
0043B2AB |. E8 E0B50A00 CALL 屏录专家.004E6890
0043B2B0 |. 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],8
0043B2B9 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
0043B2BC |. E8 6365FCFF CALL 屏录专家.00401824
0043B2C1 |. 8BD0 MOV EDX,EAX
0043B2C3 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B2C9 |. 8B8D 3CFFFFFF MOV ECX,DWORD PTR SS:[EBP-C4]
0043B2CF |. 8B81 E4020000 MOV EAX,DWORD PTR DS:[ECX+2E4]
0043B2D5 |. E8 469D0500 CALL 屏录专家.00495020
0043B2DA |. 8D55 FC LEA EDX,DWORD PTR SS:[EBP-4]
0043B2DD |. FF32 PUSH DWORD PTR DS:[EDX]
0043B2DF |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
0043B2E2 |. E8 3D65FCFF CALL 屏录专家.00401824
0043B2E7 |. 8BD0 MOV EDX,EAX
0043B2E9 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B2EF |. 8B8D 3CFFFFFF MOV ECX,DWORD PTR SS:[EBP-C4]
0043B2F5 |. 8B81 DC020000 MOV EAX,DWORD PTR DS:[ECX+2DC]
0043B2FB |. E8 209D0500 CALL 屏录专家.00495020
0043B300 |. 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8]
0043B303 |. FF32 PUSH DWORD PTR DS:[EDX]
0043B305 |. FFB5 3CFFFFFF PUSH DWORD PTR SS:[EBP-C4]
0043B30B |. E8 C40D0000 CALL 屏录专家.0043C0D4
0043B310 |. 83C4 0C ADD ESP,0C
0043B313 |. 3C 01 CMP AL,1
0043B315 |. 0F94C1 SETE CL
0043B318 |. 83E1 01 AND ECX,1
0043B31B |. 51 PUSH ECX
0043B31C |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B322 |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
0043B325 |. BA 02000000 MOV EDX,2
0043B32A |. E8 C9700B00 CALL 屏录专家.004F23F8
0043B32F |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4] ; |
0043B335 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4] ; |
0043B338 |. BA 02000000 MOV EDX,2 ; |
0043B33D |. E8 B6700B00 CALL 屏录专家.004F23F8 ; \屏录专家.004F23F8
0043B342 |. 59 POP ECX
0043B343 |. 84C9 TEST CL,CL
0043B345 |. 74 48 JE SHORT 屏录专家.0043B38F
0043B347 |. 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],14
0043B350 |. BA 94785100 MOV EDX,屏录专家.00517894 ; 你输入的是老版本的注册码,请把注册时的定单号发给我们免费申请新的注册码,如果还没有注册过请访问http://www.tlxsoft.com/buy.htm
0043B355 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
0043B358 |. E8 636E0B00 CALL 屏录专家.004F21C0
0043B35D |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B363 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
0043B365 |. E8 6E480500 CALL 屏录专家.0048FBD8
0043B36A |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B370 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
0043B373 |. BA 02000000 MOV EDX,2
0043B378 |. E8 7B700B00 CALL 屏录专家.004F23F8
0043B37D |. 8B8D 40FFFFFF MOV ECX,DWORD PTR SS:[EBP-C0]
0043B383 |. 64:890D 00000>MOV DWORD PTR FS:[0],ECX
0043B38A |. E9 2A0D0000 JMP 屏录专家.0043C0B9
0043B38F |> 6A 14 PUSH 14 ; /Arg3 = 00000014
0043B391 |. 6A 00 PUSH 0 ; |Arg2 = 00000000
0043B393 |. 8D85 ECFEFFFF LEA EAX,DWORD PTR SS:[EBP-114] ; |
0043B399 |. 50 PUSH EAX ; |Arg1
0043B39A |. E8 21B10A00 CALL 屏录专家.004E64C0 ; \屏录专家.004E64C0
0043B39F |. 83C4 0C ADD ESP,0C
0043B3A2 |. 33D2 XOR EDX,EDX
0043B3A4 |. 8995 34FFFFFF MOV DWORD PTR SS:[EBP-CC],EDX
0043B3AA |. 6A 14 PUSH 14 ; /Arg3 = 00000014
0043B3AC |. 6A 00 PUSH 0 ; |Arg2 = 00000000
0043B3AE |. 8D8D 04FFFFFF LEA ECX,DWORD PTR SS:[EBP-FC] ; |
0043B3B4 |. 51 PUSH ECX ; |Arg1
0043B3B5 E8 06B10A00 CALL 屏录专家.004E64C0
0043B3BA |. 83C4 0C ADD ESP,0C
0043B3BD |. 6A 14 PUSH 14 ; /Arg3 = 00000014
0043B3BF |. 6A 00 PUSH 0 ; |Arg2 = 00000000
0043B3C1 |. 8D85 D4FEFFFF LEA EAX,DWORD PTR SS:[EBP-12C] ; |
0043B3C7 |. 50 PUSH EAX ; |Arg1
0043B3C8 |. E8 F3B00A00 CALL 屏录专家.004E64C0 ; \屏录专家.004E64C0
0043B3CD |. 83C4 0C ADD ESP,0C
0043B3D0 |. 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],20
0043B3D9 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
0043B3DC |. E8 4364FCFF CALL 屏录专家.00401824
0043B3E1 |. 8BD0 MOV EDX,EAX
0043B3E3 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B3E9 |. 8B8D 3CFFFFFF MOV ECX,DWORD PTR SS:[EBP-C4]
0043B3EF |. 8B81 DC020000 MOV EAX,DWORD PTR DS:[ECX+2DC]
0043B3F5 |. E8 269C0500 CALL 屏录专家.00495020
0043B3FA |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
0043B3FD |. E8 0AA4FCFF CALL 屏录专家.0040580C
0043B402 |. 50 PUSH EAX ; /Arg2 注册名出现
0043B403 |. 8D95 D4FEFFFF LEA EDX,DWORD PTR SS:[EBP-12C] ; |
0043B409 |. 52 PUSH EDX ; |Arg1
0043B40A |. E8 DDB10A00 CALL 屏录专家.004E65EC ; \屏录专家.004E65EC
0043B40F |. 83C4 08 ADD ESP,8
0043B412 |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B418 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
0043B41B |. BA 02000000 MOV EDX,2
0043B420 |. E8 D36F0B00 CALL 屏录专家.004F23F8
0043B425 |. 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],2C
0043B42E |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0043B431 |. E8 EE63FCFF CALL 屏录专家.00401824
0043B436 |. 8BD0 MOV EDX,EAX
0043B438 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B43E |. 8B8D 3CFFFFFF MOV ECX,DWORD PTR SS:[EBP-C4]
0043B444 |. 8B81 F0020000 MOV EAX,DWORD PTR DS:[ECX+2F0]
0043B44A |. E8 D19B0500 CALL 屏录专家.00495020
0043B44F |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0043B452 |. E8 B5A3FCFF CALL 屏录专家.0040580C
0043B457 |. 50 PUSH EAX ; /Arg2 机器码出现
0043B458 |. 8D95 ECFEFFFF LEA EDX,DWORD PTR SS:[EBP-114] ; |
0043B45E |. 52 PUSH EDX ; |Arg1
0043B45F |. E8 88B10A00 CALL 屏录专家.004E65EC ; \屏录专家.004E65EC
0043B464 |. 83C4 08 ADD ESP,8
0043B467 |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B46D |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0043B470 |. BA 02000000 MOV EDX,2
0043B475 E8 7E6F0B00 CALL 屏录专家.004F23F8
0043B47A |. 33C9 XOR ECX,ECX
0043B47C |. 898D 30FFFFFF MOV DWORD PTR SS:[EBP-D0],ECX
0043B482 |> 8B85 30FFFFFF /MOV EAX,DWORD PTR SS:[EBP-D0]
0043B488 |. 8A9405 D4FEFF>|MOV DL,BYTE PTR SS:[EBP+EAX-12C]
0043B48F |. 8B8D 30FFFFFF |MOV ECX,DWORD PTR SS:[EBP-D0]
0043B495 |. 32940D ECFEFF>|XOR DL,BYTE PTR SS:[EBP+ECX-114] ; 注册名第一个值跟机器码第一位作XOR运算,循环时依次类推,注册码没有20位,多余的机器码与0作XOR运算。。
0043B49C |. 8B85 30FFFFFF |MOV EAX,DWORD PTR SS:[EBP-D0]
0043B4A2 |. 889405 04FFFF>|MOV BYTE PTR SS:[EBP+EAX-FC],DL ; 结果保存在12ECAC处,循环后最终结果为SN1=.222222222222
0043B4A9 |. 8B95 30FFFFFF |MOV EDX,DWORD PTR SS:[EBP-D0]
0043B4AF |. 0FBE8C15 04FF>|MOVSX ECX,BYTE PTR SS:[EBP+EDX-FC] ; 取出结果给ECX
0043B4B7 |. 898D B8FEFFFF |MOV DWORD PTR SS:[EBP-148],ECX
0043B4BD |. DB85 B8FEFFFF |FILD DWORD PTR SS:[EBP-148] ; 结果十进制转浮点值
0043B4C3 |. 83C4 F8 |ADD ESP,-8 ; /
0043B4C6 |. DD1C24 |FSTP QWORD PTR SS:[ESP] ; |Arg1 (8 字节)
0043B4C9 |. E8 82F60A00 |CALL 屏录专家.004EAB50 ; \屏录专家.004EAB50
0043B4CE |. 83C4 08 |ADD ESP,8
0043B4D1 |. DB85 30FFFFFF |FILD DWORD PTR SS:[EBP-D0]
0043B4D7 |. DEC9 |FMULP ST(1),ST
0043B4D9 |. DB85 34FFFFFF |FILD DWORD PTR SS:[EBP-CC]
0043B4DF |. DEC1 |FADDP ST(1),ST
0043B4E1 |. E8 92F60A00 |CALL 屏录专家.004EAB78 ; 十进制结果乖相应的位数(从0开始)再彼此相加
0043B4E6 |. 8985 34FFFFFF |MOV DWORD PTR SS:[EBP-CC],EAX ; 这里12ECDC是最后的结果2037
0043B4EC |. FF85 30FFFFFF |INC DWORD PTR SS:[EBP-D0]
0043B4F2 |. 83BD 30FFFFFF>|CMP DWORD PTR SS:[EBP-D0],14 ; 运算20次
0043B4F9 |.^ 7C 87 \JL SHORT 屏录专家.0043B482
0043B4FB |. 8185 34FFFFFF>ADD DWORD PTR SS:[EBP-CC],3039 ; 2037加常数3039,结果为SN2=5070(SN2很重要,多次用到)
0043B505 |. FFB5 34FFFFFF PUSH DWORD PTR SS:[EBP-CC] ; /Arg3
0043B50B |. 68 0F795100 PUSH 屏录专家.0051790F ; |%d
0043B510 |. 8D95 04FFFFFF LEA EDX,DWORD PTR SS:[EBP-FC] ; |
0043B516 |. 52 PUSH EDX ; |Arg1
0043B517 |. E8 80DB0A00 CALL 屏录专家.004E909C ; \关键CALL,把SN2进转为十进制得结果SN3=20592
0043B51C |. 83C4 0C ADD ESP,0C
0043B51F |. 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],38
0043B528 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
0043B52B |. E8 F462FCFF CALL 屏录专家.00401824
0043B530 |. 8BD0 MOV EDX,EAX
0043B532 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B538 |. 8B8D 3CFFFFFF MOV ECX,DWORD PTR SS:[EBP-C4]
0043B53E |. 8B81 E4020000 MOV EAX,DWORD PTR DS:[ECX+2E4]
0043B544 |. E8 D79A0500 CALL 屏录专家.00495020
0043B549 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
0043B54C |. E8 BBA2FCFF CALL 屏录专家.0040580C
0043B551 |. 50 PUSH EAX ; /Arg2
0043B552 |. 8D95 BCFEFFFF LEA EDX,DWORD PTR SS:[EBP-144] ; |
0043B558 |. 52 PUSH EDX ; |Arg1
0043B559 |. E8 8EB00A00 CALL 屏录专家.004E65EC ; \屏录专家.004E65EC
0043B55E |. 83C4 08 ADD ESP,8
0043B561 |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B567 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
0043B56A |. BA 02000000 MOV EDX,2
0043B56F |. E8 846E0B00 CALL 屏录专家.004F23F8
0043B574 |. 33C9 XOR ECX,ECX
0043B576 |. 898D 30FFFFFF MOV DWORD PTR SS:[EBP-D0],ECX
0043B57C |> 8B85 30FFFFFF /MOV EAX,DWORD PTR SS:[EBP-D0]
0043B582 |. 0FBE9405 04FF>|MOVSX EDX,BYTE PTR SS:[EBP+EAX-FC] ; SN3的第一位
0043B58A |. 8B8D 30FFFFFF |MOV ECX,DWORD PTR SS:[EBP-D0]
0043B590 |. 0FBE840D BCFE>|MOVSX EAX,BYTE PTR SS:[EBP+ECX-144] ; 假码第一位
0043B598 |. 83C0 EC |ADD EAX,-14
0043B59B |. 3BD0 |CMP EDX,EAX ; 假码第一位要等于SN2的第一位加14
0043B59D |. 0F85 AF000000 |JNZ 屏录专家.0043B652 ; 不等完了
0043B5A3 |. 83BD 30FFFFFF>|CMP DWORD PTR SS:[EBP-D0],3
0043B5AA |. 0F85 8F000000 |JNZ 屏录专家.0043B63F ; 第四个数比较如果相等则进行后面的计算
0043B5B0 |. 8B95 34FFFFFF |MOV EDX,DWORD PTR SS:[EBP-CC] ; SN2给EDX
0043B5B6 |. 81C2 444D0000 |ADD EDX,4D44 ; 5070+4D44=9DB4
0043B5BC |. 8995 B8FEFFFF |MOV DWORD PTR SS:[EBP-148],EDX
0043B5C2 |. DB85 B8FEFFFF |FILD DWORD PTR SS:[EBP-148] ; 9DB4转十进制40372.参与下面浮点运算
0043B5C8 |. DC0D C0C04300 |FMUL QWORD PTR DS:[43C0C0] ; 40372*3.14=126768.08000000000500
0043B5CE |. DB2D C8C04300 |FLD TBYTE PTR DS:[43C0C8]
0043B5D4 |. DEC9 |FMULP ST(1),ST ; 126768.08000000000500*0.1594896331738437110=20218.194577352474260
0043B5D6 |. E8 9DF50A00 |CALL 屏录专家.004EAB78
0043B5DB |. 8985 34FFFFFF |MOV DWORD PTR SS:[EBP-CC],EAX ; 运算后结果取整为20218转十六进制为SN4=4EFA
0043B5E1 |. 8B85 34FFFFFF |MOV EAX,DWORD PTR SS:[EBP-CC]
0043B5E7 B9 A0860100 MOV ECX,186A0 ; 1860A=100000(十进制)
0043B5EC |. 99 |CDQ
0043B5ED |. F7F9 |IDIV ECX
0043B5EF |. 8995 34FFFFFF |MOV DWORD PTR SS:[EBP-CC],EDX ; 求sn4除186A0余数在EDX中,实际是得SN4的十进制的最后5位数
0043B5F5 |. 33C0 |XOR EAX,EAX
0043B5F7 |. 8985 28FFFFFF |MOV DWORD PTR SS:[EBP-D8],EAX
0043B5FD |. 33D2 |XOR EDX,EDX
0043B5FF |. 8995 24FFFFFF |MOV DWORD PTR SS:[EBP-DC],EDX
0043B605 |> 8B8D 24FFFFFF |/MOV ECX,DWORD PTR SS:[EBP-DC]
0043B60B |. 0FBE840D BCFE>||MOVSX EAX,BYTE PTR SS:[EBP+ECX-144] ; 取假码第一位。
0043B613 |. 0185 28FFFFFF ||ADD DWORD PTR SS:[EBP-D8],EAX
0043B619 |. FF85 24FFFFFF ||INC DWORD PTR SS:[EBP-DC]
0043B61F |. 83BD 24FFFFFF>||CMP DWORD PTR SS:[EBP-DC],13 ; 这个循环是求假码前19的和记为SN5=559
0043B626 |.^ 7C DD |\JL SHORT 屏录专家.0043B605
0043B628 |. 8B85 28FFFFFF |MOV EAX,DWORD PTR SS:[EBP-D8] ; 结果SN5给EAX
0043B62E |. B9 0A000000 |MOV ECX,0A ; A=10
0043B633 |. 99 |CDQ
0043B634 |. F7F9 |IDIV ECX ; 求SN5除A的余数,即得SN5十进制的个位数9
0043B636 |. 83C2 30 |ADD EDX,30
0043B639 |. 8995 28FFFFFF |MOV DWORD PTR SS:[EBP-D8],EDX ; 个位数加30记为SN6=39
0043B63F |> FF85 30FFFFFF |INC DWORD PTR SS:[EBP-D0]
0043B645 |. 83BD 30FFFFFF>|CMP DWORD PTR SS:[EBP-D0],5 ; 重复5次,即前五位比较
0043B64C |.^ 0F8C 2AFFFFFF \JL 屏录专家.0043B57C
0043B652 |> 83BD 30FFFFFF>CMP DWORD PTR SS:[EBP-D0],5
0043B659 |. 0F8C 030A0000 JL 屏录专家.0043C062
0043B65F |. 0FBE85 CFFEFF>MOVSX EAX,BYTE PTR SS:[EBP-131]
0043B666 |. 3B85 28FFFFFF CMP EAX,DWORD PTR SS:[EBP-D8] ; 注册码最后一位与SN6是否相等。
0043B66C |. 74 10 JE SHORT 屏录专家.0043B67E
0043B66E |. 0FBE95 CFFEFF>MOVSX EDX,BYTE PTR SS:[EBP-131]
0043B675 |. 83FA 41 CMP EDX,41
0043B678 |. 0F8C E4090000 JL 屏录专家.0043C062 ; 如果注册码最后一位与SN6不等则不能比41=('A')小。
0043B67E |> 8B85 34FFFFFF MOV EAX,DWORD PTR SS:[EBP-CC]
0043B684 |. B9 0A000000 MOV ECX,0A
0043B689 |. 99 CDQ
0043B68A |. F7F9 IDIV ECX
0043B68C |. 8B85 30FFFFFF MOV EAX,DWORD PTR SS:[EBP-D0] ; 求SN4除A的结果,即得SN4的个位数=8
0043B692 |. 0FBE8C05 BCFE>MOVSX ECX,BYTE PTR SS:[EBP+EAX-144]
0043B69A |. 83C1 BF ADD ECX,-41
0043B69D |. 2BCA SUB ECX,EDX ; 注册码的第六位要等于41+8或者等于41+7
0043B69F |. 898D 2CFFFFFF MOV DWORD PTR SS:[EBP-D4],ECX
0043B6A5 |. 83BD 2CFFFFFF>CMP DWORD PTR SS:[EBP-D4],0
0043B6AC |. 74 0D JE SHORT 屏录专家.0043B6BB
0043B6AE |. 83BD 2CFFFFFF>CMP DWORD PTR SS:[EBP-D4],7
0043B6B5 |. 0F85 5C090000 JNZ 屏录专家.0043C017
0043B6BB |> 66:C785 50FFF>MOV WORD PTR SS:[EBP-B0],44
0043B6C4 |. BA 12795100 MOV EDX,屏录专家.00517912 ; 注册成功,谢谢您的支持
0043B6C9 |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0043B6CC |. E8 EF6A0B00 CALL 屏录专家.004F21C0
0043B6D1 |. FF85 5CFFFFFF INC DWORD PTR SS:[EBP-A4]
0043B6D7 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
0043B6D9 |. E8 FA440500 CALL 屏录专家.0048FBD8
0043B6DE |. FF8D 5CFFFFFF DEC DWORD PTR SS:[EBP-A4]
0043B6E4 |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0043B6E7 |. BA 02000000 MOV EDX,2
0043B6EC |. E8 076D0B00 CALL 屏录专家.004F23F8
0043B6F1 |. 8B0D 70F85200 MOV ECX,DWORD PTR DS:[52F870] ; 屏录专家._MainForm
0043B6F7 |. 8B01 MOV EAX,DWORD PTR DS:[ECX]
0043B6F9 |. C680 D80D0000>MOV BYTE PTR DS:[EAX+DD8],1
0043B700 |. 68 00040000 PUSH 400 ; /BufSize = 400 (1024.)
4、暗桩,
开始不知暗桩在何处,但是有一点是知道的,肯定要对注册码进行比较,也就是说刚才这个算法是不完整的,20位的注册码
才算了前6位与最后一位。但不知道注册码保存在哪里。我在上面的算法里找到这个“MOV ECX,186A0”命令下断点共有11处。
果然不出所料,在按第三次录象按钮是断在了这里:00405E18 |. B9 A0860100 MOV ECX,186A0往上
找到这定 00405C3C /$ 55 PUSH EBP 下断
再次按录象按钮断下来了,一直按F8到这。。。。。
00405DBF |. 8B45 A0 MOV EAX,DWORD PTR SS:[EBP-60]
00405DC2 B9 0A000000 MOV ECX,0A
00405DC7 |. 99 CDQ
00405DC8 |. F7F9 IDIV ECX
00405DCA |. 83FA 06 CMP EDX,6
00405DCD |. 75 6C JNZ SHORT 屏录专家.00405E3B ; 如果EDX的值等于6,暗桩开始了,暴破1,暴破方法一
00405DCF |. FF75 08 PUSH DWORD PTR SS:[EBP+8] ; /Arg1
00405DD2 |. E8 890A0300 CALL 屏录专家.00436860 ; \屏录专家.00436860
00405DD7 |. 59 POP ECX
00405DD8 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405DDB |. 8B90 84060000 MOV EDX,DWORD PTR DS:[EAX+684]
00405DE1 |. 81C2 444D0000 ADD EDX,4D44
00405DE7 |. 8995 88FBFFFF MOV DWORD PTR SS:[EBP-478],EDX
00405DED |. DB85 88FBFFFF FILD DWORD PTR SS:[EBP-478]
00405DF3 |. DC0D C4644000 FMUL QWORD PTR DS:[4064C4]
00405DF9 |. DB2D CC644000 FLD TBYTE PTR DS:[4064CC]
00405DFF |. DEC9 FMULP ST(1),ST
00405E01 |. E8 724D0E00 CALL 屏录专家.004EAB78
00405E06 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
00405E09 |. 8982 9C060000 MOV DWORD PTR DS:[EDX+69C],EAX
00405E0F |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00405E12 |. 8B81 9C060000 MOV EAX,DWORD PTR DS:[ECX+69C]
00405E18 |. B9 A0860100 MOV ECX,186A0 ; 这是最初的断点
00405E1D |. 99 CDQ
00405E1E |. F7F9 IDIV ECX
00405E20 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405E23 |. 8990 9C060000 MOV DWORD PTR DS:[EAX+69C],EDX
00405E29 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
00405E2C |. 81C2 9C060000 ADD EDX,69C
00405E32 |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00405E35 |. 8991 A4060000 MOV DWORD PTR DS:[ECX+6A4],EDX
00405E3B |> 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405E3E |. 8B80 6C120000 MOV EAX,DWORD PTR DS:[EAX+126C]
00405E44 |. E8 6B130700 CALL 屏录专家.004771B4
00405E49 |. 8BD0 MOV EDX,EAX
00405E4B |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00405E4E |. 8B81 200C0000 MOV EAX,DWORD PTR DS:[ECX+C20]
00405E54 |. E8 7B220700 CALL 屏录专家.004780D4
00405E59 |. 68 FFFF0000 PUSH 0FFFF
00405E5E |. 66:C745 BC 2C>MOV WORD PTR SS:[EBP-44],2C
00405E64 |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
00405E67 |. E8 B8B9FFFF CALL 屏录专家.00401824
00405E6C |. 50 PUSH EAX
00405E6D |. FF45 C8 INC DWORD PTR SS:[EBP-38]
00405E70 |. BA 77925000 MOV EDX,屏录专家.00509277 ; 1.tmp
00405E75 |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
00405E78 |. E8 43C30E00 CALL 屏录专家.004F21C0
00405E7D |. FF45 C8 INC DWORD PTR SS:[EBP-38]
00405E80 |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
00405E83 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405E86 |. 05 2C120000 ADD EAX,122C
00405E8B |. 59 POP ECX
00405E8C |. E8 ABC50E00 CALL 屏录专家.004F243C
00405E91 |. 8D4D EC LEA ECX,DWORD PTR SS:[EBP-14] ; |
00405E94 |. 8B09 MOV ECX,DWORD PTR DS:[ECX] ; |
00405E96 |. B2 01 MOV DL,1 ; |
00405E98 |. A1 98ED4A00 MOV EAX,DWORD PTR DS:[4AED98] ; |
00405E9D |. E8 5EC50A00 CALL 屏录专家.004B2400 ; \屏录专家.004B2400
00405EA2 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
00405EA5 |. 8982 240C0000 MOV DWORD PTR DS:[EDX+C24],EAX
00405EAB |. FF4D C8 DEC DWORD PTR SS:[EBP-38]
00405EAE |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
00405EB1 |. BA 02000000 MOV EDX,2
00405EB6 |. E8 3DC50E00 CALL 屏录专家.004F23F8
00405EBB |. FF4D C8 DEC DWORD PTR SS:[EBP-38]
00405EBE |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
00405EC1 |. BA 02000000 MOV EDX,2
00405EC6 |. E8 2DC50E00 CALL 屏录专家.004F23F8
00405ECB |. 33C9 XOR ECX,ECX
00405ECD |. 33D2 XOR EDX,EDX
00405ECF |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405ED2 |. 8B80 240C0000 MOV EAX,DWORD PTR DS:[EAX+C24]
00405ED8 |. 8B18 MOV EBX,DWORD PTR DS:[EAX]
00405EDA |. FF53 0C CALL DWORD PTR DS:[EBX+C]
00405EDD |. 8B45 A0 MOV EAX,DWORD PTR SS:[EBP-60]
00405EE0 B9 0A000000 MOV ECX,0A
00405EE5 |. 99 CDQ
00405EE6 |. F7F9 IDIV ECX
00405EE8 |. 83FA 06 CMP EDX,6 ; EDX的值等于6,暴破2,暴破方法一
00405EEB |. 0F85 65020000 JNZ 屏录专家.00406156
00405EF1 |. 66:C745 BC 38>MOV WORD PTR SS:[EBP-44],38
00405EF7 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
00405EFA |. E8 25B9FFFF CALL 屏录专家.00401824
00405EFF |. FF45 C8 INC DWORD PTR SS:[EBP-38]
00405F02 |. 66:C745 BC 44>MOV WORD PTR SS:[EBP-44],44
00405F08 |. 6A 15 PUSH 15 ; /Arg3 = 00000015
00405F0A |. 6A 00 PUSH 0 ; |Arg2 = 00000000
00405F0C |. 8D95 8CFBFFFF LEA EDX,DWORD PTR SS:[EBP-474] ; |
00405F12 |. 52 PUSH EDX ; |Arg1
00405F13 |. E8 A8050E00 CALL 屏录专家.004E64C0 ; \屏录专家.004E64C0
00405F18 |. 83C4 0C ADD ESP,0C
00405F1B |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
00405F1E |. 8B81 A4060000 MOV EAX,DWORD PTR DS:[ECX+6A4]
00405F24 |. FF30 PUSH DWORD PTR DS:[EAX] ; /Arg3
00405F26 |. 68 7D925000 PUSH 屏录专家.0050927D ; |%d
00405F2B |. 8D95 8CFBFFFF LEA EDX,DWORD PTR SS:[EBP-474] ; |
00405F31 |. 52 PUSH EDX ; |Arg1
00405F32 |. E8 65310E00 CALL 屏录专家.004E909C ; \屏录专家.004E909C
00405F37 |. 83C4 0C ADD ESP,0C
00405F3A |. 33C9 XOR ECX,ECX
00405F3C |. 894D A8 MOV DWORD PTR SS:[EBP-58],ECX
00405F3F |> 8B45 A8 /MOV EAX,DWORD PTR SS:[EBP-58]
00405F42 |. 80BC05 8CFBFF>|CMP BYTE PTR SS:[EBP+EAX-474],0
00405F4A |. 75 0B |JNZ SHORT 屏录专家.00405F57
00405F4C |. 8B55 A8 |MOV EDX,DWORD PTR SS:[EBP-58]
00405F4F |. C68415 8CFBFF>|MOV BYTE PTR SS:[EBP+EDX-474],28
00405F57 |> FF45 A8 |INC DWORD PTR SS:[EBP-58]
00405F5A |. 837D A8 06 |CMP DWORD PTR SS:[EBP-58],6 ; 这里是把SN4的十进制20218后加“)”=20218)共六位参与后面计算。
00405F5E |.^ 7C DF \JL SHORT 屏录专家.00405F3F
00405F60 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00405F63 |. 05 D40D0000 ADD EAX,0DD4
00405F68 |. E8 9FF8FFFF CALL 屏录专家.0040580C
00405F6D |. 8945 94 MOV DWORD PTR SS:[EBP-6C],EAX
00405F70 |. 66:C745 BC 50>MOV WORD PTR SS:[EBP-44],50
00405F76 |. FF75 08 PUSH DWORD PTR SS:[EBP+8]
00405F79 |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
00405F7C |. E8 A3B8FFFF CALL 屏录专家.00401824
00405F81 |. 50 PUSH EAX ; |Arg1
00405F82 |. FF45 C8 INC DWORD PTR SS:[EBP-38] ; |
00405F85 |. E8 C2A40000 CALL 屏录专家.0041044C ; \屏录专家.0041044C
00405F8A |. 83C4 08 ADD ESP,8
00405F8D |. 8D55 E4 LEA EDX,DWORD PTR SS:[EBP-1C]
00405F90 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
00405F93 |. E8 90C40E00 CALL 屏录专家.004F2428
00405F98 |. FF4D C8 DEC DWORD PTR SS:[EBP-38]
00405F9B |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
00405F9E |. BA 02000000 MOV EDX,2
00405FA3 |. E8 50C40E00 CALL 屏录专家.004F23F8
00405FA8 |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
00405FAB |. E8 5CF8FFFF CALL 屏录专家.0040580C
00405FB0 |. 8945 90 MOV DWORD PTR SS:[EBP-70],EAX ; 机器码出现
00405FB3 |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
00405FB6 |. 8B82 240C0000 MOV EAX,DWORD PTR DS:[EDX+C24]
00405FBC |. 85C0 TEST EAX,EAX
00405FBE |. 79 05 JNS SHORT 屏录专家.00405FC5
00405FC0 |. 05 FF030000 ADD EAX,3FF
00405FC5 |> C1F8 0A SAR EAX,0A
00405FC8 |. B9 03000000 MOV ECX,3
00405FCD |. 99 CDQ
00405FCE |. F7F9 IDIV ECX
00405FD0 |. 8955 A4 MOV DWORD PTR SS:[EBP-5C],EDX
00405FD3 |. 8B45 90 MOV EAX,DWORD PTR SS:[EBP-70]
00405FD6 |. 8B55 A4 MOV EDX,DWORD PTR SS:[EBP-5C]
00405FD9 |. 0FBE0C10 MOVSX ECX,BYTE PTR DS:[EAX+EDX] ; 取机器码的第一位或第二位或第三位
00405FDD |. 81E1 01000080 AND ECX,80000001
00405FE3 |. 79 05 JNS SHORT 屏录专家.00405FEA
00405FE5 |. 49 DEC ECX
00405FE6 |. 83C9 FE OR ECX,FFFFFFFE
00405FE9 |. 41 INC ECX
00405FEA |> 85C9 TEST ECX,ECX
00405FEC |. 0F85 85000000 JNZ 屏录专家.00406077 ; 如果取机器码的第一位或第三位,跳到下面正行计算,
00405FF2 |. 66:C745 BC 5C>MOV WORD PTR SS:[EBP-44],5C ; 如果取机器码的第二位就在这计算
00405FF8 |. BA 80925000 MOV EDX,屏录专家.00509280
00405FFD |. 8D45 E0 LEA EAX,DWORD PTR SS:[EBP-20]
00406000 |. E8 BBC10E00 CALL 屏录专家.004F21C0
00406005 |. FF45 C8 INC DWORD PTR SS:[EBP-38]
00406008 |. 8D55 E0 LEA EDX,DWORD PTR SS:[EBP-20]
0040600B |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
0040600E |. 05 D00D0000 ADD EAX,0DD0
00406013 |. E8 C8C40E00 CALL 屏录专家.004F24E0
00406018 |. 84C0 TEST AL,AL
0040601A |. 74 1D JE SHORT 屏录专家.00406039 ; 暴破点1,可以在这里暴破第9位的检验。暴破方法二
0040601C |. 8B4D 94 MOV ECX,DWORD PTR SS:[EBP-6C]
0040601F |. 8B45 A4 MOV EAX,DWORD PTR SS:[EBP-5C]
00406022 |. 0FBE5441 06 MOVSX EDX,BYTE PTR DS:[ECX+EAX*2+6] ; 取注册码的第9位
00406027 |. 83C2 E7 ADD EDX,-19
0040602A |. 8B4D A4 MOV ECX,DWORD PTR SS:[EBP-5C]
0040602D |. 0FBE844D 8CFB>MOVSX EAX,BYTE PTR SS:[EBP+ECX*2-474]
00406035 |. 3BD0 CMP EDX,EAX ; 比较注册码的第9位是否等于20218)的第三位加19
00406037 75 04 JNZ SHORT 屏录专家.0040603D ; 相等就ok
00406039 |> 33D2 XOR EDX,EDX
0040603B |. EB 05 JMP SHORT 屏录专家.00406042
0040603D |> BA 01000000 MOV EDX,1
00406042 |> 52 PUSH EDX ; /Arg1
00406043 |. FF4D C8 DEC DWORD PTR SS:[EBP-38] ; |
00406046 |. 8D45 E0 LEA EAX,DWORD PTR SS:[EBP-20] ; |
00406049 |. BA 02000000 MOV EDX,2 ; |
0040604E |. E8 A5C30E00 CALL 屏录专家.004F23F8 ; \屏录专家.004F23F8
00406053 |. 59 POP ECX
00406054 |. 84C9 TEST CL,CL
00406056 |. 0F84 E4000000 JE 屏录专家.00406140
0040605C |. 8B55 08 MOV EDX,DWORD PTR SS:[EBP+8]
0040605F |. 81C2 D40D0000 ADD EDX,0DD4
00406065 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00406068 |. 05 D00D0000 ADD EAX,0DD0
0040606D |. E8 B6C30E00 CALL 屏录专家.004F2428
00406072 |. E9 C9000000 JMP 屏录专家.00406140
00406077 |> 66:C745 BC 68>MOV WORD PTR SS:[EBP-44],68
0040607D |. BA 81925000 MOV EDX,屏录专家.00509281
00406082 |. 8D45 DC LEA EAX,DWORD PTR SS:[EBP-24]
00406085 |. E8 36C10E00 CALL 屏录专家.004F21C0
0040608A |. FF45 C8 INC DWORD PTR SS:[EBP-38]
0040608D |. 8D55 DC LEA EDX,DWORD PTR SS:[EBP-24]
00406090 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00406093 |. 05 D00D0000 ADD EAX,0DD0
00406098 |. E8 43C40E00 CALL 屏录专家.004F24E0
0040609D |. 84C0 TEST AL,AL
0040609F |. 74 1D JE SHORT 屏录专家.004060BE
004060A1 |. 8B4D 94 MOV ECX,DWORD PTR SS:[EBP-6C]
004060A4 |. 8B45 A4 MOV EAX,DWORD PTR SS:[EBP-5C]
004060A7 |. 0FBE5441 06 MOVSX EDX,BYTE PTR DS:[ECX+EAX*2+6] ; 如果机器取第一位,注册码就取第7位,如果机器取第三位,注册码就取第11位
004060AC |. 8B4D A4 MOV ECX,DWORD PTR SS:[EBP-5C]
004060AF |. 0FBE844D 8DFB>MOVSX EAX,BYTE PTR SS:[EBP+ECX*2-473] ; 如果机器取第一位,就取20218)的第二位,如果机器取第三位,就取20218)的第六位
004060B7 |. 83C0 19 ADD EAX,19
004060BA |. 3BD0 CMP EDX,EAX ; 注册码的第7位要等于20218)的第二位+19,注册码的第11位要等于20218)的第六位+19
004060BC 75 04 JNZ SHORT 屏录专家.004060C2 ; 暴破点1,可以在这里暴破第7,11位的检验,暴破方法二
004060BE |> 33D2 XOR EDX,EDX
004060C0 |. EB 05 JMP SHORT 屏录专家.004060C7
004060C2 |> BA 01000000 MOV EDX,1
004060C7 |> 52 PUSH EDX ; /Arg1
004060C8 |. FF4D C8 DEC DWORD PTR SS:[EBP-38] ; |
004060CB |. 8D45 DC LEA EAX,DWORD PTR SS:[EBP-24] ; |
004060CE |. BA 02000000 MOV EDX,2 ; |
004060D3 |. E8 20C30E00 CALL 屏录专家.004F23F8 ; \屏录专家.004F23F8
004060D8 |. 59 POP ECX
004060D9 |. 84C9 TEST CL,CL
004060DB |. 74 63 JE SHORT 屏录专家.00406140
004060DD |. 66:C745 BC 74>MOV WORD PTR SS:[EBP-44],74
004060E3 |. 8D45 D4 LEA EAX,DWORD PTR SS:[EBP-2C]
004060E6 |. E8 39B7FFFF CALL 屏录专家.00401824
004060EB |. 50 PUSH EAX
004060EC |. FF45 C8 INC DWORD PTR SS:[EBP-38]
004060EF |. BA 82925000 MOV EDX,屏录专家.00509282 ; 1
004060F4 |. 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
004060F7 |. E8 C4C00E00 CALL 屏录专家.004F21C0
004060FC |. FF45 C8 INC DWORD PTR SS:[EBP-38]
------------------------------------------------------------------------
总结:
1.注册名第i个值跟机器码第i位作XOR运算,结果乖i-1记为S(i),
s1=s(1)+s(2)+...+s(20),注册码没有20位后面添0。
2.s2=s1+3039,s3=s2的十进制。
3.s4=(s2+4D44的十进制)*3.14*0.1594896331738437110
4.s5=假码前19位的和。
5.s6=在s3后添一位')',共6位.
注册码前5位的ASC码的十六进制值各是等于s3各位的ASC码的十六进制值加19.
注册码的第六位要等于s4十进制的个位数+41或者等于48即字母H.
注册码的第7位要等于s6的第二位+19.
注册码的第9位要等于S6的第三位+19.
注册码的第11位要等于s6的第六位+19,即字母A.
注册码最后一位要等于S5的个位数或者比41('A')大.------------------------------------------------------------------------
【版权声明】本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!