Programming 版 (精华区)
发信人: Mice (鼠儿), 信区: Programming
标 题: 加密&解密----(34)
发信站: 紫丁香 (Sun Sep 14 16:30:44 1997)
* 程式码说明:
1) CD_INST.EXE
XXXX:0F8A B0 06 MOV AL,06 - ---> 改为 JMP 1066
XXXX:0F8C E6 43 OUT 43,AL |
:0F8E ... IN AL,40 | 此为密码随机取值!
:0F90 MOV [166D],AL |
:0F93 MOV AL,40 |
:0F95 MOV [166C],AL -
:0F98 MOV BX,000A
:0F9B PUSH BX
:0F9C CALL 108A <-- 第一次读硬碟资料之副程式进入点!
:
: ;运算 X 值
:
:0FBC CALL 108A <-- 第二次读硬碟资料之副程式进入点!
:
: ;运算 Y 值
:
:0FED CALL 108A <-- 第三次读硬碟资料之副程式进入点!
:
: ;运算 Page 值
:
:1017 PUSH Word Ptr [1348] <-- Y
:101B PUSH Word Ptr [134A] <-- X
:101F PUSH Word Ptr [1346] <-- Page
:
:
:1057 CALL 20C2 ;要求使用者输入密码
:
:
:1063 MOV [00AA],AX <-- Key-Word 存放处
:1066 CALL 20D2 ;问 TARGET-Path <-- 跳至此
:
:106E CALL 070F ;开始编码,Copy
2) FPE4G.COM
:4BE8 MOV [4BC3],CS
:4BEC MOV AH,30 -- -- 覆盖改成:
: INT 21 | 检查DOS版本 |
: CMP AL,04 | | XOR AX,AX
: JNB 4C04 -- | CMP [34D4],AX
: MOV AL,02 -- | JZ 4C04
: MOV CX,0001 | | MOV [34D4],AX
: XOR DX,DX | | JMP 4C2D
: MOV BX,0103 | DOS4.x前版本处理|
: INT 25 | |
: POPF | | DS:[34D4] 为
: JMP 4C18 -- -- KeyWord 存放处
; RET
:4C04 MOV AL,02
: XOR DX,DX
: :
: :
:4C15 INT 25 --
:4C17 POPF |
:4C18 MOV CX,0004 |
: XOR BX,BX |
: MOV SI,[BX+4BC5] | 读硬碟资料+运算
: MOV AX,[SI+0103] | 求出 Key-Word
: ADD [34D4],AX |
: INC BX |
: INC BX |
: LOOP 4C1D --
:2C2D CALL 4BAB ; 解码副程式进入点
: POPA
: POP ES
: CMP Word Ptr [4E46],9090 ; 判断解出程式正确否
: JNE 4C54
3) FPE95.COM
:4244 CMP Word Ptr [4262],21CD => MOV Word Ptr[4262],21CD
:424A JZ 425B => JMP 425B
* 有那位高手将磁片版改法POST出来补充吧!
* 以上一点心得,对其内容有任何意见,欢迎批评指教!!
--
我是一只好老鼠!
※ 来源:.紫丁香 pclinux.hit.edu.cn.[FROM: 202.118.226.75]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.971毫秒