Function at 0x406a30
Capabilities:
Connect to wmi namespace via wbemlocator
Reference wmi statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x524ce0
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x56e00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov edi, eax
test edi, edi
jns 0x406af6
mov edx, str.Failed_to_initialize_COM_library._Error_code__0x
mov ecx, 0x5721e0
call fcn.00417d10
mov esi, eax
mov eax, 0x403630
test eax, eax
jne 0x406a9f
push 0xd3
push str.C:Program_Files__x86_Microsoft_Visual_Studio_14.0VCincludeostream
push str.invalid_null_pointer
call fcn.00490290
add esp, 0xc
test esi, esi
jne 0x406aa7
xor ecx, ecx
jmp 0x406aae
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
mov eax, dword [ecx + 0x14]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx + 0x14], eax
mov ecx, esi
push edi
call fcn.00412cd0
mov esi, eax
mov eax, fcn.00418570
test eax, eax
jne 0x406ae8
push 0xc6
push str.C:Program_Files__x86_Microsoft_Visual_Studio_14.0VCincludeostream
push str.invalid_null_pointer
call fcn.00490290
add esp, 0xc
push esi
call fcn.00418570
add esp, 4
jmp 0x406eb2
push 0
push 0
push 0
push 3
push 0
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov edi, eax
test edi, edi
jns 0x406ba0
mov edx, str.Failed_to_initialize_security._Error_code__0x
mov ecx, 0x5721e0
call fcn.00417d10
mov esi, eax
mov eax, 0x403630
test eax, eax
jne 0x406b49
push 0xd3
push str.C:Program_Files__x86_Microsoft_Visual_Studio_14.0VCincludeostream
push str.invalid_null_pointer
call fcn.00490290
add esp, 0xc
test esi, esi
jne 0x406b51
xor ecx, ecx
jmp 0x406b58
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
mov eax, dword [ecx + 0x14]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx + 0x14], eax
mov ecx, esi
push edi
call fcn.00412cd0
mov esi, eax
mov eax, fcn.00418570
test eax, eax
jne 0x406b92
push 0xc6
push str.C:Program_Files__x86_Microsoft_Visual_Studio_14.0VCincludeostream
push str.invalid_null_pointer
call fcn.00490290
add esp, 0xc
push esi
call fcn.00418570
add esp, 4
jmp 0x406eac
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0
push eax
push 0x52ec38
push 1
push 0
push 0x52ed08
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x406c1e
push eax
push ecx
mov edx, str.Failed_to_create_IWbemLocator_object.
mov ecx, 0x5721e0
call fcn.00417d10
mov edx, str._Err_code__0x
mov ecx, eax
call fcn.00417d10
mov ecx, eax
call fcn.00412e60
mov ecx, eax
call fcn.00412cd0
mov esi, eax
mov eax, fcn.00418570
test eax, eax
jne 0x406c10
push 0xc6
push str.C:Program_Files__x86_Microsoft_Visual_Studio_14.0VCincludeostream
push str.invalid_null_pointer
call fcn.00490290
add esp, 0xc
push esi
call fcn.00418570
add esp, 4
jmp 0x406eac
push ecx
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x34], 0
call fcn.004056a0
mov dword [ebp - 4], 0
mov eax, dword [eax]
test eax, eax
je 0x406c3f
mov edx, dword [eax]
jmp 0x406c41
xor edx, edx
mov eax, dword [ebp - 0x38]
lea esi, [ebp - 0x34]
push esi
push 0
push 0
mov ecx, dword [eax]
push 0
push 0
push 0
push 0
push edx
push eax
call dword [ecx + 0xc]
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.00405750
push ecx
test esi, esi
jns 0x406c9f
push esi
push ecx
mov edx, str.Could_not_connect._Error_code__0x
mov ecx, 0x5721e0
call fcn.00417d10
mov ecx, eax
call fcn.00412e60
mov ecx, eax
call fcn.00412cd0
mov ecx, eax
call fcn.00412eb0
mov eax, dword [ebp - 0x38]
jmp 0x406ea6
mov edx, str.Connected_to_ROOTCIMV2_WMI_namespace
mov ecx, 0x5721e0
call fcn.00417d10
mov ecx, eax
call fcn.00412eb0
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [ebp - 0x34]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x406d08
push ecx
push eax
push ecx
mov edx, str.Could_not_set_proxy_blanket._Error_code__0x
mov ecx, 0x5721e0
call fcn.00417d10
mov ecx, eax
call fcn.00412e60
mov ecx, eax
call fcn.00412cd0
mov ecx, eax
call fcn.00412eb0
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
jmp 0x406ea6
push str.SELECT__FROM_Win32_Process
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x3c], 0
call fcn.00405600
mov esi, eax
push 0x5587a8
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 1
call fcn.00405600
mov byte [ebp - 4], 2
mov esi, dword [esi]
test esi, esi
je 0x406d40
mov esi, dword [esi]
jmp 0x406d42
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x406d4c
mov edx, dword [eax]
jmp 0x406d4e
xor edx, edx
mov eax, dword [ebp - 0x34]
lea edi, [ebp - 0x3c]
push edi
push 0
push 0x30
mov ecx, dword [eax]
push esi
push edx
push eax
call dword [ecx + 0x50]
lea ecx, [ebp - 0x54]
mov esi, eax
call fcn.00405750
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 0xffffffff
call fcn.00405750
test esi, esi
jns 0x406d9c
push ecx
push esi
push ecx
mov edx, str.Query_for_operating_system_name_failed.
mov ecx, 0x5721e0
call fcn.00417d10
mov edx, str._Error_code__0x
mov ecx, eax
jmp 0x406cdd
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x14], 0
test ecx, ecx
je 0x406e91
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ecx]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x40]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
cmp dword [ebp - 0x14], 0
je 0x406e91
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x50]
push 0
push 0
push edx
mov ecx, dword [eax]
push 0
push str.Name
push eax
call dword [ecx + 0x10]
lea ecx, [ebp - 0x30]
call fcn.004110e0
mov dword [ebp - 4], 3
lea edx, [ebp - 0x30]
push ecx
mov ecx, dword [ebp - 0x48]
call fcn.00406960
push 0x5587f4
mov edx, 0x573bf8
lea ecx, [ebp - 0x74]
call fcn.00418690
add esp, 8
cmp dword [eax + 0x18], 0x10
jb 0x406e23
mov eax, dword [eax + 4]
jmp 0x406e26
add eax, 4
push 0x558408
push eax
call fcn.004b12d0
add esp, 8
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.00410cb0
test esi, esi
je 0x406e68
cmp dword [ebp - 0x18], 0x10
lea ecx, [ebp - 0x2c]
push esi
cmovae ecx, dword [ebp - 0x2c]
push ecx
call fcn.004b9860
push esi
push 0x558804
call fcn.004b9860
push esi
call fcn.004b20a0
add esp, 0x14
lea eax, [ebp - 0x50]
push eax
call edi
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
call fcn.00410cb0
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
jne 0x406db4
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0048cd50
mov esp, ebp
pop ebp
ret