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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff48
mov eax, dword [0x6c7190]
and eax, 0xffff
push ebx
push esi
push edi
lea ebx, [eax + eax*2]
mov edi, dword [ebp + 0x18]
shl ebx, 0xd
lea esi, [ebp - 4]
add ebx, eax
shl ebx, 3
add ebx, 0x70995c
cmp dword [0x6c718c], 0
jne 0x56c6fa
or eax, 0xffffffff
jmp 0x56dc0f
cmp dword [0x70991c], 0
je 0x56c70a
xor eax, eax
jmp 0x56dc0f
cmp dword [ebp + 0x20], 1
jne 0x56c766
mov edx, dword [ebp + 8]
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x9c], edx
fild dword [ebp - 0x9c]
fstp dword [ebp + 8]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa0], eax
fild dword [ebp - 0xa0]
fstp dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0xa4], edx
fild dword [ebp - 0xa4]
fstp dword [ebp + 0xc]
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa8], eax
fild dword [ebp - 0xa8]
fstp dword [ebp + 0x14]
jmp 0x56c796
push dword [ebp + 8]
call fcn.0045eb90
pop ecx
mov dword [ebp - 0x50], eax
push dword [ebp + 0xc]
call fcn.0045eb90
pop ecx
mov dword [ebp - 0x54], eax
push dword [ebp + 0x10]
call fcn.0045eb90
pop ecx
mov dword [ebp - 0x58], eax
push dword [ebp + 0x14]
call fcn.0045eb90
pop ecx
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x50]
cmp ecx, dword [ebp - 0x58]
je 0x56c7a6
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x5c]
jne 0x56c7ae
or eax, 0xffffffff
jmp 0x56dc0f
cmp dword [ebx + 0xa4], 0
jne 0x56c7c1
mov eax, dword [0x6c7190]
call fcn.00566688
mov edx, dword [edi + 0x1c]
and edx, 0xf8000000
cmp edx, 0x30000000
jne 0x56c7fd
mov ecx, dword [edi + 0x1c]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x6c728c]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x56c7fd
mov edx, dword [ebp - 0xc]
mov eax, dword [edi + 0x1c]
and eax, 0x7ff0000
mov ecx, dword [edx]
shl ecx, 0x10
cmp ecx, eax
je 0x56c805
or eax, 0xffffffff
jmp 0x56dc0f
cmp dword [ebp + 0x20], 0
je 0x56c81f
cmp dword [0x662b80], 1
jne 0x56c818
xor edx, edx
jmp 0x56c821
mov edx, 2
jmp 0x56c821
xor edx, edx
or edx, dword [ebp + 0x1c]
cmp dword [0x662b6c], 0
je 0x56c834
mov eax, 4
jmp 0x56c836
xor eax, eax
or edx, eax
mov eax, dword [ebp - 0xc]
call fcn.00568938
mov edx, dword [0x7072b0]
lea eax, [edi + 0x1c]
mov dword [ebp - 0x4c], edx
mov edx, dword [0x662b7c]
mov ecx, dword [edi + 0x11c]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x60], edx
fld dword [ebp + 0x10]
fsub dword [ebp + 8]
fild dword [edi + 0x268]
fdivp st(1)
fstp dword [ebp - 0x20]
fld dword [ebp + 0x14]
fsub dword [ebp + 0xc]
fild dword [edi + 0x26c]
fdivp st(1)
fstp dword [ebp - 0x24]
fld dword [ebp - 0x20]
fcomp dword [0x56dc18]
fnstsw ax
sahf
setb dl
and edx, 1
fld dword [ebp - 0x24]
fcomp dword [0x56dc18]
fnstsw ax
sahf
setb cl
and ecx, 1
cmp dl, cl
setne dl
and edx, 1
mov dword [ebp - 0x28], edx
fld dword [0x56dc1c]
fsubr dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [0x56dc1c]
fsubr dword [ebp + 0xc]
fstp dword [ebp + 0xc]
fild dword [0x662b34]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fild dword [0x662b38]
fadd dword [ebp + 0xc]
fstp dword [ebp + 0xc]
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x58]
jle 0x56c8fc
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x54]
cmp edx, dword [ebp - 0x5c]
jle 0x56c916
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x54], edx
mov ecx, dword [0x662b4c]
inc ecx
mov eax, dword [ebp - 0x58]
sub eax, ecx
mov edx, dword [ebp - 0x50]
inc edx
mov ecx, dword [0x662b44]
sub ecx, edx
and eax, ecx
mov edx, dword [0x662b50]
inc edx
mov ecx, dword [ebp - 0x5c]
sub ecx, edx
and eax, ecx
mov edx, dword [ebp - 0x54]
inc edx
mov ecx, dword [0x662b48]
sub ecx, edx
and eax, ecx
test eax, 0x80000000
je 0x56d17a
mov eax, dword [ebx + 0xd8]
dec eax
je 0x56cdd9
dec eax
jne 0x56dbff
xor eax, eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x14]
jge 0x56dbff
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
and eax, 0xf8000000
cmp eax, 0x30000000
jne 0x56c9bd
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x6c728c]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x56c9bd
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx]
mov edx, dword [eax]
shl ecx, 0x10
and edx, 0x7ff0000
cmp ecx, edx
je 0x56c9c5
or eax, 0xffffffff
jmp 0x56dc0f
mov edx, dword [ebp - 0xc]
mov ecx, dword [edx + 0x90]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x682d80]
mov dword [ebp - 0x10], eax
add dword [ebp - 0x18], 4
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
cmp ecx, dword [ebx + 0x10]
je 0x56cb53
mov eax, dword [0x6c7190]
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
mov dword [ebp - 0x68], ecx
mov eax, dword [ebp - 0x64]
and eax, 0xffff
lea edx, [eax + eax*2]
shl edx, 0xd
add edx, eax
shl edx, 3
add edx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x6c], edx
je 0x56cb53
mov ecx, dword [ebp - 0x6c]
cmp dword [ecx], 0
je 0x56cb53
mov eax, dword [ebp - 0x6c]
mov edx, dword [eax + 0x10]
cmp edx, dword [ebp - 0x68]
jne 0x56ca52
mov ecx, dword [ebp - 0x6c]
cmp dword [ecx + 0x40], 0
jne 0x56ca52
xor eax, eax
jmp 0x56cb53
mov edx, dword [ebp - 0x64]
and edx, 0xffff
lea ecx, [edx + edx*2]
shl ecx, 0xd
add ecx, edx
shl ecx, 3
add ecx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x70], ecx
je 0x56ca80
mov eax, dword [ebp - 0x70]
cmp dword [eax], 0
jne 0x56ca88
or edx, 0xffffffff
jmp 0x56cb16
mov ecx, dword [ebp - 0x70]
cmp dword [ecx + 0xd4], 0
je 0x56caed
call fcn.0045f350
test eax, eax
jne 0x56caed
mov eax, dword [ebp - 0x70]
cmp dword [eax + 0x3c], 0
jne 0x56caed
push 0
mov edx, dword [ebp - 0x70]
mov ecx, dword [edx + 0xd4]
push ecx
mov eax, dword [ebp - 0x70]
mov edx, dword [eax + 0xd8]
mov ecx, dword [ebp - 0x70]
mov eax, dword [ecx + edx*4 + 0xf8]
push eax
mov edx, dword [ebp - 0x70]
mov ecx, dword [edx + 0xd8]
mov eax, dword [ecx*4 + 0x5f3ee8]
push eax
mov edx, dword [ebp - 0x70]
mov ecx, dword [edx + 0xdc]
push ecx
mov eax, dword [ebp - 0x70]
mov edx, dword [eax + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
mov eax, dword [ebp - 0x70]
xor edx, edx
mov dword [eax + 0xd4], edx
mov ecx, dword [ebp - 0x70]
mov eax, dword [ecx + 0xd8]
mov edx, dword [ebp - 0x70]
mov ecx, dword [edx + eax*4 + 0xf8]
mov eax, dword [ebp - 0x70]
mov dword [eax + 0xd0], ecx
xor edx, edx
mov ecx, dword [ebp - 0x6c]
mov dword [ecx + 0x38], 1
mov eax, dword [ebp - 0x6c]
cmp dword [eax + 0x10], 0
jne 0x56cb2f
cmp dword [ebp - 0x68], 0
jne 0x56cb3e
mov edx, dword [ebp - 0x6c]
cmp dword [edx + 0x10], 0
je 0x56cb48
cmp dword [ebp - 0x68], 0
jne 0x56cb48
mov ecx, dword [ebp - 0x6c]
mov dword [ecx + 0x34], 1
mov eax, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
mov dword [eax + 0x10], edx
xor eax, eax
cmp dword [ebx + 0x34], 0
jne 0x56cb5f
cmp dword [ebx + 0x38], 0
je 0x56cb6c
mov edx, dword [0x6c7190]
push edx
call fcn.00565aa0
pop ecx
cmp dword [ebx + 0xd4], 0
je 0x56cbe6
cmp dword [ebx + 0xdc], 4
jne 0x56cb96
mov eax, dword [ebx + 0xd8]
mov ecx, dword [ebx + 0xd4]
add ecx, 6
cmp ecx, dword [eax*4 + 0x5f3edc]
jle 0x56cbe6
push 0
mov edx, dword [ebx + 0xd4]
push edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ebx + ecx*4 + 0xf8]
push eax
mov edx, dword [ebx + 0xd8]
mov ecx, dword [edx*4 + 0x5f3ee8]
push ecx
mov eax, dword [ebx + 0xdc]
push eax
mov edx, dword [ebx + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
xor eax, eax
mov dword [ebx + 0xd4], eax
mov edx, dword [ebx + 0xd8]
mov ecx, dword [ebx + edx*4 + 0xf8]
mov dword [ebx + 0xd0], ecx
mov dword [ebx + 0xdc], 4
mov eax, dword [ebx + 0xd0]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0xc]
add edx, 0x18
mov dword [esi], edx
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x4c]
mov dword [ecx + 0x88], eax
mov edx, dword [ebp - 8]
mov dword [edx + 0x10], eax
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx]
fmul dword [ebp - 0x20]
fadd dword [ebp + 8]
fst dword [eax]
mov edx, dword [ebp - 8]
fst dword [edx + 0x50]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0xa0]
mov eax, dword [esi]
mov edx, dword [ebp - 8]
fld dword [eax + 0x1c]
fmul dword [ebp - 0x20]
fadd dword [ebp + 8]
fst dword [edx + 0x28]
mov ecx, dword [ebp - 8]
fst dword [ecx + 0x78]
mov eax, dword [ebp - 8]
fstp dword [eax + 0xc8]
mov edx, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [edx + 4]
fmul dword [ebp - 0x24]
fadd dword [ebp + 0xc]
fst dword [ecx + 4]
mov eax, dword [ebp - 8]
fst dword [eax + 0x2c]
mov edx, dword [ebp - 8]
fstp dword [edx + 0xcc]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x3c]
fmul dword [ebp - 0x24]
fadd dword [ebp + 0xc]
fst dword [eax + 0x54]
mov edx, dword [ebp - 8]
fst dword [edx + 0x7c]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0xa4]
mov eax, dword [esi]
mov edx, dword [ebp - 8]
fld dword [eax]
fmul dword [0x7072a8]
fst dword [edx + 0x18]
mov ecx, dword [ebp - 8]
fst dword [ecx + 0x68]
mov eax, dword [ebp - 8]
fstp dword [eax + 0xb8]
mov edx, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [edx + 0x1c]
fmul dword [0x7072a8]
fst dword [ecx + 0x40]
mov eax, dword [ebp - 8]
fst dword [eax + 0x90]
mov edx, dword [ebp - 8]
fstp dword [edx + 0xe0]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 4]
fmul dword [0x7072ac]
fst dword [eax + 0x1c]
mov edx, dword [ebp - 8]
fst dword [edx + 0x44]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0xe4]
mov eax, dword [esi]
mov edx, dword [ebp - 8]
fld dword [eax + 0x3c]
fmul dword [0x7072ac]
fst dword [edx + 0x6c]
mov ecx, dword [ebp - 8]
fst dword [ecx + 0x94]
mov eax, dword [ebp - 8]
fstp dword [eax + 0xbc]
mov edx, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [edx + 0x14]
fst dword [ecx + 0x20]
mov eax, dword [ebp - 8]
fst dword [eax + 0x70]
mov edx, dword [ebp - 8]
fstp dword [edx + 0xc0]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x30]
fst dword [eax + 0x48]
mov edx, dword [ebp - 8]
fst dword [edx + 0x98]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0xe8]
mov eax, dword [esi]
mov edx, dword [ebp - 8]
fld dword [eax + 0x18]
fst dword [edx + 0x24]
mov ecx, dword [ebp - 8]
fst dword [ecx + 0x4c]
mov eax, dword [ebp - 8]
fstp dword [eax + 0xec]
mov edx, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [edx + 0x50]
fst dword [ecx + 0x74]
mov eax, dword [ebp - 8]
fst dword [eax + 0x9c]
mov edx, dword [ebp - 8]
fstp dword [edx + 0xc4]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x60]
mov dword [ecx + 0xd0], eax
mov edx, dword [ebp - 8]
mov dword [edx + 0xa8], eax
mov edx, dword [ebp - 8]
mov dword [edx + 0x80], eax
mov edx, dword [ebp - 8]
mov dword [edx + 0x58], eax
mov edx, dword [ebp - 8]
mov dword [edx + 0x30], eax
mov edx, dword [ebp - 8]
mov dword [edx + 8], eax
add dword [ebx + 0xd0], 0xf0
add dword [ebx + 0xd4], 6
inc dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x14]
jl 0x56c97c
jmp 0x56dbff
xor eax, eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x14]
jge 0x56dbff
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
and eax, 0xf8000000
cmp eax, 0x30000000
jne 0x56ce2b
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x6c728c]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x56ce2b
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx]
mov edx, dword [eax]
shl ecx, 0x10
and edx, 0x7ff0000
cmp ecx, edx
je 0x56ce33
or eax, 0xffffffff
jmp 0x56dc0f
mov edx, dword [ebp - 0xc]
mov ecx, dword [edx + 0x90]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x682d80]
mov dword [ebp - 0x10], eax
add dword [ebp - 0x18], 4
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
cmp ecx, dword [ebx + 0x10]
je 0x56cfc1
mov eax, dword [0x6c7190]
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
mov dword [ebp - 0x78], ecx
mov eax, dword [ebp - 0x74]
and eax, 0xffff
lea edx, [eax + eax*2]
shl edx, 0xd
add edx, eax
shl edx, 3
add edx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x7c], edx
je 0x56cfc1
mov ecx, dword [ebp - 0x7c]
cmp dword [ecx], 0
je 0x56cfc1
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax + 0x10]
cmp edx, dword [ebp - 0x78]
jne 0x56cec0
mov ecx, dword [ebp - 0x7c]
cmp dword [ecx + 0x40], 0
jne 0x56cec0
xor eax, eax
jmp 0x56cfc1
mov edx, dword [ebp - 0x74]
and edx, 0xffff
lea ecx, [edx + edx*2]
shl ecx, 0xd
add ecx, edx
shl ecx, 3
add ecx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x80], ecx
je 0x56ceee
mov eax, dword [ebp - 0x80]
cmp dword [eax], 0
jne 0x56cef6
or edx, 0xffffffff
jmp 0x56cf84
mov ecx, dword [ebp - 0x80]
cmp dword [ecx + 0xd4], 0
je 0x56cf5b
call fcn.0045f350
test eax, eax
jne 0x56cf5b
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x3c], 0
jne 0x56cf5b
push 0
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0xd4]
push ecx
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 0xd8]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + edx*4 + 0xf8]
push eax
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0xd8]
mov eax, dword [ecx*4 + 0x5f3ee8]
push eax
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + 0xdc]
push ecx
mov eax, dword [ebp - 0x80]
mov edx, dword [eax + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
mov eax, dword [ebp - 0x80]
xor edx, edx
mov dword [eax + 0xd4], edx
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0xd8]
mov edx, dword [ebp - 0x80]
mov ecx, dword [edx + eax*4 + 0xf8]
mov eax, dword [ebp - 0x80]
mov dword [eax + 0xd0], ecx
xor edx, edx
mov ecx, dword [ebp - 0x7c]
mov dword [ecx + 0x38], 1
mov eax, dword [ebp - 0x7c]
cmp dword [eax + 0x10], 0
jne 0x56cf9d
cmp dword [ebp - 0x78], 0
jne 0x56cfac
mov edx, dword [ebp - 0x7c]
cmp dword [edx + 0x10], 0
je 0x56cfb6
cmp dword [ebp - 0x78], 0
jne 0x56cfb6
mov ecx, dword [ebp - 0x7c]
mov dword [ecx + 0x34], 1
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0x10], edx
xor eax, eax
cmp dword [ebx + 0x34], 0
jne 0x56cfcd
cmp dword [ebx + 0x38], 0
je 0x56cfda
mov edx, dword [0x6c7190]
push edx
call fcn.00565aa0
pop ecx
cmp dword [ebx + 0xd4], 0
je 0x56d054
cmp dword [ebx + 0xdc], 4
jne 0x56d004
mov eax, dword [ebx + 0xd8]
mov ecx, dword [ebx + 0xd4]
add ecx, 6
cmp ecx, dword [eax*4 + 0x5f3edc]
jle 0x56d054
push 0
mov edx, dword [ebx + 0xd4]
push edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ebx + ecx*4 + 0xf8]
push eax
mov edx, dword [ebx + 0xd8]
mov ecx, dword [edx*4 + 0x5f3ee8]
push ecx
mov eax, dword [ebx + 0xdc]
push eax
mov edx, dword [ebx + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
xor eax, eax
mov dword [ebx + 0xd4], eax
mov edx, dword [ebx + 0xd8]
mov ecx, dword [ebx + edx*4 + 0xf8]
mov dword [ebx + 0xd0], ecx
mov dword [ebx + 0xdc], 4
mov eax, dword [ebx + 0xd0]
mov dword [esi], eax
mov edx, dword [esi]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x4c]
add eax, 0x18
mov dword [edx + 0x64], ecx
mov edx, dword [esi]
mov dword [edx + 0x10], ecx
fld dword [eax]
fmul dword [ebp - 0x20]
mov edx, dword [esi]
fadd dword [ebp + 8]
fst dword [edx]
mov ecx, dword [esi]
fst dword [ecx + 0x38]
mov edx, dword [esi]
fstp dword [edx + 0x70]
fld dword [eax + 0x1c]
fmul dword [ebp - 0x20]
mov ecx, dword [esi]
fadd dword [ebp + 8]
fst dword [ecx + 0x1c]
mov edx, dword [esi]
fst dword [edx + 0x54]
mov ecx, dword [esi]
fstp dword [ecx + 0x8c]
fld dword [eax + 4]
fmul dword [ebp - 0x24]
mov edx, dword [esi]
fadd dword [ebp + 0xc]
fst dword [edx + 4]
mov ecx, dword [esi]
fst dword [ecx + 0x20]
mov edx, dword [esi]
fstp dword [edx + 0x90]
fld dword [eax + 0x3c]
fmul dword [ebp - 0x24]
mov ecx, dword [esi]
fadd dword [ebp + 0xc]
fst dword [ecx + 0x3c]
mov edx, dword [esi]
fst dword [edx + 0x58]
mov ecx, dword [esi]
fstp dword [ecx + 0x74]
mov edx, dword [esi]
fld dword [eax + 0x14]
fst dword [edx + 0x14]
mov ecx, dword [esi]
fst dword [ecx + 0x4c]
mov edx, dword [esi]
fstp dword [edx + 0x84]
mov ecx, dword [esi]
fld dword [eax + 0x30]
fst dword [ecx + 0x30]
mov edx, dword [esi]
fst dword [edx + 0x68]
mov ecx, dword [esi]
fstp dword [ecx + 0xa0]
mov edx, dword [esi]
fld dword [eax + 0x18]
fst dword [edx + 0x18]
mov ecx, dword [esi]
fst dword [ecx + 0x34]
mov edx, dword [esi]
fstp dword [edx + 0xa4]
fld dword [eax + 0x50]
mov eax, dword [esi]
fst dword [eax + 0x50]
mov ecx, dword [esi]
fst dword [ecx + 0x6c]
mov eax, dword [esi]
fstp dword [eax + 0x88]
mov edx, dword [esi]
mov ecx, dword [ebp - 0x60]
mov dword [edx + 0x94], ecx
mov eax, dword [esi]
mov dword [eax + 0x78], ecx
mov eax, dword [esi]
mov dword [eax + 0x5c], ecx
mov eax, dword [esi]
mov dword [eax + 0x40], ecx
mov eax, dword [esi]
mov dword [eax + 0x24], ecx
mov eax, dword [esi]
mov dword [eax + 8], ecx
add dword [ebx + 0xd0], 0xa8
add dword [ebx + 0xd4], 6
inc dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x14]
jl 0x56cdea
jmp 0x56dbff
mov eax, dword [ebp - 0x50]
inc eax
mov edx, dword [0x662b4c]
sub edx, eax
mov ecx, dword [0x662b44]
inc ecx
mov eax, dword [ebp - 0x58]
sub eax, ecx
and edx, eax
mov ecx, dword [ebp - 0x54]
inc ecx
mov eax, dword [0x662b50]
sub eax, ecx
and edx, eax
mov ecx, dword [0x662b48]
inc ecx
mov eax, dword [ebp - 0x5c]
sub eax, ecx
and edx, eax
test edx, 0x80000000
je 0x56d1be
xor eax, eax
jmp 0x56dc0f
fld dword [0x662b54]
fsub dword [0x56dc1c]
fild dword [0x662b34]
faddp st(1)
fstp dword [ebp - 0x2c]
fld dword [0x662b58]
fsub dword [0x56dc1c]
fild dword [0x662b38]
faddp st(1)
fstp dword [ebp - 0x34]
fld dword [0x662b5c]
fsub dword [0x56dc1c]
fild dword [0x662b34]
faddp st(1)
fstp dword [ebp - 0x30]
fld dword [0x662b60]
fsub dword [0x56dc1c]
fild dword [0x662b38]
faddp st(1)
fstp dword [ebp - 0x38]
mov edx, dword [ebx + 0xd8]
dec edx
je 0x56d781
dec edx
jne 0x56dbff
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x14]
jge 0x56dbff
mov edx, dword [ebp - 0x18]
mov eax, dword [edx]
mov edx, eax
and edx, 0xf8000000
cmp edx, 0x30000000
jne 0x56d27b
mov ecx, eax
and ecx, 0xffff
mov edx, dword [ecx*4 + 0x6c728c]
mov dword [ebp - 0xc], edx
test edx, edx
je 0x56d27b
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx]
shl edx, 0x10
and eax, 0x7ff0000
cmp edx, eax
je 0x56d283
or eax, 0xffffffff
jmp 0x56dc0f
mov ecx, dword [ebp - 0xc]
mov eax, dword [ecx + 0x90]
and eax, 0xffff
mov edx, dword [eax*4 + 0x682d80]
mov dword [ebp - 0x10], edx
add dword [ebp - 0x18], 4
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + 0x1c]
cmp eax, dword [ebx + 0x10]
je 0x56d418
mov edx, dword [0x6c7190]
mov dword [ebp - 0x84], edx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + 0x1c]
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x84]
and edx, 0xffff
lea ecx, [edx + edx*2]
shl ecx, 0xd
add ecx, edx
shl ecx, 3
add ecx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x8c], ecx
je 0x56d418
mov eax, dword [ebp - 0x8c]
cmp dword [eax], 0
je 0x56d418
mov edx, dword [ebp - 0x8c]
mov ecx, dword [edx + 0x10]
cmp ecx, dword [ebp - 0x88]
jne 0x56d329
mov eax, dword [ebp - 0x8c]
cmp dword [eax + 0x40], 0
jne 0x56d329
xor edx, edx
jmp 0x56d418
mov ecx, dword [ebp - 0x84]
and ecx, 0xffff
lea edi, [ecx + ecx*2]
shl edi, 0xd
add edi, ecx
shl edi, 3
add edi, 0x70995c
cmp dword [0x6c718c], 0
je 0x56d354
cmp dword [edi], 0
jne 0x56d359
or eax, 0xffffffff
jmp 0x56d3c3
cmp dword [edi + 0xd4], 0
je 0x56d3a6
call fcn.0045f350
test eax, eax
jne 0x56d3a6
cmp dword [edi + 0x3c], 0
jne 0x56d3a6
push 0
mov edx, dword [edi + 0xd4]
push edx
mov ecx, dword [edi + 0xd8]
mov eax, dword [edi + ecx*4 + 0xf8]
push eax
mov edx, dword [edi + 0xd8]
mov ecx, dword [edx*4 + 0x5f3ee8]
push ecx
mov eax, dword [edi + 0xdc]
push eax
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
xor eax, eax
mov dword [edi + 0xd4], eax
xor eax, eax
mov edx, dword [edi + 0xd8]
mov ecx, dword [edi + edx*4 + 0xf8]
mov dword [edi + 0xd0], ecx
mov edx, dword [ebp - 0x8c]
mov dword [edx + 0x38], 1
mov ecx, dword [ebp - 0x8c]
cmp dword [ecx + 0x10], 0
jne 0x56d3e5
cmp dword [ebp - 0x88], 0
jne 0x56d3fa
mov eax, dword [ebp - 0x8c]
cmp dword [eax + 0x10], 0
je 0x56d407
cmp dword [ebp - 0x88], 0
jne 0x56d407
mov edx, dword [ebp - 0x8c]
mov dword [edx + 0x34], 1
mov ecx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x88]
mov dword [ecx + 0x10], eax
xor edx, edx
cmp dword [ebx + 0x34], 0
jne 0x56d424
cmp dword [ebx + 0x38], 0
je 0x56d431
mov ecx, dword [0x6c7190]
push ecx
call fcn.00565aa0
pop ecx
cmp dword [ebx + 0xd4], 0
je 0x56d4ab
cmp dword [ebx + 0xdc], 4
jne 0x56d45b
mov edx, dword [ebx + 0xd8]
mov eax, dword [ebx + 0xd4]
add eax, 6
cmp eax, dword [edx*4 + 0x5f3edc]
jle 0x56d4ab
push 0
mov ecx, dword [ebx + 0xd4]
push ecx
mov eax, dword [ebx + 0xd8]
mov edx, dword [ebx + eax*4 + 0xf8]
push edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ecx*4 + 0x5f3ee8]
push eax
mov edx, dword [ebx + 0xdc]
push edx
mov ecx, dword [ebx + 4]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x64]
xor edx, edx
mov dword [ebx + 0xd4], edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ebx + ecx*4 + 0xf8]
mov dword [ebx + 0xd0], eax
mov dword [ebx + 0xdc], 4
mov edx, dword [ebx + 0xd0]
mov dword [ebp - 8], edx
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + 0x10c0]
mov dword [ebp - 0xac], ecx
fild dword [ebp - 0xac]
fmul dword [ebp - 0x20]
fdivr dword [0x56dc20]
fstp dword [ebp - 0x3c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + 0x10c2]
mov dword [ebp - 0xb0], ecx
fild dword [ebp - 0xb0]
fmul dword [ebp - 0x24]
fdivr dword [0x56dc20]
fstp dword [ebp - 0x40]
mov eax, dword [0x7072a8]
mov ecx, dword [0x7072ac]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0xc]
add eax, 0x18
mov dword [esi], eax
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x4c]
mov dword [ecx + 0x88], eax
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x10], eax
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax]
fmul dword [ebp - 0x20]
fadd dword [ebp + 8]
fst dword [ecx]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x50]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x1c]
fmul dword [ebp - 0x20]
fadd dword [ebp + 8]
fst dword [eax + 0x28]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x78]
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax + 4]
fmul dword [ebp - 0x24]
fadd dword [ebp + 0xc]
fst dword [ecx + 4]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x2c]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x3c]
fmul dword [ebp - 0x24]
fadd dword [ebp + 0xc]
fst dword [eax + 0x54]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x7c]
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax]
fmul dword [0x7072a8]
fst dword [ecx + 0x18]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x68]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x1c]
fmul dword [0x7072a8]
fst dword [eax + 0x40]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x90]
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax + 4]
fmul dword [0x7072ac]
fst dword [ecx + 0x1c]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x44]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x3c]
fmul dword [0x7072ac]
fst dword [eax + 0x6c]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x94]
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax + 0x14]
fst dword [ecx + 0x20]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x70]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x30]
fst dword [eax + 0x48]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x98]
mov eax, dword [esi]
mov ecx, dword [ebp - 8]
fld dword [eax + 0x18]
fst dword [ecx + 0x24]
mov eax, dword [ebp - 8]
fstp dword [eax + 0x4c]
mov ecx, dword [esi]
mov eax, dword [ebp - 8]
fld dword [ecx + 0x50]
fst dword [eax + 0x74]
mov ecx, dword [ebp - 8]
fstp dword [ecx + 0x9c]
xor ecx, ecx
fld dword [edx]
fcomp dword [ebp - 0x2c]
fnstsw ax
sahf
jae 0x56d664
fld dword [ebp - 0x2c]
fsub dword [edx]
fmul dword [ebp - 0x3c]
fadd dword [edx + 0x20]
fstp dword [edx + 0x20]
fld dword [ebp - 0x2c]
fsub dword [edx]
fmul dword [ebp - 0x44]
fadd dword [edx + 0x18]
fstp dword [edx + 0x18]
mov eax, dword [ebp - 0x2c]
mov dword [edx], eax
jmp 0x56d68f
fld dword [edx]
fcomp dword [ebp - 0x30]
fnstsw ax
sahf
jbe 0x56d68f
fld dword [edx]
fsub dword [ebp - 0x30]
fmul dword [ebp - 0x3c]
fsubr dword [edx + 0x20]
fstp dword [edx + 0x20]
fld dword [edx]
fsub dword [ebp - 0x30]
fmul dword [ebp - 0x44]
fsubr dword [edx + 0x18]
fstp dword [edx + 0x18]
mov eax, dword [ebp - 0x30]
mov dword [edx], eax
fld dword [edx + 4]
fcomp dword [ebp - 0x34]
fnstsw ax
sahf
jae 0x56d6c0
fld dword [ebp - 0x34]
fsub dword [edx + 4]
fmul dword [ebp - 0x40]
fadd dword [edx + 0x24]
fstp dword [edx + 0x24]
fld dword [ebp - 0x34]
fsub dword [edx + 4]
fmul dword [ebp - 0x48]
fadd dword [edx + 0x1c]
fstp dword [edx + 0x1c]
mov eax, dword [ebp - 0x34]
mov dword [edx + 4], eax
jmp 0x56d6ef
fld dword [edx + 4]
fcomp dword [ebp - 0x38]
fnstsw ax
sahf
jbe 0x56d6ef
fld dword [edx + 4]
fsub dword [ebp - 0x38]
fmul dword [ebp - 0x40]
fsubr dword [edx + 0x24]
fstp dword [edx + 0x24]
fld dword [edx + 4]
fsub dword [ebp - 0x38]
fmul dword [ebp - 0x48]
fsubr dword [edx + 0x1c]
fstp dword [edx + 0x1c]
mov eax, dword [ebp - 0x38]
mov dword [edx + 4], eax
inc ecx
add edx, 0x28
cmp ecx, 4
jl 0x56d637
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 8]
push esi
lea edi, [ecx + 0xa0]
lea esi, [edx + 0x50]
mov ecx, 0xa
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 8]
pop esi
mov ecx, 0xa
push esi
lea esi, [eax + 0x28]
lea edi, [edx + 0xc8]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x60]
pop esi
mov dword [eax + 0xd0], edx
mov eax, dword [ebp - 8]
mov dword [eax + 0xa8], edx
mov eax, dword [ebp - 8]
mov dword [eax + 0x80], edx
mov eax, dword [ebp - 8]
mov dword [eax + 0x58], edx
mov eax, dword [ebp - 8]
mov dword [eax + 0x30], edx
mov eax, dword [ebp - 8]
mov dword [eax + 8], edx
add dword [ebx + 0xd0], 0xf0
add dword [ebx + 0xd4], 6
inc dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x14]
jl 0x56d23f
jmp 0x56dbff
xor eax, eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x14]
jge 0x56dbff
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
and eax, 0xf8000000
cmp eax, 0x30000000
jne 0x56d7d3
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x6c728c]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x56d7d3
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx]
mov edx, dword [eax]
shl ecx, 0x10
and edx, 0x7ff0000
cmp ecx, edx
je 0x56d7db
or eax, 0xffffffff
jmp 0x56dc0f
mov edx, dword [ebp - 0xc]
mov ecx, dword [edx + 0x90]
and ecx, 0xffff
mov eax, dword [ecx*4 + 0x682d80]
mov dword [ebp - 0x10], eax
add dword [ebp - 0x18], 4
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
cmp ecx, dword [ebx + 0x10]
je 0x56d96f
mov eax, dword [0x6c7190]
mov dword [ebp - 0x90], eax
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x1c]
mov dword [ebp - 0x94], ecx
mov eax, dword [ebp - 0x90]
and eax, 0xffff
lea edx, [eax + eax*2]
shl edx, 0xd
add edx, eax
shl edx, 3
add edx, 0x70995c
cmp dword [0x6c718c], 0
mov dword [ebp - 0x98], edx
je 0x56d96f
mov ecx, dword [ebp - 0x98]
cmp dword [ecx], 0
je 0x56d96f
mov eax, dword [ebp - 0x98]
mov edx, dword [eax + 0x10]
cmp edx, dword [ebp - 0x94]
jne 0x56d880
mov ecx, dword [ebp - 0x98]
cmp dword [ecx + 0x40], 0
jne 0x56d880
xor eax, eax
jmp 0x56d96f
mov edx, dword [ebp - 0x90]
and edx, 0xffff
lea edi, [edx + edx*2]
shl edi, 0xd
add edi, edx
shl edi, 3
add edi, 0x70995c
cmp dword [0x6c718c], 0
je 0x56d8ab
cmp dword [edi], 0
jne 0x56d8b0
or eax, 0xffffffff
jmp 0x56d91a
cmp dword [edi + 0xd4], 0
je 0x56d8fd
call fcn.0045f350
test eax, eax
jne 0x56d8fd
cmp dword [edi + 0x3c], 0
jne 0x56d8fd
push 0
mov edx, dword [edi + 0xd4]
push edx
mov ecx, dword [edi + 0xd8]
mov eax, dword [edi + ecx*4 + 0xf8]
push eax
mov edx, dword [edi + 0xd8]
mov ecx, dword [edx*4 + 0x5f3ee8]
push ecx
mov eax, dword [edi + 0xdc]
push eax
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x64]
xor eax, eax
mov dword [edi + 0xd4], eax
xor eax, eax
mov edx, dword [edi + 0xd8]
mov ecx, dword [edi + edx*4 + 0xf8]
mov dword [edi + 0xd0], ecx
mov edx, dword [ebp - 0x98]
mov dword [edx + 0x38], 1
mov ecx, dword [ebp - 0x98]
cmp dword [ecx + 0x10], 0
jne 0x56d93c
cmp dword [ebp - 0x94], 0
jne 0x56d951
mov eax, dword [ebp - 0x98]
cmp dword [eax + 0x10], 0
je 0x56d95e
cmp dword [ebp - 0x94], 0
jne 0x56d95e
mov edx, dword [ebp - 0x98]
mov dword [edx + 0x34], 1
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x94]
mov dword [ecx + 0x10], eax
xor eax, eax
mov edx, dword [ebp - 0x10]
movzx ecx, word [edx + 0x10c0]
mov dword [ebp - 0xb4], ecx
fild dword [ebp - 0xb4]
fmul dword [ebp - 0x20]
fdivr dword [0x56dc20]
fstp dword [ebp - 0x3c]
mov eax, dword [ebp - 0x10]
movzx edx, word [eax + 0x10c2]
mov dword [ebp - 0xb8], edx
fild dword [ebp - 0xb8]
fmul dword [ebp - 0x24]
fdivr dword [0x56dc20]
fstp dword [ebp - 0x40]
cmp dword [ebx + 0x34], 0
jne 0x56d9bf
cmp dword [ebx + 0x38], 0
je 0x56d9cc
mov ecx, dword [0x6c7190]
push ecx
call fcn.00565aa0
pop ecx
cmp dword [ebx + 0xd4], 0
je 0x56da46
cmp dword [ebx + 0xdc], 4
jne 0x56d9f6
mov edx, dword [ebx + 0xd8]
mov eax, dword [ebx + 0xd4]
add eax, 6
cmp eax, dword [edx*4 + 0x5f3edc]
jle 0x56da46
push 0
mov ecx, dword [ebx + 0xd4]
push ecx
mov eax, dword [ebx + 0xd8]
mov edx, dword [ebx + eax*4 + 0xf8]
push edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ecx*4 + 0x5f3ee8]
push eax
mov edx, dword [ebx + 0xdc]
push edx
mov ecx, dword [ebx + 4]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x64]
xor edx, edx
mov dword [ebx + 0xd4], edx
mov ecx, dword [ebx + 0xd8]
mov eax, dword [ebx + ecx*4 + 0xf8]
mov dword [ebx + 0xd0], eax
mov dword [ebx + 0xdc], 4
mov edx, dword [ebx + 0xd0]
mov dword [esi], edx
mov edx, dword [esi]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x4c]
add eax, 0x18
mov dword [edx + 0x64], ecx
mov edx, dword [esi]
mov dword [edx + 0x10], ecx
fld dword [eax]
fmul dword [ebp - 0x20]
mov edx, dword [esi]
fadd dword [ebp + 8]
fst dword [edx]
mov ecx, dword [esi]
fstp dword [ecx + 0x38]
fld dword [eax + 0x1c]
fmul dword [ebp - 0x20]
mov edx, dword [esi]
fadd dword [ebp + 8]
fst dword [edx + 0x1c]
mov ecx, dword [esi]
fstp dword [ecx + 0x54]
fld dword [eax + 4]
fmul dword [ebp - 0x24]
mov edx, dword [esi]
fadd dword [ebp + 0xc]
fst dword [edx + 4]
mov ecx, dword [esi]
fstp dword [ecx + 0x20]
fld dword [eax + 0x3c]
fmul dword [ebp - 0x24]
mov edx, dword [esi]
fadd dword [ebp + 0xc]
fst dword [edx + 0x3c]
mov ecx, dword [esi]
fstp dword [ecx + 0x58]
mov edx, dword [esi]
fld dword [eax + 0x14]
fst dword [edx + 0x14]
mov ecx, dword [esi]
fstp dword [ecx + 0x4c]
mov edx, dword [esi]
fld dword [eax + 0x30]
fst dword [edx + 0x30]
mov ecx, dword [esi]
fstp dword [ecx + 0x68]
mov edx, dword [esi]
fld dword [eax + 0x18]
fst dword [edx + 0x18]
mov ecx, dword [esi]
fstp dword [ecx + 0x34]
fld dword [eax + 0x50]
mov eax, dword [esi]
xor ecx, ecx
fst dword [eax + 0x50]
mov eax, dword [esi]
fstp dword [eax + 0x6c]
mov edx, dword [esi]
fld dword [edx]
fcomp dword [ebp - 0x2c]
fnstsw ax
sahf
jae 0x56db12
mov edx, dword [esi]
mov eax, dword [esi]
fld dword [ebp - 0x2c]
fsub dword [edx]
fmul dword [ebp - 0x3c]
fadd dword [eax + 0x14]
fstp dword [eax + 0x14]
mov edx, dword [esi]
mov eax, dword [ebp - 0x2c]
mov dword [edx], eax
jmp 0x56db37
mov edx, dword [esi]
fld dword [edx]
fcomp dword [ebp - 0x30]
fnstsw ax
sahf
jbe 0x56db37
mov edx, dword [esi]
fld dword [edx]
fsub dword [ebp - 0x30]
fmul dword [ebp - 0x3c]
mov eax, dword [esi]
fsubr dword [eax + 0x14]
fstp dword [eax + 0x14]
mov edx, dword [esi]
mov eax, dword [ebp - 0x30]
mov dword [edx], eax
mov edx, dword [esi]
fld dword [edx + 4]
fcomp dword [ebp - 0x34]
fnstsw ax
sahf
jae 0x56db61
mov edx, dword [esi]
mov eax, dword [esi]
fld dword [ebp - 0x34]
fsub dword [edx + 4]
fmul dword [ebp - 0x40]
fadd dword [eax + 0x18]
fstp dword [eax + 0x18]
mov edx, dword [esi]
mov eax, dword [ebp - 0x34]
mov dword [edx + 4], eax
jmp 0x56db89
mov edx, dword [esi]
fld dword [edx + 4]
fcomp dword [ebp - 0x38]
fnstsw ax
sahf
jbe 0x56db89
mov edx, dword [esi]
fld dword [edx + 4]
fsub dword [ebp - 0x38]
fmul dword [ebp - 0x40]
mov eax, dword [esi]
fsubr dword [eax + 0x18]
fstp dword [eax + 0x18]
mov edx, dword [esi]
mov eax, dword [ebp - 0x38]
mov dword [edx + 4], eax
inc ecx
add dword [esi], 0x1c
cmp ecx, 4
jl 0x56daeb
mov edx, dword [esi]
mov ecx, dword [esi]
push esi
mov edi, ecx
lea esi, [edx - 0x38]
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
pop esi
mov ecx, 7
mov edx, dword [esi]
mov eax, dword [esi]
push esi
lea esi, [eax - 0x54]
lea edi, [edx + 0x1c]
rep movsd dword es:[edi], dword [esi]
pop esi
mov edx, dword [ebp - 0x60]
mov eax, dword [esi]
mov dword [eax + 0x94], edx
mov eax, dword [esi]
mov dword [eax + 0x78], edx
mov eax, dword [esi]
mov dword [eax + 0x5c], edx
mov eax, dword [esi]
mov dword [eax + 0x40], edx
mov eax, dword [esi]
mov dword [eax + 0x24], edx
mov eax, dword [esi]
mov dword [eax + 8], edx
add dword [ebx + 0xd0], 0xa8
add dword [ebx + 0xd4], 6
inc dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x14]
jl 0x56d792
cmp dword [0x709918], 0
je 0x56dc0d
call fcn.00574180
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret