7번 문제입니다.




MASM32 / TASM32 [Overlay] 가 정확히 뭔지 모르나 구글에 치면 어셈블리어라고 대충 눈치 챘습니다. 



07.exe를 그냥 실행하면 위와 같은 결과를 보여줍니다.

ollydbg로 분석을 해보겠습니다.



문자열을 검색하면 실패시 나오는 결과문자열과 성공시 나올것으로 예상되는 문자열이 나옵니다.

성공시 나올것 같은 문자열로 더블클릭으로 이동하겠습니다.




4010ff에서 분기문으로 성공과 실패가 나뉘어집니다.

그렇다면 분기문 위를 디버깅 해봐야하겠군요.



StringToAdd 에 4562-ABEX라는 string이 있습니다. 그리고 문제에서 제시된 c드라이브의 이름을 저장하는 버퍼인 VolumeNameBuffer가 40225c에 위치하고있는데 이 곳에 CodeEngn으로 채워넣고 디버깅을 하면 ConcatString에 이 값이 들어가게 됩니다.



그리고 반복문을 통해 CodeEngn에서 'Code' 까지 1씩 더하는 과정을 2번 하게됩니다.

결과는 직접 해보시기 바랍니다.







'Wargame > CodeEngn challenge' 카테고리의 다른 글

CodeEngn basic Level 9 풀이  (0) 2016.09.13
CodeEngn basic Level 8 풀이  (0) 2016.09.12
CodeEngn basic Level 6 풀이  (0) 2016.09.11
CodeEngn basic Level 5 풀이  (0) 2016.09.11
CodeEngn basic Level 4 풀이  (0) 2016.09.11

+ Recent posts