Basic을 끝내고 advance로 들어오게되었습니다.

파일은 패킹이 되어있는것 같습니다.

디버거로 한번 열어보았습니다.

언패킹을 하여 본래코드로 들어왔습니다.

분석을 하다보니 안티디버깅 함수가 존재하길래

우회를 해주었습니다.

이제 밀리세컨드안에 프로그램을 끝내버리는 함수를 찾아야하는데 베이직에서 푼 문제와 같은 함수가 여기 존재합니다. 이 함수들 중 하나겠죠

찾았습니다. CMP명령어를 보시면 EAX값과 ESI값을 비교하여 EAX값이 커야 점프를 하게됩니다.

바로 이부분입니다.

점프를 하게되면 EAX값과 ESI값을 연산시켜주는데 연산 시켜준 후 CMP를 하여 EAX값과 EBX+4값을 비교시켜줍니다. 만약에 EAX값이 더 크다면 끝이나는것입니다.

그렇다면 끝이나려면 EAX값이 EBX+4 값 보다 커야지 끝나게됩니다. 고로 EBX+4값이 정답이 되겠습니다.

'Reversing > CodeEngn Advance' 카테고리의 다른 글

CodeEngn Advance 06  (0) 2015.08.23
CodeEngn Advance 05  (0) 2015.08.20
CodeEngn Advance 04  (0) 2015.08.20
CodeEngn Advance 03  (0) 2015.08.15
CodeEngn Advance 02  (0) 2015.08.15

+ Recent posts