Function at 0x409ae0
Capabilities:
Reference wmi statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 0x10], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebp - 0x14], 0
push 0x10
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov eax, 3
mov dword [ebx], eax
mov dword [ebp - 0x1c], 0
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 8
call fcn.0041a9d9
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebp - 0x28], 0
mov ecx, 0
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041a9d9
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
mov dword [edi], 0
add edi, 4
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.0040167c
pop edx
test ecx, ecx
je 0x409c48
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409c3e
push ebx
call fcn.0041a9df
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x409c2d
pop edx
pop edi
test edx, edx
je 0x409c56
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp + 8]
push dword [ebx]
call fcn.0041a9df
add esp, 4
pop eax
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov ecx, 0
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041a9d9
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
mov dword [edi], 0
add edi, 4
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
call fcn.0040167c
pop edx
test ecx, ecx
je 0x409cc5
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409cbb
push ebx
call fcn.0041a9df
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x409caa
pop edx
pop edi
test edx, edx
je 0x409cd3
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp + 0xc]
push dword [ebx]
call fcn.0041a9df
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
push 0
push 0
push 0
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c1ac
push 0x10030
push 0
push dword [ebp - 4]
push 3
mov ebx, 0x41fc60
call fcn.0041a9d3
add esp, 0x28
test eax, eax
je 0x40a2d4
mov ebx, 0x12
call fcn.0040317c
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c1c8
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c1d4
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c1d8
push 0x10030
push 0
push dword [ebp - 4]
push 0xa
mov ebx, 0x41ea70
call fcn.0041a9d3
add esp, 0x7c
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 8]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 8], eax
push 0x10030
push 0
push dword [ebp - 8]
push 1
mov ebx, 0x41fc40
call fcn.0041a9d3
add esp, 0x10
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x40a2b8
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c1e8
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c20c
push 0x10030
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x41ea70
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0xc]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push 0x10030
push 0
push dword [ebp - 0xc]
push 1
mov ebx, 0x41fc40
call fcn.0041a9d3
add esp, 0x10
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x40a29c
push 0
push 0
push 0
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c218
push 0x10030
push 0
push dword [ebp - 0xc]
push 3
mov ebx, 0x41ea70
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x10]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push 0x10030
push 0
push dword [ebp - 0x10]
push 1
mov ebx, 0x41fc40
call fcn.0041a9d3
add esp, 0x10
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x40a280
lea eax, [ebp - 0x10]
push eax
call fcn.0040a3f0
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040a448
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x30]
push 1
push dword [ebp - 0x2c]
call fcn.0040a498
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x40a248
push 0
push 0
push 0
push 0x10031
push 0
push dword [ebp - 0x18]
push 2
mov ebx, 0x41ec20
call fcn.0041a9d3
add esp, 0x1c
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0
push 0
push 0
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c224
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41e9e0
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x24]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c230
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c23c
push 0x10030
push 0
push dword [ebp - 0x24]
push 3
mov ebx, 0x41ea70
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x2c], eax
push 0
push 0
push 0
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c244
push 0x10030
push 0
push dword [ebp - 0x2c]
push 3
mov ebx, 0x41e980
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40a051
push ebx
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push dword [ebp + 8]
push 4
mov eax, 2
call fcn.0041a9cd
add esp, 8
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x30], ebx
call fcn.0040167c
mov dword [ebp - 0x34], ecx
mov edi, dword [ebp - 0x30]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40a099
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x34]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x30]
call fcn.0041aa09
add esp, 8
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x34]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x2c]
push edi
test eax, eax
je 0x40a0de
push eax
mov ebx, eax
call fcn.004014d0
inc eax
push eax
call fcn.0041a9d9
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c24c
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c23c
push 0x10030
push 0
push dword [ebp - 0x24]
push 3
mov ebx, 0x41ea70
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x2c], eax
push 0
push 0
push 0
push reloc.OLEAUT32.dll_SysReAllocStringLen
push 0
push 0x191c244
push 0x10030
push 0
push dword [ebp - 0x2c]
push 3
mov ebx, 0x41e980
call fcn.0041a9d3
add esp, 0x28
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40a180
push ebx
call fcn.0041a9df
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push dword [ebp + 0xc]
push 4
mov eax, 2
call fcn.0041a9cd
add esp, 8
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
mov dword [ebp - 0x30], ebx
call fcn.0040167c
mov dword [ebp - 0x34], ecx
mov edi, dword [ebp - 0x30]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40a1c8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x34]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x30]
call fcn.0041aa09
add esp, 8
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x34]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x2c]
push edi
test eax, eax
je 0x40a20d
push eax
mov ebx, eax
call fcn.004014d0
inc eax
push eax
call fcn.0041a9d9
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
push 0x10030
push 0
push dword [ebp - 0x20]
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
push 0x10031
push 0
push dword [ebp - 0x18]
push 1
mov ebx, 0x41ead0
call fcn.0041a9d3
add esp, 0x10
push 0
mov ebx, 0x41d040
call fcn.0041a9d3
add esp, 4
cmp dword [ebp - 0x1c], 1
je 0x409ecd
push 0x10030
push 0
push dword [ebp - 0x10]
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
push 0x10030
push 0
push dword [ebp - 0xc]
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
push 0x10030
push 0
push dword [ebp - 8]
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
push 0x10030
push 0
push dword [ebp - 4]
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00404b24
jmp 0x40a2e3
push eax
mov ebx, dword [ebp - 4]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
push 0x10031
push 0
push ebx
push 1
mov ebx, 0x41ead0
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x41fc30
call fcn.0041a9d3
add esp, 0x10
call fcn.0041a9df
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40a3e9
push ebx
call fcn.0041a9df
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8