티스토리 뷰
UPX 로 압축을 하면 코드는 PUSHAD 와 POPAD 는 한 쌍이 된다.
PUSHAD 실행 후 맨위의 스택 주소를 덤프하여 BYTE H/W BreakPoint를 지정하고 실행하면 POPAD 다음에서 멈추게된다. 이떄, JMP 에 있는 주소가 OEP(Original Entry Point)가 된다. EOP 는 압축 전 실행파일의 EP가 된다.
PUSHAD : EAX ~ EDI 값을 스택에 저장
POPAD : 스택에서 EAX ~ EDI에 복원