문제 확인





풀이



우선 위와 같이 lstrcmpA를 통하여 우리는 쉽게 해당 시리얼을 구할 수가 있지만 이렇게 문제풀이를 중심으로만 하면 실력향상에 차질이 있을 수도 있기에 직접 알고리즘을 분석하는 방법을 통하여 문제를 풀어보고자 한다. 


위와 같이 알고리즘이 진행되는 부분을 표시해 놓았다. 위의 알고리즘을 커친 후 ESI의 값이 10진수로 시리얼의 가운데 값으로 자리잡고, EDI의 값은 16진수로 시리얼의 뒷자리 값으로 자리를 잡는다. 알고리즘에 대한 분석은 주석에 달아 놓은 것과 같고 직접해보는 것이 크게 도움이 될 것이다. 이제 알고리즘을 파악한 후 직접 키 값을 구하는 프로그램을 만들어보자.


위와 같이 나는 이렇게 Python을 통하여 키 값을 구하는 프로그램을 만들어 보았다. 이렇게 구한 값이 실제 프로그램과 동일한 결과를 도출해내는지를 확인하기 위하여 아래와 같이 확인을 할 수가 있다.



'Reversing > CodeEngn' 카테고리의 다른 글

CodeEngn Advance 06  (0) 2015.06.28
CodeEngn Advance 05  (0) 2015.06.28
CodeEngn Advance 03  (0) 2015.06.28
CodeEngn Advance 01  (0) 2015.06.27
CodeEngn Basic 20  (0) 2015.06.04