
먼저 실행파일을 실행했습니다CD-Rom 처럼 생각하도록 만들라는 뜻인것 같습니다CD-ROM 드라이버가 아니라는 오류 메시지가 발생하며 종료합니다디버거로 디스어셈블된 코드를 확인해봅니다EP 코드가 매우 짧습니다Stub Code가 없기 때문에 어셈블리 언어로 개발했다는 것

ESP(스택 포인터)가 아닌 EBP(베이스 포인터) 레지스터를 사용하여 스택 내의 로컬 변수, 파라미터, 복귀 주소에 접근하는 기법을 말합니다ESP 레지스터의 값은 프로그램 안에서 수시로 변경되기 때문에 스택에 저장된 변수, 파라미터에 접근하고자 할 때 ESP 값을 기

코드 중 add()함수를 호출하는 과정입니다add() 함수는 두 개의 매개변수를 호출하고 있습니다EBP-8에 있는 값은 b에 해당하는 2이며 EBP-4에 있는 값은 a에 해당하는 1입니다b, a순으로 스택에 PUSH하고 있습니다C언어의 입력 순서와는 반대로 스택에 저장
VB 파일은 MSVBVM60.dll (Microsoft Visual Basic Virtual Machine 6.0)이라는 VB 전용 엔진을 사용합니다메시지 박스를 출력하고 싶을 때 VB 소스코드에서 MsgBox() 함수를 사용합니다VB 컴파일러는 실제로 MSVBVM60

프로그램이 시작되면 EP(Enty Point)코드에서 처음 하는 일은 VB 엔진의 메인 함수(ThunRTMain)를 호출하는 것입니다 EP 주소는 401238 입니다 401238 주소의 PUSH 401E14 명령에 의해 RT_MainStruct 구조체 주소(401E

첫 번째 목표는 메시지 박스를 제거하는 것메시지 박스가 나타나는 경우 프로그램이 시작할 때Part10Tut.ReverseMe 박스에서 Nag? 버튼을 눌렀을 때 두 부분 모두 메시지 박스가 나타나지 않도록 처리를 해줘야 합니다디버거에서 업로드 후 디스어셈블 된 코드를