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

Disassembly:
push 0xe4
mov eax, 0x462727
call fcn.0043c4da
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x40]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], edx
call fcn.00406349
xor ebx, ebx
mov dword [ebp - 4], ebx
mov edi, dword [ebp - 0x44]
mov ecx, edi
call fcn.004299aa
cmp dword [edi + 8], ebx
jge 0x429a89
cmp dword [edi + 8], 0x80010106
jne 0x429df6
lea esi, [edi + 0x20]
push esi
push 0x46fea4
push 1
push ebx
push 0x46fe94
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [ebp - 0x48], eax
test eax, eax
je 0x429b26
lea ecx, [ebp - 0xf0]
call fcn.00406224
mov esi, eax
mov byte [ebp - 4], 1
mov edx, 0x47e308
mov ecx, esi
call fcn.0040c870
push fcn.004023d0
mov ecx, esi
call fcn.0040be57
push dword [ebp - 0x48]
mov ecx, esi
call fcn.0040bd70
mov edx, str.__in_updtWmiHelperClass::Initialize_
mov ecx, esi
call fcn.0040c870
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.0040620b
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.00406259
xor ecx, ecx
mov edx, eax
inc ecx
call fcn.0041dcb0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.00406270
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xf0]
call fcn.0040266e
jmp 0x429df6
mov edi, dword [ebp - 0x54]
push edi
call fcn.004012d2
pop ecx
push eax
push edi
lea ecx, [ebp - 0x40]
call fcn.00408ab3
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
mov edi, dword [esi]
add eax, 0x24
push eax
push ebx
push ebx
mov esi, dword [edi]
push ebx
push ebx
push ebx
push ebx
mov dword [ebp - 0x54], eax
call fcn.00406259
mov ecx, dword [esi + 0xc]
push eax
push edi
call dword [0x463290]
call dword [esi + 0xc]
mov edi, eax
test edi, edi
jns 0x429bf5
lea ecx, [ebp - 0xf0]
call fcn.00406224
mov esi, eax
mov byte [ebp - 4], 3
mov edx, str.ConnectServer_failed__
mov ecx, esi
call fcn.0040c870
push fcn.004023d0
mov ecx, esi
call fcn.0040be57
push edi
mov ecx, esi
call fcn.0040bd70
mov edx, str.__in_updtWmiHelperClass::Initialize__Resource
mov ecx, esi
call fcn.0040c870
lea edx, [ebp - 0x40]
mov ecx, esi
call fcn.0040ca40
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.0040620b
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x28]
call fcn.00406259
xor ecx, ecx
mov edx, eax
inc ecx
call fcn.0041dcb0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x28]
call fcn.00406270
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xf0]
call fcn.0040266e
jmp 0x429df3
mov eax, dword [ebp - 0x54]
push ebx
push ebx
push 3
push 3
push ebx
push ebx
push 0xa
push dword [eax]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov edi, eax
test edi, edi
jns 0x429c77
lea ecx, [ebp - 0xf0]
call fcn.00406224
mov esi, eax
mov byte [ebp - 4], 5
mov edx, str.CoSetProxyBlanket_failed__
mov ecx, esi
call fcn.0040c870
push fcn.004023d0
mov ecx, esi
call fcn.0040be57
push edi
mov ecx, esi
call fcn.0040bd70
mov edx, str._in_updtWmiHelperClass::Initialize_
mov ecx, esi
call fcn.0040c870
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.0040620b
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00406259
xor ecx, ecx
mov edx, eax
inc ecx
call fcn.0041dcb0
mov byte [ebp - 4], 5
jmp 0x429bda
mov esi, dword [ebp - 0x58]
push esi
call fcn.004012d2
pop ecx
push eax
push esi
lea ecx, [ebp - 0x40]
call fcn.00408ab3
push 0x47e4a0
lea ecx, [ebp - 0x50]
call fcn.004273a8
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x4c]
push esi
call fcn.004273a8
mov byte [ebp - 4], 8
mov edi, dword [ebp - 0x4c]
test edi, edi
je 0x429cb7
mov eax, dword [edi]
mov dword [ebp - 0x48], eax
jmp 0x429cba
mov dword [ebp - 0x48], ebx
mov esi, dword [ebp - 0x50]
test esi, esi
je 0x429cc5
mov edx, dword [esi]
jmp 0x429cc7
mov edx, ebx
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x44]
add eax, 0x28
push eax
mov ebx, dword [ecx]
push 0
push 0x10
push dword [ebp - 0x48]
push edx
push ecx
mov ecx, dword [ebx + 0x50]
call dword [0x463290]
call dword [ebx + 0x50]
mov dword [ebp - 0x48], eax
test eax, eax
jns 0x429d61
lea ecx, [ebp - 0xf0]
call fcn.00406224
mov ebx, eax
mov byte [ebp - 4], 9
mov edx, str.ExecQuery_failed__
mov ecx, ebx
call fcn.0040c870
push fcn.004023d0
mov ecx, ebx
call fcn.0040be57
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.0040bd70
mov edx, str._in_updtWmiHelperClass::Initialize__Query
mov ecx, ebx
call fcn.0040c870
mov edx, dword [ebp - 0x58]
mov ecx, ebx
call fcn.0040c870
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.0040620b
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
call fcn.00406259
xor ecx, ecx
mov edx, eax
inc ecx
call fcn.0041dcb0
mov byte [ebp - 4], 9
jmp 0x429db3
mov ecx, dword [ebp - 0x44]
call fcn.0042a08a
test al, al
jne 0x429dff
lea ecx, [ebp - 0xf0]
call fcn.00406224
mov ebx, eax
mov byte [ebp - 4], 0xb
mov edx, str.updtWmiHelperClass::Initialize:_MoveNextRecord_failed_
mov ecx, ebx
call fcn.0040c870
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.0040620b
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x28]
call fcn.00406259
xor ecx, ecx
mov edx, eax
inc ecx
call fcn.0041dcb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x28]
call fcn.00406270
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xf0]
call fcn.0040266e
mov byte [ebp - 4], 7
test edi, edi
je 0x429de0
mov ecx, edi
call fcn.0042743c
xor ebx, ebx
mov dword [ebp - 0x4c], ebx
jmp 0x429de2
xor ebx, ebx
mov byte [ebp - 4], bl
test esi, esi
je 0x429df3
mov ecx, esi
call fcn.0042743c
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x44]
mov ecx, edi
call fcn.004299aa
jmp 0x429e2a
mov byte [ebp - 4], 7
test edi, edi
je 0x429e15
mov ecx, edi
call fcn.0042743c
xor ebx, ebx
mov dword [ebp - 0x4c], ebx
jmp 0x429e17
xor ebx, ebx
mov byte [ebp - 4], bl
test esi, esi
je 0x429e28
mov ecx, esi
call fcn.0042743c
mov dword [ebp - 0x50], ebx
mov bl, 1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.00406270
mov al, bl
call fcn.0043c484
ret 8