2024年10月更新:
ue版本号:2024.1.0.36 64-bit
校验key、获取试用剩余天数依然在ProtectionPlusDLL.dll模块中,其关键函数IsActivatedSoftwareKey、GetRemainingDemoDaysSoftwareKey。
本次主要研究校验key的逻辑,关键在于IsActivatedSoftwareKey函数,函数逻辑如下:

经过试验,该函数返回0就会弹出试用窗口,返回1则可以正常使用,因此直接修改汇编代码`mov al,1`,并保存补丁文件,替换原有的dll

保存补丁文件替换后,再次打开UE,即可直接使用。
附上从UE运行到弹出试用窗口,dll内接口调用顺序:
```
EntryPoint
DllInit
LanguageInitSoftwareKey
GetLicensePathSoftwareKey*3
InitializeSoftwareKey
OptionalHeader.AddressOfEntryPoint
IsActivatedSoftwareKey
SetApplicationVersionsSoftwareKey
SetCheckStatusCallbackSoftwareKey
SetDownloadUpdateCallbackSoftwareKey
SetStatusUpdateCallbackSoftwareKey
OptionalHeader.AddressOfEntryPoint*6
弹出编辑器主界面,未弹出提示输入key的窗口
OptionalHeader.AddressOfEntryPoint*9
IsInitializedSoftwareKey
IsActivatedSoftwareKey
IsInitializedSoftwareKey
IsActivatedSoftwareKey
GetRemainingDemoDaysSoftwareKey
弹出提示输入key的窗口
```
声明:本文仅做技术研究探讨,不做非法用途。
---
---
2024年10月更新:
ue版本号:2024.1.0.36 64-bit
校验key、获取试用剩余天数依然在ProtectionPlusDLL.dll模块中,其关键函数IsActivatedSoftwareKey、GetRemainingDemoDaysSoftwareKey。
本次主要研究校验key的逻辑,关键在于IsActivatedSoftwareKey函数,函数逻辑如下:
经过试验,该函数返回0就会弹出试用窗口,返回1则可以正常使用,因此直接修改汇编代码mov al,1
,并保存补丁文件,替换原有的dll
保存补丁文件替换后,再次打开UE,即可直接使用。 附上从UE运行到弹出试用窗口,dll内接口调用顺序:
EntryPoint
DllInit
LanguageInitSoftwareKey
GetLicensePathSoftwareKey*3
InitializeSoftwareKey
OptionalHeader.AddressOfEntryPoint
IsActivatedSoftwareKey
SetApplicationVersionsSoftwareKey
SetCheckStatusCallbackSoftwareKey
SetDownloadUpdateCallbackSoftwareKey
SetStatusUpdateCallbackSoftwareKey
OptionalHeader.AddressOfEntryPoint*6
弹出编辑器主界面,未弹出提示输入key的窗口
OptionalHeader.AddressOfEntryPoint*9
IsInitializedSoftwareKey
IsActivatedSoftwareKey
IsInitializedSoftwareKey
IsActivatedSoftwareKey
GetRemainingDemoDaysSoftwareKey
弹出提示输入key的窗口
声明:本文仅做技术研究探讨,不做非法用途。
5 Comments latest
ty
9 months agowww
chen
9 months ago用的什么工具调试的?IDA还是X64DBG
BUBBLE Author Reply
9 months agochen:
用的什么工具调试的?IDA还是X64DBG
x64dbg,ollydbg,CE这些工具都可以
test
8 months ago12.30测试该版本修改后也不行
12
7 months ago111