Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- codeengn basic 19
- codeengn advanced 3
- codeengn basic 18
- 리버싱
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 13장 연습문제풀이
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 13장 연습문제 답
- codeengn basic 15
- StolenByte
- codeengn basic 16
- codeengn 13
- covetknowledge
- 반복문
- codeengn basic 20
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 13장 연습문제
- java
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 14장 연습문제풀이
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 14장 연습문제 답
- CodeEngn
- OEP
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 14장 연습문제
- codeengn basic 17
- upx 언패킹 명령어
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 10장 연습문제풀이
- 프로그래밍 언어
- 누구나 쉽게 즐기는 c언어 콘서트 개정판 10장 연습문제 답
- Reversing
- codeengn advanced 1
- 조건문
- codeengn basic 14
- break
Archives
- Today
- Total
One's Knowledge
CodeEngn basic 15번 문제 풀이 본문
CodeEngn basic 15번
Name이 CodeEngn일때 Serial을 구하시오

패킹되어 있지는않다.

간단히 Name이랑 Serial써서 serial 맞추는거다.

성공구문과 실패구문을 찾았다. 이동하겠다.

분기점에 브포를 걸어두겠다. EAX랑 *(45B844)를 비교하는 것을 볼 수 있다.

이때 레지스터를 보니 EAX에는 내가 넣은 1234가 들어가 있다.

45B844에는 60610000으로 빅엔디언으로 바꾸면 00006160 즉 24928이다.

다시 실행해보니 성공했다고 나온다.
한번 45B844에 들어있는 6160이 어떻게 나왔는지 보자.

분기점 위에 있는 함수들에 싹다 브포걸고 보겠다.

첫번째 브포에 바로 바꼈다. 00458760함수에 45B844에 있는 serial 생성방법이 있다.
가보자

겁나 복잡하다. 새로 배운것은 반복문 카운트를 꼭 ECX에서 하는건 아닌것? EAX값으로 하더라...
0043A64는 EAX = 8이 들어가는 것을 보아 아마 NAME의 길이를 구하는 것 같다.
각 함수로 직접들어가기에는 오래 걸릴것 같아 대충 레지스터 바뀐것들만 봤다.
이거 분석해도 basic문제라 성취감이 없을거 같아 이쯤 마무리하겠다..
'리버싱 > CodeEngn 문제풀이' 카테고리의 다른 글
| CodeEngn basic 17번 문제 풀이 (1) | 2025.06.13 |
|---|---|
| CodeEngn basic 16번 문제 풀이 (0) | 2025.06.11 |
| CodeEngn basic 14번 문제 풀이 (0) | 2025.06.07 |
| CodeEngn basic 13번 문제 풀이 (0) | 2025.06.07 |
| CodeEngn basic 12번 문제 풀이 (0) | 2020.08.19 |