Function at 0x582b81
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5da8ec
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x1c1c
call fcn.00523610
mov eax, dword [0x66fa30]
push ebx
push esi
push edi
push 0xc
dec eax
pop esi
mov ebx, ecx
mov dword [esp + 0x10], ebx
cmp eax, esi
ja case.default.0x582bc1
jmp dword [eax*4 + 0x5852d3]
lea eax, [esp + 0x6c]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
xor edi, edi
mov ecx, eax
mov dword [esp + 0x1c34], edi
call fcn.004014f9
push eax
push 0xb0
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x6c]
call fcn.004014f4
push edi
push dword [ebx + 0x4144]
call fcn.005b458b
push 5
pop esi
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push edi
push dword [ebx + 0x8080]
call fcn.005b458b
push edi
push dword [ebx + 0x8908]
call fcn.005b458b
push edi
push dword [ebx + 0x94b8]
call fcn.005b458b
push edi
push dword [ebx + 0xa868]
call fcn.005b458b
push edi
push dword [ebx + 0xb070]
call fcn.005b458b
push edi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x10954]
call fcn.005b458b
push edi
push dword [ebx + 0x11158]
call fcn.005b458b
push edi
push dword [ebx + 0x11958]
call fcn.005b458b
push edi
push dword [ebx + 0x1215c]
call fcn.005b458b
push edi
push dword [ebx + 0x12960]
call fcn.005b458b
push edi
push dword [ebx + 0x130c8]
call fcn.005b458b
push edi
push dword [ebx + 0x136a4]
call fcn.005b458b
push edi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push edi
push dword [ebx + 0x23fc]
call fcn.005b458b
push edi
push dword [ebx + 0x25a4]
call fcn.005b458b
push edi
push dword [ebx + 0x274c]
call fcn.005b458b
push edi
push dword [ebx + 0x28f4]
call fcn.005b458b
push edi
push dword [ebx + 0x2a9c]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x37f8]
call fcn.005b458b
push esi
push dword [ebx + 0x391c]
call fcn.005b458b
push esi
push dword [ebx + 0x3a40]
call fcn.005b458b
push esi
push dword [ebx + 0x3b64]
call fcn.005b458b
push esi
push dword [ebx + 0x3c88]
call fcn.005b458b
push esi
push dword [ebx + 0x3dac]
call fcn.005b458b
push esi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x38
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
push 0xffffff
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
xor esi, esi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
jmp case.default.0x582bc1
mov eax, dword [0x6593c0]
xor esi, esi
cmp eax, esi
jbe 0x582e9b
push eax
push dword [ebx + 0x20]
call fcn.005b3c5d
or dword [0x6593c0], 0xffffffff
pop ecx
pop ecx
mov ecx, dword [ebx + 0x8034]
mov eax, 0x6714cc
call fcn.0058f896
mov ecx, dword [ebx + 0x8038]
mov eax, 0x6714f4
call fcn.0058f896
mov ecx, dword [ebx + 0x803c]
mov eax, 0x67151c
call fcn.0058f896
mov ecx, dword [ebx + 0x8040]
mov eax, 0x671544
call fcn.0058f896
mov ecx, dword [ebx + 0x8044]
mov eax, 0x67156c
call fcn.0058f896
mov ecx, dword [ebx + 0x8048]
mov eax, 0x671594
call fcn.0058f896
mov ecx, dword [ebx + 0x804c]
mov eax, 0x6715bc
call fcn.0058f896
mov ecx, dword [ebx + 0x8050]
mov eax, 0x6715e4
call fcn.0058f896
mov ecx, dword [ebx + 0x8054]
mov eax, 0x67160c
call fcn.0058f896
mov ecx, dword [ebx + 0x8058]
mov eax, 0x671634
call fcn.0058f896
mov ecx, dword [ebx + 0x805c]
mov eax, 0x67165c
call fcn.0058f896
mov edi, 0x6713bc
call fcn.005bb227
cmp dword [0x67199c], esi
jne 0x58308e
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
jne 0x58308e
cmp dword [ebx + 0x1c0c4], esi
jne 0x58308e
push dword [0x66fa2c]
call fcn.0056f167
add esp, 4
push ebx
call fcn.00571549
test al, al
jne 0x582fa3
mov esi, ebx
call fcn.0057c100
jmp case.default.0x582bc1
push 2
call fcn.0056f167
add esp, 4
push esi
mov ecx, ebx
call fcn.0058914b
lea eax, [esp + 0x100]
push 0x104
push eax
call fcn.005b3720
pop ecx
pop ecx
test eax, eax
je 0x58308e
lea eax, [esp + 0x48]
push 0x609cd4
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
call fcn.004014f9
push eax
call dword [sym.imp.SHLWAPI.dll_StrDupW]
lea ecx, [esp + 0x48]
mov edi, eax
call fcn.004014f4
push 0x38
lea eax, [esp + 0x7c]
push esi
push eax
mov dword [esp + 0x80], 0x3c
call fcn.005216d0
lea eax, [esp + 0x10c]
add esp, 0xc
mov dword [esp + 0x84], eax
lea eax, [esp + 0x50]
push 0x6176e0
push eax
mov dword [esp + 0x88], edi
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
call fcn.004014f9
lea ecx, [esp + 0x50]
mov dword [esp + 0x88], eax
call fcn.004014f4
xor esi, esi
lea eax, [esp + 0x74]
inc esi
push eax
mov ecx, ebx
mov dword [esp + 0x94], esi
call fcn.0057769b
test eax, eax
jne 0x583084
push 5
mov ecx, ebx
call fcn.0058914b
push esi
call fcn.0056f167
add esp, 4
jmp 0x582f97
call fcn.005800c6
jmp case.default.0x582bc1
lea esi, [ebx + 0x8060]
mov dword [esp + 0x14], esi
call fcn.00557f50
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
jne 0x58312a
cmp dword [ebx + 0x1c0c4], 0
jne 0x58312a
mov eax, dword [ebx + 0x8034]
mov dword [0x66fa38], eax
mov eax, dword [ebx + 0x8038]
mov dword [0x66fa3c], eax
mov eax, dword [ebx + 0x803c]
mov dword [0x66fa40], eax
mov eax, dword [ebx + 0x8040]
mov dword [0x66fa44], eax
mov eax, dword [ebx + 0x8044]
mov dword [0x66fa48], eax
mov eax, dword [ebx + 0x8048]
mov dword [0x66fa4c], eax
mov eax, dword [ebx + 0x804c]
mov dword [0x66fa50], eax
mov eax, dword [ebx + 0x8050]
mov dword [0x66fa54], eax
mov eax, dword [ebx + 0x8054]
mov dword [0x66fa58], eax
mov eax, dword [ebx + 0x8058]
mov dword [0x66fa5c], eax
mov eax, dword [ebx + 0x805c]
jmp 0x58315f
xor eax, eax
inc eax
mov dword [0x66fa38], eax
mov dword [0x66fa3c], eax
mov dword [0x66fa40], eax
mov dword [0x66fa44], eax
mov dword [0x66fa48], eax
mov dword [0x66fa4c], eax
mov dword [0x66fa50], eax
mov dword [0x66fa54], eax
mov dword [0x66fa58], eax
mov dword [0x66fa5c], eax
lea ebx, [esp + 0x20]
mov dword [0x66fa60], eax
call fcn.0055f0d4
mov eax, ebx
push eax
mov esi, 0x66fa38
mov dword [esp + 0x1c38], 1
call fcn.00561685
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
mov dword [esi + 0x1c110], eax
call fcn.00557dd8
lea eax, [esp + 0x3c]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov byte [esp + 0x1c34], 2
call fcn.004014f9
push eax
push 0xc8
lea ecx, [esi + 0x218]
call fcn.0056ee68
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c34], 1
call fcn.004014f4
push 5
pop edi
push edi
push dword [esi + 0x8748]
call fcn.005b458b
push edi
push dword [esi + 0x87bc]
call fcn.005b458b
xor ebx, ebx
push ebx
push dword [esi + 0x4144]
call fcn.005b458b
push ebx
push dword [esi + 0x56d0]
call fcn.005b458b
push edi
push dword [esi + 0x8080]
call fcn.005b458b
push ebx
push dword [esi + 0x8908]
call fcn.005b458b
push ebx
push dword [esi + 0x94b8]
call fcn.005b458b
push ebx
push dword [esi + 0xa868]
call fcn.005b458b
add esp, 0x40
push ebx
push dword [esi + 0xb070]
call fcn.005b458b
push ebx
push dword [esi + 0xd9e8]
call fcn.005b458b
push ebx
push dword [esi + 0x10954]
call fcn.005b458b
push ebx
push dword [esi + 0x11158]
call fcn.005b458b
push ebx
push dword [esi + 0x11958]
call fcn.005b458b
push ebx
push dword [esi + 0x1215c]
call fcn.005b458b
push ebx
push dword [esi + 0x12960]
call fcn.005b458b
push ebx
push dword [esi + 0x130c8]
call fcn.005b458b
add esp, 0x40
push ebx
push dword [esi + 0x136a4]
call fcn.005b458b
push ebx
push dword [esi + 0xeeec]
call fcn.005b458b
push ebx
push dword [esi + 0x20ac]
call fcn.005b458b
push ebx
push dword [esi + 0x2254]
call fcn.005b458b
push ebx
push dword [esi + 0x1f04]
call fcn.005b458b
push edi
push dword [esi + 0x23fc]
call fcn.005b458b
push ebx
push dword [esi + 0x25a4]
call fcn.005b458b
push ebx
push dword [esi + 0x274c]
call fcn.005b458b
add esp, 0x40
push ebx
push dword [esi + 0x28f4]
call fcn.005b458b
push ebx
push dword [esi + 0x2a9c]
call fcn.005b458b
push edi
push dword [esi + 0x37f8]
call fcn.005b458b
push edi
push dword [esi + 0x391c]
call fcn.005b458b
push edi
push dword [esi + 0x3a40]
call fcn.005b458b
push edi
push dword [esi + 0x3b64]
call fcn.005b458b
push edi
push dword [esi + 0x3c88]
call fcn.005b458b
push edi
push dword [esi + 0x3dac]
call fcn.005b458b
add esp, 0x40
push edi
push dword [esi + 0x3ed0]
call fcn.005b458b
pop ecx
pop ecx
lea ecx, [esi + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [esi + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [esi + 0x3a20]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [esi + 0x3b44]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [esi + 0x3c68]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [esi + 0x3d8c]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [esi + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push ebx
push dword [esi + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push ebx
push dword [esi + 0x3ed0]
call fcn.005b500a
add esp, 0xc
mov eax, esi
mov dword [esi + 0x1c104], ebx
mov dword [esi + 0x1c0d0], edi
call fcn.0056fa8b
lea eax, [esp + 0x18]
push eax
push ebx
push esi
push 0x57e253
call fcn.005b378a
or dword [esp + 0x1c44], 0xffffffff
mov dword [esi + 0x1c0dc], eax
add esp, 0x10
lea eax, [esp + 0x20]
mov dword [esi + 0x1c100], edi
call fcn.0055eb98
mov ebx, esi
jmp case.default.0x582bc1
lea eax, [esp + 0x58]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 3
call fcn.004014f9
push eax
push 0xd5
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x58]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x8748]
call fcn.005b458b
push esi
push dword [ebx + 0x87bc]
call fcn.005b458b
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
add esp, 0x28
mov edi, 0x6712c8
call fcn.0058e06d
push 5
test al, al
je 0x58354d
push dword [ebx + 0x94b8]
jmp 0x583553
push dword [ebx + 0x8908]
call fcn.005b458b
pop ecx
pop ecx
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x18
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
je 0x5835f5
push esi
jmp 0x5835f7
push 5
push dword [ebx + 0x2254]
call fcn.005b458b
pop ecx
pop ecx
push 5
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x28f4]
call fcn.005b458b
push esi
push dword [ebx + 0x2a9c]
call fcn.005b458b
add esp, 0x20
cmp dword [0x66fa68], esi
je 0x58366e
push 5
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
add esp, 0x10
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
jne 0x5836a8
push 5
jmp 0x5836a9
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
je 0x58368c
push 5
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
jmp 0x58369a
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push 5
push dword [ebx + 0x1f04]
call fcn.005b458b
add esp, 0x10
push esi
push dword [ebx + 0x930c]
call fcn.005b458b
pop ecx
pop ecx
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push 5
pop edi
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x40
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
lea eax, [ebx + 0xad3c]
call fcn.004041e6
push esi
push esi
push 0x110a
push dword [eax + 0x20]
mov dword [esp + 0x28], eax
call fcn.005b57ce
mov dword [esp + 0x24], esi
jmp 0x583855
push dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
call fcn.004244ac
mov dword [esp + 0x14], eax
cmp eax, esi
jne 0x583860
push dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
push edi
push 0x110a
push dword [eax + 0x20]
call fcn.005b57ce
add esp, 0x10
mov dword [esp + 0x10], eax
cmp eax, esi
jne 0x58382a
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
jne 0x583877
cmp dword [esp + 0x14], esi
jne 0x583877
push esi
jmp 0x583879
push 1
push dword [ebx + 0x25a4]
call fcn.005b3a07
pop ecx
pop ecx
jmp case.default.0x582bc1
inc dword [ebx + 0x1c104]
lea eax, [esp + 0x44]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 4
call fcn.004014f9
push eax
push 0xd5
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x44]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push 5
push dword [ebx + 0xa868]
call fcn.005b458b
add esp, 0x30
mov edi, 0x6712c8
call fcn.0058e06d
movzx ecx, al
lea eax, [ebx + 0xad3c]
call fcn.005a3076
push dword [ebx + 0x1c104]
lea ecx, [ebx + 0xa848]
call fcn.00555dbe
call fcn.0058e06d
test al, al
je 0x58397b
push 0x671b94
push 0x671b80
push 0x671aa4
push 0x671a90
lea eax, [ebx + 0xa848]
push eax
call fcn.00556a5c
jmp 0x583a13
lea eax, [esp + 0xd8]
call fcn.0040a008
mov esi, eax
lea eax, [esp + 0xec]
mov dword [esp + 0x1c34], 5
call fcn.0040e4c3
mov edi, eax
lea eax, [esp + 0xc4]
call fcn.0040dd1a
mov dword [esp + 0x14], eax
lea eax, [esp + 0xb0]
call fcn.0040dc7b
push esi
push edi
mov byte [esp + 0x1c3c], 8
push dword [esp + 0x1c]
push eax
lea eax, [ebx + 0xa848]
push eax
call fcn.00556a5c
lea esi, [esp + 0xb0]
call fcn.0040dca8
lea esi, [esp + 0xc4]
call fcn.0040dd47
lea esi, [esp + 0xec]
call fcn.0040e4f0
or dword [esp + 0x1c34], 0xffffffff
lea esi, [esp + 0xd8]
call fcn.0040a3df
xor esi, esi
push 5
pop edi
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.004010a6
lea eax, [esp + 0x20]
push eax
push dword [ebx + 0x20]
call fcn.005b5a84
push edi
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push esi
push dword [ebx + 0x28f4]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x2a9c]
call fcn.005b458b
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x40
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
jmp 0x582e09
push 5
pop edi
push edi
push dword [ebx + 0x12f08]
call fcn.005b458b
lea eax, [esp + 0x64]
push 0x6091c8
push eax
call fcn.00404eed
add esp, 0x10
mov ecx, eax
mov dword [esp + 0x1c34], 9
call fcn.004014f9
push eax
push 0x11c
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x5c]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push edi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push edi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push esi
push dword [ebx + 0x28f4]
call fcn.005b458b
push esi
push dword [ebx + 0x2a9c]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x38
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
lea eax, [esp + 0x14]
push eax
push esi
push ebx
mov dword [ebx + 0x1c0d4], edi
push 0x57a25c
jmp 0x585037
xor esi, esi
push esi
push dword [ebx + 0x12f08]
call fcn.005b458b
lea eax, [esp + 0x54]
push 0x6091c8
push eax
call fcn.00404eed
add esp, 0x10
mov ecx, eax
mov dword [esp + 0x1c34], 0xa
call fcn.004014f9
push eax
push 0x11c
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x4c]
call fcn.004014f4
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push 5
pop edi
push edi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push edi
push dword [ebx + 0x28f4]
call fcn.005b458b
push edi
push dword [ebx + 0x2a9c]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x38
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
mov edi, 0xe6c885
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
push edi
push dword [ebx + 0x2a9c]
jmp 0x58387f
lea eax, [esp + 0x64]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 0xb
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x64]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push 5
pop edi
push edi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x40
lea ecx, [esp + 0x20]
call fcn.004010a6
lea eax, [esp + 0x20]
push eax
push dword [ebx + 0x20]
call fcn.005b5a84
push edi
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push edi
push dword [ebx + 0x28f4]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x2a9c]
call fcn.005b458b
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x40
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push 0xe6c885
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
lea esi, [ebx + 0xb050]
call fcn.0054560a
call fcn.005456f4
call fcn.00545684
call fcn.00545764
jmp case.default.0x582bc1
lea eax, [esp + 0x54]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], esi
call fcn.004014f9
push eax
push 0xe5
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x54]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
add esp, 0x38
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
je 0x584528
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
push 5
jmp 0x584536
push 5
push dword [ebx + 0xd9e8]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x10
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
add esp, 0x38
lea ecx, [esp + 0x20]
call fcn.004010a6
lea eax, [esp + 0x20]
push eax
push dword [ebx + 0x20]
call fcn.005b5a84
pop ecx
pop ecx
call fcn.0058e06d
test al, al
je 0x5845e8
push esi
push dword [ebx + 0x2254]
call fcn.005b458b
push 5
pop edi
push edi
push dword [ebx + 0x274c]
call fcn.005b458b
push esi
push dword [ebx + 0x28f4]
call fcn.005b458b
add esp, 0x18
jmp 0x584614
push 5
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push 5
push dword [ebx + 0x28f4]
call fcn.005b458b
add esp, 0x18
push 5
pop edi
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x2a9c]
call fcn.005b458b
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
add esp, 0x40
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x20
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
cmp dword [ebx + 0x1c174], esi
je case.default.0x582bc1
and dword [ebx + 0x1c174], esi
push edi
push 0
push dword [ebx + 0x20]
call fcn.005b500a
add esp, 0xc
lea eax, [esp + 0x34]
push 0x609e94
push eax
call fcn.00404eed
mov esi, eax
lea eax, [esp + 0x78]
push 0x617700
push eax
mov dword [esp + 0x1c44], 0xd
call fcn.00404eed
add esp, 0x10
mov edi, eax
push 0x24
mov ecx, esi
mov byte [esp + 0x1c38], 0xe
call fcn.004014f9
push eax
mov ecx, edi
call fcn.004014f9
push eax
mov ecx, ebx
call fcn.004010cc
push eax
call fcn.005b5b91
add esp, 0x10
lea ecx, [esp + 0x70]
mov esi, eax
call fcn.004014f4
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x34]
call fcn.004014f4
cmp esi, 6
jne case.default.0x582bc1
call fcn.0057014b
jmp case.default.0x582bc1
lea eax, [esp + 0x60]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 0xf
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x60]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push 5
push dword [ebx + 0x10954]
call fcn.005b458b
pop ecx
pop ecx
add ebx, 0x10934
call fcn.00540dc8
mov esi, dword [esp + 0x10]
xor edi, edi
push edi
push dword [esi + 0x11158]
call fcn.005b458b
push edi
push dword [esi + 0x11958]
call fcn.005b458b
push edi
push dword [esi + 0x1215c]
call fcn.005b458b
push edi
push dword [esi + 0x12960]
call fcn.005b458b
push edi
push dword [esi + 0x130c8]
call fcn.005b458b
push edi
push dword [esi + 0x136a4]
call fcn.005b458b
push edi
push dword [esi + 0xeeec]
call fcn.005b458b
add esp, 0x38
lea ecx, [esp + 0x20]
call fcn.004010a6
lea eax, [esp + 0x20]
push eax
push dword [esi + 0x20]
call fcn.005b5a84
push 5
push dword [esi + 0x2254]
call fcn.005b458b
push edi
push dword [esi + 0x1f04]
call fcn.005b458b
push edi
push dword [esi + 0x20ac]
call fcn.005b458b
push edi
push dword [esi + 0x23fc]
call fcn.005b458b
push edi
push dword [esi + 0x25a4]
call fcn.005b458b
push edi
push dword [esi + 0x274c]
call fcn.005b458b
push edi
push dword [esi + 0x28f4]
call fcn.005b458b
add esp, 0x40
push edi
push dword [esi + 0x2a9c]
call fcn.005b458b
pop ecx
pop ecx
mov ebx, esi
jmp case.default.0x582bc1
lea eax, [esp + 0x68]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 0x10
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x68]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push 5
push dword [ebx + 0x11158]
call fcn.005b458b
add esp, 0x10
lea eax, [ebx + 0x11138]
push eax
call fcn.0059bd51
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x30
lea ecx, [esp + 0x20]
call fcn.004010a6
lea eax, [esp + 0x20]
push eax
push dword [ebx + 0x20]
call fcn.005b5a84
push 5
push dword [ebx + 0x2254]
call fcn.005b458b
push esi
push dword [ebx + 0x1f04]
call fcn.005b458b
push esi
push dword [ebx + 0x20ac]
call fcn.005b458b
push esi
push dword [ebx + 0x23fc]
call fcn.005b458b
push esi
push dword [ebx + 0x25a4]
call fcn.005b458b
push esi
push dword [ebx + 0x274c]
call fcn.005b458b
push esi
push dword [ebx + 0x28f4]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x2a9c]
call fcn.005b458b
jmp 0x583884
lea eax, [esp + 0x38]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 0x11
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x38]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push 5
push dword [ebx + 0x11958]
call fcn.005b458b
add esp, 0x18
lea eax, [ebx + 0x11938]
push eax
call fcn.00540aeb
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x28
jmp 0x584af9
lea eax, [esp + 0x40]
push 0x6091c8
push eax
call fcn.00404eed
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c34], 0x12
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x40]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push 5
push dword [ebx + 0x1215c]
call fcn.005b458b
add esp, 0x20
lea eax, [ebx + 0x1213c]
push eax
call fcn.00540868
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push esi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
add esp, 0x20
jmp 0x584af9
push 5
pop edi
push edi
push dword [ebx + 0x13c4c]
call fcn.005b458b
lea eax, [esp + 0x24]
push 0x6091c8
push eax
call fcn.00404eed
add esp, 0x10
mov ecx, eax
mov dword [esp + 0x1c34], 0x13
call fcn.004014f9
push eax
push 0xde
lea ecx, [ebx + 0x218]
call fcn.0056ee68
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0x1c]
call fcn.004014f4
xor esi, esi
push esi
push dword [ebx + 0x4144]
call fcn.005b458b
push esi
push dword [ebx + 0x56d0]
call fcn.005b458b
push esi
push dword [ebx + 0x8080]
call fcn.005b458b
push esi
push dword [ebx + 0x8908]
call fcn.005b458b
push esi
push dword [ebx + 0x94b8]
call fcn.005b458b
push esi
push dword [ebx + 0xa868]
call fcn.005b458b
push esi
push dword [ebx + 0xb070]
call fcn.005b458b
push esi
push dword [ebx + 0xd9e8]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0x10954]
call fcn.005b458b
push esi
push dword [ebx + 0x11158]
call fcn.005b458b
push esi
push dword [ebx + 0x11958]
call fcn.005b458b
push esi
push dword [ebx + 0x1215c]
call fcn.005b458b
push esi
push dword [ebx + 0x12960]
call fcn.005b458b
push esi
push dword [ebx + 0x130c8]
call fcn.005b458b
push edi
push dword [ebx + 0x136a4]
call fcn.005b458b
push esi
push dword [ebx + 0x2254]
call fcn.005b458b
add esp, 0x40
push esi
push dword [ebx + 0xeeec]
call fcn.005b458b
push edi
push dword [ebx + 0x37f8]
call fcn.005b458b
push edi
push dword [ebx + 0x391c]
call fcn.005b458b
push edi
push dword [ebx + 0x3a40]
call fcn.005b458b
push edi
push dword [ebx + 0x3b64]
call fcn.005b458b
push edi
push dword [ebx + 0x3c88]
call fcn.005b458b
push edi
push dword [ebx + 0x3dac]
call fcn.005b458b
push edi
push dword [ebx + 0x3ed0]
call fcn.005b458b
add esp, 0x40
lea ecx, [ebx + 0x37d8]
mov eax, dword [ecx]
mov edi, 0xffffff
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x38fc]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3a20]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3b44]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3c68]
mov eax, dword [ecx]
push edi
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3d8c]
mov eax, dword [ecx]
push 0xcd781f
call dword [eax + 0x16c]
lea ecx, [ebx + 0x3eb0]
mov eax, dword [ecx]
push 0xe6c885
call dword [eax + 0x16c]
xor edi, edi
inc edi
push edi
push esi
push dword [ebx + 0x37f8]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x391c]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3a40]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3b64]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3c88]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3dac]
call fcn.005b500a
add esp, 0xc
push edi
push esi
push dword [ebx + 0x3ed0]
call fcn.005b500a
add esp, 0xc
lea eax, [esp + 0x14]
push eax
push esi
push ebx
mov dword [ebx + 0x1c0d8], edi
push 0x580a0d
call fcn.005b378a
add esp, 0x10
push 1
push 0
push dword [ebx + 0x20]
call fcn.005b500a
add esp, 0xc
cmp byte [ebp + 8], 0
jne 0x5852ba
cmp dword [0x66fa30], 3
jne 0x5852ba
mov eax, 0x671a90
call fcn.0040dc90
mov edi, eax
mov eax, 0x671aa4
call fcn.0040dd2f
add edi, eax
mov eax, 0x671b80
call fcn.0040e4d8
add eax, dword [0x66fa68]
mov dword [esp + 0x1c], eax
mov eax, 0x671b94
call fcn.0040a01d
mov esi, eax
mov eax, dword [esp + 0x1c]
add eax, edi
add esi, eax
mov edi, 0x6712c8
mov dword [esp + 0x10], esi
call fcn.0058e06d
test al, al
jne 0x5850d9
mov eax, 0x671a90
call fcn.0040dc90
mov edi, eax
mov eax, 0x671aa4
call fcn.0040dd2f
add edi, dword [0x66fa68]
add eax, edi
mov dword [esp + 0x10], eax
xor edi, edi
cmp dword [ebx + 0x1c0c4], edi
je 0x58520d
cmp esi, edi
jle 0x585202
mov esi, 0x671814
call fcn.0058fae4
mov esi, eax
inc esi
cmp esi, 2
jle 0x585103
xor esi, esi
cmp esi, edi
jne 0x58510d
cmp dword [esp + 0x10], edi
jg 0x585133
cmp esi, 1
jne 0x585120
mov eax, 0x671b80
call fcn.0040e4d8
test eax, eax
jg 0x585133
cmp esi, 2
jne 0x5850fb
mov eax, 0x671b94
call fcn.0040a01d
test eax, eax
jle 0x5850fb
mov eax, esi
sub eax, edi
push edi
je 0x5851b2
dec eax
je 0x585179
dec eax
jne 0x5851b2
push dword [ebx + 0x19a44]
call fcn.005b458b
push edi
push dword [ebx + 0x1a4e0]
call fcn.005b458b
add esp, 0x10
mov eax, 0x671b94
call fcn.0040a01d
lea ecx, [ebx + 0x1af5c]
call fcn.00542f79
push 5
push dword [ebx + 0x1af7c]
jmp 0x5851e3
push dword [ebx + 0x19a44]
call fcn.005b458b
push edi
push dword [ebx + 0x1af7c]
call fcn.005b458b
add esp, 0x10
mov eax, 0x671b80
call fcn.0040e4d8
lea ecx, [ebx + 0x1a4c0]
call fcn.00543cec
push 5
push dword [ebx + 0x1a4e0]
jmp 0x5851e3
push dword [ebx + 0x1af7c]
call fcn.005b458b
push edi
push dword [ebx + 0x1a4e0]
call fcn.005b458b
mov eax, dword [esp + 0x20]
add esp, 0x10
lea ecx, [ebx + 0x19a24]
call fcn.00544aa8
push 5
push dword [ebx + 0x19a44]
call fcn.005b458b
pop ecx
pop ecx
mov ecx, esi
mov eax, 0x671814
call fcn.0058f896
mov edi, 0x6713bc
call fcn.005bb2a3
xor edi, edi
mov dword [ebx + 0x1c0c4], edi
jmp 0x5852ba
cmp dword [ebx + 0x1c100], edi
je 0x5852ba
cmp dword [esp + 0x10], edi
je 0x5852ba
mov edi, 0x6712c8
call fcn.0058e06d
test al, al
je 0x5852ba
push 1
mov ecx, ebx
call fcn.0058914b
lea eax, [esp + 0xe28]
push eax
mov edi, ebx
call fcn.0059dcb9
lea ecx, [esp + 0xe28]
mov dword [esp + 0x1c34], 0x14
call fcn.00417f58
push 0
push dword [esp + 0x14]
lea eax, [esp + 0x310]
push eax
call fcn.0053c4fc
lea ecx, [esp + 0x308]
mov byte [esp + 0x1c34], 0x15
call fcn.00417f58
and dword [ebx + 0x1c100], 0
lea ecx, [esp + 0x308]
mov byte [esp + 0x1c34], 0x14
call fcn.0053c44f
or dword [esp + 0x1c34], 0xffffffff
lea ecx, [esp + 0xe28]
call fcn.0059dbe0
mov ecx, dword [esp + 0x1c2c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4