All I can think of is that basic AES128 encryption is sufficient.
Modern CPUs are capable of decrypting it very quickly.
However, this security is still not enough.
This is because if the EAC can be broken
As long as the entire compiled C++ lib is still running in stable memory, it is still possible for a tool to capture the password.
Whether or not the password is protected in some way, and protecting that password with other passwords is not necessary because it is useless when it happens on a malicious computer.
The two paths I can imagine are that the decryption process must ensure that the instructions can dynamically migrate through memory and remain efficient, even though it’s just an AES cipher, I’ll give you the example of the cheat engine, which is something that everyone here who might be playing a single-player game would try to use to make it easier.
Dynamics can be made significantly more difficult to avoid being found by filtering, but there are still more advanced tools and greater overhead to catch, but there is a very large memory overhead, and the time consuming nature of a large memory overhead is difficult to minimize.
The other route is to try and work at the driver level and use Microsoft systems and firmware TPM’s etc. to try and create a quarantine area where only signed drivers are allowed to be modified, this ensures that the original files are decrypted and transferred to the application which ensures that the passwords are not leaked and probed.
However, there is still a price to pay. After all, the malicious system is in their own hands and they don’t need to break the difficult chain of trust, they can just create the signature of the malicious driver for a few tens of dollars at most.
While the content will still end up in the application, and most static addresses will probably still capture the content, it may be more crippled, which ensures that the asset won’t be too available to give up stealing.
There are still parts of the asset that can be stolen, such as the mesh as long as the shape, or texture is partially removed, but the loss is much less.
We also have to protect network packets, because once unpacked the content is clear text
If the tool is efficient enough, the packet may be disassembled and intercepted much faster.
You may be able to capture the password just by analyzing the structure