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

Disassembly:
push 0x2fc
mov eax, 0x46a2b0
call fcn.0044730f
mov eax, dword [ebp + 8]
mov dword [ebp - 0x234], eax
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x238], eax
xor esi, esi
mov dword [ebp - 0x248], esi
xor ebx, ebx
inc ebx
mov dword [ebp - 4], ebx
push 2
push esi
call dword [sym.imp.ole32.dll_CoInitializeEx]
push esi
push esi
push esi
push 3
push esi
push esi
push esi
push 0xffffffffffffffff
push esi
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [ebp - 0x244], esi
mov dword [ebp - 0x240], esi
mov dword [ebp - 0x258], esi
lea eax, [ebp - 0x240]
push eax
push 0x4782d4
push ebx
push esi
push 0x4783a4
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jge 0x421b79
push dword [ebp - 0x254]
mov ecx, dword [ebp - 0x234]
call fcn.00401c90
mov dword [ebp - 0x248], ebx
jmp 0x421ee2
mov eax, dword [ebp - 0x240]
mov ecx, dword [eax]
lea edx, [ebp - 0x258]
push edx
push esi
push esi
push esi
push esi
push esi
push esi
push edi
push eax
call dword [ecx + 0xc]
test eax, eax
jge 0x421baa
push dword [ebp - 0x254]
mov ecx, dword [ebp - 0x234]
call fcn.00401c90
jmp 0x421b6e
push esi
push esi
push 3
push 3
push esi
push esi
push 0xa
push dword [ebp - 0x258]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jl 0x421b97
push 0x46d957
lea ecx, [ebp - 0x230]
call fcn.00401c90
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x258]
mov ecx, dword [eax]
lea edx, [ebp - 0x244]
push edx
push esi
push 0x30
push dword [ebp - 0x23c]
push 0x4711ac
push eax
call dword [ecx + 0x50]
test eax, eax
jge 0x421c29
push dword [ebp - 0x254]
mov ecx, dword [ebp - 0x234]
call fcn.00401c90
mov dword [ebp - 0x248], ebx
mov byte [ebp - 4], bl
push esi
push ebx
lea ecx, [ebp - 0x230]
call fcn.004016a9
jmp 0x421ee2
mov byte [ebp - 4], 3
mov dword [ebp - 0x23c], esi
mov eax, dword [ebp - 0x244]
cmp eax, esi
je 0x421cec
mov ecx, dword [eax]
lea edx, [ebp - 0x23c]
push edx
lea edx, [ebp - 0x24c]
push edx
push ebx
push 0xffffffffffffffff
push eax
call dword [ecx + 0x10]
cmp dword [ebp - 0x23c], esi
je 0x421cec
mov eax, dword [ebp - 0x24c]
mov ecx, dword [eax]
push esi
push esi
lea edx, [ebp - 0x284]
push edx
push esi
push dword [ebp - 0x238]
push eax
call dword [ecx + 0x10]
push esi
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x250]
call fcn.00421399
mov byte [ebp - 4], 4
mov edi, dword [ebp - 0x250]
cmp edi, esi
je 0x421ca9
mov ecx, edi
call fcn.00421323
jmp 0x421cab
xor eax, eax
push eax
lea ecx, [ebp - 0x230]
call fcn.00401c5c
push 0x46d957
lea ecx, [ebp - 0x230]
call fcn.0041ebff
test eax, eax
mov eax, dword [ebp - 0x24c]
mov ecx, dword [eax]
push eax
je 0x421d01
call dword [ecx + 8]
mov byte [ebp - 4], 3
cmp edi, esi
je 0x421cec
mov ecx, edi
call fcn.00421451
mov dword [ebp - 0x250], esi
mov eax, dword [ebp - 0x244]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 2
jmp 0x421d7e
call dword [ecx + 8]
mov byte [ebp - 4], 3
cmp edi, esi
je 0x421c33
mov ecx, edi
call fcn.00421451
mov dword [ebp - 0x250], esi
jmp 0x421c33
push 0x46d957
lea ecx, [ebp - 0x230]
call fcn.0041ebff
test eax, eax
jne 0x421da3
push dword [ebp - 0x254]
lea ecx, [ebp - 0x230]
call fcn.00401c5c
mov eax, dword [ebp - 0x258]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x240]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x234]
call fcn.00401c1e
or dword [ebp - 0x248], ebx
jmp 0x421c14
mov eax, dword [ebp - 0x234]
call fcn.0044736b
ret