Hi Jinoh. Not sure why you requested review... should I remember stuff I wrote 2^4 years ago <g>?
comments mostly concerning last commit: - picking first ID instead of ID 1 doesn't look fully right, at least independently of context - from MS doc, [](https://learn.microsoft.com/en-us/windows/win32/sbscs/using-side-by-side-ass...), it seems file is valid iff only one of ID 1, 2 or 3 is present (and ID up to 16 are reserved) - this should at least be tested against bogus configuration - so I wonder (I don't pretend to have a definitive insight on this, but it could make sense) if instead of [ vanishing the ID 1 and blindly using first id ], we rather should a) either move up to the callers for the ID resource value, b) or check in callers if the candidate ID value meets the caller requirements