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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e6cd2
mov eax, dword fs:[0]
push eax
sub esp, 0x19c
mov eax, dword [0x6cdf60]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
jmp 0x58c694
jmp 0x58c6fa
xorps xmm0, xmm0
mov dword [ebp - 0xf8], 0
movq qword [ebp - 0x100], xmm0
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 4], 0
jmp 0x58c79a
mov dword [ebp - 0xe0], 0xf
mov dword [ebp - 0xe4], 0
mov byte [ebp - 0xf4], 0
mov byte [ebp - 4], 1
jmp 0x58c81f
mov dword [ebp - 0xb0], 0xf
mov dword [ebp - 0xb4], 0
mov byte [ebp - 0xc4], 0
mov byte [ebp - 4], 2
jmp 0x58c8a4
mov dword [ebp - 0xc8], 0xf
mov dword [ebp - 0xcc], 0
mov byte [ebp - 0xdc], 0
push 0
push 0
mov byte [ebp - 4], 3
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x58fdb0
jmp 0x58c93b
jmp 0x58c9a1
lea eax, [ebp - 0x170]
mov dword [ebp - 0x170], 0
push eax
push 0x68eeb0
push 1
push 0
push 0x68eea0
call dword [sym.imp.ole32.dll_CoCreateInstance]
jmp 0x58ca2c
test eax, eax
js 0x58cdbc
jmp 0x58ca9a
jmp 0x58cb00
mov dword [ebp - 0x154], 0
jmp 0x58cb70
push 0x43e40b96
lea ecx, [ebp - 0x16c]
call fcn.00597430
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 4
call fcn.0058b7b0
mov byte [ebp - 4], 5
mov edx, dword [eax]
test edx, edx
je 0x58cb9e
mov edx, dword [edx]
jmp 0x58cba0
xor edx, edx
mov eax, dword [ebp - 0x170]
lea esi, [ebp - 0x154]
push esi
push 0
push 0
mov ecx, dword [eax]
push 0
push 0
push 0
push 0
push edx
push eax
call dword [ecx + 0xc]
lea ecx, [ebp - 0x174]
mov esi, eax
call fcn.0058b860
mov byte [ebp - 4], 3
jmp 0x58cc37
mov ebx, dword [sym.imp.ole32.dll_CoUninitialize]
test esi, esi
jns 0x58cc54
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call ebx
jmp 0x58f476
jmp 0x58ccba
jmp 0x58cd20
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [ebp - 0x154]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
jmp 0x58cda0
test eax, eax
jns 0x58cdc7
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58fdb0
jmp 0x58ce2d
push 0x756afa8
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x150], 0
call fcn.005974f0
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 6
call fcn.0058b710
mov esi, eax
mov dword [ebp - 0x174], 0x4c5157
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x180]
call fcn.0058b710
mov byte [ebp - 4], 9
mov esi, dword [esi]
test esi, esi
je 0x58ce87
mov esi, dword [esi]
jmp 0x58ce89
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58ce93
mov edx, dword [eax]
jmp 0x58ce95
xor edx, edx
mov eax, dword [ebp - 0x154]
lea edi, [ebp - 0x150]
push edi
push 0
push 0x30
mov ecx, dword [eax]
push esi
push edx
push eax
call dword [ecx + 0x50]
lea ecx, [ebp - 0x180]
mov esi, eax
call fcn.0058b860
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x174], 0
call fcn.0058b860
mov byte [ebp - 4], 3
jmp 0x58cf3a
test esi, esi
js 0x58cda4
jmp 0x58cfa8
mov dword [ebp - 0x14c], 0
jmp 0x58d018
mov dword [ebp - 0x94], 0
jmp 0x58d088
mov ecx, dword [ebp - 0x150]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test ecx, ecx
je 0x58d71d
lea esp, [esp]
mov eax, dword [ecx]
lea edx, [ebp - 0x94]
push edx
lea edx, [ebp - 0x14c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
jmp 0x58d11e
cmp dword [ebp - 0x94], 0
je 0x58d71d
jmp 0x58d191
jmp 0x58d1f7
mov eax, 0x696260
lea ecx, [ebp - 0x1a0]
sub eax, 0x7e1ae418
push eax
call fcn.00597530
push 0
push 0
mov byte [ebp - 4], 0xa
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58d33d
mov ax, word [ebp - 0x168]
cmp ax, 1
je 0x58d33d
test ax, ax
je 0x58d33d
jmp 0x58d2b7
push dword [ebp - 0x160]
lea eax, [ebp - 0x90]
push 0x695f80
push eax
call fcn.005c0374
add esp, 0xc
lea eax, [ebp - 0x90]
lea ecx, [ebp - 0xac]
push eax
call fcn.00580b90
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf4]
call fcn.00580070
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0xc4]
call fcn.00580070
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00580070
mov eax, esi
push eax
call edi
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58d3a3
jmp 0x58d409
mov eax, 0x69627c
lea ecx, [ebp - 0x1a8]
sub eax, 0x278cbf8a
push eax
call fcn.00597580
push 0
push 0
mov byte [ebp - 4], 0xc
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58d520
cmp word [ebp - 0x168], 8
jne 0x58d520
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0xd
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d497
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0xe
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d4d7
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0xf
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d517
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
lea eax, [ebp - 0x168]
push eax
call edi
jmp 0x58d586
mov eax, 0x6962a0
lea ecx, [ebp - 0xa8]
sub eax, 0x3a66cc02
push eax
call fcn.005975d0
push 0
push 0
mov byte [ebp - 4], 0x10
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58d69d
cmp word [ebp - 0x168], 8
jne 0x58d69d
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x11
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d614
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x12
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d654
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x13
call fcn.00580070
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58d694
push dword [ebp - 0xac]
call fcn.0059c050
add esp, 4
lea eax, [ebp - 0x168]
push eax
call edi
jmp 0x58d703
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58d0a0
jmp 0x58d783
push 0x56c152e5
lea ecx, [ebp - 0x1a8]
call 0x5976b0
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x14
call fcn.0058b710
mov esi, eax
mov ebx, 0x6962e4
lea ecx, [ebp - 0x180]
sub ebx, 0x127b1479
push ebx
call fcn.00597670
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x16
call fcn.0058b710
mov byte [ebp - 4], 0x17
mov esi, dword [esi]
test esi, esi
je 0x58d7da
mov esi, dword [esi]
jmp 0x58d7dc
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58d7e6
mov edx, dword [eax]
jmp 0x58d7e8
xor edx, edx
mov eax, dword [ebp - 0x154]
lea edi, [ebp - 0x150]
push edi
push 0
push 0x30
mov ecx, dword [eax]
push esi
push edx
push eax
call dword [ecx + 0x50]
lea ecx, [ebp - 0x178]
mov esi, eax
call fcn.0058b860
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.0058b860
mov byte [ebp - 4], 3
jmp 0x58d88d
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
js 0x58dfa2
jmp 0x58d901
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58de33
nop
mov eax, dword [ecx]
lea edx, [ebp - 0x94]
push edx
lea edx, [ebp - 0x14c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
cmp dword [ebp - 0x94], 0
je 0x58de33
jmp 0x58d99b
push 0x49867ba8
lea ecx, [ebp - 0xac]
call 0x5976f0
push 0
push 0
mov byte [ebp - 4], 0x18
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58da3d
mov ax, word [ebp - 0x168]
cmp ax, 1
je 0x58da3d
test ax, ax
je 0x58da3d
push dword [ebp - 0x160]
lea eax, [ebp - 0x90]
push 0x68fa90
push eax
call fcn.005c0374
add esp, 0xc
lea eax, [ebp - 0x90]
lea ecx, [ebp - 0xac]
push eax
call fcn.00580b90
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xdc]
call fcn.00580070
mov eax, esi
push eax
call edi
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58daa3
mov eax, 0x696308
lea ecx, [ebp - 0x1a4]
sub eax, 0x73407540
push eax
call fcn.005977b0
push 0
push 0
mov byte [ebp - 4], 0x1a
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58db92
cmp word [ebp - 0x168], 8
jne 0x58db92
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1b
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x1c
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x1d
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58dbf8
jmp 0x58dc5e
jmp 0x58dcc4
mov eax, 0x696328
lea ecx, [ebp - 0x1a4]
sub eax, 0x78dc1078
push eax
call fcn.00597800
push 0
push 0
mov byte [ebp - 4], 0x1e
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58ddb3
cmp word [ebp - 0x168], 8
jne 0x58ddb3
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1f
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x20
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x21
call fcn.00580070
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58de19
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58d910
jmp 0x58de99
push 0x700b0725
lea ecx, [ebp - 0x1a4]
call 0x597850
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x22
call fcn.0058b710
mov esi, eax
push ebx
lea ecx, [ebp - 0x180]
call fcn.00597670
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x24
call fcn.0058b710
mov byte [ebp - 4], 0x25
mov esi, dword [esi]
test esi, esi
je 0x58dee5
mov esi, dword [esi]
jmp 0x58dee7
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58def1
mov edx, dword [eax]
jmp 0x58def3
xor edx, edx
mov eax, dword [ebp - 0x154]
lea edi, [ebp - 0x150]
push edi
push 0
push 0x30
mov ecx, dword [eax]
push esi
push edx
push eax
call dword [ecx + 0x50]
lea ecx, [ebp - 0x178]
mov esi, eax
call fcn.0058b860
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.0058b860
mov byte [ebp - 4], 3
jmp 0x58df98
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
jns 0x58dfc5
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58fd6b
jmp 0x58e02b
jmp 0x58e091
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58e83a
nop
mov eax, dword [ecx]
lea edx, [ebp - 0x94]
push edx
lea edx, [ebp - 0x14c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
jmp 0x58e11e
cmp dword [ebp - 0x94], 0
je 0x58e83a
jmp 0x58e191
jmp 0x58e1f7
push 0xec518c4
lea ecx, [ebp - 0xa0]
call fcn.00597890
push 0
push 0
mov byte [ebp - 4], 0x26
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
xorps xmm0, xmm0
movq qword [ebp - 0xa0], xmm0
mov dword [ebp - 0x98], 0
test eax, eax
jne 0x58e327
cmp word [ebp - 0x168], 8
jne 0x58e327
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x27
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x28
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58e322
mov eax, esi
push eax
call edi
jmp 0x58e38d
push 0x5b8fc046
lea ecx, [ebp - 0x1a0]
call 0x5978f0
push 0
push 0
mov byte [ebp - 4], 0x29
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58e43a
cmp word [ebp - 0x168], 8
jne 0x58e43a
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x2a
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2b
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58e4a0
mov eax, 0x69639c
lea ecx, [ebp - 0x1a8]
sub eax, 0x4e801ce8
push eax
call fcn.00597940
push 0
push 0
mov byte [ebp - 4], 0x2c
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
jmp 0x58e53e
test eax, eax
jne 0x58e68d
cmp word [ebp - 0x168], 8
jne 0x58e68d
jmp 0x58e5ba
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x2d
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58e654
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2e
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58e6f3
mov eax, 0x6963c0
lea ecx, [ebp - 0x184]
sub eax, 0x7fb01ae4
push eax
call fcn.00597990
push 0
push 0
mov byte [ebp - 4], 0x2f
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
xorps xmm0, xmm0
movq qword [ebp - 0x184], xmm0
mov word [ebp - 0x17c], 0
test eax, eax
jne 0x58e7ba
cmp word [ebp - 0x168], 8
jne 0x58e7ba
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x30
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x31
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58e820
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58e0a0
jmp 0x58e8a0
push 0x2e00f935
lea ecx, [ebp - 0x1a8]
call 0x5979f0
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x32
call fcn.0058b710
mov esi, eax
push ebx
lea ecx, [ebp - 0x180]
call fcn.00597670
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x34
call fcn.0058b710
mov byte [ebp - 4], 0x35
mov esi, dword [esi]
test esi, esi
je 0x58e8ec
mov esi, dword [esi]
jmp 0x58e8ee
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58e8f8
mov edx, dword [eax]
jmp 0x58e8fa
xor edx, edx
mov eax, dword [ebp - 0x154]
lea ebx, [ebp - 0x150]
push ebx
push 0
push 0x30
mov ecx, dword [eax]
push esi
push edx
push eax
call dword [ecx + 0x50]
lea ecx, [ebp - 0x178]
mov esi, eax
call fcn.0058b860
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.0058b860
mov byte [ebp - 4], 3
jmp 0x58e99f
test esi, esi
jns 0x58eafc
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58ea19
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58ea8b
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58eaf7
jmp 0x58fd6b
jmp 0x58eb62
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58f46a
mov eax, dword [ecx]
lea edx, [ebp - 0x94]
push edx
lea edx, [ebp - 0x14c]
push edx
push 1
push 0xffffffffffffffff
push ecx
call dword [eax + 0x10]
jmp 0x58ebee
cmp dword [ebp - 0x94], 0
je 0x58f464
jmp 0x58ec61
jmp 0x58ecc7
push 0x93f07a4
lea ecx, [ebp - 0xa8]
call 0x597a30
push 0
push 0
mov byte [ebp - 4], 0x36
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
test eax, eax
jne 0x58eee2
cmp word [ebp - 0x168], 8
jne 0x58eee2
jmp 0x58ed75
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x37
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58ee0f
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x38
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58eea9
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x39
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58ef48
push 0x393bd760
lea ecx, [ebp - 0x1a0]
call fcn.00597ac0
push 0
push 0
mov byte [ebp - 4], 0x3a
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
jmp 0x58efe0
test eax, eax
jne 0x58f195
cmp word [ebp - 0x168], 8
jne 0x58f195
jmp 0x58f05c
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x3b
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58f0f6
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x3c
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58f190
mov eax, esi
push eax
call edi
jmp 0x58f1fb
push 0x4cb8e9c0
lea ecx, [ebp - 0x1a0]
call fcn.00597b10
push 0
push 0
mov byte [ebp - 4], 0x3d
lea esi, [ebp - 0x168]
mov ecx, dword [ebp - 0x14c]
push esi
push 0
push eax
mov edx, dword [ecx]
push ecx
call dword [edx + 0x10]
mov byte [ebp - 4], 3
jmp 0x58f293
test eax, eax
jne 0x58f3e2
cmp word [ebp - 0x168], 8
jne 0x58f3e2
jmp 0x58f30f
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x3e
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
jmp 0x58f3a9
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058c3e0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x3f
call fcn.00580070
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.0057eea0
mov eax, esi
push eax
call edi
jmp 0x58f448
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58eb70
jmp 0x58f46a
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ebx, dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58f4dc
mov esi, 0x696214
lea ecx, [ebp - 0x184]
sub esi, 0x99cc67
push esi
call fcn.005973c0
push eax
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x40
call fcn.00580b90
mov byte [ebp - 4], 0x42
xorps xmm0, xmm0
cmp dword [ebp - 0xe4], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58f551
sub esp, 0x18
lea eax, [ebp - 0xf4]
mov ecx, esp
push eax
call fcn.00580240
lea ecx, [ebp - 0x19c]
call fcn.005988c0
add esp, 0x18
lea ecx, [ebp - 0x118]
push eax
call fcn.00594a20
lea ecx, [ebp - 0x19c]
call fcn.0057eea0
jmp 0x58f5b7
push esi
lea ecx, [ebp - 0x184]
call fcn.005973c0
push eax
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x43
call fcn.00580b90
mov byte [ebp - 4], 0x45
xorps xmm0, xmm0
cmp dword [ebp - 0xb4], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58f621
sub esp, 0x18
lea eax, [ebp - 0xc4]
mov ecx, esp
push eax
call fcn.00580240
lea ecx, [ebp - 0x19c]
call fcn.005988c0
add esp, 0x18
lea ecx, [ebp - 0x130]
push eax
call fcn.00594a20
lea ecx, [ebp - 0x19c]
call fcn.0057eea0
jmp 0x58f687
jmp 0x58f6ed
jmp 0x58f753
jmp 0x58f7b9
jmp 0x58f81f
push esi
lea ecx, [ebp - 0x184]
call fcn.005973c0
push eax
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x46
call fcn.00580b90
mov byte [ebp - 4], 0x48
xorps xmm0, xmm0
cmp dword [ebp - 0xcc], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58f889
sub esp, 0x18
lea eax, [ebp - 0xdc]
mov ecx, esp
push eax
call fcn.00580240
lea ecx, [ebp - 0x19c]
call fcn.005988c0
add esp, 0x18
lea ecx, [ebp - 0x148]
push eax
call fcn.00594a20
lea ecx, [ebp - 0x19c]
call fcn.0057eea0
jmp 0x58f8ef
push 0x41
push 0
push 0x890d4c
call fcn.005c3c50
add esp, 0xc
jmp 0x58f966
push 0x41
push 0
push 0x890d8d
call fcn.005c3c50
add esp, 0xc
jmp 0x58f9dd
push 0x41
push 0
push 0x890dce
call fcn.005c3c50
add esp, 0xc
jmp 0x58fa54
cmp dword [ebp - 0x104], 0x10
lea eax, [ebp - 0x118]
push dword [ebp - 0x108]
cmovae eax, dword [ebp - 0x118]
push eax
push 0x890d4c
call fcn.005c3ce0
add esp, 0xc
jmp 0x58fae2
cmp dword [ebp - 0x11c], 0x10
lea eax, [ebp - 0x130]
push dword [ebp - 0x120]
cmovae eax, dword [ebp - 0x130]
push eax
push 0x890d8d
call fcn.005c3ce0
add esp, 0xc
jmp 0x58fb70
cmp dword [ebp - 0x134], 0x10
lea eax, [ebp - 0x148]
push dword [ebp - 0x138]
cmovae eax, dword [ebp - 0x148]
push eax
push 0x890dce
call fcn.005c3ce0
add esp, 0xc
jmp 0x58fbfe
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58fc70
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58fce2
call ebx
jmp 0x58fd4a
lea ecx, [ebp - 0x148]
call fcn.0057eea0
lea ecx, [ebp - 0x130]
call fcn.0057eea0
lea ecx, [ebp - 0x118]
call fcn.0057eea0
cmp dword [ebp - 0xc8], 0x10
jb 0x58fd82
push dword [ebp - 0xdc]
call fcn.0059c050
add esp, 4
cmp dword [ebp - 0xb0], 0x10
jb 0x58fd99
push dword [ebp - 0xc4]
call fcn.0059c050
add esp, 4
cmp dword [ebp - 0xe0], 0x10
jb 0x58fdb0
push dword [ebp - 0xf4]
call fcn.0059c050
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005bf536
mov esp, ebp
pop ebp
ret