Function at 0x43fb48
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
push ebp
push esi
push edi
push str.OpenSetupAndConfigLib_n
mov esi, 0x519518
push esi
call fcn.00427473
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
pop ecx
pop ecx
xor eax, eax
push 0x20
pop ebp
cmp dword [0x52996c], eax
je 0x43fbad
cmp dword [0x529970], eax
je 0x43fbad
cmp dword [0x529974], eax
je 0x43fbba
cmp dword [0x529978], eax
jne 0x44047e
call fcn.004280f0
test eax, eax
jne 0x44047e
call fcn.00428118
test eax, eax
jne 0x44047e
cmp dword [0x529974], 0
jne 0x43fd0b
push 0x4d6f18
call ebx
mov dword [0x529974], eax
test eax, eax
jne 0x43fbdc
push str.Unable_to_load_kernel32.dll_n
push esi
call fcn.00426fe1
pop ecx
pop ecx
jmp 0x43fd0b
push str.GetLongPathNameA
push eax
call edi
mov dword [0x5298bc], eax
test eax, eax
jne 0x43fbf4
push str.Unable_to_load_GetLongPathName_from_ghKernelLib_n
jmp 0x43fbf9
push str.Successfully_loaded_GetLongPathName_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.GetDiskFreeSpaceExA
push dword [0x529974]
call edi
mov dword [0x529968], eax
test eax, eax
jne 0x43fc20
push str.Unable_to_load_GetDiskFreeSpaceEx_from_ghKernelLib_n
jmp 0x43fc25
push str.Successfully_loaded_GetDiskFreeSpaceEx_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push 0x4de9bc
push dword [0x529974]
call edi
mov dword [0x5298cc], eax
test eax, eax
jne 0x43fc4c
push str.Unable_to_load_CreateToolhelp32Snapshot_from_ghKernelLib_n
jmp 0x43fc51
push str.Successfully_loadedCreateToolhelp32Snapshot_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push 0x4de9ac
push dword [0x529974]
call edi
mov dword [0x5298d0], eax
test eax, eax
jne 0x43fc78
push str.Unable_to_load_Process32First_from_ghKernelLib_n
jmp 0x43fc7d
push str.Successfully_loadedProcess32First_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push 0x4de99c
push dword [0x529974]
call edi
mov dword [0x5298e4], eax
test eax, eax
jne 0x43fca4
push str.Unable_to_load_Process32Next_from_ghKernelLib_n
jmp 0x43fca9
push str.Successfully_loadedProcess32Next_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.Wow64EnableWow64FsRedirection
push dword [0x529974]
call edi
mov dword [0x529918], eax
test eax, eax
jne 0x43fcd0
push str.Unable_to_load_Wow64EnableWow64FsRedirection_from_ghKernelLib_n
jmp 0x43fcd5
push str.Successfully_loadedWow64EnableWow64FsRedirection_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.GetSystemWow64DirectoryA
push dword [0x529974]
call edi
mov dword [0x529948], eax
test eax, eax
jne 0x43fcfc
push str.Unable_to_load_GetSystemWow64Directory_from_ghKernelLib_n
jmp 0x43fd01
push str.Successfully_loaded_GetSystemWow64Directory_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
cmp dword [0x529978], 0
jne 0x43fd75
call fcn.00427de3
test eax, eax
je 0x43fd26
call fcn.00427e01
test eax, eax
je 0x43fd2f
call fcn.00428118
test eax, eax
je 0x43fd75
push str.newdev.dll
call ebx
mov dword [0x529978], eax
test eax, eax
jne 0x43fd4e
push str.Unable_to_load_newdev.dll_n
push esi
call fcn.00426fe1
pop ecx
pop ecx
jmp 0x43fd75
push str.UpdateDriverForPlugAndPlayDevicesA
push eax
call edi
mov dword [0x5298e8], eax
test eax, eax
jne 0x43fd66
push str.Unable_to_load_UpdateDriverForPlugAndPlayDevices_from_ghNewdevLib_n
jmp 0x43fd6b
push str.Successfully_loaded_UpdateDriverForPlugAndPlayDevices_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
cmp dword [0x52996c], 0
jne 0x44028b
push str.setupapi.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x52996c], eax
test eax, eax
jne 0x43fda8
push str.Unable_to_load_setupapi.dll_n
push esi
call fcn.00426fe1
pop ecx
pop ecx
jmp 0x44028b
push str.SetupDiGetDeviceInstallParamsA
push eax
call edi
mov dword [0x529910], eax
test eax, eax
jne 0x43fdc0
push str.Unable_to_load_SetupDiGetDeviceInstallParams_from_ghSetupLib_n
jmp 0x43fdc5
push str.Successfully_loaded_SetupDiGetDeviceInstallParams_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetDeviceRegistryPropertyA
push dword [0x52996c]
call edi
mov dword [0x529950], eax
test eax, eax
jne 0x43fdec
push str.Unable_to_load_SetupDiGetDeviceRegistryProperty_from_ghSetupLib_n
jmp 0x43fdf1
push str.Successfully_loaded_SetupDiGetDeviceRegistryProperty_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetSelectedDriverA
push dword [0x52996c]
call edi
mov dword [0x529920], eax
test eax, eax
jne 0x43fe18
push str.Unable_to_load_SetupDiGetSelectedDriver_from_ghSetupLib_n
jmp 0x43fe1d
push str.Successfully_loaded_SetupDiGetSelectedDriver_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupCopyOEMInfA
push dword [0x52996c]
call edi
mov dword [0x529938], eax
test eax, eax
jne 0x43fe44
push str.Unable_to_load_SetupCopyOEMInf_from_ghSetupLib_n
jmp 0x43fe49
push str.Successfully_loaded_SetupCopyOEMInf_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupFreeSourceListA
push dword [0x52996c]
call edi
mov dword [0x529964], eax
test eax, eax
jne 0x43fe70
push str.Unable_to_load_SetupFreeSourceList_from_ghSetupLib_n
jmp 0x43fe75
push str.Successfully_loaded_SetupFreeSourceList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupQuerySourceListA
push dword [0x52996c]
call edi
mov dword [0x52995c], eax
test eax, eax
jne 0x43fe9c
push str.Unable_to_load_SetupQuerySourceList_from_ghSetupLib_n
jmp 0x43fea1
push str.Successfully_loaded_SetupQuerySourceList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
mov ebx, str.SetupDiOpenClassRegKeyExA
push ebx
push dword [0x52996c]
call edi
mov dword [0x529960], eax
test eax, eax
jne 0x43fec9
push str.Unable_to_load_SetupDiOpenClassRegKeyEx_from_ghSetupLib_n
jmp 0x43fece
push str.Successfully_loaded_SetupDiOpenClassRegKeyEx_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetClassDevsA
push dword [0x52996c]
call edi
mov dword [0x5298c4], eax
test eax, eax
jne 0x43fef5
push str.Unable_to_load_SetupDiGetClassDevs_from_ghSetupLib_n
jmp 0x43fefa
push str.Successfully_loaded_SetupDiGetClassDevs_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetDeviceInterfaceDetailA
push dword [0x52996c]
call edi
mov dword [0x529958], eax
test eax, eax
jne 0x43ff21
push str.Unable_to_load_SetupDiGetDeviceInterfaceDetail_from_ghSetupLib_n
jmp 0x43ff26
push str.Successfully_loaded_SetupDiGetDeviceInterfaceDetail_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push ebx
push dword [0x52996c]
call edi
mov dword [0x529960], eax
test eax, eax
jne 0x43ff49
push str.Unable_to_load_SetupDiOpenClassRegKeyEx_from_ghSetupLib_n
jmp 0x43ff4e
push str.Successfully_loaded_SetupDiOpenClassRegKeyEx_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiClassNameFromGuidA
push dword [0x52996c]
call edi
mov dword [0x529944], eax
test eax, eax
jne 0x43ff75
push str.Unable_to_load_SetupDiClassNameFromGuid_from_ghSetupLib_n
jmp 0x43ff7a
push str.Successfully_loaded_SetupDiClassNameFromGuid_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetDeviceInstanceIdA
push dword [0x52996c]
call edi
mov dword [0x5298c8], eax
test eax, eax
jne 0x43ffa1
push str.Unable_to_load_SetupDiGetDeviceInstanceId_from_ghSetupLib_n
jmp 0x43ffa6
push str.Successfully_loaded_SetupDiGetDeviceInstanceId_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiGetClassInstallParamsA
push dword [0x52996c]
call edi
mov dword [0x5298fc], eax
test eax, eax
jne 0x43ffcd
push str.Unable_to_load_SetupDiGetClassInstallParams_from_ghSetupLib_n
jmp 0x43ffd2
push str.Successfully_loaded_SetupDiGetClassInstallParams_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiInstallClassExA
push dword [0x52996c]
call edi
mov dword [0x52990c], eax
test eax, eax
jne 0x43fff9
push str.Unable_to_load_SetupDiInstallClassEx_from_ghSetupLib_n
jmp 0x43fffe
push str.Successfully_loaded_SetupDiInstallClassEx_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupAddToSourceListA
push dword [0x52996c]
call edi
mov dword [0x5298ec], eax
test eax, eax
jne 0x440025
push str.Unable_to_load_SetupAddToSourceList_from_ghSetupLib_n
jmp 0x44002a
push str.Successfully_loaded_SetupAddToSourceList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push 0x4e0d64
push dword [0x52996c]
call edi
mov dword [0x529930], eax
test eax, eax
jne 0x440051
push str.Unable_to_load_SetupDiOpenDeviceInfo_from_ghSetupLib_n
jmp 0x440056
push str.Successfully_loaded_SetupDiOpenDeviceInfo_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
call fcn.004280af
test eax, eax
jne 0x4400a7
call fcn.00427e01
test eax, eax
jne 0x4400a7
call fcn.00427e1f
test eax, eax
jne 0x4400a7
push str.SetupUninstallOEMInfA
push dword [0x52996c]
call edi
mov dword [0x529900], eax
test eax, eax
jne 0x440098
push str.Unable_to_load_SetupUninstallOEMInf_from_ghSetupLib_n
jmp 0x44009d
push str.Successfully_loaded_SetupUninstallOEMInf_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CMP_WaitNoPendingInstallEvents
push dword [0x52996c]
call edi
mov dword [0x5298c0], eax
test eax, eax
jne 0x4400c4
push str.Unable_to_load_CMP_WaitNoPendingInstallEvents_from_ghSetupLib_n
jmp 0x4400c9
push str.Successfully_loadedCMP_WaitNoPendingInstallEvents_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiEnumDeviceInterfaces
push dword [0x52996c]
call edi
mov dword [0x529934], eax
test eax, eax
jne 0x4400f0
push str.Unable_to_load_SetupDiEnumDeviceInterfaces_from_ghSetupLib_n
jmp 0x4400f5
push str.Successfully_loadedSetupDiEnumDeviceInterfaces_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiOpenDeviceInterfaceRegKey
push dword [0x52996c]
call edi
mov dword [0x5298d4], eax
test eax, eax
jne 0x44011c
push str.Unable_to_load_SetupDiOpenDeviceInterfaceRegKey_from_ghSetupLib_n
jmp 0x440121
push str.Successfully_loadedSetupDiOpenDeviceInterfaceRegKey_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiDestroyDeviceInfoList
push dword [0x52996c]
call edi
mov dword [0x52994c], eax
test eax, eax
jne 0x440148
push str.Unable_to_load_SetupDiDestroyDeviceInfoList_from_ghSetupLib_n
jmp 0x44014d
push str.Successfully_loadedSetupDiDestroyDeviceInfoList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiBuildClassInfoList
push dword [0x52996c]
call edi
mov dword [0x529940], eax
test eax, eax
jne 0x440174
push str.Unable_to_load_SetupDiBuildClassInfoList_from_ghSetupLib_n
jmp 0x440179
push str.Successfully_loadedSetupDiBuildClassInfoList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiEnumDeviceInfo
push dword [0x52996c]
call edi
mov dword [0x529908], eax
test eax, eax
jne 0x4401a0
push str.Unable_to_load_SetupDiEnumDeviceInfo_from_ghSetupLib_n
jmp 0x4401a5
push str.Successfully_loadedSetupDiEnumDeviceInfo_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiDestroyDriverInfoList
push dword [0x52996c]
call edi
mov dword [0x5298f8], eax
test eax, eax
jne 0x4401cc
push str.Unable_to_load_SetupDiDestroyDriverInfoList_from_ghSetupLib_n
jmp 0x4401d1
push str.Successfully_loadedSetupDiDestroyDriverInfoList_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupOpenFileQueue
push dword [0x52996c]
call edi
mov dword [0x5298e0], eax
test eax, eax
jne 0x4401f8
push str.Unable_to_load_SetupOpenFileQueue_from_ghSetupLib_n
jmp 0x4401fd
push str.Successfully_loadedSetupOpenFileQueue_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupCloseFileQueue
push dword [0x52996c]
call edi
mov dword [0x5298d8], eax
test eax, eax
jne 0x440224
push str.Unable_to_load_SetupCloseFileQueue_from_ghSetupLib_n
jmp 0x440229
push str.Successfully_loadedSetupCloseFileQueue_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiOpenClassRegKey
push dword [0x52996c]
call edi
mov dword [0x52992c], eax
test eax, eax
jne 0x440250
push str.Unable_to_load_SetupDiOpenClassRegKey_from_ghSetupLib_n
jmp 0x440255
push str.Successfully_loadedSetupDiOpenClassRegKey_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.SetupDiRemoveDevice
push dword [0x52996c]
call edi
mov dword [0x529954], eax
test eax, eax
jne 0x44027c
push str.Unable_to_load_SetupDiRemoveDevice_from_ghSetupLib_n
jmp 0x440281
push str.Successfully_loadedSetupDiRemoveDevice_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
cmp dword [0x529970], 0
jne 0x440471
push str.cfgmgr32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x529970], eax
test eax, eax
jne 0x4402be
push str.Unable_to_load_cfgmgr32.dll_n
push esi
call fcn.00426fe1
pop ecx
pop ecx
jmp 0x440471
push str.CM_Get_Device_IDA
push eax
call edi
mov dword [0x5298b8], eax
test eax, eax
jne 0x4402d6
push str.Unable_to_load_CM_Get_Device_ID_from_ghConfigLib_n
jmp 0x4402db
push str.Successfully_loaded_CM_Get_Device_ID_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Get_Device_ID_Size
push dword [0x529970]
call edi
mov dword [0x52993c], eax
test eax, eax
jne 0x440302
push str.Unable_to_load_CM_Get_Device_ID_Size_from_ghConfigLib_n
jmp 0x440307
push str.Successfully_loadedCM_Get_Device_ID_Size_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Get_Parent
push dword [0x529970]
call edi
mov dword [0x5298f4], eax
test eax, eax
jne 0x44032e
push str.Unable_to_load_CM_Get_Parent_from_ghConfigLib_n
jmp 0x440333
push str.Successfully_loadedCM_Get_Parent_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Get_Child
push dword [0x529970]
call edi
mov dword [0x529928], eax
test eax, eax
jne 0x44035a
push str.Unable_to_load_CM_Get_Child_from_ghConfigLib_n
jmp 0x44035f
push str.Successfully_loadedCM_Get_Child_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Get_Sibling
push dword [0x529970]
call edi
mov dword [0x52991c], eax
test eax, eax
jne 0x440386
push str.Unable_to_load_CM_Get_Sibling_from_ghConfigLib_n
jmp 0x44038b
push str.Successfully_loadedCM_Get_Sibling_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Get_DevNode_Status
push dword [0x529970]
call edi
mov dword [0x529914], eax
test eax, eax
jne 0x4403b2
push str.Unable_to_load_CM_Get_DevNode_Status_from_ghConfigLib_n
jmp 0x4403b7
push str.Successfully_loadedCM_Get_DevNode_Status_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Locate_DevNodeA
push dword [0x529970]
call edi
mov dword [0x5298f0], eax
test eax, eax
jne 0x4403de
push str.Unable_to_load_CM_Locate_DevNode_from_ghConfigLib_n
jmp 0x4403e3
push str.Successfully_loaded_CM_Locate_DevNode_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Reenumerate_DevNode_Ex
push dword [0x529970]
call edi
mov dword [0x5298dc], eax
test eax, eax
jne 0x44040a
push str.Unable_to_load_CM_Reenumerate_DevNode_Ex_from_ghConfigLib_n
jmp 0x44040f
push str.Successfully_loadedCM_Reenumerate_DevNode_Ex_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Reenumerate_DevNode
push dword [0x529970]
call edi
mov dword [0x529924], eax
test eax, eax
jne 0x440436
push str.Unable_to_load_CM_Reenumerate_DevNode_from_ghConfigLib_n
jmp 0x44043b
push str.Successfully_loadedCM_Reenumerate_DevNode_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.CM_Locate_DevNode_ExA
push dword [0x529970]
call edi
mov dword [0x529904], eax
test eax, eax
jne 0x440462
push str.Unable_to_load_CM_Locate_DevNode_Ex_from_ghConfigLib_n
jmp 0x440467
push str.Successfully_loaded_CM_Locate_DevNode_Ex_n
push ebp
push esi
call fcn.00402450
add esp, 0xc
push str.OpenSetupAndConfigLib_returns_n
push esi
call fcn.00427473
pop ecx
pop ecx
pop edi
pop esi
xor eax, eax
pop ebp
inc eax
pop ebx
ret