1. Теперь за форумную активность начисляются биткоины и другие криптоденьги. Подробнее.
    Скрыть объявление
  2. Появилась архивная версия форума arhiv.xaker.name, где собраны темы с 2007 по 2012 год.
    Скрыть объявление

[c++] Антитассировка

Тема в разделе "C/C++", создана пользователем Mr.Burns, 13 фев 2012.

  1. Mr.Burns
    Mr.Burns местная мразь Продвинутый
    Симпатии:
    65
    взято то-ли из касперского (тот что крис), то-ли ещё откуда-то.

    под олли и без неё покажет разные месседжы.
    кодес способен остановить лютых школьников, дорвавшихся до дебаггера, а так же других интересных личностей.
    Код:
    #include <windows.h>
    
    char yes[]="debugger is detected :-)";
    char noo[]="debugger is not detected";
    
    int nezumi()
    {
    	char *p=noo; // презумпция невиновности is on ;-)
    	__asm
    	{
    		//int 03 ; для отладки
    		mov ax,ss ; маскируем трассировочное прерывание...
    		mov ss,ax ; ...на время выполнения команды PUSHFD
    		pushfd ; сохраняем флаги в стеке, включая и TF
    		pop eax ; выталкиваем сохраненные флаги в eax
    		and eax,100h ; проверяем состояние TF-бита
    		jz not_under_dbg ; если TF не взведен, нас не трассируют
    		mov [p],offset yes
    		not_under_dbg:
    	}
    	MessageBoxA(0, p, p, MB_OK);
    }
    
    
    void _WinMainCRTStartup()
    {
    	nezumi();
    	MessageBox(0,"hello world",0,0);
    	ExitProcess(0);
    }
     
    13 фев 2012

Поделиться этой страницей

Загрузка...