Function at 0x4c06f0
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2b4
mov eax, dword [0x53ba20]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push dword [ebp + 8]
mov esi, dword [ebp + 0xc]
lea eax, [ebp - 0x84]
push 0x503b24
push eax
mov dword [ebp - 0x2b4], esi
call fcn.0048d560
add esp, 0xc
test esi, esi
je 0x4c0c19
push ebx
push 6
xor esi, esi
mov dword [ebp - 0x2a0], 0
push esi
mov dword [ebp - 0x298], 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
lea eax, [ebp - 0x2a0]
push eax
push 0x517ae4
push 1
push esi
push 0x517af4
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x4c0771
mov ebx, eax
jmp 0x4c0bda
mov ecx, dword [ebp - 0x2a0]
lea edx, [ebp - 0x298]
push edx
push 0
push 0
mov eax, dword [ecx]
push 0
push 0
push 0
push 0
push 0x5178d8
push ecx
call dword [eax + 0xc]
test eax, eax
jns 0x4c07a0
mov ebx, eax
jmp 0x4c0bda
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [ebp - 0x298]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x4c07c5
mov ebx, eax
jmp 0x4c0bda
push edi
push 0x186
lea eax, [ebp - 0x20c]
mov ecx, 0x1e
mov esi, 0x5178f0
lea edi, [ebp - 0x284]
push 0
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.004c52c0
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x284]
push 0xff
push eax
call fcn.004d6277
add esp, 0x18
test eax, eax
je 0x4c0816
mov ebx, 0x8000ffff
xor esi, esi
jmp 0x4c0bd9
push 0x190
call fcn.004c8c9a
mov esi, eax
add esp, 4
mov dword [ebp - 0x290], esi
test esi, esi
jne 0x4c0839
mov ebx, 0x8007000e
jmp 0x4c0bd9
mov ecx, dword [ebp - 0x298]
xor edi, edi
test ecx, ecx
je 0x4c0902
mov eax, dword [ecx]
lea edx, [ebp - 0x288]
push edx
push edi
push 0x30
lea edx, [ebp - 0x284]
mov dword [ebp - 0x288], edi
push edx
push 0x50290c
push ecx
mov dword [ebp - 0x28c], edi
mov dword [ebp - 0x294], edi
call dword [eax + 0x50]
test eax, eax
js 0x4c0902
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c0abc
nop dword [eax]
mov eax, dword [ecx]
lea edx, [ebp - 0x294]
push edx
lea edx, [ebp - 0x28c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
test eax, eax
js 0x4c08f2
cmp dword [ebp - 0x294], 0
je 0x4c08d9
mov ecx, dword [ebp - 0x28c]
mov dword [esi + edi*4], ecx
inc edi
cmp edi, 0x64
jae 0x4c08d3
mov ecx, dword [ebp - 0x288]
test ecx, ecx
jne 0x4c0890
jmp 0x4c0abc
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c0abc
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x4c0abc
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c0902
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov esi, dword [ebp - 0x298]
test esi, esi
je 0x4c0bcc
push 0x190
call fcn.004c8c9a
add esp, 4
mov dword [ebp - 0x294], eax
test eax, eax
jne 0x4c0931
mov esi, 0x8007000e
jmp 0x4c0bd1
mov eax, dword [esi]
lea ecx, [ebp - 0x288]
push ecx
xor ebx, ebx
push ebx
push 0x30
push 0x517968
push 0x50290c
push esi
mov dword [ebp - 0x288], ebx
mov dword [ebp - 0x29c], ebx
mov dword [ebp - 0x28c], ebx
call dword [eax + 0x50]
mov esi, eax
test esi, esi
js 0x4c0aa0
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c09c5
mov eax, dword [ecx]
lea edx, [ebp - 0x28c]
push edx
lea edx, [ebp - 0x29c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
mov esi, eax
test esi, esi
js 0x4c0b82
cmp dword [ebp - 0x28c], 0
je 0x4c0b69
mov eax, dword [ebp - 0x294]
mov ecx, dword [ebp - 0x29c]
mov dword [eax + ebx*4], ecx
inc ebx
cmp ebx, 0x64
jae 0x4c0b63
mov ecx, dword [ebp - 0x288]
test ecx, ecx
jne 0x4c0973
lea eax, [ebp - 0x2b0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
xor eax, eax
mov dword [ebp - 0x28c], eax
test ebx, ebx
je 0x4c0a9e
mov ecx, dword [ebp - 0x294]
push 0
push 0
mov esi, dword [ecx + eax*4]
mov dword [ecx + eax*4], 0
lea ecx, [ebp - 0x2b0]
push ecx
push 0
mov eax, dword [esi]
push 0x5179a4
push esi
call dword [eax + 0x10]
test eax, eax
jne 0x4c0b9b
cmp word [ebp - 0x2b0], 3
jne 0x4c0b9b
cmp dword [ebp - 0x2a8], eax
je 0x4c0b9b
push eax
mov dword [ebp - 0x29c], eax
call fcn.004c9039
push 0xa
lea eax, [ebp - 0x84]
push 0
push eax
call fcn.004db670
mov dword [ebp - 0x288], eax
lea eax, [ebp - 0x29c]
push eax
call fcn.004c9014
mov eax, dword [ebp - 0x288]
add esp, 0x14
cmp eax, 0xffffffff
je 0x4c0b9b
cmp dword [ebp - 0x29c], 0
jne 0x4c0b9b
cmp dword [ebp - 0x2a8], eax
jne 0x4c0b9b
mov eax, dword [ebp - 0x290]
mov dword [eax + edi*4], esi
inc edi
cmp edi, 0x64
jb 0x4c0ba1
mov eax, dword [esi]
push esi
call dword [eax + 8]
xor esi, esi
push dword [ebp - 0x294]
call fcn.004c8c7f
add esp, 4
test esi, esi
jne 0x4c0bd1
mov esi, dword [ebp - 0x290]
xor ebx, ebx
test edi, edi
je 0x4c0bc8
mov esi, dword [esi + ebx*4]
lea eax, [ebp - 0x2ac]
push eax
push dword [ebp - 0x2a0]
mov dword [ebp - 0x2ac], 0
push esi
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0
call fcn.004c0c30
add esp, 0xc
test eax, eax
jne 0x4c0b4d
cmp dword [ebp - 0x2a4], eax
je 0x4c0b4d
cmp dword [ebp - 0x2ac], eax
je 0x4c0b4d
cmp dword [ebp - 0x2a8], eax
je 0x4c0b4d
push 0x10
call fcn.004c8c9a
add esp, 4
test eax, eax
je 0x4c0bbb
mov edx, dword [ebp - 0x2b4]
movq xmm0, qword [ebp - 0x2ac]
mov ecx, dword [ebp - 0x2a4]
movq qword [eax], xmm0
mov dword [eax + 8], ecx
mov ecx, dword [edx]
mov dword [eax + 0xc], ecx
mov dword [edx], eax
mov eax, dword [esi]
push esi
call dword [eax + 8]
inc ebx
cmp ebx, edi
jae 0x4c0bc8
mov esi, dword [ebp - 0x290]
jmp 0x4c0ac6
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c09c5
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x4c09c5
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x4c0aa0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x4c0aa0
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
cmp eax, ebx
jb 0x4c09e2
jmp 0x4c0a9e
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov ebx, 0x8007000e
jmp 0x4c0bd3
xor ebx, ebx
jmp 0x4c0bd3
mov esi, 0x80070057
mov ebx, esi
mov esi, dword [ebp - 0x290]
pop edi
mov ecx, dword [ebp - 0x298]
test ecx, ecx
je 0x4c0bea
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x2a0]
test ecx, ecx
je 0x4c0bfa
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
test esi, esi
je 0x4c0c07
push esi
call fcn.004c8c7f
add esp, 4
mov eax, ebx
pop ebx
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004c3287
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, 0x80070057
xor ecx, ebp
pop esi
call fcn.004c3287
mov esp, ebp
pop ebp
ret