Paradox Launcher v2 (WiX Burn bootstrapper) fails VC_REDIST_X64 payload verification with SHA-1/SHA-512 length mismatch — Victoria 3 (appid 529340)
Issue transferred from https://github.com/ValveSoftware/Proton/issues/10075.
@EFinish posted on 2026-08-18T16:54:09:
Not yet filed / linked
Actually more accurately: the game/launcher does not run at all — it fails during the Paradox Launcher v2 prerequisite install step before the game can start.
Setup Failed — 0x80091007 - Call failed.launcher-installer.log inside the prefix)[01F8:0294]i338: Acquiring package: VC_REDIST_X64, payload: VC_REDIST_X64, download from: https://download.visualstudio.microsoft.com/download/pr/1754ea58-11a6-44ab-a262-696e194ce543/3642E3F95D50CC193E4B5A0B0FFBF7FE2C08801517758B4C8AEB7105A091208A/VC_redist.x64.exe
[0248:0290]e000: Error 0x80091007: Hash mismatch for path: C:\ProgramData\\Package Cache\\.unverified\\VC_REDIST_X64,
expected: 84C61FADF8CD38016FB7632969B3ACE9E54B763A
actual: 5935B69F5138AC3FBC33813C74DA853269BA079F910936AEFA95E230C6092B92F6225BFFB594E5DD35FF29BF260E4B35F91ADEDE90FDF5F062030D8666FD0104
[0248:0290]e000: Error 0x80091007: Failed to verify hash of payload: VC_REDIST_X64
Note the digest lengths: expected is 40 hex characters (20 bytes → consistent with SHA-1), while actual is 128 hex characters (64 bytes → consistent with SHA-512). This isn't a corrupted-download or stale-cache scenario (the "actual" value would still be a same-length SHA-1 digest, just a different value, if the payload itself had changed) — the bootstrapper appears to be hashing the downloaded payload with a different algorithm than the one the manifest's expected hash was computed with. This points to an algorithm-selection bug in Wine's bcrypt/CNG hashing implementation as invoked by this WiX Burn bootstrapper, rather than a bad download.
compatdata/529340 and let Steam rebuild the prefix from scratch — same failure.protontricks 529340 vcrun2022 (bypassing the bootstrapper's own install path entirely) — the bootstrapper still re-downloads and re-verifies VC_REDIST_X64 on its own and fails at the same hash-verification step regardless, since it doesn't check pre-existing installs before re-verifying its bundled payload.2026.9 under current Proton/Wine.Confirmed this is not a corrupted download — the bootstrapper's VC_REDIST_X64 hash check fails identically on a completely fresh prefix, on both Proton Experimental and GE-Proton11-5, every time. Pre-installing the VC++ runtime into the prefix via protontricks 529340 vcrun2022 doesn't help either, since the bootstrapper doesn't check for an existing runtime — it unconditionally re-downloads and re-verifies its own bundled VC_REDIST_X64 payload and fails at that verification step regardless.
The actual thing you need (Paradox_Launcher.msi) is bundled inside launcher-installer-windows_2026.9.exe as a second, separate CAB container appended after the UX container — it never touches the broken VC_REDIST verification path. You can pull it out and install it directly with msiexec, skipping the whole bootstrapper:
# 1. Find the second embedded CAB (the UX container's CAB is the first "MSCF" hit; the payload container is the second)
python3 -c "
import re
data = open('launcher-installer-windows_2026.9.exe','rb').read()
print([m.start() for m in re.finditer(b'MSCF', data)])
"
# -> e.g. [1034752, 1416936]
# 2. Carve out everything from the second offset to EOF
python3 -c "
with open('launcher-installer-windows_2026.9.exe','rb') as f:
f.seek(1416936) # use your second offset
data = f.read()
open('payload.cab','wb').write(data)
"
# 3. Extract it (single file inside, named 'a0' or similar — it's the MSI)
7z x payload.cab
file a0 # confirms: "Composite Document File V2 ... MSI Installer ... Paradox Launcher v2"
mv a0 Paradox_Launcher.msi
# 4. Copy into the prefix and install directly via msiexec (bypasses the bootstrapper entirely)
cp Paradox_Launcher.msi ~/.local/share/Steam/steamapps/compatdata/<APPID>/pfx/drive_c/
protontricks-launch --appid <APPID> --no-term \
~/.local/share/Steam/steamapps/compatdata/<APPID>/pfx/drive_c/windows/system32/msiexec.exe \
/i "C:\\Paradox_Launcher.msi" /qn /l* "C:\\install.log"
Checked install.log afterward — Action ended ...: INSTALL. Return value 1. (MSI success), and Paradox Launcher.exe plus its full Electron/CEF runtime landed correctly under Program Files\Paradox Interactive\launcher\launcher-v2.2026.9\. Launching the game from Steam afterward went straight into the actual launcher and then into shader compilation — no more prerequisite dialog. Also confirms the real root cause is isolated entirely to the bootstrapper's own VC_REDIST_X64 payload verification, not anything wrong with the launcher MSI itself or with Wine's ability to run it.
One caveat: this workaround lives inside the Proton prefix, not in Steam's own install tracking, so verifying game files, deleting compatdata/<APPID>, or switching Proton versions will require repeating it until the actual hash-verification bug in the bootstrapper gets fixed.
ge-proton11-5x2 2026-08proton experimentalx2 2026-08proton 9.0-4x1 2025-090x80091007x1 2026-08
Compatibility Report
System Information
I confirm:
steam-529340.log
Symptoms
The game doesn't run with mods and the main menu inside the game using hotfix lags, sometimes loading saves would not get anywhere at all. Steam Play works better with the one exception that i have to terminate the game in the system monitor to stop it, proton 9.0-4 does not even display the paradox launcher.
Reproduction
Start a new game with mod in your playset and wait for it to get past initializing game.
Save game issue: Start a new game, play for a bit, exit out and load the save and wait for it to get past initializing game.
Game closing issue: Exit out of the game and see if the game closes automatically.
On hotfix: start up the game and watch the main menu animation.
on proton 9.0-4: Start the game.