한글화/한글화 강좌

[나인 따라하기] 01. HEX 한글화 작업 - 5회중 05회(종료)

NineHeart 2013. 6. 22.
01. HEX 수정으로 한글화 작업 - 5회중 05회(종료)

 

 한글화 작업 하기전 우선순위 알아봐야 할것 중에서...

 

   4-1. Null(00)공간이 별로 없는경우 새로운 섹션을 추가하여 Null(00)공간을 만든다.
          Null(00)공간을 만들고 실행 해 보아 오류없이 프로그램이 잘 돌아가는지 확인.
         오류가 생기고 프로그램이 안 돌아가면 전문가에게 물어보거나 그도저도

         싫으시다면 원래의 문자열을 수정하여 한글화 작업.
   4-2. 리틀에디안 값이 안보이는 경우 현재로서는 답을 모릅니다. 그냥 원래의

          문자열을 수정하여 한글화 작업 하는 방법뿐. (대체로 리틀에디안 값이

          안보일때가 많습니다.)
5. 리틀에디안 값이 보이고 섹션을 추가하여 실행이 잘 된다면 한글화 작업을 하시면

    됩니다.

 

위 부분의 강좌를 시작 하도록 하겠습니다.

 

 

Unpacking한 PEiD_Un.exe 와 Sisulizer로 한글 작업한 PEiD_Kor.exe 비교

 

Hex Workshop으로 PEiD_Un.exe 과 PEiD_Kor.exe의 마지막 주소 번지로 이동 하여

비교해 보았습니다. 200정도의 주소값이 차이가 나죠??? 한글화 도구로 작업을 하고

빌드를 시키다 보면 저렇게 약간의 차이는 납니다!

 

 

섹션을 추가 하기 위하여 Stud_PE를 실행 합니다.

우선 PEiD_Un.exe 파일을 먼저 불러 오겠습니다.

[파일] - [PE 파일 열기] 선택

 

 

PEiD_Un.exe을 불러 들였습니다. 각종 정보가 가득 매워져 있는데 시간 나시는

분들은 무엇인지 열공 해 보세요!!! 아주 좋은 도구 이니까요~~

우리는 이것 저것도 필요 없고 일단 섹션만 추가 시키면 됩니다.

 

 

섹션 메뉴를 누르셔서 하늘색 바탕 아무 곳이나 마우스 오른쪽 버튼을 클릭 하시고

새 섹션 명령을 클릭 합니다.

 

 

그럼 위와 같은 창이 뜨는데 1번 섹션이름을 넣어주세요! (아무거나 상관없어요)

그리고 Raw 크기와 가상크기를 00000500으로 수정 해 주세요!

Null공간의 크기이기 대문에 원하시는 만큼 수치를 넣어주시면 됩니다.

1000을 넣으셔도 되구요!!! 일단 저는 500만 추가 하겠습니다.

그리고 나서 2번 NULL 바이트로 섹션 채우기에 체크해주시구요

500만큼 추가시키는 곳에 Null값인 0으로 채워준다는 뜻 입니다.

이진 파일에서 섹션은 한글화할 내용들을 Text로 만들어서 우리가 만든 공간에

 내용을 삽입 해 준다는 뜻이구요!!!

모두 되셨으면 3번 추가 버튼을 누루시면...

 

 

섹션이 추가 되었다는 메시지가 뜨네요!!!

 

 

보시는 바와 같이 06번 라인에 새 섹션 ".Nine"이 추가가 되었습니다.

 

 

추가로 만든 새 섹션에 마우스 커서를 사정없이 들이 대세요!!!

떠블 클릭을 하셔도 되고 바로 마우스 오른쪽 버튼을 클릭 하시어

헤더 편집 명령을 해 주시면

 

 

위와 같은 창이 뜨는데요, 1번 특성 플래그(섹션의 속성이라 보시면 됩니다.)

체크박스에 두개만 체크 해 주세요!!!

그럼 파란색 1번 처럼 40000040으로 특성이 변합니다.

그리고 2번 00093000은 꼭 잘 적어 두세요!!!

두군데 체크가 되셨다면 3번 저장을 누르셔서 저장 하신 후 4번 닫기 버튼으로

창을 닫습니다.

 

 

원래 E0000060 이었던게 좀전에 수정 했던 40000040의 특성으로 바뀌엇죠???

이젠 모두 된 것 입니다. 색션을 추가 완성 한거죠!!!

 

 

섹션을 추가 후 꼭 실행해 보세요!!! 오류나면서 실행이 안되면 말짱 도루묵이니...

섹션이 추가됐다 해서 모두 수정 할수 있는게 아닙니다. 오류나는 프로그램들이

많거든요~ 그러나 우리는 아무 이상 없이 잘 돌아 가고 있습니다.

 

 

 

같은 방법으로 한글화된 PEiD_Kor.exe 파일도 섹션을 추가 하여 실행 해 보세요!!!

 

 

다시 Hex Workshop으로 돌아 옵니다.

섹션을 추가한 PEiD_Un.exe 파일을 불러오시고

화면 상단에 있는 1번 바로가기 아이콘을 클릭 해 주세요 또는 Gtrl+G

2번에 아까 제가 잘 적어 두시라 했던 00093000을 입력 합니다.

3번 16 진수에 체크되어있는지 확인 하시고

4번을 눌러 이동 합니다.

또 한번 PEiD_Kor.exe 파일도 불러오셔서 00092800을 입력후 이동 합니다.

 

 

 

섹션 추가후 시작위치와 스크롤 막대로  끝까지 내렸을때의 비교 그림 입니다.

PEiD_Un.exe 파일은 계산하기 좋게 바로 눈에 보이는군요!!!

93500 - 93000 = 500

우리가 추가한 섹션의 빈 공간 크기 입니다.

PEiD_Kor.exe 파일은 계산기로 두들겨 보세요 그것도 500이라는 값이 나올 겁니다.

 

 

계산기가 없으신 분들은 00092800줄 시작 부터 아래로 쭈욱~ 00092CF0줄 끝까지

마우스로 드래고 하시면 하단에 선택: 00000500 이라는 부분이 보이실겁니다.

 

눈치 채셨을지 모르겠지만 처음 시작 그림하고 비교해 보시면 섹션 추가 전에 마지막

주소에서 섹션들이 추가가 된것을 알수가 있습니다.

화면을 맨 위로 올리셔서... 첫번째 비교 그림 하고 비교 해 보세요!!!

 

 

이젠 추가한 섹션 시작 주소 에서 강좌 04회 내용대로 한글화 작업을 하시면 됩니다.

그림이 너무 어지럽지는 않은 지 모르겠네요~~

나름 열심히 마우스와 발로 그렸습니다.^^

PEiD_Kor.exe 파일로 E&xit "끝내기" 부분을 한글화 한 내용 입니다.

 

작업을 하고 실행해서 Unpacking한 PEiD_Un.exe 파일을 불러왔더니

이전에 끝내기 부분이 E&xit로 보이던것이 이젠 한글로 잘 보이시죠!!!

 

대 성공 입니다!!!

짝짝짝^^

 

이로써

01. HEX 수정으로 한글화 작업 - 5회중 05회를 마쳤습니다!!!

 

고생들 하셨습니다!!!!

 

[부록]

Normal Scan
0000A1D4-D4D14000

Deep Scan
0000A1C8-C8D14000

Hardcore Scan
0000A1B8-B8D14000

External Scan
0000A1A8-A8D14000

Plugins
0000A1E0-E0D14000

&Abort
0000A038-38D04000

&Close
0000A040-40D04000

 

이부분도 한글화 작업을 해 보세요!!!

Sisulizer에서 안보이는 문자열과 주소값-리틀에디안값 입니다.

숙제 입니다!!! 홧팅!!!