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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1ec]
cmp eax, dword [ecx + 8]
jbe 0x56974a
sub esp, 0x26c
xor eax, eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [esp + 0x274]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0xc], ebx
mov byte [esp + 0x10], 0
call fcn.005668f0
mov esi, dword [esp + 0x270]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa0], ebx
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x94], ebp
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x98], ebx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x1d0], edx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1d4], ecx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x9c], edi
cmp edi, 0
je 0x567bee
mov eax, dword [esi + 0xc]
dec eax
mov dword [esi + 0xc], eax
mov dword [esp], esi
call fcn.00566270
mov edx, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x260], edx
mov dword [esp + 4], edx
mov dword [esp + 0x264], ecx
mov dword [esp + 8], ecx
mov dword [esp + 0x268], eax
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0xa0]
mov dword [esp], ebx
mov ebx, dword [esp + 0x9c]
mov ebx, dword [ebx + 0x14]
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, 0
je 0x567be7
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov dword [esp + 0x114], eax
mov dword [esp + 4], eax
mov dword [esp + 0x118], ecx
mov dword [esp + 8], ecx
call fcn.00566220
add esp, 0x26c
ret
cmp ebp, 0
je 0x567d1b
mov dword [esp + 0x70], esi
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 4]
mov ebp, 0x75a000
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0x174]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x567cf9
mov dword [ecx + 0xc], ebp
mov eax, dword [esi + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edx, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x104], ecx
mov dword [esp + 0x150], edx
mov dword [esp + 0x108], edx
mov ebx, dword [esp + 0x70]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x567ccb
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x70], ecx
cmp byte [0x8f7eb8], 0
jne 0x567ce1
mov dword [ebx + 0x74], edx
mov eax, dword [esi + 0xc]
dec eax
mov dword [esi + 0xc], eax
mov dword [esp], esi
call fcn.00566270
add esp, 0x26c
ret
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], edx
call fcn.0041b160
mov esi, dword [esp + 0x270]
jmp 0x567ccb
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 0x90]
jmp 0x567c7f
mov ebp, edx
mov edx, ecx
mov ecx, eax
mov dword [esp + 0x188], ebp
mov dword [esp + 0x18c], edx
mov dword [esp + 0x190], eax
mov ebx, eax
and ebx, 0x1f
cmp ebx, 0x14
jne 0x567e16
mov dword [esp + 0x274], ebp
mov dword [esp], ebp
mov dword [esp + 0x278], edx
mov dword [esp + 4], edx
mov dword [esp + 0x27c], ecx
mov dword [esp + 8], ecx
call fcn.005e8540
mov esi, dword [esp + 0x270]
mov ebp, dword [esp + 0x274]
mov edx, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
mov ebx, dword [esp + 0xc]
cmp ebx, 0
jne 0x567e16
mov dword [esp], esi
call fcn.0056c560
mov ecx, dword [esp + 4]
mov eax, 0x70e9c0
mov dword [esp + 0x134], eax
mov dword [esp], eax
mov dword [esp + 0x138], ecx
mov dword [esp + 4], ecx
call fcn.005eaeb0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
mov dword [esp + 0x254], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
add esp, 0x26c
ret
mov dword [esp + 0x274], ebp
mov dword [esp + 0x194], ebp
mov dword [esp + 0x278], edx
mov dword [esp + 0x198], edx
mov dword [esp + 0x27c], ecx
mov dword [esp + 0x19c], ecx
mov eax, ecx
and eax, 0x1f
cmp eax, 0x15
jne 0x569625
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa8], eax
mov dword [esp], eax
mov dword [esp + 0xa4], ecx
mov ebx, dword [ecx + 0x50]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x178], eax
mov dword [esp], eax
mov dword [esp + 0x174], ecx
mov ebx, dword [ecx + 0x54]
call ebx
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x5695e0
cmp eax, 4
ja 0x5695c0
cmp eax, 2
jne 0x5693f9
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
call fcn.005e7ce0
mov esi, dword [esp + 0x270]
movzx ebx, byte [esp + 0xc]
cmp bl, 0
je 0x5693f4
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 4], ebx
call fcn.005eada0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
mov dword [esp + 0x254], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
mov esi, dword [esp + 0x270]
xor ebx, ebx
mov dword [esp + 0x1dc], ebx
mov dword [esp + 0x1e0], ebx
mov dword [esp + 0x1e4], ebx
mov dword [esp], esi
mov dword [esp + 4], 9
call fcn.00566400
mov ecx, dword [esp + 0x270]
mov eax, dword [esp + 8]
cmp eax, 5
jne 0x567fa4
add esp, 0x26c
ret
cmp eax, 1
je 0x567fcc
mov dword [esp], ecx
mov ebx, dword [0x8e4058]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e405c]
mov dword [esp + 8], ebx
call fcn.00566220
mov ecx, dword [esp + 0x270]
mov ebx, dword [ecx + 0xc]
dec ebx
mov dword [esp + 0x34], ebx
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00566400
mov edx, dword [esp + 0x270]
mov ebx, dword [esp + 8]
mov dword [esp + 0x38], ebx
mov ecx, dword [edx + 0xc]
dec ecx
mov ebx, edx
mov eax, dword [esp + 0x34]
mov edx, dword [edx + 8]
cmp ecx, edx
ja 0x5693ed
cmp eax, ecx
ja 0x5693ed
mov esi, ecx
sub esi, eax
sub edx, eax
mov ecx, dword [ebx]
cmp edx, 0
je 0x56801f
add ecx, eax
mov dword [esp + 0x200], ecx
mov dword [esp], ecx
mov dword [esp + 0x204], esi
mov dword [esp + 4], esi
mov dword [esp + 0x208], edx
mov dword [esp + 8], edx
call fcn.0056cc40
mov ebp, dword [esp + 0x274]
mov edx, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1f4], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1f8], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1fc], ebx
movzx ebx, byte [esp + 0x18]
cmp bl, 0
jne 0x5680bc
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [0x8e4058]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e405c]
mov dword [esp + 8], ebx
call fcn.00566220
mov ebp, dword [esp + 0x274]
mov edx, dword [esp + 0x278]
mov ecx, dword [esp + 0x27c]
xor ebx, ebx
mov dword [esp + 0x1c4], ebx
mov dword [esp + 0x1c8], ebx
mov dword [esp + 0x1cc], ebx
mov byte [esp + 0x32], 0
mov dword [esp + 0x17c], ebp
mov dword [esp + 0x180], edx
mov dword [esp + 0x184], ecx
mov ebx, ecx
and ebx, 0x1f
cmp ebx, 0x15
jne 0x569024
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x178], eax
mov dword [esp], eax
mov dword [esp + 0x174], ecx
mov ebx, dword [ecx + 0x2c]
call ebx
mov edx, dword [esp + 4]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 0x1b8], ebx
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 0x1bc], ebx
mov eax, dword [esp + 0x1e4]
mov dword [esp + 0x1c0], eax
cmp eax, 0
jne 0x56901a
xor eax, eax
cmp al, 0
jne 0x568fa9
mov dword [esp + 0x124], edx
mov dword [esp], edx
mov dword [esp + 0x128], ecx
mov dword [esp + 4], ecx
call fcn.005eb110
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x254], edx
mov dword [esp], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 8], eax
call fcn.005e6df0
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1dc], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1e0], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1e4], ebx
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 0x1c4], ebx
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 0x1c8], ebx
mov ebx, dword [esp + 0x1e4]
mov dword [esp + 0x1cc], ebx
mov ebx, dword [esp + 0x38]
cmp ebx, 9
jne 0x56822d
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov dword [esp + 4], 9
call fcn.00566400
mov ebx, dword [esp + 8]
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0x38]
cmp ebx, 3
je 0x568259
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [0x8e4058]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e405c]
mov dword [esp + 8], ebx
call fcn.00566220
cmp byte [esp + 0x32], 0
je 0x568f74
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
call fcn.005667a0
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], edx
mov dword [esp + 0x148], edx
xor ebx, ebx
cmp ecx, ebx
jne 0x568d5a
mov dword [esp + 0x144], ecx
mov dword [esp + 0xcc], ecx
mov ebx, dword [esp + 0x148]
mov dword [esp + 0xd0], ebx
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [0x8de7b0]
mov dword [esp + 4], ebx
mov ebx, dword [0x8de7b4]
mov dword [esp + 8], ebx
mov ebx, dword [0x8de7b8]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0x18], ebx
mov byte [esp + 0x1c], 0
call fcn.00569ae0
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x1a4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x1a8], ebx
and ebx, 0x1f
cmp ebx, 0x15
jne 0x5684dd
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x178], eax
mov dword [esp], eax
mov dword [esp + 0x174], ecx
mov ebx, dword [ecx + 0x50]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
xor ebx, ebx
mov dword [esp + 0x1e8], ebx
mov dword [esp + 0x1ec], ebx
mov dword [esp + 0x1f0], ebx
mov dword [esp + 0xd8], eax
mov dword [esp], eax
mov dword [esp + 0xd4], ecx
mov ebx, dword [ecx + 0x54]
call ebx
mov ebx, dword [esp + 4]
cmp ebx, 0x18
jne 0x568539
mov ebx, dword [esp + 0x1f4]
mov dword [esp + 0x23c], ebx
mov ebx, dword [esp + 0x1f8]
mov dword [esp + 0x240], ebx
mov ebx, dword [esp + 0x1fc]
mov dword [esp + 0x244], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x23c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
lea ebx, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.005eaeb0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x254], edx
mov dword [esp], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 8], eax
mov ebx, dword [esp + 0xd4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x10], ebx
call fcn.005eb4b0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
mov dword [esp + 0x1e8], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x14], eax
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0x20], ebx
call fcn.005e97f0
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov dword [esp + 4], 9
call fcn.00566400
mov esi, dword [esp + 0x270]
mov eax, dword [esp + 8]
cmp eax, 5
je 0x567f9d
cmp eax, 4
je 0x567f7d
mov dword [esp], esi
mov ebx, dword [0x8e4058]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e405c]
mov dword [esp + 8], ebx
call fcn.00566220
mov esi, dword [esp + 0x270]
jmp 0x567f7d
mov ebx, dword [esp + 0xd4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 4], ebx
call fcn.005dfa80
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov ebx, dword [0x8e4078]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e407c]
mov dword [esp + 8], ebx
mov dword [esp + 0x178], eax
mov dword [esp], eax
mov dword [esp + 0x174], ecx
mov ebx, dword [ecx + 0x44]
call ebx
movzx ebx, byte [esp + 0xc]
cmp bl, 0
je 0x568690
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x170], eax
mov dword [esp], eax
mov dword [esp + 0x16c], ecx
mov ebx, dword [ecx + 0x50]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x164], ecx
mov dword [esp], ecx
mov dword [esp + 0x168], eax
mov dword [esp + 4], eax
call fcn.005eb110
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [esp + 0x200]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x204]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x208]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1e8], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x1ec], ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x18], eax
mov byte [esp + 0x1c], 1
call fcn.00569ae0
mov ebx, dword [esp + 0x1e8]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1ec]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1f0]
mov dword [esp + 8], ebx
call fcn.005e6df0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x568476
mov ebx, dword [esp + 0xd8]
mov dword [esp], ebx
mov ebx, dword [esp + 0xd4]
mov ebx, dword [ebx + 0x54]
call ebx
mov ebp, dword [esp + 0x1f4]
mov edx, dword [esp + 0x1f8]
mov ecx, dword [esp + 0x1fc]
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x568a1d
cmp eax, 3
ja 0x568a00
cmp eax, 2
jne 0x5689a9
mov dword [esp], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.0044d780
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov dword [esp + 0xb4], ecx
mov dword [esp], ecx
mov dword [esp + 0xb8], eax
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.005ca140
mov eax, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xdc], eax
cmp eax, 0
jne 0x568856
mov ebx, dword [esp + 0xd4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 4], ebx
call fcn.005eafd0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x254], edx
mov dword [esp], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
call fcn.005e8950
movzx ebx, byte [esp + 0x14]
cmp bl, 0
jne 0x568856
mov eax, dword [esp + 0x48]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x64], eax
mov dword [esp], 0x70aac0
lea ebx, [esp + 0x60]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
lea ebx, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.005eaeb0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x230], edx
mov dword [esp], edx
mov dword [esp + 0x234], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x238], eax
mov dword [esp + 8], eax
mov ebx, dword [esp + 0xd4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x10], ebx
call fcn.005eb4b0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
jmp 0x568476
mov ebx, dword [esp + 0x270]
mov dword [esp + 0x74], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x90], ebx
mov dword [esp], 0
mov ebx, 0x75b040
mov dword [esp + 4], ebx
mov dword [esp + 8], 7
mov ebx, dword [esp + 0xb4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xb8]
mov dword [esp + 0x10], ebx
call fcn.0044d580
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
cmp esi, 0
je 0x5689a2
mov dword [esp + 0x130], eax
mov dword [esi + 4], eax
mov dword [esp + 0x12c], ecx
cmp byte [0x8f7eb8], 0
jne 0x56898a
mov dword [esi], ecx
mov ebp, dword [esp + 0xd4]
mov dword [esi + 8], ebp
mov ebp, dword [esp + 0xd8]
cmp byte [0x8f7eb8], 0
jne 0x56896f
mov dword [esi + 0xc], ebp
mov eax, dword [esp + 0x34]
inc eax
cdq
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov ecx, 0x8c2d30
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], esi
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x568953
mov ebx, dword [esp + 0x74]
cmp ebx, 0
je 0x56896b
mov dword [esp + 0xf4], ecx
mov dword [ebx + 0x70], ecx
mov ebp, esi
mov dword [esp + 0xf8], esi
cmp byte [0x8f7eb8], 0
jne 0x56895a
mov dword [ebx + 0x74], ebp
add esp, 0x26c
ret
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x568953
mov dword [ebx], eax
jmp 0x568934
lea esi, [esi + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x90]
jmp 0x568900
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0041b160
mov esi, dword [esp + 0x90]
jmp 0x5688e3
mov dword [esi], eax
jmp 0x5688c3
cmp eax, 3
je 0x5686da
mov ebx, 0x764d6f
mov dword [esp + 0x154], ebx
mov dword [esp + 0x158], 0x19
mov dword [esp], 0x70b040
lea ebx, [esp + 0x154]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
lea ebx, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.00436f30
ud2
cmp eax, 4
je 0x5686da
cmp eax, 5
je 0x5686da
cmp eax, 6
je 0x5686da
jmp 0x5689b2
cmp eax, 9
ja 0x568d3a
cmp eax, 7
jne 0x568d23
mov dword [esp], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.0044d780
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov dword [esp + 0xac], ecx
mov dword [esp], ecx
mov dword [esp + 0xb0], eax
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.005c9b60
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x54], eax
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xfc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xfc]
cmp ebx, 0
jne 0x568bcd
mov ebx, dword [esp + 0xd4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 4], ebx
call fcn.005eafd0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x230], edx
mov dword [esp], edx
mov dword [esp + 0x234], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x238], eax
mov dword [esp + 8], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x10], eax
call fcn.005e8a70
movzx ebx, byte [esp + 0x14]
mov byte [esp + 0x33], bl
cmp byte [esp + 0x33], 0
jne 0x568bcd
mov eax, dword [esp + 0x50]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x5c], eax
mov dword [esp], 0x70b2c0
lea ebx, [esp + 0x58]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
lea ebx, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.005eaeb0
mov ebx, dword [esp + 8]
mov dword [esp + 0x224], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x22c], ebx
mov ebx, dword [esp + 0x224]
mov dword [esp], ebx
mov ebx, dword [esp + 0x228]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x22c]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0xd4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x10], ebx
call fcn.005eb4b0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
jmp 0x568851
mov ebx, dword [esp + 0x270]
mov dword [esp + 0x7c], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x90], ebx
mov dword [esp], 0
mov ebx, 0x75b040
mov dword [esp + 4], ebx
mov dword [esp + 8], 7
mov ebx, dword [esp + 0xac]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x10], ebx
call fcn.0044d580
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
cmp esi, 0
je 0x568d1c
mov dword [esp + 0x130], eax
mov dword [esi + 4], eax
mov dword [esp + 0x12c], ecx
cmp byte [0x8f7eb8], 0
jne 0x568d04
mov dword [esi], ecx
mov ebp, dword [esp + 0xd4]
mov dword [esi + 8], ebp
mov ebp, dword [esp + 0xd8]
cmp byte [0x8f7eb8], 0
jne 0x568ce9
mov dword [esi + 0xc], ebp
mov eax, dword [esp + 0x34]
inc eax
cdq
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, 0x8c2d30
mov dword [esp + 0x14c], eax
mov dword [esp + 0xec], eax
mov dword [esp + 0x150], esi
mov dword [esp + 0xf0], esi
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x568cd1
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xec]
mov dword [ebx + 0x70], ebp
mov ebp, dword [esp + 0xf0]
cmp byte [0x8f7eb8], 0
jne 0x568cd8
mov dword [ebx + 0x74], ebp
add esp, 0x26c
ret
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x568cd1
lea esi, [esi + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x90]
jmp 0x568c77
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0041b160
mov esi, dword [esp + 0x90]
jmp 0x568c5a
mov dword [esi], eax
jmp 0x568c3a
cmp eax, 8
je 0x568a2f
cmp eax, 9
je 0x568a2f
jmp 0x5689b2
cmp eax, 0xa
je 0x568a2f
cmp eax, 0xb
je 0x568a2f
cmp eax, 0xc
je 0x568a2f
jmp 0x5689b2
mov ebp, dword [ecx + 8]
cmp ebp, 0xe0ff5cb4
jne 0x568e44
xor ebx, ebx
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
mov dword [esp], 0x70b040
mov dword [esp + 0x144], ecx
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x148]
mov dword [esp + 8], ebx
lea ebx, [esp + 0xbc]
mov dword [esp + 0xc], ebx
call fcn.00418050
mov ecx, dword [esp + 0x144]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x568e44
mov dword [esp], 0
mov ebx, dword [esp + 0xbc]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xc0]
mov dword [esp + 8], ebx
call fcn.0044d970
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov dword [esp + 0x260], edx
mov dword [esp + 4], edx
mov dword [esp + 0x264], ecx
mov dword [esp + 8], ecx
mov dword [esp + 0x268], eax
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0x18], ebx
mov byte [esp + 0x1c], 1
call fcn.00569ae0
jmp 0x568309
mov dword [esp + 0x144], ecx
mov dword [esp + 0xc4], ecx
mov ebx, dword [esp + 0x148]
mov dword [esp + 0xc8], ebx
mov ebx, dword [esp + 0x270]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
xor ebx, ebx
mov dword [esp + 0x13c], ebx
mov dword [esp + 0x140], ebx
lea ebx, [esp + 0x13c]
mov dword [esp + 0x88], ebx
mov dword [esp + 0x174], ecx
mov dword [esp], ecx
mov dword [esp + 0x178], eax
mov dword [esp + 4], eax
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov edx, 1
mov ecx, 1
mov eax, ebx
mov ebx, 0x7713e6
mov dword [esp], ebx
mov dword [esp + 4], 0x53
mov dword [esp + 0x218], eax
mov dword [esp + 8], eax
mov dword [esp + 0x21c], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x220], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov esi, dword [esp + 0x78]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x11c], edx
mov dword [esp + 0x120], ecx
mov ebp, dword [esi + 0x70]
cmp ebp, 0
jne 0x568309
mov dword [esi + 0x70], edx
cmp byte [0x8f7eb8], 0
jne 0x568f60
mov dword [esi + 0x74], ecx
jmp 0x568309
lea esi, [esi + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0041b160
jmp 0x568309
mov ebx, dword [esp + 0x270]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0xc], ebx
call fcn.005664c0
jmp 0x568309
mov dword [esp + 0x124], edx
mov dword [esp], edx
mov dword [esp + 0x128], ecx
mov dword [esp + 4], ecx
call fcn.005eafd0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x1dc]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1e4]
mov dword [esp + 8], ebx
mov dword [esp + 0x254], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
jmp 0x5681db
mov eax, 1
jmp 0x568166
mov dword [esp + 0x6c], 0
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x174], ecx
mov dword [esp], ecx
mov dword [esp + 0x178], eax
mov dword [esp + 4], eax
call fcn.00573e70
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 8]
mov dword [esp + 0x20c], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x210], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x214], ebx
xor eax, eax
mov ebx, dword [esp + 0x210]
mov dword [esp + 0x40], ebx
mov ebp, dword [esp + 0x40]
cmp eax, ebp
jge 0x56911f
mov dword [esp + 0x44], eax
mov ebx, eax
mov ebp, dword [esp + 0x210]
cmp eax, ebp
jae 0x5693e6
mov eax, dword [esp + 0x20c]
imul ebx, ebx, 0x34
add eax, ebx
mov dword [esp + 0x68], eax
cmp eax, 0
je 0x5693df
add eax, 8
cld
mov ecx, dword [eax]
mov dword [esp], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 4], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x1f4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x1f8]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1fc]
mov dword [esp + 0x14], ebx
call fcn.00463410
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
movzx ebx, byte [esp + 0x18]
cmp bl, 0
je 0x56936d
mov ecx, edx
xor ebp, ebp
cmp ecx, ebp
je 0x568205
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x1c4], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x1c8], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x1cc], ebx
movzx ebp, byte [ecx + 0x31]
xchg ebp, eax
mov byte [esp + 0x32], al
xchg ebp, eax
mov edx, dword [ecx + 0x1c]
mov eax, dword [ecx + 0x20]
mov ebp, dword [ecx + 0x24]
mov dword [esp + 0x250], ebp
xor ecx, ecx
mov dword [esp + 0x24c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x248], edx
mov eax, edx
mov ebp, dword [esp + 0x40]
cmp ecx, ebp
jge 0x568205
mov dword [esp + 0x8c], eax
mov ebp, dword [eax]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x3c], ebp
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 0x1b4], ebx
and ebx, 0x1f
cmp ebx, 0x16
jne 0x569306
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
call fcn.005e7ce0
movzx ebx, byte [esp + 0xc]
cmp bl, 0
je 0x569368
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x178], eax
mov dword [esp], eax
mov dword [esp + 0x174], ecx
mov ebx, dword [ecx + 0x2c]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x16c], ecx
mov dword [esp], ecx
mov dword [esp + 0x170], eax
mov dword [esp + 4], eax
call fcn.005eb110
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
mov dword [esp + 0x254], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x258], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x25c], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
call fcn.005e6df0
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1c4], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1c8], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1cc], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1c8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1cc]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0xc], ebx
call fcn.005e6fd0
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1c4], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1c8], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x1cc], ebx
mov eax, dword [esp + 0x8c]
add eax, 4
mov ecx, dword [esp + 0x44]
inc ecx
jmp 0x569183
jmp 0x5692c0
xor ebp, ebp
cmp ecx, ebp
jne 0x5693d9
mov eax, edx
cmp edx, 0
je 0x5693db
add eax, 8
cld
mov ecx, dword [eax]
mov dword [esp], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 4], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x1f4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x1f8]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1fc]
mov dword [esp + 0x14], ebx
mov edx, dword [edx + 0x14]
mov ebx, dword [edx]
call ebx
mov ecx, dword [esp + 0x6c]
movzx ebx, byte [esp + 0x18]
cmp bl, 0
je 0x5693d9
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x44]
inc eax
jmp 0x569090
jmp 0x5693cf
mov dword [edx], eax
jmp 0x56937a
mov dword [eax], eax
jmp 0x5690ca
call fcn.00435970
ud2
call fcn.004359e0
ud2
jmp 0x567f66
cmp eax, 3
je 0x567eb9
cmp eax, 4
je 0x567eb9
mov ebx, dword [esp + 0xa8]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa4]
mov ebx, dword [ebx + 0x50]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x16c], ecx
mov dword [esp], ecx
mov dword [esp + 0x170], eax
mov dword [esp + 4], eax
call fcn.005dfa80
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov ebx, dword [0x8e4078]
mov dword [esp + 4], ebx
mov ebx, dword [0x8e407c]
mov dword [esp + 8], ebx
mov dword [esp + 0x168], eax
mov dword [esp], eax
mov dword [esp + 0x164], ecx
mov ebx, dword [ecx + 0x44]
call ebx
movzx ebx, byte [esp + 0xc]
cmp bl, 0
jne 0x5695bb
mov ebx, dword [esp + 0x270]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov ebx, dword [esp + 0x278]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x15c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x160], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 4]
mov ebp, 0x75a000
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0x15c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x160]
cmp byte [0x8f7eb8], 0
jne 0x569599
mov dword [ecx + 0xc], ebp
mov eax, dword [esi + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edx, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x150], edx
mov dword [esp + 0x110], edx
mov ebx, dword [esp + 0x80]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56956b
mov ebx, dword [esp + 0x80]
mov dword [ebx + 0x70], ecx
cmp byte [0x8f7eb8], 0
jne 0x569581
mov dword [ebx + 0x74], edx
mov eax, dword [esi + 0xc]
dec eax
mov dword [esi + 0xc], eax
mov dword [esp], esi
call fcn.00566270
add esp, 0x26c
ret
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], edx
call fcn.0041b160
mov esi, dword [esp + 0x270]
jmp 0x56956b
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 0x90]
jmp 0x569519
jmp 0x567eb9
cmp eax, 5
je 0x567eb9
cmp eax, 6
je 0x567eb9
cmp eax, 7
je 0x567eb9
jmp 0x56940b
cmp eax, 0xa
ja 0x569605
cmp eax, 8
je 0x567eb9
cmp eax, 9
je 0x567eb9
cmp eax, 0xa
je 0x567eb9
jmp 0x56940b
cmp eax, 0xb
je 0x567eb9
cmp eax, 0xc
je 0x567eb9
cmp eax, 0x18
je 0x567eb9
jmp 0x56940b
cmp eax, 0x19
je 0x567f66
mov dword [esp + 0x84], esi
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x16c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x170], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 4]
mov ebp, 0x75a000
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0x16c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x170]
cmp byte [0x8f7eb8], 0
jne 0x569728
mov dword [ecx + 0xc], ebp
mov eax, dword [esi + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edx, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x14c], ecx
mov dword [esp + 0xe4], ecx
mov dword [esp + 0x150], edx
mov dword [esp + 0xe8], edx
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x5696fa
mov ebx, dword [esp + 0x84]
mov dword [ebx + 0x70], ecx
cmp byte [0x8f7eb8], 0
jne 0x569710
mov dword [ebx + 0x74], edx
mov eax, dword [esi + 0xc]
dec eax
mov dword [esi + 0xc], eax
mov dword [esp], esi
call fcn.00566270
add esp, 0x26c
ret
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], edx
call fcn.0041b160
mov esi, dword [esp + 0x270]
jmp 0x5696fa
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x270]
mov ecx, dword [esp + 0x90]
jmp 0x5696a8
call fcn.004616d0
jmp fcn.00567a90