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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5051eb
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x80
mov eax, dword [0x52d324]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x6428
call fcn.004dc7b4
add esp, 4
mov edi, eax
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
push 0
push 0
push 3
push 0
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
push 0x53008c
push 0x513f8c
push 1
push 0
push 0x513f7c
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp dword [0x53008c], 0
je 0x40e251
push 0xc
call fcn.004dc4d6
mov esi, eax
add esp, 4
mov dword [ebp - 0x90], esi
test esi, esi
je 0x40e7df
push str.ROOTCIMV2
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esi], eax
test eax, eax
je 0x40e7df
mov eax, dword [0x53008c]
push 0x530088
push 0
push 0
mov ecx, dword [eax]
push 0
push 0
push 0
push 0
push dword [esi]
push eax
call dword [ecx + 0xc]
or eax, 0xffffffff
lea ecx, [esi + 8]
lock xadd dword [ecx], eax
dec eax
jne 0x40e233
mov eax, dword [esi]
test eax, eax
je 0x40e211
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x40e228
push eax
call fcn.004dc7bd
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.004dc783
add esp, 8
mov eax, dword [0x530088]
test eax, eax
je 0x40e251
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push eax
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
push 0x6428
push 0
push edi
call fcn.004df150
add esp, 8
mov edx, edi
mov ecx, 7
call fcn.00417830
add esp, 4
test eax, eax
jle 0x40e2fb
push eax
push edi
lea eax, [ebp - 0x2c]
push eax
call fcn.0040dea0
mov esi, eax
cmp esi, 0x531030
je 0x40e2c1
mov ecx, 0x531030
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531030], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531040], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x40e2fb
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e2f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e7e9
push edx
push ecx
call fcn.004dc783
add esp, 8
push 0x6428
push 0
push edi
call fcn.004df150
add esp, 8
mov edx, edi
xor ecx, ecx
call fcn.00417830
add esp, 4
test eax, eax
jle 0x40e3a2
push eax
push edi
lea eax, [ebp - 0x2c]
push eax
call fcn.0040dea0
mov esi, eax
cmp esi, 0x531048
je 0x40e368
mov ecx, 0x531048
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531048], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531058], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x40e3a2
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e398
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e7ee
push edx
push ecx
call fcn.004dc783
add esp, 8
push 0x6428
push 0
push edi
call fcn.004df150
add esp, 8
mov edx, edi
mov ecx, 1
call fcn.00417830
add esp, 4
test eax, eax
jle 0x40e44c
push eax
push edi
lea eax, [ebp - 0x2c]
push eax
call fcn.0040dea0
mov esi, eax
cmp esi, 0x531018
je 0x40e412
mov ecx, 0x531018
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531018], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531028], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x40e44c
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e442
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e7f3
push edx
push ecx
call fcn.004dc783
add esp, 8
push 0x6428
push 0
push edi
call fcn.004df150
add esp, 8
mov edx, edi
mov ecx, 8
call fcn.00417830
add esp, 4
test eax, eax
jle 0x40e4f6
push eax
push edi
lea eax, [ebp - 0x2c]
push eax
call fcn.0040dea0
mov esi, eax
cmp esi, 0x531000
je 0x40e4bc
mov ecx, 0x531000
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531000], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531010], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x40e4f6
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e4ec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e7f8
push edx
push ecx
call fcn.004dc783
add esp, 8
mov ecx, dword [0x530088]
test ecx, ecx
je 0x40e510
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x530088], 0
mov ecx, dword [0x53008c]
test ecx, ecx
je 0x40e52a
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x53008c], 0
call dword [sym.imp.ole32.dll_CoUninitialize]
push edi
call fcn.004dc7bd
add esp, 4
cmp dword [0x531058], 0
jne 0x40e6b5
lea ecx, [ebp - 0x8c]
call fcn.00418720
mov edx, eax
mov dword [ebp - 4], 0
cmp dword [edx + 0x14], 0x10
jb 0x40e562
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40e580
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x44]
call fcn.00402850
lea edx, [ebp - 0x44]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c]
call fcn.0040baf0
mov esi, eax
cmp esi, 0x531048
je 0x40e5e0
mov ecx, 0x531048
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531048], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531058], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x40e61a
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e610
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e7fd
push edx
push ecx
call fcn.004dc783
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c], 0
mov byte [ebp - 4], al
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
cmp edx, 0x10
jb 0x40e665
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40e65b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e802
push edx
push ecx
call fcn.004dc783
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x40e6b5
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40e6ab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e807
push edx
push ecx
call fcn.004dc783
add esp, 8
cmp dword [0x531028], 0
jne 0x40e7c1
call fcn.004180e0
mov edx, eax
mov dword [ebp - 0x4c], 0
mov ecx, edx
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40e6e0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00402850
lea edx, [ebp - 0x5c]
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x74]
call fcn.0040baf0
mov esi, eax
cmp esi, 0x531018
je 0x40e743
mov ecx, 0x531018
call fcn.00402480
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x531018], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x531028], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x60]
cmp edx, 8
jb 0x40e77d
mov ecx, dword [ebp - 0x74]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40e773
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e80c
push edx
push ecx
call fcn.004dc783
add esp, 8
mov edx, dword [ebp - 0x48]
xor eax, eax
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 7
mov word [ebp - 0x74], ax
cmp edx, 0x10
jb 0x40e7c1
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40e7b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e811
push edx
push ecx
call fcn.004dc783
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004dc214
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x8007000e
call fcn.004dd8e0
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
call fcn.004e2bf9
int3