Personally I use this to get the right drivers:
https://www.glenn.delahoy.com/snappy-driver-installer-origin/
But for those that aren't expert I don't suggest to touch most things and just use it to update the drivers related to their phone.
JSYK, the program you're using is based on Snappy Driver Installer, whose homepage is
Snappy Driver Installer. SDI is the "OG" that alot of driver updaters/driver packs are based on. As soon as I saw the screenshots, I knew it looked eerily familiar. I've been using SDI for years to keep my drivers updated, but not exclusively. In order of preference, I will use manufacturer/OEM drivers, then SDI, then Windows Update for anything that's missed.
I've generated profiles for 3 devices. No issues generating the profiles, and again, from Linux. I don't feel that there is a need to duplicate my efforts in Windows.
However, I did notice that the IMEI field comes up empty during profile generation, for 2 of the 3 devices. No error, just an empty value. On the legacy phone running stock Marshmallow, the IMEI is shown correctly. On the newer, already mentioned devices, the value is empty but the profiles generate fine. They are running Android 13, which is much more locked down and restricts access to a lot of things, I think this is why.
I checked all 3 xml files, there are no references to IMEI anywhere, not even on the one where it was detected. So this leads me to believe that the profile itself doesn't need/use it, even though your script tries to check the value. Which makes me ask, what is the purpose of querying it?
The newer devices both have active cellular service plans, and all mobile carriers worldwide check this, so it's not an issue of something being wrong with the IMEIs.
The device serial #s are correctly detected on all 3, and are present in the profile xml files.