사용처 패커등 TLS등 다양한곳에서 사용된다 1. INT 0x3 #include #include #include int main() { while (1) { __try { __asm { int 0x3; } printf("Debugged\n"); } __except (EXCEPTION_EXECUTE_HANDLER) { printf("Not debugged\n"); } } } 첫 번째 케이스는 다음과 같이 구현된다. 일반적으로 int 0x3은 소프트웨어 브레이크 포인트이기 때문에, 정상적으로 실행이 될때는 해당 브레이크 포인트를 만나게 되면 Exception을 던지고 종료하는 구조를 갖게 된다. 하지만 디버거에서 디버깅을 진행할 때는 해당 인스트럭션을 실행해도 익셉션이 발생하지 않는다. 이를 이용해서 현재 ..