Rémi Bernon (@rbernon) commented about dlls/windows.system.profile.systemmanufacturers/main.c:
+ for (; ptr - buf < buflen; ptr++) if (!*ptr) break; + } + return NULL; +} + +static WCHAR *get_bios_system_serial( const char *buf, UINT len ) +{ + const struct smbios_system *system; + const struct smbios_header *hdr; + UINT offset; + + if (!(hdr = find_smbios_entry( SMBIOS_TYPE_SYSTEM, buf, len ))) return NULL; + system = (const struct smbios_system *)hdr; + offset = (const char *)system - buf + system->hdr.length; + + return get_smbios_string( system->serial, buf, offset, len ); I'm quite sure we don't want to duplicate all this code here again, and instead build this on top of wbemprox. WinRT is mostly just a new restructured interface on top of existing modules.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/1588#note_17878