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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1f0]
cmp eax, dword [ecx + 8]
jbe 0x56c232
sub esp, 0x270
xor eax, eax
mov dword [esp + 0x260], eax
mov dword [esp + 0x264], eax
mov dword [esp + 0x268], eax
mov dword [esp + 0x26c], eax
mov dword [esp + 0x250], eax
mov dword [esp + 0x254], eax
mov dword [esp + 0x258], eax
mov dword [esp + 0x25c], eax
mov dword [esp + 0x240], eax
mov dword [esp + 0x244], eax
mov dword [esp + 0x248], eax
mov dword [esp + 0x24c], eax
mov ebp, dword [esp + 0x278]
mov edi, dword [esp + 0x284]
mov esi, dword [esp + 0x288]
mov edx, dword [esp + 0x28c]
mov ecx, dword [esp + 0x27c]
cmp ecx, 0
jne 0x569ceb
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x224], ebp
mov dword [esp + 0x228], ecx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
xor ebx, ebx
mov dword [esp + 0x260], ebx
mov dword [esp + 0x264], ebx
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
lea ebx, [esp + 0x260]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x18c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [edx + 0x70]
cmp ebp, 0
jne 0x569cd3
mov dword [esp + 0x14c], ecx
mov dword [edx + 0x70], ecx
mov dword [esp + 0x150], eax
cmp byte [0x8f7eb8], 0
jne 0x569cda
mov dword [edx + 0x74], eax
add esp, 0x270
ret
lea esi, [edx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x569cd3
cmp ecx, 0
jbe 0x56c22b
movzx ebp, byte [ebp]
xchg ebp, eax
cmp al, 0x6e
xchg ebp, eax
je 0x56c221
xor eax, eax
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov byte [esp + 0x10], al
call fcn.005668f0
mov edi, dword [esp + 0x278]
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x98], ebx
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x8c], esi
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x90], ebx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x1e8], edx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1ec], ecx
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x1f0], ebp
mov dword [esp + 0x94], eax
cmp eax, 0
je 0x569ddf
mov dword [esp + 4], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp], ebx
mov ebx, dword [eax + 0x14]
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, 0
je 0x569dd8
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0xac], eax
mov dword [esp + 4], eax
mov dword [esp + 0xb0], ecx
mov dword [esp + 8], ecx
call fcn.00566220
add esp, 0x270
ret
cmp esi, 0
je 0x56a30c
cmp dword [esp + 0x27c], 0
jbe 0x56a305
movzx ebp, byte [edi]
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x56a0b0
cmp byte [esp + 0x290], 0
je 0x569f94
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x224], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
xor ebx, ebx
mov dword [esp + 0x260], ebx
mov dword [esp + 0x264], ebx
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
lea ebx, [esp + 0x260]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x18c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [edx + 0x70]
cmp ebp, 0
jne 0x569f7c
mov dword [esp + 0x12c], ecx
mov dword [edx + 0x70], ecx
mov dword [esp + 0x130], eax
cmp byte [0x8f7eb8], 0
jne 0x569f83
mov dword [edx + 0x74], eax
add esp, 0x270
ret
lea esi, [edx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x569f7c
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x75a294
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x18c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x190]
cmp byte [0x8f7eb8], 0
jne 0x56a095
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x4c]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x569f7c
mov ebx, dword [esp + 0x4c]
cmp ebx, 0
je 0x56a091
mov dword [esp + 0x13c], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0x140], eax
cmp byte [0x8f7eb8], 0
jne 0x56a07d
mov dword [ebx + 0x74], eax
jmp 0x569f7c
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x569f7c
mov dword [ebx], eax
jmp 0x56a05b
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56a01c
mov dword [esp], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 8], ebx
call fcn.0056cc40
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
movzx ebx, byte [esp + 0x18]
cmp bl, 0
jne 0x56a26d
cmp byte [esp + 0x290], 0
je 0x56a2dd
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x224], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
xor ebx, ebx
mov dword [esp + 0x260], ebx
mov dword [esp + 0x264], ebx
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
lea ebx, [esp + 0x260]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x18c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x1e4]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
mov ebx, dword [esp + 0x8c]
mov ebx, dword [ebx + 0x14]
call ebx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, 0
je 0x56a2d6
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0xd4], eax
mov dword [esp + 4], eax
mov dword [esp + 0xd8], ecx
mov dword [esp + 8], ecx
call fcn.00566220
add esp, 0x270
ret
mov ebx, dword [esp + 0x274]
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
jmp 0x56a26d
call fcn.00435970
ud2
mov dword [esp + 0x284], edx
mov dword [esp + 0x288], ecx
mov eax, ebp
mov dword [esp + 0x28c], ebp
cmp dword [esp + 0x27c], 0
jbe 0x56c21a
movzx ebp, byte [edi]
mov esi, ebp
xchg ebp, eax
cmp al, 0x66
xchg ebp, eax
ja 0x56c125
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
jne 0x56ac0f
mov dword [esp], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 8], ebx
call fcn.0056cc40
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1d0], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1d4], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1d8], ebx
movzx ebx, byte [esp + 0x18]
cmp bl, 0
jne 0x56a51e
cmp byte [esp + 0x290], 0
je 0x56abd2
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x224], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
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 + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
xor ebx, ebx
mov dword [esp + 0x250], ebx
mov dword [esp + 0x254], ebx
mov dword [esp + 0x258], ebx
mov dword [esp + 0x25c], ebx
lea ebx, [esp + 0x250]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x18c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov dword [esp + 0x1c4], ebp
mov dword [esp + 0x1c8], edx
mov dword [esp + 0x1cc], ecx
mov eax, ecx
and eax, 0x1f
cmp eax, 0x14
jne 0x56a74b
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005e8540
mov ebx, dword [esp + 0xc]
cmp ebx, 0
jne 0x56a62f
mov dword [esp], 0
mov ebx, dword [esp + 0x1d0]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1d4]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x1d8]
mov dword [esp + 0xc], ebx
call fcn.0044d780
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x16c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x170], ebx
mov dword [esp], 0x70b040
lea ebx, [esp + 0x16c]
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 ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
mov dword [esp + 0x218], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x220], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
add esp, 0x270
ret
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x17c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x180], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x75a294
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x17c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x180]
cmp byte [0x8f7eb8], 0
jne 0x56a730
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x6c]
cmp ebx, 0
je 0x56a72c
mov dword [esp + 0x104], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0x108], eax
cmp byte [0x8f7eb8], 0
jne 0x56a718
mov dword [ebx + 0x74], eax
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov dword [ebx], eax
jmp 0x56a6f6
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56a6b7
cmp eax, 0x17
jne 0x56aa5c
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 + 0x190], eax
mov dword [esp], eax
mov dword [esp + 0x18c], ecx
mov ebx, dword [ecx + 0x2c]
call ebx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x180], eax
mov dword [esp], eax
mov dword [esp + 0x17c], ecx
mov ebx, dword [ecx + 0x54]
call ebx
mov ebx, dword [esp + 4]
cmp ebx, 8
je 0x56a8c9
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
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 ecx, dword [esp + 4]
mov ebp, 0x75a294
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x174]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56a8ae
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x64]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x64]
cmp ebx, 0
je 0x56a8aa
mov dword [esp + 0x134], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0x138], eax
cmp byte [0x8f7eb8], 0
jne 0x56a896
mov dword [ebx + 0x74], eax
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov dword [ebx], eax
jmp 0x56a874
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56a835
mov ecx, dword [0x8e3a78]
mov eax, dword [esp + 0x1d4]
mov ebp, dword [ecx + 0x140]
cmp ebp, 0xffffffff
jne 0x56aa45
imul eax, eax, 6
mov ebx, eax
sar ebx, 0x1f
shr ebx, 0x1d
add ebx, eax
sar ebx, 3
mov eax, ebx
mov ecx, eax
mov dword [esp], 0x70b300
cdq
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, ecx
cdq
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00449940
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [0x8e3a78]
mov dword [esp], ebx
mov dword [esp + 0x1f4], edx
mov dword [esp + 4], edx
mov dword [esp + 0x1f8], ecx
mov dword [esp + 8], ecx
mov dword [esp + 0x1fc], eax
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x1d0]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1d4]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x1d8]
mov dword [esp + 0x18], ebx
call fcn.005650a0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x100], ebp
mov dword [esp + 0xfc], ecx
cmp ecx, 0
je 0x56a9e1
mov eax, dword [esp + 0x274]
mov edx, ecx
mov ecx, ebp
mov ebp, dword [eax + 0x70]
cmp ebp, 0
jne 0x56a628
mov dword [esp + 0xb4], edx
mov dword [eax + 0x70], edx
mov dword [esp + 0xb8], ecx
cmp byte [0x8f7eb8], 0
jne 0x56a9cd
mov dword [eax + 0x74], ecx
jmp 0x56a628
lea esi, [eax + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0041b160
jmp 0x56a628
mov ecx, dword [esp + 0x1fc]
cmp eax, ecx
ja 0x56aa3e
mov edx, dword [esp + 0x1f4]
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
mov dword [esp + 0x20c], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x210], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x214], ecx
mov dword [esp + 0x14], ecx
call fcn.005e9280
jmp 0x56a628
call fcn.004359e0
ud2
mov ebx, eax
sar ebx, 0x1f
shr ebx, 0x1e
add ebx, eax
sar ebx, 2
imul ebx, ebx, 3
mov eax, ebx
jmp 0x56a8f7
cmp eax, 0x18
jne 0x56aacb
mov dword [esp], 0
mov ebx, dword [esp + 0x1d0]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1d4]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x1d8]
mov dword [esp + 0xc], ebx
call fcn.0044d780
lea ebx, [esp + 0x10]
lea edi, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [edi], ecx
mov ecx, dword [ebx + 4]
mov dword [edi + 4], ecx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005e9b20
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x58], ebx
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 + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x75a294
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x18c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x190]
cmp byte [0x8f7eb8], 0
jne 0x56abb7
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x58]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x58]
cmp ebx, 0
je 0x56abb3
mov dword [esp + 0x114], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0x118], eax
cmp byte [0x8f7eb8], 0
jne 0x56ab9f
mov dword [ebx + 0x74], eax
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov dword [ebx], eax
jmp 0x56ab7d
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56ab3e
mov ebx, dword [esp + 0x274]
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 + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
jmp 0x56a51e
xchg ebp, eax
cmp al, 0x66
xchg ebp, eax
jne 0x56b0d2
xchg esi, eax
cmp al, 0x74
xchg esi, eax
je 0x56b0c2
xor esi, esi
xchg esi, eax
mov byte [esp + 0x32], al
xchg esi, eax
mov dword [esp + 0x194], edx
mov dword [esp + 0x198], ecx
mov dword [esp + 0x19c], eax
mov ebp, eax
and ebp, 0x1f
cmp ebp, 1
jne 0x56ac67
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
xchg esi, eax
mov byte [esp + 0xc], al
xchg esi, eax
call fcn.005e9230
jmp 0x56a628
cmp ebp, 0x14
jne 0x56ae3b
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005e8540
mov ebx, dword [esp + 0xc]
cmp ebx, 0
jne 0x56ad1f
movzx ebx, byte [esp + 0x32]
mov byte [esp + 0x33], bl
mov dword [esp], 0x708340
lea ebx, [esp + 0x33]
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 ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
mov dword [esp + 0x218], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x220], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x7583df
mov dword [ecx], ebp
mov dword [ecx + 4], 4
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x18c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x190]
cmp byte [0x8f7eb8], 0
jne 0x56ae20
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x7c]
cmp ebx, 0
je 0x56ae1c
mov dword [esp + 0xbc], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0xc0], eax
cmp byte [0x8f7eb8], 0
jne 0x56ae08
mov dword [ebx + 0x74], eax
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov dword [ebx], eax
jmp 0x56ade6
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56ada7
cmp byte [esp + 0x290], 0
je 0x56afbb
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x224], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
xor ebx, ebx
mov dword [esp + 0x260], ebx
mov dword [esp + 0x264], ebx
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
lea ebx, [esp + 0x260]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x18c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x190]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [edx + 0x70]
cmp ebp, 0
jne 0x56a628
mov dword [esp + 0xcc], ecx
mov dword [edx + 0x70], ecx
mov dword [esp + 0xd0], eax
cmp byte [0x8f7eb8], 0
jne 0x56afa7
mov dword [edx + 0x74], eax
jmp 0x56a628
lea esi, [edx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x60], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x18c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x190], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x7583df
mov dword [ecx], ebp
mov dword [ecx + 4], 4
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x18c]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x190]
cmp byte [0x8f7eb8], 0
jne 0x56b0a7
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], eax
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x60]
cmp ebx, 0
je 0x56b0a3
mov dword [esp + 0xdc], ecx
mov dword [ebx + 0x70], ecx
mov dword [esp + 0xe0], eax
cmp byte [0x8f7eb8], 0
jne 0x56b08f
mov dword [ebx + 0x74], eax
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0041b160
jmp 0x56a628
mov dword [ebx], eax
jmp 0x56b06d
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56b02e
mov esi, 1
xchg esi, eax
mov byte [esp + 0x32], al
xchg esi, eax
jmp 0x56ac2d
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
je 0x56b0ef
xchg esi, eax
cmp al, 0x30
xchg esi, eax
jb 0x56bf96
xchg esi, eax
cmp al, 0x39
xchg esi, eax
ja 0x56bf96
mov dword [esp], 0
mov dword [esp + 4], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0xc], ebx
call fcn.0044d780
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov edi, dword [esp + 0x10]
mov dword [esp + 0x9c], edi
mov esi, dword [esp + 0x14]
mov dword [esp + 0xa0], esi
mov dword [esp + 0x1a0], ebp
mov dword [esp + 0x1a4], edx
mov dword [esp + 0x1a8], ecx
mov eax, ecx
and eax, 0x1f
cmp eax, 8
ja 0x56ba6a
cmp eax, 4
ja 0x56b7ec
cmp eax, 2
jne 0x56b3c0
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.005ca140
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x11c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x120], ebx
mov ebx, dword [esp + 0x11c]
cmp ebx, 0
jne 0x56b23c
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.005e8950
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
movzx ebx, byte [esp + 0x14]
cmp bl, 0
jne 0x56b23c
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.005e95d0
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x5c], ebx
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 + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x84], ebx
mov dword [esp], 0
mov ebx, 0x75b040
mov dword [esp + 4], ebx
mov dword [esp + 8], 7
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x10], ebx
call fcn.0044d580
mov esi, dword [esp + 0x84]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x15c], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x160], ebx
mov ebp, dword [esp + 0x160]
mov dword [esi + 4], ebp
mov ebp, dword [esp + 0x15c]
cmp byte [0x8f7eb8], 0
jne 0x56b3a8
mov dword [esi], ebp
mov ebp, dword [esp + 0x174]
mov dword [esi + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56b38d
mov dword [esi + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0xec], ecx
mov dword [esp + 0x188], esi
mov dword [esp + 0xf0], esi
mov ebx, dword [esp + 0x5c]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0xec]
mov dword [ebx + 0x70], ebp
mov ebp, dword [esp + 0xf0]
cmp byte [0x8f7eb8], 0
jne 0x56b379
mov dword [ebx + 0x74], ebp
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x56a628
lea esi, [esi + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56b311
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56b2f4
cmp eax, 3
je 0x56b175
cmp eax, 4
je 0x56b175
mov dword [esp + 0x1b8], ebp
mov dword [esp + 0x1bc], edx
mov dword [esp + 0x1c0], ecx
mov ebx, ecx
and ebx, 0x1f
cmp ebx, 0x18
jne 0x56b5ca
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.005ea350
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov edi, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov ebx, dword [0x8e4068]
cmp edi, ebx
jne 0x56b5ca
mov dword [esp + 0x174], edi
mov dword [esp], edi
mov ebp, dword [esp + 0x178]
mov dword [esp + 4], ebp
mov ebp, dword [0x8e4068]
mov dword [esp + 8], ebp
mov ebp, dword [0x8e406c]
mov dword [esp + 0xc], ebp
call fcn.0040e270
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x56b5ca
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x10], ebx
call fcn.005e9b20
mov ebx, dword [esp + 0x9c]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 4], ebx
call fcn.00565f00
movzx ebx, byte [esp + 8]
cmp bl, 0
jne 0x56b5c5
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x224], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
xor ebx, ebx
mov dword [esp + 0x164], ebx
mov dword [esp + 0x168], ebx
lea ebx, [esp + 0x164]
mov dword [esp + 0x80], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ebx, dword [esp + 0x80]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov edx, 1
mov ecx, 1
mov eax, ebx
mov ebx, 0x770594
mov dword [esp], ebx
mov dword [esp + 4], 0x40
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
jmp 0x56a628
jmp 0x56a628
cmp byte [esp + 0x290], 0
je 0x56b72a
mov ebx, dword [esp + 0x278]
mov dword [esp + 0x224], ebx
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
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 + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
xor ebx, ebx
mov dword [esp + 0x230], ebx
mov dword [esp + 0x234], ebx
mov dword [esp + 0x238], ebx
mov dword [esp + 0x23c], ebx
lea ebx, [esp + 0x230]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x174]
mov dword [esp], ebx
mov ebx, dword [esp + 0x178]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
jmp 0x56a628
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 + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ecx, dword [esp + 4]
mov ebp, 0x759fdc
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x174]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56b7d4
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
jmp 0x56a628
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56b792
cmp eax, 6
ja 0x56b808
cmp eax, 5
je 0x56b175
cmp eax, 6
je 0x56b175
jmp 0x56b3d2
cmp eax, 7
jne 0x56ba5c
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.005c9b60
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], eax
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x124], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x128], ebx
mov ebx, dword [esp + 0x124]
cmp ebx, 0
jne 0x56b8d8
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
call fcn.005e8a70
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
movzx ebx, byte [esp + 0x14]
cmp bl, 0
jne 0x56b8d8
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
call fcn.005e99e0
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x74], ebx
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 + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x84], ebx
mov dword [esp], 0
mov ebx, 0x75b040
mov dword [esp + 4], ebx
mov dword [esp + 8], 7
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x10], ebx
call fcn.0044d580
mov esi, dword [esp + 0x84]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x15c], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x160], ebx
mov ebp, dword [esp + 0x160]
mov dword [esi + 4], ebp
mov ebp, dword [esp + 0x15c]
cmp byte [0x8f7eb8], 0
jne 0x56ba44
mov dword [esi], ebp
mov ebp, dword [esp + 0x174]
mov dword [esi + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56ba29
mov dword [esi + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x188], esi
mov dword [esp + 0xc8], esi
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0xc4]
mov dword [ebx + 0x70], ebp
mov ebp, dword [esp + 0xc8]
cmp byte [0x8f7eb8], 0
jne 0x56ba15
mov dword [ebx + 0x74], ebp
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x56a628
lea esi, [esi + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56b9ad
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56b990
cmp eax, 8
je 0x56b811
jmp 0x56b3d2
cmp eax, 0xb
ja 0x56ba8f
cmp eax, 9
je 0x56b811
cmp eax, 0xa
je 0x56b811
cmp eax, 0xb
je 0x56b811
jmp 0x56b3d2
cmp eax, 0xd
ja 0x56bd1d
cmp eax, 0xc
je 0x56b811
cmp eax, 0xd
jne 0x56b3d2
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 + 0x1c]
call ebx
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x9c]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.005c9970
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
movsd xmm0, qword [esp + 0xc]
movsd qword [esp + 0x44], xmm0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x154], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x158], ebx
mov ebx, dword [esp + 0x154]
cmp ebx, 0
jne 0x56bb99
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
movsd xmm0, qword [esp + 0x44]
movsd qword [esp + 0xc], xmm0
call fcn.005e8880
mov ebp, dword [esp + 0x284]
mov edx, dword [esp + 0x288]
mov ecx, dword [esp + 0x28c]
movzx ebx, byte [esp + 0x14]
cmp bl, 0
jne 0x56bb99
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
movsd xmm0, qword [esp + 0x44]
movsd qword [esp + 0xc], xmm0
call fcn.005e9520
jmp 0x56a628
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x70], ebx
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 + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
mov dword [esp], 0x72a520
call fcn.0041a7b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x84], ebx
mov dword [esp], 0
mov ebx, 0x75b040
mov dword [esp + 4], ebx
mov dword [esp + 8], 7
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x10], ebx
call fcn.0044d580
mov esi, dword [esp + 0x84]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x15c], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x160], ebx
mov ebp, dword [esp + 0x160]
mov dword [esi + 4], ebp
mov ebp, dword [esp + 0x15c]
cmp byte [0x8f7eb8], 0
jne 0x56bd05
mov dword [esi], ebp
mov ebp, dword [esp + 0x174]
mov dword [esi + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56bcea
mov dword [esi + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0x144], ecx
mov dword [esp + 0x188], esi
mov dword [esp + 0x148], esi
mov ebx, dword [esp + 0x70]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x144]
mov dword [ebx + 0x70], ebp
mov ebp, dword [esp + 0x148]
cmp byte [0x8f7eb8], 0
jne 0x56bcd6
mov dword [ebx + 0x74], ebp
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x56a628
lea esi, [esi + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56bc6e
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov esi, dword [esp + 0x84]
jmp 0x56bc51
cmp eax, 0xe
je 0x56baaa
cmp eax, 0x14
jne 0x56b3d2
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call fcn.00569840
mov ebx, dword [esp + 0xc]
mov dword [esp + 0xa4], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xa8], ebx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x110], edx
mov dword [esp + 0x10c], ecx
cmp ecx, 0
je 0x56bdce
mov eax, dword [esp + 0x274]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], edx
mov ebp, dword [eax + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebp, dword [esp + 0xf4]
mov dword [eax + 0x70], ebp
mov ebp, dword [esp + 0xf8]
cmp byte [0x8f7eb8], 0
jne 0x56bdba
mov dword [eax + 0x74], ebp
jmp 0x56a628
lea esi, [eax + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x56a628
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
call fcn.005e8540
mov ebx, dword [esp + 0xc]
cmp ebx, 0
je 0x56bf25
mov ebx, dword [esp + 0x274]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
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 ecx, dword [esp + 4]
mov ebp, 0x759fdc
mov dword [ecx], ebp
mov dword [ecx + 4], 6
mov dword [esp + 0x84], ecx
mov ebp, dword [esp + 0x174]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0x178]
cmp byte [0x8f7eb8], 0
jne 0x56bf0a
mov dword [ecx + 0xc], ebp
mov ebx, dword [esp + 0x274]
mov eax, dword [ebx + 0xc]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, ecx
mov ecx, 0x8c2d30
mov dword [esp + 0x184], ecx
mov dword [esp + 0xe4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 0xe8], eax
mov ebx, dword [esp + 0x50]
mov ebp, dword [ebx + 0x70]
cmp ebp, 0
jne 0x56a628
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0xe4]
mov dword [ebx + 0x70], ebp
mov ebp, dword [esp + 0xe8]
cmp byte [0x8f7eb8], 0
jne 0x56bef6
mov dword [ebx + 0x74], ebp
jmp 0x56a628
lea esi, [ebx + 0x74]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
jmp 0x56a628
lea esi, [ecx + 0xc]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0041b160
mov ecx, dword [esp + 0x84]
jmp 0x56be8c
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 4], ebx
call fcn.005eaeb0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
mov dword [esp + 0x218], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x220], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
jmp 0x56a628
cmp byte [esp + 0x290], 0
je 0x56c0f6
mov dword [esp + 0x224], edi
mov ebx, dword [esp + 0x27c]
mov dword [esp + 0x228], ebx
mov ebx, dword [esp + 0x280]
mov dword [esp + 0x22c], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ea350
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x174], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x178], ebx
xor ebx, ebx
mov dword [esp + 0x240], ebx
mov dword [esp + 0x244], ebx
mov dword [esp + 0x248], ebx
mov dword [esp + 0x24c], ebx
lea ebx, [esp + 0x240]
mov dword [esp + 0x88], ebx
mov dword [esp], 0x6f7be0
lea ebx, [esp + 0x224]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.004178c0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x88]
mov dword [ebx], ecx
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x174]
mov dword [esp], ebx
mov ebx, dword [esp + 0x178]
mov dword [esp + 4], ebx
call fcn.00418100
mov ebx, dword [esp + 0x88]
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov edx, 2
mov ecx, 2
mov eax, ebx
mov ebx, 0x770be4
mov dword [esp], ebx
mov dword [esp + 4], 0x47
mov dword [esp + 0x200], eax
mov dword [esp + 8], eax
mov dword [esp + 0x204], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x208], ecx
mov dword [esp + 0x10], ecx
call fcn.00469a70
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x274]
mov dword [esp], ebx
mov dword [esp + 0x184], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x188], eax
mov dword [esp + 8], eax
call fcn.00566220
mov edi, dword [esp + 0x278]
jmp 0x56b0ef
mov ebx, dword [esp + 0x274]
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 edi, dword [esp + 0x278]
jmp 0x56b0ef
xchg ebp, eax
cmp al, 0x6e
xchg ebp, eax
jne 0x56c20a
mov dword [esp + 0x1ac], edx
mov dword [esp + 0x1b0], ecx
mov dword [esp + 0x1b4], eax
mov ebp, eax
and ebp, 0x1f
cmp ebp, 0x15
ja 0x56c1f3
cmp ebp, 0x14
jne 0x56c1e5
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ea350
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x18c], ecx
mov dword [esp], ecx
mov dword [esp + 0x190], eax
mov dword [esp + 4], eax
call fcn.005eafd0
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x284]
mov dword [esp], ebx
mov ebx, dword [esp + 0x288]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28c]
mov dword [esp + 8], ebx
mov dword [esp + 0x218], edx
mov dword [esp + 0xc], edx
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x220], eax
mov dword [esp + 0x14], eax
call fcn.005e9140
jmp 0x56a628
cmp ebp, 0x15
je 0x56c15c
jmp 0x56a628
cmp ebp, 0x16
je 0x56c15c
cmp ebp, 0x17
je 0x56c15c
jmp 0x56a628
xchg ebp, eax
cmp al, 0x74
xchg ebp, eax
je 0x56ac1a
jmp 0x56b0d2
call fcn.00435970
ud2
mov eax, 1
jmp 0x569d05
call fcn.00435970
ud2
call fcn.004616d0
jmp fcn.00569ae0