The issue is that sdb_get() includes the carriage return character when reading SDB file and a lookup fails to get the right symbol, in fact, by printing the returned value I get:
HEX 49 6E 69 74 43 6F 6D 6D 6F 6E 43 6F 6E 74 72 6F 6C 73 0D InitCommonControls.
I have noticed a weird issue in radare2, basically all ordinal imports (at least in PE files) have its address equals to 0:
instead if I rename comctl32.sdb in order to get the plain "ordinal named" import I get the correct address:
The issue is that sdb_get() includes the carriage return character when reading SDB file and a lookup fails to get the right symbol, in fact, by printing the returned value I get:
Just for info, I have tested the result in https://github.com/radare/radare2/blob/master/libr/bin/format/pe/pe.c#L210 file by adding some extra code: