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

Disassembly:
push 0x3c
mov eax, 0x41a352
call fcn.00409dce
lea eax, [ebp - 0x14]
push eax
push 0x41e540
xor ebx, ebx
inc ebx
push ebx
xor esi, esi
push esi
push 0x41e610
mov dword [ebp - 0x14], esi
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, esi
jl 0x40511d
push str.ROOTCIMV2
mov dword [ebp - 0x10], esi
lea ecx, [ebp - 0x20]
call fcn.00404c0a
mov eax, dword [eax]
mov dword [ebp - 4], esi
cmp eax, esi
je 0x404f49
mov ecx, dword [eax]
jmp 0x404f4b
xor ecx, ecx
mov eax, dword [ebp - 0x14]
lea edi, [ebp - 0x10]
mov edx, dword [eax]
push edi
push esi
push esi
push esi
push esi
push esi
push esi
push ecx
push eax
call dword [edx + 0xc]
mov edi, eax
mov ecx, dword [ebp - 0x20]
or dword [ebp - 4], 0xffffffff
cmp ecx, esi
je 0x404f71
call fcn.00404c57
cmp edi, esi
jge 0x404f7d
mov eax, dword [ebp - 0x14]
jmp 0x405113
push esi
push esi
push 3
push 3
push esi
push esi
push 0xa
push dword [ebp - 0x10]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
cmp eax, esi
jge 0x404fa3
mov eax, dword [ebp - 0x10]
cmp eax, esi
je 0x404f75
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x404f75
push str.SELECT__FROM_Win32_NetworkAdapterConfiguration
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], esi
call fcn.00404bbd
mov edi, eax
push 0x41be84
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], ebx
call fcn.00404bbd
mov ecx, dword [edi]
mov byte [ebp - 4], 2
cmp ecx, esi
je 0x404fd3
mov ecx, dword [ecx]
jmp 0x404fd5
xor ecx, ecx
mov eax, dword [eax]
cmp eax, esi
je 0x404fdf
mov edx, dword [eax]
jmp 0x404fe1
xor edx, edx
mov eax, dword [ebp - 0x10]
lea ebx, [ebp - 0x18]
mov edi, dword [eax]
push ebx
push esi
push 0x30
push ecx
push edx
push eax
call dword [edi + 0x50]
mov ecx, dword [ebp - 0x20]
mov edi, eax
cmp ecx, esi
je 0x405004
call fcn.00404c57
mov dword [ebp - 0x20], esi
mov ecx, dword [ebp - 0x28]
or dword [ebp - 4], 0xffffffff
cmp ecx, esi
je 0x405014
call fcn.00404c57
cmp edi, esi
jl 0x404f94
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x18], esi
je 0x4050e9
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x24]
mov eax, dword [eax]
push ecx
lea ecx, [ebp - 0x1c]
push ecx
push 1
push 0xffffffffffffffff
push dword [ebp - 0x18]
call dword [eax + 0x10]
cmp dword [ebp - 0x24], esi
je 0x4050e9
lea eax, [ebp - 0x38]
push eax
call edi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push esi
push esi
push edx
push esi
push str.Caption
push eax
call dword [ecx + 0x10]
or eax, eax
js 0x4050da
push 0x41bdc8
push dword [ebp - 0x30]
call fcn.00409791
pop ecx
pop ecx
or eax, eax
je 0x4050da
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push esi
push esi
push edx
push esi
push str.ServiceName
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x4050da
push str.SVPadapter
push dword [ebp - 0x30]
call fcn.004089c0
or eax, eax
pop ecx
pop ecx
jne 0x4050da
lea eax, [ebp - 0x48]
push eax
call edi
mov eax, dword [ebp - 0x1c]
lea edx, [ebp - 0x48]
mov ecx, dword [eax]
push esi
push esi
push edx
push esi
push str.Index
push eax
call dword [ecx + 0x10]
test eax, eax
jns 0x405126
lea eax, [ebp - 0x48]
push eax
call ebx
lea eax, [ebp - 0x38]
push eax
call ebx
cmp dword [ebp - 0x18], esi
jne 0x405037
mov eax, dword [ebp - 0x10]
cmp eax, esi
je 0x4050f6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
cmp eax, esi
je 0x405103
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
cmp eax, esi
je 0x405110
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
je 0x40511d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
or eax, 0xffffffff
call fcn.00409e6d
ret
mov eax, dword [ebp - 0x10]
cmp eax, esi
je 0x405133
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
cmp eax, esi
je 0x405140
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
cmp eax, esi
je 0x40514d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
je 0x40515a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
jmp 0x405120