프로그래밍/Reversing

[reversing.kr] replace

Reo- 2022. 4. 17. 18:53
반응형

1단계 - 실행 해보기

 

 

2단계 - 패킹 확인

 

 

3단계 - 해보기

correct로 오는 부분이 둘다 점프로 딴데로 보낸다....

 

점프하지마 그냥...

nop 시켰더니 correct가 뜨긴한다.. 그런데 이렇게 풀면 의미가 없네..

 

 

 

다시 3단계 - 다시 해보기

401073으로 보내는 곳이 있지않을까 해서 찾아봤는데 없다.

eax에 내가쓴값을... 4084d0에 넣어놓고 콜문을 거치고 eax=0으로 초기화 하니까

내가쓴 값은 40466f 콜문에서 어딘가에 저장을 한다는 소리 같다.

 

그럼 콜문안에서 4084d0 부분이 어떻게 변하는지 살펴봐야될것같다.

 

increase로 1을 추가하고

 

또 따라가니 601605C7 을 더한다.

 

거기에 다시 inc eax로 1을 추가

404689 에서 또다시 1추가

 

원래 코드로 돌아와서 점프

eax에 내가쓴값에 연산까지 된 값을 다시 불러온다.

이걸 지나면 eax에 6017e80b가 들어있음

그아래 콜문 지나면 또 1추가

또 쫓아가니 90으로 바꾸는 부분이 있다.

그럼 여기서 90으로 때우는 부분이 401071 점프부분 이부분의 점프를 90으로 막으면 정답 가는 길이 열린다.

 

401071 = 내가 입력한 숫자 + 연산한거 니까

내가 입력한 숫자 = 401071 - (연산한거)

 

 

음... 기억안나..모르겠고 더하기만 있었죠?

마지막에 eax 값이 6017E80B 이거니까

 

 

 

 

 

 

 

 

 

 

반응형