Function at 0x43d791
Capabilities:
Connect to wmi namespace via wbemlocator
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
mov edx, 0x1a
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x43d798
call fcn.00489ac0
push dword [esp + 0x7c]
call fcn.004446d0
mov edx, dword [esp + 0x74]
lea ecx, [esp]
call fcn.00444000
push 0
push 0
call sub.ole32.dll_CoInitializeEx
push 0
push 0
push 0
push 2
push 2
push 0
push 0
push 0xffffffff
push 0
call sub.ole32.dll_CoInitializeSecurity
mov dword [esp + 4], eax
lea eax, [esp + 0x3c]
push eax
mov ebp, 0x57c7a4
push ebp
push 1
push 0
mov ebp, 0x57c794
push ebp
call sub.ole32.dll_CoCreateInstance
mov dword [esp + 4], eax
mov ebx, dword [esp + 4]
and ebx, ebx
je 0x43d8e4
push 0
mov eax, 0x5668ee
push eax
mov eax, 0x57a612
push eax
call fcn.004460a7
cmp dword [esp + 0x40], 0
je 0x43d85b
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43d86c
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43d87d
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43d88e
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43d8a3
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43d8b3
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43d8c3
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
mov eax, 0x562078
push eax
call fcn.00441414
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x40]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x48]
mov eax, dword [esp + 0x5c]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
mov dword [esp + 4], eax
mov ebx, dword [esp + 4]
and ebx, ebx
je 0x43d9e4
push 0
mov eax, 0x5786c2
push eax
mov eax, 0x57a612
push eax
call fcn.004460a7
cmp dword [esp + 0x40], 0
je 0x43d95b
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43d96c
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43d97d
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43d98e
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43d9a3
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43d9b3
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43d9c3
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
lea eax, [esp + 0x44]
push eax
mov ebp, 0x57c7b4
push ebp
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax]
mov dword [esp + 4], eax
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x5c]
call sub.ole32.dll_CoSetProxyBlanket
mov dword [esp + 4], eax
mov ebx, dword [esp + 4]
and ebx, ebx
je 0x43dae8
push 0
mov eax, 0x579140
push eax
mov eax, 0x57a612
push eax
call fcn.004460a7
cmp dword [esp + 0x40], 0
je 0x43da5f
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43da70
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43da81
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43da92
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43daa7
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43dab7
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43dac7
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x60]
call sub.ole32.dll_CoSetProxyBlanket
mov dword [esp + 4], eax
mov ebx, dword [esp + 4]
and ebx, ebx
je 0x43dbd4
push 0
mov eax, 0x579140
push eax
mov eax, 0x57a612
push eax
call fcn.004460a7
cmp dword [esp + 0x40], 0
je 0x43db4b
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43db5c
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43db6d
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43db7e
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43db93
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43dba3
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43dbb3
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
mov eax, dword [esp + 0x44]
push eax
mov eax, dword [eax]
call dword [eax + 8]
mov eax, 0x5613cc
push eax
push dword [esp + 4]
call fcn.00487500
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
inc eax
lea edx, [esp + 0x60]
push edx
push 0x57c704
push 8
push eax
push 4
call fcn.0047555f
mov dword [esp + 0x10], 0
jmp 0x43dc1a
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x10]
jl 0x43dc81
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
mov eax, 0x5613cc
push eax
mov ebx, dword [esp + 0x24]
inc ebx
push ebx
push dword [esp + 0x18]
call fcn.00487590
call fcn.004446b2
add dword [esp], edx
call fcn.00487790
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x64]
shl ebx, 2
lea eax, [ebp + ebx]
push eax
call fcn.004899c0
inc dword [esp + 0x10]
jno 0x43dc1a
mov eax, 0x567df4
push eax
call fcn.00441414
mov dword [esp + 0x30], eax
mov ebp, dword [esp + 0x60]
push dword [ebp]
call fcn.00441414
mov dword [esp + 0x34], eax
lea eax, [esp + 0x48]
push eax
push 0
push 0x30
push dword [esp + 0x40]
push dword [esp + 0x40]
mov eax, dword [esp + 0x54]
push eax
mov eax, dword [eax]
call dword [eax + 0x50]
mov dword [esp + 4], eax
mov ebx, dword [esp + 4]
and ebx, ebx
je 0x43dd81
push 0
mov eax, 0x57bf50
push eax
mov eax, 0x57a612
push eax
call fcn.004460a7
cmp dword [esp + 0x40], 0
je 0x43dcf8
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43dd09
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43dd1a
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43dd2b
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43dd40
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43dd50
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43dd60
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
mov dword [esp + 4], eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x50]
push eax
push 1
push 0xffffffff
mov eax, dword [esp + 0x58]
push eax
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [esp + 4], eax
mov dword [esp + 0x10], 1
jmp 0x43ddbb
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x10]
jl 0x43e186
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x60]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00441414
mov dword [esp + 0x38], eax
push 0
push 0
lea eax, [esp + 0x58]
push eax
push 0
push dword [esp + 0x48]
mov eax, dword [esp + 0x60]
push eax
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [esp + 4], eax
lea ebp, [esp + 0x50]
movsx ebx, word [ebp]
push ebx
mov ebx, 0x2008
cmp ebx, dword [esp]
jne 0x43def1
mov edx, 0x560098
lea ecx, [esp + 0x20]
call fcn.00444008
lea ebp, [esp + 0x54]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayGetElemsize
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x20]
lea ebp, [esp + 0x5c]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayGetLBound
mov dword [esp + 0x28], 0
jmp 0x43de5b
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x43deba
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x2c]
push eax
lea ebp, [esp + 0x5c]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayPutElement
mov edx, dword [esp + 0x20]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
mov edx, 0x575374
push edx
call fcn.00489960
push edx
call fcn.00489920
pop edx
push eax
push dword [esp + 0x34]
call fcn.0044146a
pop eax
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
inc dword [esp + 0x28]
jno 0x43de5b
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
push dword [esp + 0x28]
call fcn.00487100
push eax
push 3
push dword [esp + 0x30]
call fcn.00487210
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
jmp 0x43e0aa
mov ebx, 0x2003
cmp ebx, dword [esp]
jne 0x43dfdd
mov edx, 0x560098
lea ecx, [esp + 0x20]
call fcn.00444008
lea ebp, [esp + 0x54]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayGetElemsize
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x20]
lea ebp, [esp + 0x5c]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayGetLBound
mov dword [esp + 0x28], 0
jmp 0x43df3c
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x43dfa6
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x2c]
push eax
lea ebp, [esp + 0x5c]
push dword [ebp + 8]
call sub.OLEAUT32.dll_SafeArrayPutElement
mov edx, dword [esp + 0x20]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
mov edx, 0x575374
push edx
call fcn.00489960
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
mov eax, dword [esp + 0x38]
cdq
push edx
push eax
call fcn.004872f0
pop eax
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
inc dword [esp + 0x28]
jno 0x43df3c
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
push dword [esp + 0x28]
call fcn.00487100
push eax
push 3
push dword [esp + 0x30]
call fcn.00487210
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
jmp 0x43e0aa
mov ebx, 0xb
cmp ebx, dword [esp]
jne 0x43e023
lea ebp, [esp + 0x54]
movsx ebx, word [ebp + 8]
and ebx, ebx
jne 0x43e003
mov edx, 0x56d5fe
lea ecx, [esp + 0x20]
call fcn.00444008
jmp 0x43e01e
lea ebp, [esp + 0x54]
movsx ebx, word [ebp + 8]
cmp ebx, 0xffffffff
jne 0x43e01e
mov edx, 0x576f2e
lea ecx, [esp + 0x20]
call fcn.00444008
jmp 0x43e0aa
mov ebx, 8
cmp ebx, dword [esp]
jne 0x43e04d
push edx
call fcn.00489920
pop edx
push eax
lea ebp, [esp + 0x58]
push dword [ebp + 8]
call fcn.0044146a
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
jmp 0x43e0aa
mov ebx, 3
cmp ebx, dword [esp]
jne 0x43e082
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489920
pop edx
push eax
lea ebp, [esp + 0x5c]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.004872f0
lea eax, [esp + 0x24]
push eax
call fcn.004899c0
jmp 0x43e0aa
mov ebx, 1
cmp ebx, dword [esp]
jne 0x43e09c
mov edx, 0x56966e
lea ecx, [esp + 0x20]
call fcn.00444008
jmp 0x43e0aa
mov edx, 0x560098
lea ecx, [esp + 0x20]
call fcn.00444008
pop eax
mov ebx, dword [esp + 0x14]
and ebx, ebx
je 0x43e164
push dword [esp + 8]
mov edx, 0x560098
pop ecx
call fcn.00444660
jne 0x43e0ef
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
mov edx, 0x5775b4
push edx
call fcn.00489960
lea eax, [esp + 0xc]
push eax
call fcn.004899c0
cmp dword [esp + 0x78], 0
je 0x43e13e
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x64]
shl ebx, 2
mov edx, dword [ebp + ebx]
push edx
call fcn.00489960
mov edx, 0x577790
push edx
call fcn.00489960
mov edx, dword [esp + 0x20]
push edx
call fcn.00489960
lea eax, [esp + 0xc]
push eax
call fcn.004899c0
jmp 0x43e164
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
mov edx, dword [esp + 0x20]
push edx
call fcn.00489960
lea eax, [esp + 0xc]
push eax
call fcn.004899c0
cmp dword [esp + 0x38], 0
je 0x43e17c
push dword [esp + 0x38]
call fcn.00488760
mov dword [esp + 0x38], 0
inc dword [esp + 0x10]
jno 0x43ddbb
mov ebx, dword [esp + 0x14]
and ebx, ebx
jne 0x43dd8f
cmp dword [esp + 0x40], 0
je 0x43e1a3
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x3c], 0
je 0x43e1b4
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x48], 0
je 0x43e1c5
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [eax]
call dword [eax + 8]
cmp dword [esp + 0x4c], 0
je 0x43e1d6
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [eax]
call dword [eax + 8]
call sub.ole32.dll_CoUninitialize
cmp dword [esp + 0x2c], 0
je 0x43e1eb
push dword [esp + 0x2c]
call fcn.00488760
cmp dword [esp + 0x30], 0
je 0x43e1fb
push dword [esp + 0x30]
call fcn.00488760
cmp dword [esp + 0x34], 0
je 0x43e20b
push dword [esp + 0x34]
call fcn.00488760
mov edx, dword [esp + 8]
push edx
call fcn.00489920
pop edx
push eax
push edx
call fcn.00489960
pop eax
push eax
call fcn.004446a0
pop edx
add eax, edx
jmp 0x43e233
push dword [esp + 0x1c]
call fcn.00489b20
push dword [esp + 8]
call fcn.00489b20
push dword [esp]
call fcn.00489b20
push eax
push dword [esp + 0x64]
call fcn.0047571a
pop eax
add esp, 0x68
pop ebx
pop ebp
ret 8