강좌 / 팁

소프트웨어 dup2patcher.dll 디컴파일링-1

2022.07.20 22:07

sunshine 조회:834 추천:5

출처: http://crack-tool.at.ua/load/patchgens/diablo2oo2_39_s_universal_patcher_dup2_v2_25_v2_26/13-1-0-6

 

출처의 방법 및 dll-to-exe-converter 도구를 이용한 방법도 시도했지만 둘 다 안 되었습니다.

그래서 다른 방법으로 시도한 것이 잘 되어서 나중에 참고하기 위해서 기록합니다.

 

- 예제 파일

1. snapshotfix-patch.exe 를 실행 후 temp 폴더에 생성된 dup2patcher.dll

2. 어느 파일이든지 실행해서 temp 폴더에 dup2patcher.dll 이 생성되면 그 dup2patcher.dll 를 이용하면 됩니다.

 

- 필요 도구

1. CFF Explorer.exe

* patch.exe(=dup2patcher.exe) 의 [.rsrc 섹션 가상 주소] 확인합니다.

2. dup2_2.25.exe

* patch.exe(=dup2patcher.exe) 를 생성합니다.

* 마지막으로 수정된 patch.exe(=dup2patcher.exe) 로드해서 데이타 확인 및 재수정합니다.

3. ResBinder.exe 

* dup2patcher.dll 의 [.rsrc 섹션 데이타]를 추출합니다.

* 추출된 [.rsrc 섹션 데이타] 를 patch.exe(=dup2patcher.exe) 에 연결합니다.

 

- dup2_2.25 특징

1. 패치 파일을 실행하면 temp 폴더에 dup2patcher.exe 파일이 추출되어 실행됩니다.

2. dup2patcher.dll: 읽기 불가.

3. dup2patcher.exe: 읽기 가능(재수정 가능).

4. *.dop, *.dup: 읽기 가능(재수정 가능).

5. *.dup2: 읽기 가능(재수정 가능).

 

- dup2_2.26.1 특징

1. 패치 파일을 실행하면 temp 폴더에 dup2patcher.dll 파일이 추출되어 실행됩니다.

2. dup2patcher.dll: 읽기 불가.

3. dup2patcher.exe: 읽기 불가.

4. *.dop, *.dup: 읽기 불가.

5. *.dup2: 읽기 가능 (재수정 가능).

------------------------------------------------------------------------------

1. dup2patcher.dll 추출하기

- 예제로 사용한 snapshotfix-patch.exe 는 dup2_2.26.1 로 제작했기 때문에,

실행하면 temp 폴더에 dup2patcher.dll 가 자동 생성됩니다.

실행 후 dup2patcher.dll 파일을 복사해서 사용하시면 됩니다.

 

2. patch.exe(=dup2patcher.exe) 제작하기

- dup2_2.25 로 기본 데이타만 있는 patch.exe 를 생성해서 이용합니다.

- 물론 patch.exe 를 실행해서 temp 폴더로 추출된 dup2patcher.exe 를 이용해도 됩니다.

 

2-1. [프로젝트 -> 새로 생성] 을 클릭하세요.

dup2-01.png

 

2-2. 빈 곳에 마우스를 대고 우클릭하면 메뉴가 나타납니다.

여기서 [추가 -> [Search and Replace Patch]] 를 클릭하시면 됩니다. 

dup2-02.png

 

2-3. 실제 데이타는 없는 [Search and Replace Patch] 모듈만 자동으로 생성 됩니다. 

dup2-03.png

 

2-4. [프로젝트 -> 패치 생성] 을 클릭하세요.

dup2-04.png

 

2-5. 파일명은 자동으로 [patch.exe] 로 생성되니 그냥 [저장] 만 클릭하세요.

dup2-05.png

 

2-6. 그냥 [확인] 를 클릭하세요.

dup2-06.png

 

2-7. 패치가 생성 되었으니 [확인] 을 클릭하세요.

dup2-07.png

 

2-8. 종료하세요: [X] 클릭

dup2-08.png

 

2-9. 프로젝트에 저장할 필요가 없으니 [아니요] 를 선택하세요.

dup2-09.png

 

3. patch.exe(=dup2patcher.exe) 의 [.rsrc 섹션 가상 주소] 확인하기

- CFF Explorer 로 가상 주소를 확인합니다.

 

3-1. [File -> Open -> patch.exe] 를 선택하시고 좌측의 [Section Headers] 클릭합니다.

.rsrc 섹션의 Virtual Address(가상 주소) 를 꼭 기록하세요. 여기서는 [00022000] 입니다.

m01.png

 

4. dup2patcher.dll 의 [.rsrc 섹션] 데이타 추출하기

- ResBinder 로 dup2patcher.dll 의 [.rsrc 섹션 데이타]를 추출합니다.

 

4-1. 작업에서 [바이너리 리소스 덤프 파일 생성하기] 를 선택하세요.

m02.png

 

4-2. 반드시 주소를 0x00022000 로 수정하고 [OK] 하세요. 

m03.png

 

4-3. 덤프 파일 [dup2patcher00022000.rsrc] 생성 완료 메시지입니다.

m04.png

 

5. 추출된 [.rsrc 섹션] 데이타를 patch.exe(=dup2patcher.exe) 에 연결하기

- ResBinder 로 추출된 [.rsrc 섹션 데이타] 를  patch.exe(=dup2patcher.exe) 에 연결합니다.

 

5-1. 작업에서 [바이너리 리소스 덤프를 파일에 연결하기] 를 선택하세요.

m05.png

 

5-2. dup2patcher00022000.rsrc 파일을 선택하세요.

m06.png

 

5-3. 반드시 주소를 0x00022000 로 수정하고 [OK] 하세요. 

m07.png

 

5-4. patch.exe 를 실행해 보면 수정된 모습으로 나옵니다.

m08.png

 

6. dup2_2.25 로 수정된 patch.exe(=dup2patcher.exe) 로드하기

 

6-1. [프로젝트 - 열기] 를 클릭하세요.

m09.png

 

6-2. [*.exe] 선택하지 않으면 실행 파일이 안 나타납니다.

그러므로 먼저 파일 확장자 [*.exe] 를 선택해야 됩니다.

m10.png

 

6-3. 로드시 얼마간 시간이 걸리니 기다려주세요.

patch.exe 파일이 정상이면 아래처럼 로드가 되고 또한 모듈을 클릭해서 데이타 확인 및 재수정도 가능합니다.

patch.exe 파일이 비정상이면 아래처럼 로드가 안됩니다. 안되면 처음부터 다시 해야됩니다.

정상으로 로드가 되면 꼭 [*.dup2] 로 저장하세요. 

그러면 dup2_2.25 or dup2_2.26.1 로 새로운 패치 파일을 다시 만들 수 있습니다.

m11.png

------------------------------------------------------------------------------

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4482 윈 도 우| WindowsXPE147-2/나만의 PE를 만들자 시즌2 ?? 2탄(중급용) [4] new 지연서연아 24 2 10:29
4481 윈 도 우| 원격 데스크톱..., 자격증명이 작동하지 않습니다... [1] 사가르마타 323 1 04-12
4480 소프트웨어| purebasic 함수 인수 기본 값 설정으로 생략하기 [2] 입니다 356 9 03-24
4479 소프트웨어| pureBasic 외부 함수 호출 [1] 입니다 359 9 03-25
4478 소프트웨어| pureBasic 포인트 기본 이해 [3] 입니다 367 10 03-25
4477 모 바 일| #Kinemaster강좌, Clip&Audio 자르기 이동 늘리기, Un... 무림거사 399 1 08-02
4476 모 바 일| Kinemaster 강좌 -Clip을 "즐겨찾기"에 등록 &am... 무림거사 420 1 08-11
4475 윈 도 우| [실사] 윈도우8.1 프로 VHD 설치 방법 [5] 무월 423 6 05-08
4474 소프트웨어| purebasic Macro 기본 [3] 입니다 423 10 03-25
4473 소프트웨어| purebasic 기본적인 변수, 함수 선언 [5] 입니다 452 11 03-24
4472 소프트웨어| Bcd부팅항목 메뉴 숨기기 [3] 카멜 458 9 03-04
4471 모 바 일| Kinemaster강좌 #글자 입력방법, #링 속도 줄이는 방법 무림거사 461 1 08-03
4470 모 바 일| Kinemaster 화살표 Arrow 표시하는 2가지 방법 무림거사 471 1 08-08
4469 모 바 일| #Kinemaster 강좌, 기기성능 에 따른 출력해상도, 출력화질... [1] 무림거사 488 1 08-13
4468 모 바 일| Mobile PowerDirector강좌 #크로마키 무대 제작방법 특강 [1] 무림거사 524 2 06-24
4467 소프트웨어| dup2patcher.dll 디컴파일링-2 [3] sunshine 542 5 07-21
4466 윈 도 우| vbs_Merge Lines(Drag-n-drop) [12] 레마클로 545 4 03-03
4465 기 타| 커스텀 드라이브 아이콘 적용해 볼까? [3] 내꼬 559 5 03-09
4464 소프트웨어| 부팅항목숨기기,보이기-VHDman Lite0.0.8 [3] 카멜 561 10 03-06
4463 소프트웨어| winpe 시스템 계정에서 Edge 상위버전 적용 [8] sunshine 569 15 07-24
XE1.11.6 Layout1.4.8