Function at 0x4298ba
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
push ebp
push esi
push edi
push str.OpenSetupAndConfigLib_n
mov esi, 0x4866f8
push esi
call fcn.0041a1b0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
pop ecx
pop ecx
xor eax, eax
cmp dword [0x496e78], eax
push 0x20
pop ebp
je 0x42991f
cmp dword [0x496e7c], eax
je 0x42991f
cmp dword [0x496e80], eax
je 0x42992c
cmp dword [0x496e84], eax
jne 0x42a1f0
call fcn.0041bf16
test eax, eax
jne 0x42a1f0
call fcn.0041bf3e
test eax, eax
jne 0x42a1f0
cmp dword [0x496e80], 0
jne 0x429a7d
push str.kernel32.dll
call ebx
test eax, eax
mov dword [0x496e80], eax
jne 0x42994e
push str.Unable_to_load_kernel32.dll_n
push esi
call fcn.00419d26
pop ecx
pop ecx
jmp 0x429a7d
push str.GetLongPathNameA
push eax
call edi
test eax, eax
mov dword [0x496dc8], eax
jne 0x429966
push str.Unable_to_load_GetLongPathName_from_ghKernelLib_n
jmp 0x42996b
push str.Successfully_loaded_GetLongPathName_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.GetDiskFreeSpaceExA
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496e74], eax
jne 0x429992
push str.Unable_to_load_GetDiskFreeSpaceEx_from_ghKernelLib_n
jmp 0x429997
push str.Successfully_loaded_GetDiskFreeSpaceEx_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CreateToolhelp32Snapshot
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496dd8], eax
jne 0x4299be
push str.Unable_to_load_CreateToolhelp32Snapshot_from_ghKernelLib_n
jmp 0x4299c3
push str.Successfully_loadedCreateToolhelp32Snapshot_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.Process32First
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496ddc], eax
jne 0x4299ea
push str.Unable_to_load_Process32First_from_ghKernelLib_n
jmp 0x4299ef
push str.Successfully_loadedProcess32First_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.Process32Next
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496df0], eax
jne 0x429a16
push str.Unable_to_load_Process32Next_from_ghKernelLib_n
jmp 0x429a1b
push str.Successfully_loadedProcess32Next_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.Wow64EnableWow64FsRedirection
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496e24], eax
jne 0x429a42
push str.Unable_to_load_Wow64EnableWow64FsRedirection_from_ghKernelLib_n
jmp 0x429a47
push str.Successfully_loadedWow64EnableWow64FsRedirection_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.GetSystemWow64DirectoryA
push dword [0x496e80]
call edi
test eax, eax
mov dword [0x496e54], eax
jne 0x429a6e
push str.Unable_to_load_GetSystemWow64Directory_from_ghKernelLib_n
jmp 0x429a73
push str.Successfully_loaded_GetSystemWow64Directory_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
cmp dword [0x496e84], 0
jne 0x429ae7
call fcn.0041bda6
test eax, eax
je 0x429a98
call fcn.0041bdc4
test eax, eax
je 0x429aa1
call fcn.0041bf3e
test eax, eax
je 0x429ae7
push str.newdev.dll
call ebx
test eax, eax
mov dword [0x496e84], eax
jne 0x429ac0
push str.Unable_to_load_newdev.dll_n
push esi
call fcn.00419d26
pop ecx
pop ecx
jmp 0x429ae7
push str.UpdateDriverForPlugAndPlayDevicesA
push eax
call edi
test eax, eax
mov dword [0x496df4], eax
jne 0x429ad8
push str.Unable_to_load_UpdateDriverForPlugAndPlayDevices_from_ghNewdevLib_n
jmp 0x429add
push str.Successfully_loaded_UpdateDriverForPlugAndPlayDevices_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
cmp dword [0x496e78], 0
jne 0x429ffd
push str.setupapi.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x496e78], eax
jne 0x429b1a
push str.Unable_to_load_setupapi.dll_n
push esi
call fcn.00419d26
pop ecx
pop ecx
jmp 0x429ffd
push str.SetupDiGetDeviceInstallParamsA
push eax
call edi
test eax, eax
mov dword [0x496e1c], eax
jne 0x429b32
push str.Unable_to_load_SetupDiGetDeviceInstallParams_from_ghSetupLib_n
jmp 0x429b37
push str.Successfully_loaded_SetupDiGetDeviceInstallParams_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetDeviceRegistryPropertyA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e5c], eax
jne 0x429b5e
push str.Unable_to_load_SetupDiGetDeviceRegistryProperty_from_ghSetupLib_n
jmp 0x429b63
push str.Successfully_loaded_SetupDiGetDeviceRegistryProperty_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetSelectedDriverA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e2c], eax
jne 0x429b8a
push str.Unable_to_load_SetupDiGetSelectedDriver_from_ghSetupLib_n
jmp 0x429b8f
push str.Successfully_loaded_SetupDiGetSelectedDriver_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupCopyOEMInfA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e44], eax
jne 0x429bb6
push str.Unable_to_load_SetupCopyOEMInf_from_ghSetupLib_n
jmp 0x429bbb
push str.Successfully_loaded_SetupCopyOEMInf_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupFreeSourceListA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e70], eax
jne 0x429be2
push str.Unable_to_load_SetupFreeSourceList_from_ghSetupLib_n
jmp 0x429be7
push str.Successfully_loaded_SetupFreeSourceList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupQuerySourceListA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e68], eax
jne 0x429c0e
push str.Unable_to_load_SetupQuerySourceList_from_ghSetupLib_n
jmp 0x429c13
push str.Successfully_loaded_SetupQuerySourceList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
mov ebx, str.SetupDiOpenClassRegKeyExA
push ebx
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e6c], eax
jne 0x429c3b
push str.Unable_to_load_SetupDiOpenClassRegKeyEx_from_ghSetupLib_n
jmp 0x429c40
push str.Successfully_loaded_SetupDiOpenClassRegKeyEx_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetClassDevsA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496dd0], eax
jne 0x429c67
push str.Unable_to_load_SetupDiGetClassDevs_from_ghSetupLib_n
jmp 0x429c6c
push str.Successfully_loaded_SetupDiGetClassDevs_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetDeviceInterfaceDetailA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e64], eax
jne 0x429c93
push str.Unable_to_load_SetupDiGetDeviceInterfaceDetail_from_ghSetupLib_n
jmp 0x429c98
push str.Successfully_loaded_SetupDiGetDeviceInterfaceDetail_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push ebx
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e6c], eax
jne 0x429cbb
push str.Unable_to_load_SetupDiOpenClassRegKeyEx_from_ghSetupLib_n
jmp 0x429cc0
push str.Successfully_loaded_SetupDiOpenClassRegKeyEx_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiClassNameFromGuidA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e50], eax
jne 0x429ce7
push str.Unable_to_load_SetupDiClassNameFromGuid_from_ghSetupLib_n
jmp 0x429cec
push str.Successfully_loaded_SetupDiClassNameFromGuid_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetDeviceInstanceIdA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496dd4], eax
jne 0x429d13
push str.Unable_to_load_SetupDiGetDeviceInstanceId_from_ghSetupLib_n
jmp 0x429d18
push str.Successfully_loaded_SetupDiGetDeviceInstanceId_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiGetClassInstallParamsA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e08], eax
jne 0x429d3f
push str.Unable_to_load_SetupDiGetClassInstallParams_from_ghSetupLib_n
jmp 0x429d44
push str.Successfully_loaded_SetupDiGetClassInstallParams_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiInstallClassExA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e18], eax
jne 0x429d6b
push str.Unable_to_load_SetupDiInstallClassEx_from_ghSetupLib_n
jmp 0x429d70
push str.Successfully_loaded_SetupDiInstallClassEx_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupAddToSourceListA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496df8], eax
jne 0x429d97
push str.Unable_to_load_SetupAddToSourceList_from_ghSetupLib_n
jmp 0x429d9c
push str.Successfully_loaded_SetupAddToSourceList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiOpenDeviceInfoA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e3c], eax
jne 0x429dc3
push str.Unable_to_load_SetupDiOpenDeviceInfo_from_ghSetupLib_n
jmp 0x429dc8
push str.Successfully_loaded_SetupDiOpenDeviceInfo_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
call fcn.0041bed5
test eax, eax
jne 0x429e19
call fcn.0041bdc4
test eax, eax
jne 0x429e19
call fcn.0041bde2
test eax, eax
jne 0x429e19
push str.SetupUninstallOEMInfA
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e0c], eax
jne 0x429e0a
push str.Unable_to_load_SetupUninstallOEMInf_from_ghSetupLib_n
jmp 0x429e0f
push str.Successfully_loaded_SetupUninstallOEMInf_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CMP_WaitNoPendingInstallEvents
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496dcc], eax
jne 0x429e36
push str.Unable_to_load_CMP_WaitNoPendingInstallEvents_from_ghSetupLib_n
jmp 0x429e3b
push str.Successfully_loadedCMP_WaitNoPendingInstallEvents_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiEnumDeviceInterfaces
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e40], eax
jne 0x429e62
push str.Unable_to_load_SetupDiEnumDeviceInterfaces_from_ghSetupLib_n
jmp 0x429e67
push str.Successfully_loadedSetupDiEnumDeviceInterfaces_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiOpenDeviceInterfaceRegKey
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496de0], eax
jne 0x429e8e
push str.Unable_to_load_SetupDiOpenDeviceInterfaceRegKey_from_ghSetupLib_n
jmp 0x429e93
push str.Successfully_loadedSetupDiOpenDeviceInterfaceRegKey_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiDestroyDeviceInfoList
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e58], eax
jne 0x429eba
push str.Unable_to_load_SetupDiDestroyDeviceInfoList_from_ghSetupLib_n
jmp 0x429ebf
push str.Successfully_loadedSetupDiDestroyDeviceInfoList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiBuildClassInfoList
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e4c], eax
jne 0x429ee6
push str.Unable_to_load_SetupDiBuildClassInfoList_from_ghSetupLib_n
jmp 0x429eeb
push str.Successfully_loadedSetupDiBuildClassInfoList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiEnumDeviceInfo
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e14], eax
jne 0x429f12
push str.Unable_to_load_SetupDiEnumDeviceInfo_from_ghSetupLib_n
jmp 0x429f17
push str.Successfully_loadedSetupDiEnumDeviceInfo_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiDestroyDriverInfoList
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e04], eax
jne 0x429f3e
push str.Unable_to_load_SetupDiDestroyDriverInfoList_from_ghSetupLib_n
jmp 0x429f43
push str.Successfully_loadedSetupDiDestroyDriverInfoList_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupOpenFileQueue
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496dec], eax
jne 0x429f6a
push str.Unable_to_load_SetupOpenFileQueue_from_ghSetupLib_n
jmp 0x429f6f
push str.Successfully_loadedSetupOpenFileQueue_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupCloseFileQueue
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496de4], eax
jne 0x429f96
push str.Unable_to_load_SetupCloseFileQueue_from_ghSetupLib_n
jmp 0x429f9b
push str.Successfully_loadedSetupCloseFileQueue_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiOpenClassRegKey
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e38], eax
jne 0x429fc2
push str.Unable_to_load_SetupDiOpenClassRegKey_from_ghSetupLib_n
jmp 0x429fc7
push str.Successfully_loadedSetupDiOpenClassRegKey_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.SetupDiRemoveDevice
push dword [0x496e78]
call edi
test eax, eax
mov dword [0x496e60], eax
jne 0x429fee
push str.Unable_to_load_SetupDiRemoveDevice_from_ghSetupLib_n
jmp 0x429ff3
push str.Successfully_loadedSetupDiRemoveDevice_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
cmp dword [0x496e7c], 0
jne 0x42a1e3
push str.cfgmgr32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x496e7c], eax
jne 0x42a030
push str.Unable_to_load_cfgmgr32.dll_n
push esi
call fcn.00419d26
pop ecx
pop ecx
jmp 0x42a1e3
push str.CM_Get_Device_IDA
push eax
call edi
test eax, eax
mov dword [0x496dc4], eax
jne 0x42a048
push str.Unable_to_load_CM_Get_Device_ID_from_ghConfigLib_n
jmp 0x42a04d
push str.Successfully_loaded_CM_Get_Device_ID_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Get_Device_ID_Size
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e48], eax
jne 0x42a074
push str.Unable_to_load_CM_Get_Device_ID_Size_from_ghConfigLib_n
jmp 0x42a079
push str.Successfully_loadedCM_Get_Device_ID_Size_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Get_Parent
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e00], eax
jne 0x42a0a0
push str.Unable_to_load_CM_Get_Parent_from_ghConfigLib_n
jmp 0x42a0a5
push str.Successfully_loadedCM_Get_Parent_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Get_Child
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e34], eax
jne 0x42a0cc
push str.Unable_to_load_CM_Get_Child_from_ghConfigLib_n
jmp 0x42a0d1
push str.Successfully_loadedCM_Get_Child_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Get_Sibling
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e28], eax
jne 0x42a0f8
push str.Unable_to_load_CM_Get_Sibling_from_ghConfigLib_n
jmp 0x42a0fd
push str.Successfully_loadedCM_Get_Sibling_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Get_DevNode_Status
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e20], eax
jne 0x42a124
push str.Unable_to_load_CM_Get_DevNode_Status_from_ghConfigLib_n
jmp 0x42a129
push str.Successfully_loadedCM_Get_DevNode_Status_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Locate_DevNodeA
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496dfc], eax
jne 0x42a150
push str.Unable_to_load_CM_Locate_DevNode_from_ghConfigLib_n
jmp 0x42a155
push str.Successfully_loaded_CM_Locate_DevNode_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Reenumerate_DevNode_Ex
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496de8], eax
jne 0x42a17c
push str.Unable_to_load_CM_Reenumerate_DevNode_Ex_from_ghConfigLib_n
jmp 0x42a181
push str.Successfully_loadedCM_Reenumerate_DevNode_Ex_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Reenumerate_DevNode
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e30], eax
jne 0x42a1a8
push str.Unable_to_load_CM_Reenumerate_DevNode_from_ghConfigLib_n
jmp 0x42a1ad
push str.Successfully_loadedCM_Reenumerate_DevNode_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.CM_Locate_DevNode_ExA
push dword [0x496e7c]
call edi
test eax, eax
mov dword [0x496e10], eax
jne 0x42a1d4
push str.Unable_to_load_CM_Locate_DevNode_Ex_from_ghConfigLib_n
jmp 0x42a1d9
push str.Successfully_loaded_CM_Locate_DevNode_Ex_n
push ebp
push esi
call fcn.00401000
add esp, 0xc
push str.OpenSetupAndConfigLib_returns_n
push esi
call fcn.0041a1b0
pop ecx
pop ecx
pop edi
pop esi
xor eax, eax
pop ebp
inc eax
pop ebx
ret