https://bugs.winehq.org/show_bug.cgi?id=51457
--- Comment #1 from François Gouget fgouget@codeweavers.com --- Notes from a 64-bit Windows 10 machine: * Windows has the same two regedit.exe files; plus some in WinSxS\amd64_*. So the WinePrefix layout seems ok (in particular c:\Windows\system32\regedit.exe does not exist). * GetSystemDirectoryA() returns "C:\windows\system32" regardless of the process bitness. Again this matches Wine. * Yet calling CreateFileA("C:\windows\system32\regedit.exe") in a 32-bit process on a 64-bit Windows succeeds while it fails in a 64-bit process. Again this matches Wine. * But that last point causes file_existsA() to return TRUE instead of FALSE, which is why VerFindFileA() does not return VFF_CURNEDEST.
So the bug seems to be in the file_existsA() / VerFindFileA() implementation which fails to take the WoW32 case into account.