تکثیر رو به دو شکل می توانید انجام بدید :
شیوه اول :
یک نسخه کامل از خود برنامه اجرایی که ساخته اید را بصورت کامل از فایل بخوانید و در یک فایل دیگری کپی کنید.
(سرویس های مدیریت فایل در وقفه 21). این شیوه ساده ای است که در ویروسهای عادی بکار نمی رود.
شیوه دوم :
محتویات برنامه خود را در ابتدای یک فایل اجرایی دیگری بنویسید. هدف شما یا فایلهای com هستند یا exe.
بازنویسی فایلهای com با کد های اجرایی ویروس :
ساختار فایلهای com مراتب ساده تر از exe است.
ابتدا محتویات فایل com مورد نظر را به طور کامل در حافظه RAM بخوانید.
سپس کد اجرایی ویروس خودتان را در ابتدای فایل بنویسید ولی برنامه نباید با سرویس 4C خاتمه یابد.
اکنون کد اصلی برنامه را که در حافظه RAM خوانده بودید در ادامه مجددا بنویسید.
بازنویسی فایلهای exe با کدهای اجرایی ویروس :
ساختار فایلهای exe به مراتب پیچیده تر هستند و می بایستی بصورت کامل با ساختار فرمت PE و جدول جابجایی
آدرس های نسبی که در ابتدای فایل های exe ذخیره می شوند آشنا باشید.
جابجایی کد و داده موجود در یک فایل exe منجر به تغییر در جدول آدرس های فایل می شود که نیازمند یک کد نویسی
دقیق است. نمونه چنین کدهایی را در ویروس های دیگر می توانید بیابید.
اما اینکه چطور فایل هدف را انتخاب کنید بستگی به خودتان دارد، مثلا می توانید سرویس 3D وقفه 21 را برای خواندن
یک فایل Hook کنید. اینکار با سرویس های 25 و 35 وقفه 21 انجام می شود.
وقتی که فایلی باز شد می توانید چک کنید که اگر پسوند com دارد در محتویاتش دست ببرید (پیش از بازگشت از وقفه)
یا مثلا دنبال فایلهای com در شاخه فعلی بگردید (سرویس های 11 و 12 وقفه 21)