i think this is the code i want to use - no FreeLibrary call until exit
now, to devise a test to see if there's a leak in the event they don't clean-up :redface:
INVOKE GetModuleHandleA,offset __szKernel32
.if !eax
INVOKE LoadLibraryA,offset __szKernel32
mov __hKernel32Free,eax
.endif
.if eax
;get proc addresses, here
.else
dec eax
;set proc address pointers to -1, signifying initialized, unsupported
.endif