用了天狼星工作室的屏幕录像文件加密系统进行加密了人录像进行解密全过程
辅助工具:一可用的其它机子上的KEY。
破解原理:将自己的机器码由自动获得替换成手动修改为KEY上的机器码。
破解笔记:
00480EEB //获得硬盘序列号
00480ED4 /$ 55 PUSH EBP
00480ED5 |. 8BEC MOV EBP,ESP
00480ED7 |. 56 PUSH ESI
00480ED8 |. 57 PUSH EDI
00480ED9 |. 8B7D 08 MOV EDI,DWORD PTR SS:[EBP+8]
00480EDC |. 8BC7 MOV EAX,EDI
00480EDE |. 8B75 0C MOV ESI,DWORD PTR SS:[EBP+C]
00480EE1 |. 8B4D 10 MOV ECX,DWORD PTR SS:[EBP+10]
00480EE4 |. 8BD1 MOV EDX,ECX
00480EE6 |. D1E9 SHR ECX,1
00480EE8 |. D1E9 SHR ECX,1
00480EEA |. FC CLD
00480EEB |. F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
00480EED |. 8BCA MOV ECX,EDX
00480EEF |. 83E1 03 AND ECX,3
00480EF2 |. F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
00480EF4 |. 5F POP EDI
00480EF5 |. 5E POP ESI
00480EF6 |. 5D POP EBP
00480EF7 \. C3 RETN
004116FC \\写入硬盘序列号,并储存在EBP-434=12F118上。
004116FC |. 83C4 0C |ADD ESP,0C
0040A36D——0040A396 //开始循环计算
0040A36D |. 8D9D CCFBFFFF LEA EBX,DWORD PTR SS:[EBP-434]
0040A373 |> 0FBE03 /MOVSX EAX,BYTE PTR DS:[EBX]
0040A376 |. F7E9 |IMUL ECX
0040A378 |. 99 |CDQ
0040A379 |. BF 09000000 |MOV EDI,9
0040A37E |. 41 |INC ECX
0040A37F |. F7FF |IDIV EDI
0040A381 |. 8BC2 |MOV EAX,EDX
0040A383 |. 83C0 30 |ADD EAX,30
0040A386 |. 8803 |MOV BYTE PTR DS:[EBX],AL
0040A388 |. 43 |INC EBX
0040A389 |. C786 AC160000 >|MOV DWORD PTR DS:[ESI+16AC],64
0040A393 |. 83F9 14 |CMP ECX,14
0040A396 |.^ 7C DB \JL SHORT 录像3.0040A373
0040A398 |> \80BE BD040000>CMP BYTE PTR DS:[ESI+4BD],0
0040A47D——0040A489 //第二次计算
0040A47D |> \0FBE85 CCFBFFF>MOVSX EAX,BYTE PTR SS:[EBP-434]
0040A484 |. 83F8 30 CMP EAX,30
0040A487 |. 75 07 JNZ SHORT 录像3.0040A490
0040A489 |. C685 CCFBFFFF >MOV BYTE PTR SS:[EBP-434],39 //EBP=12F54C,EBP-434=12F118,EBP-20=12F52C,得出计算结果
0040A490 |> 66:C745 E0 380>MOV WORD PTR SS:[EBP-20],38 //12F118上赋值字符串8.
0040A496 |. 8D95 CCFBFFFF LEA EDX,DWORD PTR SS:[EBP-434] //计算结果赋值给EDX
0040A49C |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
结束硬盘序列号读取与计算。
机器码:95162330302703105401 5164792957(可注册)
95162738405160062406 4239730668(本机)
可注册硬盘序列号计算结果的二进制:39 35 31 36 32 33 33 30 33 30 32 37 30 33 31 30 35 34 30 31
35 31 36 34 37 39 32 39 35 37
00区域:C2410(VA:4CFE10)
004CFE17 C685 CCFBFFFF 3>MOV BYTE PTR SS:[EBP-434],39
004CFE1E C685 CDFBFFFF 3>MOV BYTE PTR SS:[EBP-433],35
004CFE25 C685 CEFBFFFF 3>MOV BYTE PTR SS:[EBP-432],31
004CFE2C C685 CFFBFFFF 3>MOV BYTE PTR SS:[EBP-431],36
004CFE33 C685 D0FBFFFF 3>MOV BYTE PTR SS:[EBP-430],32
004CFE3A C685 D1FBFFFF 3>MOV BYTE PTR SS:[EBP-42F],33
004CFE41 C685 D2FBFFFF 3>MOV BYTE PTR SS:[EBP-42E],33
004CFE48 C685 D3FBFFFF 3>MOV BYTE PTR SS:[EBP-42D],30
004CFE4F C685 D4FBFFFF 3>MOV BYTE PTR SS:[EBP-42C],33
004CFE56 C685 D5FBFFFF 3>MOV BYTE PTR SS:[EBP-42B],30
004CFE5D C685 D6FBFFFF 3>MOV BYTE PTR SS:[EBP-42A],32
004CFE64 C685 D7FBFFFF 3>MOV BYTE PTR SS:[EBP-429],37
004CFE6B C685 D8FBFFFF 3>MOV BYTE PTR SS:[EBP-428],30
004CFE72 C685 D9FBFFFF 3>MOV BYTE PTR SS:[EBP-427],33
004CFE79 C685 DAFBFFFF 3>MOV BYTE PTR SS:[EBP-426],31
004CFE80 C685 DBFBFFFF 3>MOV BYTE PTR SS:[EBP-425],30
004CFE87 C685 DCFBFFFF 3>MOV BYTE PTR SS:[EBP-424],35
004CFE8E C685 DDFBFFFF 3>MOV BYTE PTR SS:[EBP-423],34
004CFE95 C685 DEFBFFFF 3>MOV BYTE PTR SS:[EBP-422],30
004CFE9C C685 DFFBFFFF 3>MOV BYTE PTR SS:[EBP-421],31
004CFEA3 90 NOP
004CFEA4 JMP
00401F7E E8 09D10800 call 0048F08C //取得MAC号码,并储存在0012F4E4
00402090——00402095 //4个一组,去掉:号,并储存在EAX=0012F4D4上。
00402090 . C1E9 02 SHR ECX,2
00402093 . 8BC7 MOV EAX,EDI
00402095 . F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
00402097 . 8BCA MOV ECX,EDX
00402099 . 8D45 84 LEA EAX,DWORD PTR SS:[EBP-7C]
0040209C . 83E1 03 AND ECX,3
0040209F . F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
004020A1 . 33D2 XOR EDX,EDX
004020A3——004020BE //将第1位+第11位的和/2取整,第2位+第12位的和/2取整。
004020A3 . /EB 14 JMP SHORT crack.004020B9
004020A5 > |0FBE08 MOVSX ECX,BYTE PTR DS:[EAX] //EAX=0012F4D4,12位数值的储存位置
004020A8 . |0FBE70 0A MOVSX ESI,BYTE PTR DS:[EAX+A]
004020AC . |03CE ADD ECX,ESI
004020AE . |D1F9 SAR ECX,1
004020B0 . |79 03 JNS SHORT crack.004020B5
004020B2 . |83D1 00 ADC ECX,0
004020B5 > |8808 MOV BYTE PTR DS:[EAX],CL
004020B7 . |42 INC EDX
004020B8 . |40 INC EAX
004020B9 > \8D4B F6 LEA ECX,DWORD PTR DS:[EBX-A]
004020BC . 3BD1 CMP EDX,ECX
004020BE .^ 7C E5 JL SHORT crack.004020A5
004020C0 . C645 8E 00 MOV BYTE PTR SS:[EBP-72],0 //第11位改为00,以截取10位数。
00区域:VA:004CFEAB
004CFEAB 36:C600 35 MOV BYTE PTR SS:[EAX],35
004CFEAF 36:C640 01 31 MOV BYTE PTR SS:[EAX+1],31
004CFEB4 36:C640 02 36 MOV BYTE PTR SS:[EAX+2],36
004CFEB9 36:C640 03 34 MOV BYTE PTR SS:[EAX+3],34
004CFEBE 36:C640 04 37 MOV BYTE PTR SS:[EAX+4],37
004CFEC3 36:C640 05 39 MOV BYTE PTR SS:[EAX+5],39
004CFEC8 36:C640 06 32 MOV BYTE PTR SS:[EAX+6],32
004CFECD 36:C640 07 39 MOV BYTE PTR SS:[EAX+7],39
004CFED2 36:C640 08 35 MOV BYTE PTR SS:[EAX+8],35
004CFED7 36:C640 09 37 MOV BYTE PTR SS:[EAX+9],37
004CFEDC 90 NOP
004CFEDD - E9 DE21F3FF JMP
这里我将机器码分为两个部分:硬盘序列号和网卡MAC。
在使用手动修改机器码时,因对编程循环构思不是很在行,所以汇编语言采用的最原始的MOV语句。
经过如上的修改后,运行教程,无论在哪台机子上运行,机器码就直接变成了KEY上的机器码了,输入用户名和注册码后,图像和声音方面没有一点点丢失,堪称完美破解。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课