728x90
  • Music_Player 

이 예제는 파일을 다운받아서 먼저 Readme 를 열어서 읽어 보니까 mp3 플레이어가 1분으로 제한되어 있는 것을 1분 이상으로 실행하도록 만드는 예제로 다운받은 파일에 MP3 Player 실행파일을 실행해서 아무 음원이나 넣었을 때, 1이 되었을 때 "1분 미리듣기만 가능합니다" 라는 메세지 창이 뜨게 된다.

 

 

 

디버거를 통해 메세지가 출력되는 곳을 찾아 jl문을 jmp 문으로 변경하는 것으로 1분이 지났을 때도 메세지가 출력되지 않겠금 하였다.

 

하지만 런 타임 에러...

런 타임 에러가 뜨는 이유는 프로그램을 잘못 짜거나, 특수한 상황을 고려하지 못한 경우가 발생하면 뜨게 된다. 수정한 부분 주변을 살펴 보았다.

 

 

살펴보니까  jge 부분에서 매 초가 지날 때마다 걸리는 예외 상황이 있었다. 비교 결과값이 0이거나 큰 경우에 에러 메세지를 내는 부분으로 넘어가는 것으로 보여 이러한 부분을 건너뛰게끔 jmp 명령어로 바꿔주었다.

 

jmp music_player.4046BF

 

다시 실행하니 1분이 지나서도 재생이 되는 것을 확인 할 수 있었다.

 

http://reversing.kr/challenge.php

 

Reversing.Kr

Copyright © 2012-2022 Gogil All Right Reserved.

reversing.kr

 

+ Recent posts