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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5ddce2
mov eax, dword fs:[0]
push eax
sub esp, 0x19c
mov eax, dword [0x6c2da0]
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 0x58a654
jmp 0x58a6ba
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 0x58a75a
mov dword [ebp - 0xe0], 0xf
mov dword [ebp - 0xe4], 0
mov byte [ebp - 0xf4], 0
mov byte [ebp - 4], 1
jmp 0x58a7df
mov dword [ebp - 0xb0], 0xf
mov dword [ebp - 0xb4], 0
mov byte [ebp - 0xc4], 0
mov byte [ebp - 4], 2
jmp 0x58a864
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 0x58dd70
jmp 0x58a8fb
jmp 0x58a961
lea eax, [ebp - 0x170]
mov dword [ebp - 0x170], 0
push eax
push 0x684cf0
push 1
push 0
push 0x684ce0
call dword [sym.imp.ole32.dll_CoCreateInstance]
jmp 0x58a9ec
test eax, eax
js 0x58ad7c
jmp 0x58aa5a
jmp 0x58aac0
mov dword [ebp - 0x154], 0
jmp 0x58ab30
push 0x43e36a36
lea ecx, [ebp - 0x16c]
call fcn.00593e00
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 4
call fcn.00589770
mov byte [ebp - 4], 5
mov edx, dword [eax]
test edx, edx
je 0x58ab5e
mov edx, dword [edx]
jmp 0x58ab60
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.00589820
mov byte [ebp - 4], 3
jmp 0x58abf7
mov ebx, dword [sym.imp.ole32.dll_CoUninitialize]
test esi, esi
jns 0x58ac14
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call ebx
jmp 0x58d436
jmp 0x58ac7a
jmp 0x58ace0
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 0x58ad60
test eax, eax
jns 0x58ad87
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 0x58dd70
jmp 0x58aded
push 0x7560e48
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x150], 0
call fcn.00593ec0
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 6
call fcn.005896d0
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.005896d0
mov byte [ebp - 4], 9
mov esi, dword [esi]
test esi, esi
je 0x58ae47
mov esi, dword [esi]
jmp 0x58ae49
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58ae53
mov edx, dword [eax]
jmp 0x58ae55
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.00589820
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x174], 0
call fcn.00589820
mov byte [ebp - 4], 3
jmp 0x58aefa
test esi, esi
js 0x58ad64
jmp 0x58af68
mov dword [ebp - 0x14c], 0
jmp 0x58afd8
mov dword [ebp - 0x94], 0
jmp 0x58b048
mov ecx, dword [ebp - 0x150]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test ecx, ecx
je 0x58b6dd
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 0x58b0de
cmp dword [ebp - 0x94], 0
je 0x58b6dd
jmp 0x58b151
jmp 0x58b1b7
mov eax, 0x68c100
lea ecx, [ebp - 0x1a0]
sub eax, 0x7e1ae418
push eax
call fcn.00593f00
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 0x58b2fd
mov ax, word [ebp - 0x168]
cmp ax, 1
je 0x58b2fd
test ax, ax
je 0x58b2fd
jmp 0x58b277
push dword [ebp - 0x160]
lea eax, [ebp - 0x90]
push 0x68be48
push eax
call fcn.005bbcbd
add esp, 0xc
lea eax, [ebp - 0x90]
lea ecx, [ebp - 0xac]
push eax
call fcn.005834a0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf4]
call fcn.00592780
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0xc4]
call fcn.00592780
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00592780
mov eax, esi
push eax
call edi
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58b363
jmp 0x58b3c9
mov eax, 0x68c11c
lea ecx, [ebp - 0x1a8]
sub eax, 0x278cbf8a
push eax
call fcn.00593f50
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 0x58b4e0
cmp word [ebp - 0x168], 8
jne 0x58b4e0
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0xd
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b457
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0xe
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b497
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0xf
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b4d7
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
lea eax, [ebp - 0x168]
push eax
call edi
jmp 0x58b546
mov eax, 0x68c140
lea ecx, [ebp - 0xa8]
sub eax, 0x3a66cc02
push eax
call fcn.00593fa0
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 0x58b65d
cmp word [ebp - 0x168], 8
jne 0x58b65d
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x11
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b5d4
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x12
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b614
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x13
call fcn.00592780
mov byte [ebp - 4], 3
cmp dword [ebp - 0x98], 0x10
jb 0x58b654
push dword [ebp - 0xac]
call fcn.00598830
add esp, 4
lea eax, [ebp - 0x168]
push eax
call edi
jmp 0x58b6c3
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58b060
jmp 0x58b743
push 0x56c0b185
lea ecx, [ebp - 0x1a8]
call 0x594080
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x14
call fcn.005896d0
mov esi, eax
mov ebx, 0x68c184
lea ecx, [ebp - 0x180]
sub ebx, 0x127b1479
push ebx
call fcn.00594040
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x16
call fcn.005896d0
mov byte [ebp - 4], 0x17
mov esi, dword [esi]
test esi, esi
je 0x58b79a
mov esi, dword [esi]
jmp 0x58b79c
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58b7a6
mov edx, dword [eax]
jmp 0x58b7a8
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.00589820
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.00589820
mov byte [ebp - 4], 3
jmp 0x58b84d
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
js 0x58bf62
jmp 0x58b8c1
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58bdf3
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 0x58bdf3
jmp 0x58b95b
push 0x4985da48
lea ecx, [ebp - 0xac]
call 0x5940c0
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 0x58b9fd
mov ax, word [ebp - 0x168]
cmp ax, 1
je 0x58b9fd
test ax, ax
je 0x58b9fd
push dword [ebp - 0x160]
lea eax, [ebp - 0x90]
push 0x685a3c
push eax
call fcn.005bbcbd
add esp, 0xc
lea eax, [ebp - 0x90]
lea ecx, [ebp - 0xac]
push eax
call fcn.005834a0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xdc]
call fcn.00592780
mov eax, esi
push eax
call edi
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58ba63
mov eax, 0x68c1a8
lea ecx, [ebp - 0x1a4]
sub eax, 0x73407540
push eax
call fcn.00594180
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 0x58bb52
cmp word [ebp - 0x168], 8
jne 0x58bb52
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1b
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x1c
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x1d
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58bbb8
jmp 0x58bc1e
jmp 0x58bc84
mov eax, 0x68c1c8
lea ecx, [ebp - 0x1a4]
sub eax, 0x78dc1078
push eax
call fcn.005941d0
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 0x58bd73
cmp word [ebp - 0x168], 8
jne 0x58bd73
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1f
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x20
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x21
call fcn.00592780
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58bdd9
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58b8d0
jmp 0x58be59
push 0x700a65c5
lea ecx, [ebp - 0x1a4]
call 0x594220
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x22
call fcn.005896d0
mov esi, eax
push ebx
lea ecx, [ebp - 0x180]
call fcn.00594040
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x24
call fcn.005896d0
mov byte [ebp - 4], 0x25
mov esi, dword [esi]
test esi, esi
je 0x58bea5
mov esi, dword [esi]
jmp 0x58bea7
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58beb1
mov edx, dword [eax]
jmp 0x58beb3
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.00589820
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.00589820
mov byte [ebp - 4], 3
jmp 0x58bf58
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
test esi, esi
jns 0x58bf85
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 0x58dd2b
jmp 0x58bfeb
jmp 0x58c051
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58c7fa
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 0x58c0de
cmp dword [ebp - 0x94], 0
je 0x58c7fa
jmp 0x58c151
jmp 0x58c1b7
push 0xec47764
lea ecx, [ebp - 0xa0]
call fcn.00594260
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 0x58c2e7
cmp word [ebp - 0x168], 8
jne 0x58c2e7
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x27
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x28
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58c2e2
mov eax, esi
push eax
call edi
jmp 0x58c34d
push 0x5b8f1ee6
lea ecx, [ebp - 0x1a0]
call fcn.005942c0
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 0x58c3fa
cmp word [ebp - 0x168], 8
jne 0x58c3fa
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x2a
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2b
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58c460
mov eax, 0x68c23c
lea ecx, [ebp - 0x1a8]
sub eax, 0x4e801ce8
push eax
call fcn.00594310
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 0x58c4fe
test eax, eax
jne 0x58c64d
cmp word [ebp - 0x168], 8
jne 0x58c64d
jmp 0x58c57a
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x2d
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58c614
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2e
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58c6b3
mov eax, 0x68c260
lea ecx, [ebp - 0x184]
sub eax, 0x7fb01ae4
push eax
call fcn.00594360
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 0x58c77a
cmp word [ebp - 0x168], 8
jne 0x58c77a
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x30
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x31
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58c7e0
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58c060
jmp 0x58c860
push 0x2e0057d5
lea ecx, [ebp - 0x1a8]
call fcn.005943c0
push eax
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x32
call fcn.005896d0
mov esi, eax
push ebx
lea ecx, [ebp - 0x180]
call fcn.00594040
push eax
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x34
call fcn.005896d0
mov byte [ebp - 4], 0x35
mov esi, dword [esi]
test esi, esi
je 0x58c8ac
mov esi, dword [esi]
jmp 0x58c8ae
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x58c8b8
mov edx, dword [eax]
jmp 0x58c8ba
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.00589820
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x180], 0
call fcn.00589820
mov byte [ebp - 4], 3
jmp 0x58c95f
test esi, esi
jns 0x58cabc
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58c9d9
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58ca4b
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58cab7
jmp 0x58dd2b
jmp 0x58cb22
mov ecx, dword [ebp - 0x150]
test ecx, ecx
je 0x58d42a
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 0x58cbae
cmp dword [ebp - 0x94], 0
je 0x58d424
jmp 0x58cc21
jmp 0x58cc87
push 0x93e6644
lea ecx, [ebp - 0xa8]
call 0x594400
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 0x58cea2
cmp word [ebp - 0x168], 8
jne 0x58cea2
jmp 0x58cd35
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x37
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58cdcf
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x38
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58ce69
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x39
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58cf08
push 0x393b3600
lea ecx, [ebp - 0x1a0]
call fcn.00594490
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 0x58cfa0
test eax, eax
jne 0x58d155
cmp word [ebp - 0x168], 8
jne 0x58d155
jmp 0x58d01c
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x3b
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58d0b6
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x3c
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58d150
mov eax, esi
push eax
call edi
jmp 0x58d1bb
push 0x4cb84860
lea ecx, [ebp - 0x1a0]
call 0x5944e0
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 0x58d253
test eax, eax
jne 0x58d3a2
cmp word [ebp - 0x168], 8
jne 0x58d3a2
jmp 0x58d2cf
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x3e
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
jmp 0x58d369
mov edx, dword [ebp - 0x160]
lea ecx, [ebp - 0x19c]
call fcn.0058a3a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x3f
call fcn.00592780
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 3
call fcn.00583500
mov eax, esi
push eax
call edi
jmp 0x58d408
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov ecx, dword [ebp - 0x150]
test ecx, ecx
jne 0x58cb30
jmp 0x58d42a
mov ecx, dword [ebp - 0x150]
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ebx, dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x58d49c
mov esi, 0x68c0b0
lea ecx, [ebp - 0x184]
sub esi, 0x99cc67
push esi
call fcn.00593d90
push eax
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x40
call fcn.005834a0
mov byte [ebp - 4], 0x42
xorps xmm0, xmm0
cmp dword [ebp - 0xe4], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58d511
sub esp, 0x18
lea eax, [ebp - 0xf4]
mov ecx, esp
push eax
call fcn.00588800
lea ecx, [ebp - 0x19c]
call fcn.005950a0
add esp, 0x18
lea ecx, [ebp - 0x118]
push eax
call fcn.00592510
lea ecx, [ebp - 0x19c]
call fcn.00583500
jmp 0x58d577
push esi
lea ecx, [ebp - 0x184]
call fcn.00593d90
push eax
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x43
call fcn.005834a0
mov byte [ebp - 4], 0x45
xorps xmm0, xmm0
cmp dword [ebp - 0xb4], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58d5e1
sub esp, 0x18
lea eax, [ebp - 0xc4]
mov ecx, esp
push eax
call fcn.00588800
lea ecx, [ebp - 0x19c]
call fcn.005950a0
add esp, 0x18
lea ecx, [ebp - 0x130]
push eax
call fcn.00592510
lea ecx, [ebp - 0x19c]
call fcn.00583500
jmp 0x58d647
jmp 0x58d6ad
jmp 0x58d713
jmp 0x58d779
jmp 0x58d7df
push esi
lea ecx, [ebp - 0x184]
call fcn.00593d90
push eax
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x46
call fcn.005834a0
mov byte [ebp - 4], 0x48
xorps xmm0, xmm0
cmp dword [ebp - 0xcc], 0
movq qword [ebp - 0x184], xmm0
jbe 0x58d849
sub esp, 0x18
lea eax, [ebp - 0xdc]
mov ecx, esp
push eax
call fcn.00588800
lea ecx, [ebp - 0x19c]
call fcn.005950a0
add esp, 0x18
lea ecx, [ebp - 0x148]
push eax
call fcn.00592510
lea ecx, [ebp - 0x19c]
call fcn.00583500
jmp 0x58d8af
push 0x41
push 0
push 0x87a46c
call fcn.005bf5d0
add esp, 0xc
jmp 0x58d926
push 0x41
push 0
push 0x87a4ad
call fcn.005bf5d0
add esp, 0xc
jmp 0x58d99d
push 0x41
push 0
push 0x87a4ee
call fcn.005bf5d0
add esp, 0xc
jmp 0x58da14
cmp dword [ebp - 0x104], 0x10
lea eax, [ebp - 0x118]
push dword [ebp - 0x108]
cmovae eax, dword [ebp - 0x118]
push eax
push 0x87a46c
call fcn.005bf660
add esp, 0xc
jmp 0x58daa2
cmp dword [ebp - 0x11c], 0x10
lea eax, [ebp - 0x130]
push dword [ebp - 0x120]
cmovae eax, dword [ebp - 0x130]
push eax
push 0x87a4ad
call fcn.005bf660
add esp, 0xc
jmp 0x58db30
cmp dword [ebp - 0x134], 0x10
lea eax, [ebp - 0x148]
push dword [ebp - 0x138]
cmovae eax, dword [ebp - 0x148]
push eax
push 0x87a4ee
call fcn.005bf660
add esp, 0xc
jmp 0x58dbbe
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58dc30
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x58dca2
call ebx
jmp 0x58dd0a
lea ecx, [ebp - 0x148]
call fcn.00583500
lea ecx, [ebp - 0x130]
call fcn.00583500
lea ecx, [ebp - 0x118]
call fcn.00583500
cmp dword [ebp - 0xc8], 0x10
jb 0x58dd42
push dword [ebp - 0xdc]
call fcn.00598830
add esp, 4
cmp dword [ebp - 0xb0], 0x10
jb 0x58dd59
push dword [ebp - 0xc4]
call fcn.00598830
add esp, 4
cmp dword [ebp - 0xe0], 0x10
jb 0x58dd70
push dword [ebp - 0xf4]
call fcn.00598830
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.005bb4c3
mov esp, ebp
pop ebp
ret