보안/리버싱
[Reversing] 리버싱 핵심원리 [7 - 2]. abex' 2nd crackme 풀이 - 시리얼코드 생성 함수 분석
Cycrypt0
2020. 3. 2. 22:10
728x90
내용 : 시리얼 코드를 생성하는 함수부분을 분석하였다 -> Visual Basic에 문외한 및 실력,, 때문에 책을 많이 참고 하였다.
1. check 버튼 이벤트 핸들러 시작지점 찾기
이벤트 핸들러의 구조의 결과로 MessageBox를 출력하는 지점에서 함수 처음의 스택 프레임을 형성하는 지점을 찾는다.
해당 부분에서 아래로 내리다 보면 루프가 시작되는 지점이 나오는데,
MOV EBX, 4
위와 같은 명령어가 보이는데, 4번의 루프 반복을 통해 시리얼을 만든다.
########################################################################################
아래부터는 이해하지 못한 내용이라 공부 한 이후에 추가할 예정,,,
########################################################################################
과정
1. 주어진 Name 문자열을 앞에서부터 한 문자씩 읽기 (총 4 회)
2. 문자를 숫자(Ascii)로 변환
3. 변환된 숫자에 64 더함
4. 숫자를 다시 문자로 변환
5. 변환된 문자를 연결
728x90