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

Disassembly:
sub esp, 0x30
push ebp
xor ebp, ebp
push esi
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x14], ebp
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x3c]
cmp eax, ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
je 0x44ee98
mov esi, dword [esp + 0x40]
cmp esi, ebp
je 0x44ee98
mov ecx, dword [esp + 0x44]
cmp ecx, ebp
je 0x44ee98
mov dword [ecx], ebp
push edi
lea ecx, [esp + 0x1c]
push ecx
push eax
call fcn.0044e7f0
mov edi, dword [esp + 0x24]
add esp, 8
cmp edi, ebp
jne 0x44eb18
lea edx, [esp + 0x2c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44eb0c
push eax
call fcn.00467980
pop edi
pop esi
mov eax, 0xfffffffe
pop ebp
add esp, 0x30
ret
push ebx
lea eax, [esp + 0x24]
push eax
push esi
call fcn.0044e7f0
mov ebx, dword [esp + 0x2c]
add esp, 8
cmp ebx, ebp
jne 0x44eb5a
push edi
call fcn.0045932f
add esp, 4
lea ecx, [esp + 0x30]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44eb4d
push eax
call fcn.00467980
pop ebx
pop edi
pop esi
mov eax, 0xfffffffe
pop ebp
add esp, 0x30
ret
push ebp
push ebp
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jge 0x44eb97
push edi
call fcn.0045932f
push ebx
call fcn.0045932f
add esp, 8
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44eb8a
push eax
call fcn.00467980
pop ebx
pop edi
pop esi
mov eax, 0xfffffffd
pop ebp
add esp, 0x30
ret
push ebp
push ebp
push ebp
push 3
push ebp
push ebp
push ebp
push 0xffffffffffffffff
push ebp
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
cmp eax, ebp
jge 0x44ebea
cmp eax, 0x80010119
je 0x44ebea
call dword [sym.imp.ole32.dll_CoUninitialize]
push edi
call fcn.0045932f
push ebx
call fcn.0045932f
add esp, 8
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44ebdd
push eax
call fcn.00467980
pop ebx
pop edi
pop esi
mov eax, 0xfffffffc
pop ebp
add esp, 0x30
ret
lea ecx, [esp + 0x10]
push ecx
push 0x47e4b8
push 1
push ebp
push 0x47e578
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jl 0x44ee61
cmp dword [esp + 0x10], ebp
je 0x44ee61
push str.ROOTcimv2
lea ecx, [esp + 0x48]
call fcn.0044e980
mov eax, dword [eax]
cmp eax, ebp
je 0x44ec2c
mov ecx, dword [eax]
jmp 0x44ec2e
xor ecx, ecx
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
lea esi, [esp + 0x14]
push esi
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
push ecx
push eax
call dword [edx + 0xc]
lea ecx, [esp + 0x44]
mov esi, eax
call fcn.0044ea70
cmp esi, ebp
jl 0x44ee20
cmp dword [esp + 0x14], ebp
je 0x44ee20
push edi
lea ecx, [esp + 0x28]
mov dword [esp + 0x48], ebp
call fcn.0044e980
mov eax, dword [eax]
cmp eax, ebp
je 0x44ec79
mov ecx, dword [eax]
jmp 0x44ec7b
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov edx, dword [eax]
lea esi, [esp + 0x1c]
push esi
push ebp
push 1
push ecx
push eax
call dword [edx + 0x48]
lea ecx, [esp + 0x24]
mov esi, eax
call fcn.0044ea70
cmp esi, ebp
jl 0x44edce
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x44edce
mov ecx, dword [eax]
lea edx, [esp + 0x28]
push edx
lea edx, [esp + 0x1c]
push edx
push 1
push 0xc8
push eax
call dword [ecx + 0x10]
test eax, eax
jl 0x44edba
mov eax, dword [esp + 0x18]
cmp eax, ebp
je 0x44edba
mov ecx, dword [eax]
push ebp
lea edx, [esp + 0x30]
push edx
lea edx, [esp + 0x38]
push edx
push ebp
push ebx
push eax
call dword [ecx + 0x10]
test eax, eax
jl 0x44ed9c
mov ecx, dword [esp + 0x30]
movzx eax, cx
add eax, 0xfffffffe
cmp eax, 0x15
ja case.0x44ed09.6
movzx eax, byte [eax + 0x44eec0]
jmp dword [eax*4 + 0x44eeb8]
cmp cx, 8
je 0x44ed39
push 8
push ebp
lea ecx, [esp + 0x38]
push ecx
mov edx, ecx
push edx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
cmp eax, ebp
jge case.0x44ed09.6
push eax
call fcn.00467980
cmp word [esp + 0x30], 8
jne 0x44ed69
mov eax, dword [esp + 0x38]
cmp eax, ebp
je 0x44ed5f
mov esi, dword [esp + 0x4c]
push esi
push eax
call fcn.0044e870
mov eax, dword [esi]
add esp, 8
cmp eax, ebp
jne 0x44ed71
mov dword [esp + 0x44], 0xfffffff4
jmp 0x44ed71
mov dword [esp + 0x44], 0xfffffff5
jmp 0x44ed71
mov dword [esp + 0x44], 0xfffffff6
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44eda4
push eax
call fcn.00467980
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
push eax
call dword [edx + 8]
jmp 0x44edd6
mov dword [esp + 0x44], 0xfffffff7
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
push eax
call dword [edx + 8]
jmp 0x44edd6
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
push eax
mov dword [esp + 0x48], 0xfffffff8
call dword [edx + 8]
jmp 0x44edd6
mov dword [esp + 0x44], 0xfffffff9
push edi
call fcn.0045932f
push ebx
call fcn.0045932f
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
add esp, 8
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
call dword [edx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44ee14
push eax
call fcn.00467980
mov eax, dword [esp + 0x44]
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x30
ret
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
push edi
call fcn.0045932f
push ebx
call fcn.0045932f
add esp, 8
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44ee54
push eax
call fcn.00467980
pop ebx
pop edi
pop esi
mov eax, 0xfffffffa
pop ebp
add esp, 0x30
ret
call dword [sym.imp.ole32.dll_CoUninitialize]
push edi
call fcn.0045932f
push ebx
call fcn.0045932f
add esp, 8
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44ee8b
push eax
call fcn.00467980
pop ebx
pop edi
pop esi
mov eax, 0xfffffffb
pop ebp
add esp, 0x30
ret
lea ecx, [esp + 0x28]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x44eead
push eax
call fcn.00467980
pop esi
or eax, 0xffffffff
pop ebp
add esp, 0x30
ret