Тема: Lineage 2 HF5
Показать сообщение отдельно
Непрочитано 21.12.2012, 22:10   #25
Пользователь

Автор темы (Топик Стартер) Re: Lineage 2 HF5

Цитата:
Сообщение от KilRoy Посмотреть сообщение
Ай попорчу бизнес. Крипт есть, но до того фальшивый, что обходится банальным реверсом ключа с дсетапа + хуком. Гото - жук, и совершайте сеарчинг по форуму. 1н умелый товарищ вам свободно продаст готовый хук, после предъявления ему - Дсетапа.
Ну и далее, данный протект - не в коем случае не ССР(Как кто-то выше писал):
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
	if (fdwReason == DLL_PROCESS_ATTACH)
	{
		DisableThreadLibraryCalls(hinstDLL);
 
		//InitConsole();
 
		LoadTrayIcon(hinstDLL, 1);
 
		if (!DisableGameGuard())
		{
			ErrorExit("Disable Game Guard Fail!");
			Sleep(INFINITE);
		}
 
		if (!SetHooks())
		{
			ErrorExit("Set Hooks Fail!");
			Sleep(INFINITE);
		}
	}
 
	if (fdwReason == DLL_PROCESS_DETACH)
	{
		FreeTrayIcon(1);
	}
 
	return true;
}
 
bool LoadTrayIcon(HINSTANCE hInst, unsigned int ID)
{
	ghMutex = CreateMutexA(0, false, "First Guard");
 
	if (GetLastError() == ERROR_ALREADY_EXISTS)
	{
		CloseHandle(ghMutex);
		return true;
	}
 
	WNDCLASSEXA wcx;
	NOTIFYICONDATAA niData; 
 
	memset(&wcx, 0, sizeof(WNDCLASSEXA));
 
	wcx.cbSize = sizeof(wcx);
	wcx.lpfnWndProc = WndProc;
	wcx.hInstance = hInst;
	wcx.lpszClassName = "tray_icon";
 
	if ((RegisterClassExA(&wcx) == 0) && (GetLastError() != ERROR_CLASS_ALREADY_EXISTS))
		return false;
 
	if ((hWND = CreateWindowExA(0, "tray_icon", 0, 0, 0, 0, 0, 0, 0, 0, hInst, 0)) == 0)
		return false;
 
	memset(&niData, 0, sizeof(NOTIFYICONDATAA));
 
	niData.cbSize = sizeof(NOTIFYICONDATAA);
	niData.uID = ID;
	niData.uFlags = NIF_ICON | NIF_TIP;
	niData.hWnd = hWND;
	strcpy_s(niData.szTip, "First Guard");
 
	niData.hIcon = (HICON) LoadImageA(hInst, MAKEINTRESOURCEA(IDI_TRAYICON), IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), LR_DEFAULTCOLOR);
 
	if (!Shell_NotifyIconA(NIM_ADD, &niData))
		return false;
 
	return true;
}
 
void FreeTrayIcon(unsigned int ID)
{
	NOTIFYICONDATAA niData; 
 
	memset(&niData, 0, sizeof(NOTIFYICONDATAA));
	niData.cbSize = sizeof(NOTIFYICONDATAA);
	niData.hWnd = hWND;
	niData.uID = ID;
 
	Shell_NotifyIconA(NIM_DELETE, &niData);
 
	CloseHandle(ghMutex);
}
Code: C++
Ну и так далее Много лишнего. Есть правда бонусы - парсер ХВИД(правда убогий, но все же), возможность перенаправлять коннекты(опять же, без криптера (темиды, армадилы и т.д), 5минутный барьер). Ну а в принципе, толк в протекте есть, но он мал для "Серьезных" проектов, без весьма солидного реворка.
ну и ты написал кусок кода.... Ты на практике покажи.. посты выше читай.


bool LoadTrayIcon(HINSTANCE hInst, unsigned int ID)
{
ghMutex = CreateMutexA(0, false, "First Guard");

if (GetLastError() == ERROR_ALREADY_EXISTS)
{
CloseHandle(ghMutex);
return true;
}

WNDCLASSEXA wcx;
NOTIFYICONDATAA niData;

memset(&wcx, 0, sizeof(WNDCLASSEXA));

wcx.cbSize = sizeof(wcx);
wcx.lpfnWndProc = WndProc;
wcx.hInstance = hInst;
wcx.lpszClassName = "tray_icon";

if ((RegisterClassExA(&wcx) == 0) && (GetLastError() != ERROR_CLASS_ALREADY_EXISTS))
return false;

if ((hWND = CreateWindowExA(0, "tray_icon", 0, 0, 0, 0, 0, 0, 0, 0, hInst, 0)) == 0)
return false;

memset(&niData, 0, sizeof(NOTIFYICONDATAA));

niData.cbSize = sizeof(NOTIFYICONDATAA);
niData.uID = ID;
niData.uFlags = NIF_ICON | NIF_TIP;
niData.hWnd = hWND;
strcpy_s(niData.szTip, "First Guard");

niData.hIcon = (HICON) LoadImageA(hInst, MAKEINTRESOURCEA(IDI_TRAYICON), IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), LR_DEFAULTCOLOR);

if (!Shell_NotifyIconA(NIM_ADD, &niData))
return false;

return true;
}
void FreeTrayIcon(unsigned int ID)
{
NOTIFYICONDATAA niData;

memset(&niData, 0, sizeof(NOTIFYICONDATAA));
niData.cbSize = sizeof(NOTIFYICONDATAA);
niData.hWnd = hWND;
niData.uID = ID;

Shell_NotifyIconA(NIM_DELETE, &niData);

CloseHandle(ghMutex);
}

int DirectXSetupGetVersion(void)
{
return 0;
}

Добавлено через 5 минут
ну что кто обойдет???



я жду...

Добавлено через 9 минут
Напомню сайт http://esthus.ru

Последний раз редактировалось Reliable; 21.12.2012 в 22:20. Причина: Добавлено сообщение
Reliable вне форума Ответить с цитированием