You see this with some apps (I think ReVanced is a popular example?) and games occasionally, and I’ve never been clear on how they do it.
You see this with some apps (I think ReVanced is a popular example?) and games occasionally, and I’ve never been clear on how they do it.
Software is just a file, you can make a patch for any file.
You compare the new version to the old version to get a patch file (i.e. a representation of just what changed), then you use that information to change the old file to the new file.
Edit: I realize now you’re talking more about unofficial patches. Decompilers, debuggers, maybe replacing dynamically linked functions, and a lot of patience.