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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x50], 0
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x4c], 0x78
mov ebx, 0x671c40
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x38]
dec dword [eax + 4]
jne 0x56e557
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x38], ebx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 8]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x34], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x108], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xd0]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10c], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xcc]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x114], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0xc]
cmp eax, 0xffffffff
sete al
movzx eax, al
cmp eax, 0
jne 0x56e5cb
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0xc]
cmp eax, 0xfffffffe
sete al
movzx eax, al
cmp eax, 0
je 0x56e5f7
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0xffffffff
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x38], 0
jl 0x56e5f7
mov edx, dword [0x687774]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x38]
mov dword [edx + eax*4 + 0x18], 1
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x34], 1
jne 0x56e623
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x108], 0
jle 0x56e623
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x108], 0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x5c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x88], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x2c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x74], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xe0]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x140], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xd8]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x138], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xdc]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x13c], edx
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x38], 0
jge 0x56e687
mov eax, 0
jmp 0x56fcf6
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x24]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x44], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x7c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x48], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x90]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x11c], edx
cmp dword [0x686c38], 0
jne 0x56e6d9
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x34], 0
je 0x56e6cd
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x24]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x48], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x28]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x14], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x3c], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x58]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x80], edx
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x80]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56e726
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x78]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56e738
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x80], 0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x50]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x78], edx
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x78], 0
jne 0x56e76a
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x74], 0
je 0x56e768
push 6
push 1
call fcn.0065e049
add esp, 8
mov edx, dword [ebp + 0x10]
mov dword [edx + 0x7c], eax
jmp 0x56e7de
cmp dword [0x686c38], 0
jne 0x56e7c5
cmp dword [0x68b344], 0x4000
je 0x56e7c5
mov eax, dword [0x686db0]
and eax, 2
cmp eax, 0
je 0x56e7a2
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x50], 1
jle 0x56e7a2
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x80], 0
mov eax, dword [0x686db0]
and eax, 8
cmp eax, 0
je 0x56e7c5
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x50], 1
jle 0x56e7c5
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x80], 0
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x80], 0xa
jl 0x56e7de
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x80], 0
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x6c], 0
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x70], 0
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0x90]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x88], 1
jne 0x56e82e
push 4
push 0
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0x90]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x88], 0x14
jne 0x56e898
push 0x1f
push 0
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0x90]
push 0x1f
push 0
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xf4]
push 1
push 0x167
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xf0]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x88], 0xa
jne 0x56e8c9
push 0x17
push 0
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0x90]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x88], 0xd
jne 0x56e8ea
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0x90]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x68]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x124], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x130], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x6c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x128], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x34]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xa0], edx
cmp dword [0x686c38], 0
jne 0x56e99d
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x10], 0x66
jne 0x56e991
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x34]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56e95e
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56e991
cmp dword [0x686a44], 0
jle 0x56e98c
mov edx, dword [0x686a44]
add edx, 0x29
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x34], edx
mov edx, dword [0x686a44]
add edx, 0x29
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], edx
jmp 0x56e991
call fcn.006617b4
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x34]
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x4c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xa4], edx
mov eax, dword [0x686db0]
and eax, 0x20
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56e9d0
mov eax, dword [0x686c38]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ec88
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x10], 1
jne 0x56ebb2
mov eax, dword [0x685470]
cmp eax, 1
setge al
movzx eax, al
cmp eax, 0
je 0x56ea07
mov eax, dword [0x685470]
cmp eax, 2
setle al
movzx eax, al
cmp eax, 0
je 0x56ea1b
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 2
jmp 0x56ebad
cmp dword [0x685470], 3
jne 0x56ea9f
mov ecx, 2
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ea55
mov ecx, 2
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56ea8b
mov ecx, 2
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56ea8b
mov ecx, 2
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ea9a
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 2
jmp 0x56ebad
cmp dword [0x685470], 4
jne 0x56eb23
mov ecx, 3
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ead9
mov ecx, 3
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56eb0f
mov ecx, 3
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56eb0f
mov ecx, 3
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56eb1e
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 2
jmp 0x56ebad
cmp dword [0x685470], 7
jge 0x56eba4
mov ecx, 4
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56eb5d
mov ecx, 4
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56eb93
mov ecx, 4
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56eb93
mov ecx, 4
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56eba2
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 2
jmp 0x56ebad
cmp dword [0x685470], 7
jl 0x56ebad
jmp 0x56ec75
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x10], 2
jne 0x56ec75
cmp dword [0x685470], 1
jne 0x56ebcd
jmp 0x56ec75
mov eax, dword [0x685470]
cmp eax, 1
setg al
movzx eax, al
cmp eax, 0
je 0x56ebee
mov eax, dword [0x685470]
cmp eax, 6
setl al
movzx eax, al
cmp eax, 0
je 0x56ec6b
mov ecx, 2
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ec24
mov ecx, 2
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56ec5a
mov ecx, 2
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56ec5a
mov ecx, 2
mov eax, dword [ebp + 0xc]
cdq
idiv ecx
mov eax, edx
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ec69
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 1
jmp 0x56ec75
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x14], 1
jne 0x56ec88
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x14], 2
mov eax, dword [0x686db4]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56eca9
mov eax, dword [0x686a5c]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ecc1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x14], 1
jle 0x56ecc1
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x14], 1
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xc]
mov ebx, 0x18
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xac]
cmp edx, 0
jg 0x56ed19
mov ecx, 5
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov ecx, edx
mov esi, 5
mov eax, dword [ebp + 0xc]
cdq
idiv esi
mov eax, edx
imul eax, eax, 5
add ecx, eax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x5c], 0x2d
jmp 0x56edd0
cmp edx, 1
jne 0x56ed67
mov ecx, 5
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov ecx, edx
mov esi, 5
mov eax, dword [ebp + 0xc]
cdq
idiv esi
mov eax, edx
imul eax, eax, 5
add ecx, eax
push ebx
push ecx
call fcn.004c17f0
add esp, 8
mov ecx, eax
push 0
push ecx
call fcn.004c1800
add esp, 8
mov ecx, eax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
jmp 0x56edd0
cmp edx, 2
jne 0x56edb5
mov ecx, 5
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov ecx, edx
mov esi, 5
mov eax, dword [ebp + 0xc]
cdq
idiv esi
mov eax, edx
imul eax, eax, 5
add ecx, eax
push ebx
push ecx
call fcn.004c17f0
add esp, 8
mov ecx, eax
push 0
push ecx
call fcn.004c1800
add esp, 8
mov ecx, eax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
jmp 0x56edd0
push 3
push 0
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x14], 3
jne 0x56ee7e
mov eax, dword [0x686db0]
and eax, 2
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56ee01
mov eax, dword [0x684c3c]
cmp eax, 1
sete al
movzx eax, al
cmp eax, 0
je 0x56ee64
mov ecx, 5
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov ecx, edx
mov esi, 5
mov eax, dword [ebp + 0xc]
cdq
idiv esi
mov eax, edx
imul eax, eax, 5
add ecx, eax
push ebx
push ecx
call fcn.004c17f0
add esp, 8
mov ecx, eax
push 0
push ecx
call fcn.004c1800
add esp, 8
mov ecx, eax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x10], 0
jle 0x56ee62
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
jmp 0x56ee79
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
jmp 0x56ef27
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x14], 4
jne 0x56ef27
mov eax, dword [0x686db0]
and eax, 2
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
jne 0x56eeaf
mov eax, dword [0x684c3c]
cmp eax, 1
sete al
movzx eax, al
cmp eax, 0
je 0x56ef12
mov ecx, 5
mov eax, dword [ebp + 8]
cdq
idiv ecx
mov ecx, edx
mov esi, 5
mov eax, dword [ebp + 0xc]
cdq
idiv esi
mov eax, edx
imul eax, eax, 5
add ecx, eax
push ebx
push ecx
call fcn.004c17f0
add esp, 8
mov ecx, eax
push 0
push ecx
call fcn.004c1800
add esp, 8
mov ecx, eax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x10], 0
jle 0x56ef10
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], edx
jmp 0x56ef27
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 0
mov eax, dword [0x686db4]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ef48
mov eax, dword [0x686a5c]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56ef60
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x10], 2
jne 0x56ef60
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x10], 1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x38], 0x10
jl 0x56f015
cmp dword [0x684c3c], 1
jne 0x56f00b
push dword [ebp + 0xc]
call fcn.004c1310
add esp, 4
push eax
push 0x696274
push dword [ebp + 8]
call fcn.004c1310
add esp, 4
push eax
push 0x6a3f40
mov eax, dword [ebp + 0x14]
push dword [eax + 0x38]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4db0
push dword [0x68546c]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4ddc
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x38], 0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xcc], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xd0], edx
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xb4]
mov edx, dword [0x68775c]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x38]
mov eax, dword [edx + eax*4 + 0x18]
mov eax, dword [eax + 0x50]
and eax, 8
cmp eax, 0
je 0x56f06b
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x38]
mov dword [0x68606c], eax
or dword [0x686db0], 0x40
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0xd0]
and eax, 0xff
cmp eax, 0
je 0x56f3d5
fldz
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xa8]
mov edx, dword [0x68775c]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x38]
mov eax, dword [edx + eax*4 + 0x18]
push dword [eax + 0x50]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4e20
mov eax, dword [ebp + 0x14]
push dword [eax + 0x38]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4e54
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
mov eax, dword [ebp + 0x14]
mov esi, dword [eax + 0x3c]
and esi, 0xff00
shr esi, 8
cmp esi, 0x63
sete al
movzx eax, al
cmp eax, 0
jne 0x56f10e
cmp esi, dword [0x687764]
setg al
movzx eax, al
cmp eax, 0
je 0x56f118
mov esi, 0
push 0x42
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x40]
and eax, 0xff00
shr eax, 8
push eax
call fcn.004c17f0
add esp, 8
mov ebx, eax
push 1
push ebx
call fcn.004c1800
add esp, 8
mov ebx, eax
cmp ebx, 7
jne 0x56f22f
push dword [ebp + 0xc]
call fcn.004c1310
add esp, 4
push eax
push 0x696274
push dword [ebp + 8]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4e6c
mov eax, dword [ebp + 0x10]
push dword [eax + 0xcc]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4e84
push ebx
call fcn.004c1310
add esp, 4
push eax
push 0x6a4ea0
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
mov dword [0x686068], esi
mov eax, dword [0x686068]
cmp eax, 0
setge al
movzx eax, al
cmp eax, 0
je 0x56f202
mov eax, dword [0x686068]
cmp eax, dword [0x687764]
setl al
movzx eax, al
cmp eax, 0
je 0x56f22f
mov edx, dword [0x68775c]
mov eax, dword [0x686068]
mov eax, dword [edx + eax*4 + 0x18]
mov ecx, dword [0x68775c]
mov edx, dword [0x686068]
mov edx, dword [ecx + edx*4 + 0x18]
mov edx, dword [edx + 0x50]
or edx, 4
mov dword [eax + 0x50], edx
cmp ebx, 8
jne 0x56f357
push esi
call fcn.004c1310
add esp, 4
push eax
push 0x6a4ef4
push dword [ebp + 0xc]
call fcn.004c1310
add esp, 4
push eax
push 0x696274
push dword [ebp + 8]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4e6c
mov eax, dword [ebp + 0x10]
push dword [eax + 0xcc]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4f18
push ebx
call fcn.004c1310
add esp, 4
push eax
push 0x6a4f38
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
mov dword [0x68606c], esi
mov eax, dword [0x68606c]
cmp eax, 0
setge al
movzx eax, al
cmp eax, 0
je 0x56f312
mov eax, dword [0x68606c]
cmp eax, dword [0x687764]
setl al
movzx eax, al
cmp eax, 0
jne 0x56f325
mov eax, dword [0x68606c]
cmp eax, 0xf
sete al
movzx eax, al
cmp eax, 0
je 0x56f352
mov edx, dword [0x68775c]
mov eax, dword [0x68606c]
mov eax, dword [edx + eax*4 + 0x18]
mov ecx, dword [0x68775c]
mov edx, dword [0x68606c]
mov edx, dword [ecx + edx*4 + 0x18]
mov edx, dword [edx + 0x50]
or edx, 8
mov dword [eax + 0x50], edx
call fcn.006617b4
mov eax, dword [0x686db4]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56f378
mov eax, dword [0x686a5c]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56f38b
mov eax, dword [0x686c38]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56f3d5
cmp ebx, 0xb
setge al
movzx eax, al
cmp eax, 0
je 0x56f3a7
cmp ebx, 0x2d
setle al
movzx eax, al
cmp eax, 0
je 0x56f3d5
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x78]
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fmul dword [0x6a4f90]
sub esp, 8
fstp qword [esp]
call fcn.006617e4
add esp, 8
mov edx, dword [ebp + 0x10]
mov dword [edx + 0xdc], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x40]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xd4], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xd8], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x78]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xdc], edx
fld1
mov eax, dword [ebp + 0x10]
fstp dword [eax + 0xe0]
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x48]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xe4], edx
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 0x24]
cmp edi, 0x671c40
je 0x56f435
push 1
push edi
call fcn.004f0b81
add esp, 8
mov ebx, 0x671c40
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f451
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x10]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x88], 0
je 0x56f479
cmp dword [ebp - 4], 0x1a
jl 0x56f479
mov dword [ebp - 4], 0
cmp dword [ebp - 4], 0
jle 0x56fc50
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
cmp dword [ebp - 4], 0x66
jne 0x56f494
cmp eax, 0
jne 0x56f494
mov eax, dword [0x686be8]
cmp eax, 1
sete al
movzx eax, al
cmp eax, 0
je 0x56f4b8
mov eax, dword [0x686dbc]
and eax, 1
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56f509
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0x1d
jne 0x56f509
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], 0xb
push 0
push 0xffffffffffffffff
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004f7c7f
add esp, 0x14
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f503
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
mov eax, dword [ebp + 0x18]
and eax, 2
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56f52b
mov eax, dword [0x686a5c]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56f6ea
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
cmp eax, 0x1e
sete al
movzx eax, al
cmp eax, 0
jne 0x56f557
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
cmp eax, 0xf
sete al
movzx eax, al
cmp eax, 0
je 0x56f5a4
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], 0xb
push 0
push 0xffffffffffffffff
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004f7c7f
add esp, 0x14
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f599
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
jmp 0x56f6ea
cmp dword [ebp - 4], 0x64
jne 0x56f5f2
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], 0xb
push 0
push 0xffffffffffffffff
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004f7c7f
add esp, 0x14
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f5e7
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
jmp 0x56f6ea
cmp dword [ebp - 4], 0x66
jne 0x56f6ea
cmp dword [0x686c38], 0
jne 0x56f6a0
call fcn.00563486
mov edx, dword [ebp + 0x14]
mov dword [edx + 0x44], eax
push 0x10
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
sub eax, 0x29
push eax
call fcn.004c17f0
add esp, 8
mov esi, eax
push 0
push esi
call fcn.004c1800
add esp, 8
mov esi, eax
mov eax, dword [0x686a38]
mov ebx, dword [eax + esi*4 + 0x18]
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0
jle 0x56f69e
push 1
push edi
call fcn.004f0b81
add esp, 8
cmp esi, 0
jg 0x56f65e
call fcn.006617b4
push ebx
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.005039eb
add esp, 0x10
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f68e
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
mov eax, 0
jmp 0x56fcf6
jmp 0x56f6ea
mov eax, dword [ebp + 0x14]
mov ebx, dword [eax + 0x88]
push 1
push edi
call fcn.004f0b81
add esp, 8
push ebx
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.005039eb
add esp, 0x10
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f6e4
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0x1c
jne 0x56f705
cmp dword [0x686c38], 0
jle 0x56f6fe
jmp 0x56f705
add dword [0x686ca8], 1
cmp dword [ebp - 4], 0x51
jne 0x56f74f
mov eax, dword [0x686a5c]
cmp eax, 1
sete al
movzx eax, al
cmp eax, 0
je 0x56f72d
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x38]
cmp eax, 0
setl al
movzx eax, al
cmp eax, 0
je 0x56f734
jmp 0x56f74f
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x38], 0
jl 0x56f74f
cmp dword [0x686c38], 0
jle 0x56f748
jmp 0x56f74f
add dword [0x686ca8], 1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0xb
jne 0x56f76a
cmp dword [0x686c38], 0
jle 0x56f763
jmp 0x56f76a
add dword [0x686cac], 1
cmp dword [0x686c1c], 2
je 0x56f7ad
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0xa
jne 0x56f783
add dword [0x686cd4], 1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 5
jne 0x56f793
add dword [0x686ce0], 1
cmp dword [ebp - 4], 0x55
jne 0x56f7a0
add dword [0x686ce8], 1
cmp dword [ebp - 4], 0x56
jne 0x56f7ad
add dword [0x686cf0], 1
mov edx, dword [0x685fdc]
mov eax, dword [ebp + 8]
imul eax, dword [0x685fec]
add edx, eax
mov dword [ebp - 0xc], edx
mov edx, dword [0x685fe0]
mov eax, dword [ebp + 0xc]
imul eax, dword [0x685ff0]
add edx, eax
mov dword [ebp - 8], edx
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0
je 0x56f9bf
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0x1e
jl 0x56f813
mov eax, dword [0x687674]
mov edx, dword [eax + 0x2c]
mov eax, dword [ebp - 0xc]
mov dword [edx + 8], eax
mov eax, dword [0x687674]
mov edx, dword [eax + 0x2c]
mov eax, dword [ebp - 8]
mov dword [edx + 0xc], eax
mov dword [0x686ad0], 1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0x63
jne 0x56f8b5
push dword [edi + 0x14]
call fcn.004c1310
add esp, 4
push eax
push 0x6966c8
mov eax, dword [ebp + 0x10]
push dword [eax + 0xa0]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4f94
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
push 1
push edi
call fcn.004f0b81
add esp, 8
push 0xffffffffffffffff
call fcn.004f0c3c
add esp, 4
push eax
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.004f12b7
add esp, 0xc
mov edi, eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f8aa
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
jmp 0x56f9ba
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0x14
jne 0x56f8df
mov eax, dword [ebp + 0x14]
push dword [eax + 0x30]
mov eax, dword [ebp + 0x14]
push dword [eax + 0x4c]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004fcf85
add esp, 0x10
mov edi, eax
jmp 0x56f9ba
cmp dword [ebp - 4], 0x66
jne 0x56f994
cmp dword [0x686c38], 0
jne 0x56f928
call fcn.00563486
mov edx, dword [ebp + 0x14]
mov dword [edx + 0x44], eax
push 0x10
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
sub eax, 0x29
push eax
call fcn.004c17f0
add esp, 8
push 0
push eax
call fcn.004c1800
add esp, 8
mov edx, dword [0x686a38]
mov ebx, dword [edx + eax*4 + 0x18]
jmp 0x56f93f
mov eax, dword [ebp + 0x14]
mov ebx, dword [eax + 0x88]
cmp dword [0x686a5c], 1
jne 0x56f93f
mov ebx, 0x63
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x44], 0
jle 0x56f992
push 1
push edi
call fcn.004f0b81
add esp, 8
push ebx
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.005039eb
add esp, 0x10
mov edi, eax
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x88], ebx
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56f98c
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
jmp 0x56f9ba
push 0
push 0xffffffffffffffff
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004f7c7f
add esp, 0x14
mov edi, eax
mov edx, dword [edi + 0x158]
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x44], edx
jmp 0x56fad0
cmp dword [ebp - 4], 0x65
jne 0x56f9e3
mov eax, dword [ebp + 0x14]
push dword [eax + 0x84]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.0050148c
add esp, 0xc
mov edi, eax
jmp 0x56fad0
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x20], 0
jle 0x56fa09
push 0
mov eax, dword [ebp + 0x14]
push dword [eax + 0x20]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.004f6e80
add esp, 0x10
mov edi, eax
jmp 0x56fad0
cmp dword [ebp - 4], 0x66
jne 0x56fabd
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0x44]
mov eax, dword [ebp + 0x14]
mov ebx, dword [eax + 0x88]
cmp edx, 0
jle 0x56fabb
push ebx
call fcn.004c1310
add esp, 4
push eax
push 0x69c5ec
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
call fcn.004c1310
add esp, 4
push eax
push 0x6a4fe4
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004c1470
add esp, 8
push eax
call fcn.004e9b5f
add esp, 4
push 1
push edi
call fcn.004f0b81
add esp, 8
push ebx
mov eax, dword [ebp + 0x14]
push dword [eax + 0x44]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.005039eb
add esp, 0x10
mov edi, eax
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x88], ebx
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56fab5
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
jmp 0x56fad0
push dword [ebp - 4]
push dword [ebp - 8]
push dword [ebp - 0xc]
call fcn.004f12b7
add esp, 0xc
mov edi, eax
cmp edi, 0x671c40
je 0x56fc50
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x14]
mov dword [edi + 0xa8], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [edi + 0x198], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x30]
mov dword [edi + 0x120], eax
cmp dword [edi + 0x120], 0
jle 0x56fb21
push 1
push 0x1f
call fcn.0065e049
add esp, 8
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp dword [edi + 0xb4]
mov eax, dword [0x686db0]
and eax, 0x20
cmp eax, 0
setne al
movzx eax, al
cmp eax, 0
je 0x56fb45
mov eax, dword [0x686c38]
cmp eax, 0
sete al
movzx eax, al
cmp eax, 0
je 0x56fbdd
cmp dword [edi + 0x14], 0x28
jge 0x56fbdd
cmp dword [edi + 0xa8], 0
jne 0x56fbdd
mov ebx, 0x3e8
push 0x15e
mov eax, dword [0x685470]
sub eax, 1
imul eax, eax, 0x32
push eax
call fcn.004c17f0
add esp, 8
sub ebx, eax
push 1
push 0x3e8
call fcn.0065e049
add esp, 8
cmp eax, ebx
jle 0x56fbdd
mov ebx, 0x3e8
push 0x1f4
mov eax, dword [0x685470]
sub eax, 1
imul eax, eax, 0x4b
push eax
call fcn.004c17f0
add esp, 8
sub ebx, eax
push 1
push 0x3e8
call fcn.0065e049
add esp, 8
cmp eax, ebx
jle 0x56fbd3
mov dword [edi + 0x120], 1
jmp 0x56fbdd
mov dword [edi + 0xa8], 1
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x44]
mov dword [edi + 0x158], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x4c]
mov dword [edi + 0x15c], eax
mov ebx, edi
inc dword [ebx + 4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x24]
dec dword [eax + 4]
jne 0x56fc0e
push eax
call fcn.004c1de0
add esp, 4
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x24], ebx
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x80]
mov dword [edi + 0x188], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x84]
mov dword [edi + 0x18c], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x88]
mov dword [edi + 0x190], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x8c]
mov dword [edi + 0x194], eax
cmp edi, 0x671c40
je 0x56fcef
mov eax, dword [ebp + 8]
mov dword [edi + 0x48], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x4c], eax
mov eax, dword [ebp - 0xc]
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp dword [edi + 0x1c]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp dword [edi + 0x20]
mov eax, dword [ebp - 0xc]
mov dword [edi + 0xa0], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x9c], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x10]
cmp eax, 5
setge al
movzx eax, al
cmp eax, 0
je 0x56fcc1
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x10]
cmp eax, 0xa
setle al
movzx eax, al
cmp eax, 0
je 0x56fcef
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x12c], edx
mov dword [edi + 0x1b4], 1
push 0
push 0
push edi
call fcn.0050cab0
add esp, 0xc
mov eax, 0
jmp 0x56fcf6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret