Untitled

작성자: amesde9@gmail.com, 1 년 전에, 코딩언어: C, 조회: 781 회.
URL http://pastebin.co.kr/view/f5c9c5df - 공유: Twitter | Facebook | Google Embed
다운로드 또는 원본 보기
  1. #include <WINDOWS.H>
  2.  
  3. BOOL ATD_TSC_Check() {
  4.  
  5.         UINT ulTime1    = 0;
  6.         UINT ulTime2    = 0;
  7.  
  8.         __asm {
  9.  
  10.                 rdtsc                   // 첫 번째 CPU 사이클 계산, TSC가 edx와 eax에 저장된다.
  11.                 mov ulTime1, eax        // 하위 4바이트만 갖고 온다.
  12.                 rdtsc                   // 두 번째 CPU 사이클 계산
  13.                 mov ulTime2, eax
  14.         }
  15.  
  16.         // 탐지시 처리 루틴
  17.         if( (ulTime2 - ulTime1) > 100 ) {
  18.                 MessageBox(NULL, "가상머신 탐지", "TEST", MB_OK);
  19.                 return TRUE;
  20.         }
  21.  
  22.         return FALSE;
  23. }
  24.  
  25. int main() {
  26.  
  27.         ATD_TSC_Check();
  28.         return 0;
  29. }

답글: "Untitled"

이 곳에 위 붙여넣기에 답글을 달수있습니다.