2.png (46.86 KB, 下载次数: 0)
下载附件
2023-4-15 17:55 上传
[HTML] 纯文本查看 复制代码编辑程序:Hex Workshop v4.23
程序下载:http://www.bpsoft.com/bbl/download/download.html?dlfile=hw32v423.exe
安装 Hex Workshop v4.23 序并修复右键菜单:(右击 hw32v423.inf 选择安装)
----hw32v423.inf----
[Version]
Signature="$CHICAGO$"
[DefaultInstall]
AddReg=AddReg
[AddReg]
;Hex Workshop Context Menu
HKCR,"*\shell\用 Hex Workshop 打开\command",,0x20000,"%1%\hworks32.exe ""%%1"" ""%%2"""
--------------------------------
游戏名称:植物大战僵尸年度版 v1.2.0.1073
游戏下载:http://static-www.ec.popcap.com/binaries/popcap_downloads/PlantsVsZombiesSetup_20120812.exe
备注:各个文件的默认位置如下:
C:\Program Files (x86)\Hex Workshop 4.2\hw32v423.inf
X:\PlantsVsZombiesSetup\PlantsVsZombiesSetup_20120812.exe
X:\PlantsVsZombiesSetup\PlantsVsZombiesSetup.sfx
X:\PlantsVsZombiesSetup\PlantsVsZombiesSetup.cab
X:\PlantsVsZombiesSetup\PlantsVsZombiesSetup.sig
X:\PlantsVsZombiesSetup\Expand.cmd
X:\PlantsVsZombiesSetup\FileList.cmd
X:\PlantsVsZombiesSetup\MakeCAB.cmd
X:\PlantsVsZombiesSetup\new_PlantsVsZombiesSetup.cab
X:\PlantsVsZombiesSetup\new_PlantsVsZombiesSetup.cmd
X:\PlantsVsZombiesSetup\new_PlantsVsZombiesSetup.exe
使用 Hex Workshop 打开 PlantsVsZombiesSetup_20120812.exe
一、分析游戏程序
计算 偏移地址 描述 值 注释
0000003C NT 00010000 PE头地址=00000100
PE+98= 00000198 SD RVA 28018C02 ①数字证书地址=028C0128
PE+9C= 0000019C SD Size B8150000 ②数字证书大小
二、分解游戏程序
以 Hex 值搜索 4D5343460000(MSCF..),偏移地址:00078008
以 Text 字符串搜索 !popcapinstallersig!.,偏移地址:028C010F
00000000 - 00078008 另存为:PlantsVsZombiesSetup.sfx
00078008 - 028C010F 另存为:PlantsVsZombiesSetup.cab
028C010F - 028C16E0 另存为:PlantsVsZombiesSetup.sig
三、解压缩 PlantsVsZombiesSetup.cab 文件
----Expand.cmd----
@echo off
cd /d "%~dp0"
EXPAND.EXE PlantsVsZombiesSetup.cab -F:*.* .
--------------------------------
四、使用批处理创建压缩包列表文件 PlantsVsZombiesSetup.txt
----FileList.cmd----
@echo off
cd /d "%~dp0"
echo.>PlantsVsZombiesSetup.txt
setlocal enabledelayedexpansion
for /f "delims=" %%e in ('dir /b /on /s /ad 2^>nul') do (
set "str=%%e"
set "str=!str:%cd%\=!"
>>"%~dp0FileList.txt" echo .set DestinationDir="!str!"
pushd "%%e"
for /f "delims=" %%j in ('dir /b /on /a-d 2^>nul') do (
set "str2=%%~fj"
set "str2=!str2:%cd%\=!"
>>"%~dp0FileList.txt" echo "!str2!"
)
popd
)
endlocal
--------------------------------
五、汉化、精简、破解相关文件及图片(略)
六、压缩列表文件 new_PlantsVsZombiesSetup.cab
----MakeCAB.cmd----
@echo off
cd /d %~dp0
MakeCAB.exe /D MaxDiskSize=107374182400 /D CompressionType=LZX /D CompressionMemory=21 /D CabinetNameTemplate="..\new_PlantsVsZombiesSetup.cab" /F PlantsVsZombiesSetup.txt
rd /q disk1
del /f /q setup.inf
del /f /q setup.rpt
--------------------------------
七、修正 new_PlantsVsZombiesSetup.cab 文件
使用 Hex Workshop 打开 new_PlantsVsZombiesSetup.cab 文件
偏移:00000008 记录数据:ABF7 6105
在 new_PlantsVsZombiesSetup.cab 文件末尾插入 8 字节
数据:ABF7 6105 0100 0000
八、组合成新的安装程序
----new_PlantsVsZombiesSetup.cmd----
@echo off
cd /d "%~dp0"
copy /b PlantsVsZombiesSetup.sfx+new_PlantsVsZombiesSetup.cab+PlantsVsZombiesSetup.sig new_PlantsVsZombiesSetup.exe
--------------------------------
九、修正 new_PlantsVsZombiesSetup.exe 文件的数字证书
计算 偏移地址 描述 值 注释
0000003C NT F8000000 PE头地址=000000F8
PE+98= 00000190 SD RVA D1F76705 ①数字证书地址=0567F7D1
PE+9C= 00000194 SD Size A8150000 ②数字证书大小
查找:A8150000 继续查找第三次偏移:0567F7BB
转到:00000190
原值:D1F76705
替换:BBF76705