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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14c
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
push eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x34], 0
call fcn.004f1030
mov esi, eax
add esp, 4
test esi, esi
jne 0x4fec4d
mov ecx, dword [ebp + 0x14]
mov byte [ecx], al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dx, word [0xa7a620]
push edx
push esi
call fcn.00401be0
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x94], ebx
jne 0x4fec77
mov eax, dword [ebp + 0x14]
mov byte [eax], bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fld dword [esi + 0x28]
fcomp dword [0x5333ec]
fnstsw ax
test ah, 0x40
jne 0x4fecd3
fld dword [ebp + 0x18]
fcom dword [0x5333ec]
fnstsw ax
test ah, 1
je 0x4fecaa
fadd dword [esi + 0x28]
fcom dword [0x5333ec]
fnstsw ax
test ah, 1
jne 0x4fec97
fst dword [ebp + 0x18]
fcom dword [esi + 0x28]
fnstsw ax
test ah, 1
jne 0x4fecc4
fsub dword [esi + 0x28]
fcom dword [esi + 0x28]
fnstsw ax
test ah, 1
je 0x4fecb4
fst dword [ebp + 0x18]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x40
je 0x4fed18
fstp st(0)
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x4fece7
lea esi, [ebx + 0x110]
mov ecx, 0xa
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0x1c]
lea edx, [ecx + 1]
test edx, edx
jle 0x4fed0b
mov eax, dword [ebp + 0x10]
add ebx, 0xf8
mov edi, eax
mov ecx, 6
mov esi, ebx
add eax, 0x18
dec edx
rep movsd dword es:[edi], dword [esi]
jne 0x4fecfa
mov edx, dword [ebp + 0x14]
mov byte [edx], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fld dword [0x5333ec]
fcomp st(1)
fnstsw ax
test ah, 1
fstp st(0)
je 0x4fed6d
mov ax, word [0xa7a620]
mov ecx, dword [esp + 0x94]
push eax
push ecx
call fcn.00401c40
add esp, 8
test eax, eax
je 0x4fed7a
mov ebx, dword [eax + 0xf0]
mov dword [esp + 0x94], eax
fld dword [esp + 0x20]
fadd dword [ebx + 0xf8]
fst dword [esp + 0x20]
fcomp dword [ebp + 0x18]
fnstsw ax
test ah, 1
jne 0x4fed29
test ebx, ebx
jne 0x4fed87
mov eax, dword [ebp + 0x14]
mov byte [eax], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
mov byte [edx], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fld dword [esp + 0x20]
fsub dword [ebx + 0xf8]
fcom dword [ebp + 0x18]
fnstsw ax
test ah, 0x40
je 0x4fedf3
mov ecx, dword [ebp + 0x1c]
inc ecx
test ecx, ecx
fstp st(0)
jle 0x4fedd2
mov eax, dword [ebp + 0x10]
fld dword [ebx + 0x104]
fadd qword [ebx + 0x20]
add eax, 0x18
dec ecx
fstp qword [eax - 0x18]
fld dword [ebx + 0x108]
fadd qword [ebx + 0x28]
fstp qword [eax - 0x10]
fld dword [ebx + 0x10c]
fadd qword [ebx + 0x30]
fstp qword [eax - 8]
jne 0x4feda8
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x4fede6
lea esi, [ebx + 0x200]
mov ecx, 0xa
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + 0x14]
mov byte [edx], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fcom dword [ebp + 0x18]
fnstsw ax
test ah, 1
je 0x4feeab
mov edx, dword [ebx + 0x59c]
mov edi, dword [esp + 0x30]
lea ecx, [ebx + 0x548]
cmp edi, edx
jge 0x4fee2a
fadd dword [ecx]
inc edi
add ecx, 4
fcom dword [ebp + 0x18]
fnstsw ax
test ah, 1
jne 0x4fee11
jmp 0x4feeaf
mov eax, dword [ebp + 0x1c]
fstp st(0)
lea edx, [eax + 1]
test edx, edx
jle 0x4fee80
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x59c]
add ecx, 0x18
lea eax, [eax + eax*2]
fld dword [ebx + eax*4 + 0x104]
fadd qword [ebx + 0x20]
fstp qword [ecx - 0x18]
mov eax, dword [ebx + 0x59c]
add eax, 0x16
dec edx
lea eax, [eax + eax*2]
fld dword [ebx + eax*4]
fadd qword [ebx + 0x28]
fstp qword [ecx - 0x10]
mov eax, dword [ebx + 0x59c]
lea eax, [eax + eax*2]
fld dword [ebx + eax*4 + 0x10c]
fadd qword [ebx + 0x30]
fstp qword [ecx - 8]
jne 0x4fee39
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x4fee9e
mov eax, dword [ebx + 0x59c]
lea ecx, [eax + eax*4]
lea esi, [ebx + ecx*8 + 0x200]
mov ecx, 0xa
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + 0x14]
mov byte [edx], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0x30]
fsub dword [ebx + edi*4 + 0x544]
dec edi
xor esi, esi
mov dword [esp + 0x30], edi
lea eax, [edi + edi*2]
fstp dword [esp + 0x20]
fld dword [ebp + 0x18]
fsub dword [esp + 0x20]
lea eax, [ebx + eax*4]
fdiv dword [ebx + edi*4 + 0x548]
lea edx, [eax + 0x110]
lea ecx, [eax + 0x104]
mov dword [esp + 0xac], ecx
mov dword [esp + 0xd0], edx
fstp dword [esp + 0xc]
fld dword [edx]
fsub dword [ecx]
fmul dword [esp + 0xc]
fadd dword [ecx]
lea ecx, [edi + edi*2 + 0x45]
fld dword [ebx + ecx*4]
lea edx, [ebx + ecx*4]
lea ecx, [edi + edi*2 + 0x42]
mov dword [esp + 0xcc], edx
fsub dword [ebx + ecx*4]
lea ecx, [ebx + ecx*4]
mov dword [esp + 0xb0], ecx
fmul dword [esp + 0xc]
fadd dword [ecx]
lea ecx, [eax + 0x118]
add eax, 0x10c
mov dword [esp + 0xc8], eax
mov dword [esp + 0xb4], ecx
fstp dword [esp + 0xd8]
fld dword [ecx]
fsub dword [eax]
mov ecx, dword [ebp + 0xc]
cmp ecx, esi
fmul dword [esp + 0xc]
fadd dword [eax]
mov eax, dword [ebp + 0x10]
fstp dword [esp + 0xdc]
fadd qword [ebx + 0x20]
fstp qword [eax]
fld dword [esp + 0xd8]
fadd qword [ebx + 0x28]
fstp qword [eax + 8]
fld dword [esp + 0xdc]
fadd qword [ebx + 0x30]
fstp qword [eax + 0x10]
je 0x4ff52e
lea edx, [edi + edi*4]
fld dword [ebx + edx*8 + 0x220]
fadd dword [ebx + edx*8 + 0x210]
lea ecx, [ebx + edx*8]
fadd dword [ecx + 0x200]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x41
jne 0x4ff012
fadd dword [0x5333e0]
lea eax, [edi + edi*4 + 0x41]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + 0xa4]
fdivr dword [0x533504]
fld dword [ecx + 0x214]
fsub dword [ecx + 0x21c]
fmul st(1)
fchs
fstp dword [esp + 0x98]
fld dword [ecx + 0x218]
fsub dword [ebx + eax*8]
fmul st(1)
fchs
fstp dword [esp + 0x9c]
fld dword [ecx + 0x204]
fsub dword [ecx + 0x20c]
fmul st(1)
fchs
fstp dword [esp + 0xa0]
jmp 0x4ff15a
fstp st(0)
fld dword [ecx + 0x210]
fcomp dword [ecx + 0x200]
mov dword [esp + 0xb8], 1
mov dword [esp + 0xbc], 2
mov dword [esp + 0xc0], esi
mov dword [esp + 0x10], esi
fnstsw ax
test ah, 0x41
jne 0x4ff051
mov esi, 1
mov dword [esp + 0x10], esi
fld dword [ecx + 0x220]
mov edx, esi
shl edx, 4
fcomp dword [edx + ecx + 0x200]
fnstsw ax
test ah, 0x41
jne 0x4ff073
mov esi, 2
mov dword [esp + 0x10], esi
mov edx, dword [esp + esi*4 + 0xb8]
shl esi, 4
mov eax, edx
mov dword [esp + 0x18], edx
fld dword [esi + ecx + 0x200]
shl eax, 4
mov esi, dword [esp + 0x10]
fsub dword [eax + ecx + 0x200]
mov eax, dword [esp + edx*4 + 0xb8]
shl eax, 4
fsub dword [eax + ecx + 0x200]
fadd dword [0x5333e0]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + esi*4 + 0x98]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x40
jne 0x4ff0d3
fdivr dword [0x533504]
lea eax, [esi + esi*2]
mov dword [esp + 0x28], eax
lea eax, [edx + edx*2]
mov dword [esp + 0x2c], eax
add esi, eax
mov eax, dword [esp + 0x28]
fld dword [ecx + esi*4 + 0x200]
add eax, edx
mov esi, dword [esp + 0x10]
fadd dword [ecx + eax*4 + 0x200]
mov eax, dword [esp + edx*4 + 0xb8]
fmul st(1)
fstp dword [esp + edx*4 + 0x98]
lea edx, [eax + eax*2]
mov dword [esp + 0x1c], edx
add esi, edx
mov edx, dword [esp + 0x28]
fld dword [ecx + esi*4 + 0x200]
add edx, eax
mov esi, dword [esp + 0x1c]
fadd dword [ecx + edx*4 + 0x200]
mov edx, dword [esp + 0x2c]
fmul st(1)
fstp dword [esp + eax*4 + 0x98]
add eax, edx
mov edx, dword [esp + 0x18]
add edx, esi
fld dword [ecx + eax*4 + 0x200]
fsub dword [ecx + edx*4 + 0x200]
fmul st(1)
fchs
fstp dword [esp + 0xa4]
mov eax, dword [ecx + 0x224]
fstp st(0)
mov dword [esp + 0xa8], eax
fld dword [ecx + 0x248]
fadd dword [ecx + 0x238]
fadd dword [ecx + 0x228]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x41
jne 0x4ff1e4
fadd dword [0x5333e0]
lea edx, [edi + edi*4 + 0x46]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + 0x58]
fdivr dword [0x533504]
fld dword [ecx + 0x23c]
fsub dword [ecx + 0x244]
fmul st(1)
fchs
fstp dword [esp + 0x4c]
fld dword [ecx + 0x240]
fsub dword [ebx + edx*8]
fmul st(1)
fchs
fstp dword [esp + 0x50]
fld dword [ecx + 0x22c]
fsub dword [ecx + 0x234]
fmul st(1)
fchs
fstp dword [esp + 0x54]
jmp 0x4ff304
fstp st(0)
fld dword [ecx + 0x238]
fcomp dword [ecx + 0x228]
xor edx, edx
mov dword [esp + 0xb8], 1
mov dword [esp + 0xbc], 2
mov dword [esp + 0xc0], edx
fnstsw ax
test ah, 0x41
jne 0x4ff21d
mov edx, 1
fld dword [ecx + 0x248]
mov eax, edx
shl eax, 4
fcomp dword [eax + ecx + 0x228]
fnstsw ax
test ah, 0x41
jne 0x4ff23b
mov edx, 2
mov esi, dword [esp + edx*4 + 0xb8]
mov eax, edx
shl eax, 4
mov edi, esi
fld dword [eax + ecx + 0x228]
mov eax, dword [esp + esi*4 + 0xb8]
shl edi, 4
shl eax, 4
fsub dword [edi + ecx + 0x228]
fsub dword [eax + ecx + 0x228]
fadd dword [0x5333e0]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + edx*4 + 0x4c]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x40
jne 0x4ff292
fdivr dword [0x533504]
lea edi, [esi + esi*2]
lea eax, [edx + edx*2]
mov dword [esp + 0x28], edi
add edi, edx
mov dword [esp + 0x2c], eax
add eax, esi
fld dword [ecx + edi*4 + 0x228]
fadd dword [ecx + eax*4 + 0x228]
mov eax, dword [esp + esi*4 + 0xb8]
fmul st(1)
lea edi, [eax + eax*2]
mov dword [esp + 0x18], edi
add edi, edx
mov edx, dword [esp + 0x2c]
fstp dword [esp + esi*4 + 0x4c]
fld dword [ecx + edi*4 + 0x228]
add edx, eax
fadd dword [ecx + edx*4 + 0x228]
mov edx, dword [esp + 0x28]
add edx, eax
fmul st(1)
fstp dword [esp + eax*4 + 0x4c]
mov eax, dword [esp + 0x18]
fld dword [ecx + edx*4 + 0x228]
add eax, esi
fsub dword [ecx + eax*4 + 0x228]
fmul st(1)
fchs
fstp dword [esp + 0x58]
mov ecx, dword [ecx + 0x24c]
lea edx, [esp + 0x4c]
mov dword [esp + 0x5c], ecx
lea eax, [esp + 0x98]
push edx
lea ecx, [esp + 0xc8]
push eax
lea edx, [esp + 0x50]
push ecx
lea eax, [esp + 0x33]
push edx
push eax
fstp st(0)
call fcn.004b44d0
mov al, byte [esp + 0x3b]
add esp, 0x14
test al, al
je 0x4ff367
fld dword [esp + 0x4c]
fchs
fstp dword [esp + 0x4c]
fld dword [esp + 0x50]
fchs
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fchs
fstp dword [esp + 0x54]
fld dword [esp + 0x58]
fchs
fstp dword [esp + 0x58]
fld dword [esp + 0x48]
fcomp dword [0x5333ec]
fnstsw ax
test ah, 0x40
je 0x4ff38f
mov ecx, 5
lea esi, [esp + 0x98]
lea edi, [esp + 0x34]
rep movsd dword es:[edi], dword [esi]
jmp 0x4ff43f
fld dword [esp + 0x48]
fcomp dword [0x533714]
fnstsw ax
test ah, 1
je 0x4ff3b0
fld dword [0x5333e0]
fsub dword [esp + 0xc]
fld dword [esp + 0xc]
jmp 0x4ff3da
fld dword [esp + 0x48]
fmul dword [esp + 0xc]
fstp dword [esp + 0x28]
fld dword [esp + 0x48]
fsub dword [esp + 0x28]
fsin
fmul dword [esp + 0xc4]
fld dword [esp + 0x28]
fsin
fmul dword [esp + 0xc4]
fld st(0)
fmul dword [esp + 0x4c]
fld st(2)
fmul dword [esp + 0x98]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x5c]
faddp st(1)
lea eax, [edx + ecx + 1]
mov dword [esp + 0x44], eax
fstp dword [esp + 0x34]
fld st(0)
fmul dword [esp + 0x50]
fld st(2)
fmul dword [esp + 0x9c]
faddp st(1)
fstp dword [esp + 0x38]
fld st(0)
fmul dword [esp + 0x54]
fld st(2)
fmul dword [esp + 0xa0]
faddp st(1)
fstp dword [esp + 0x3c]
fmul dword [esp + 0x58]
fxch st(1)
fmul dword [esp + 0xa4]
faddp st(1)
fstp dword [esp + 0x40]
fld dword [esp + 0x34]
fmul dword [esp + 0x34]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x44]
mov edi, dword [esp + 0x30]
fadd st(0), st(0)
fld dword [esp + 0x38]
fmul dword [esp + 0x34]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp + 0xc]
fadd st(0), st(0)
fld dword [esp + 0x3c]
fmul dword [esp + 0x34]
fadd st(0), st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0x40]
fmul dword [esp + 0x34]
fadd st(0), st(0)
fstp dword [esp + 0x10]
fld dword [esp + 0x38]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x14]
fld dword [esp + 0x3c]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x90]
fld dword [esp + 0x40]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x1c]
fld dword [esp + 0x3c]
fmul dword [esp + 0x3c]
fadd st(0), st(0)
fstp dword [esp + 0x28]
fld dword [esp + 0x40]
fmul dword [esp + 0x3c]
fadd st(0), st(0)
fld dword [0x5333e0]
fsub dword [esp + 0x14]
fsub dword [esp + 0x28]
fstp dword [eax]
fld st(1)
fsub st(1)
fstp dword [eax + 4]
fld dword [esp + 0x1c]
fadd dword [esp + 0x18]
fstp dword [eax + 8]
fadd st(1)
fstp dword [eax + 0xc]
fstp st(0)
fsubr dword [0x5333e0]
fld st(0)
fsub dword [esp + 0x28]
fstp dword [eax + 0x10]
fld dword [esp + 0x90]
fsub dword [esp + 0x10]
fstp dword [eax + 0x14]
fld dword [esp + 0x18]
fsub dword [esp + 0x1c]
fstp dword [eax + 0x18]
fld dword [esp + 0x90]
fadd dword [esp + 0x10]
fstp dword [eax + 0x1c]
fsub dword [esp + 0x14]
fstp dword [eax + 0x20]
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 0x24]
test esi, esi
je 0x4ff59f
fld dword [ecx + 4]
fmul dword [esi + 4]
fld dword [ecx + 8]
fmul dword [esi + 8]
faddp st(1)
fld dword [ecx]
fmul dword [esi]
faddp st(1)
fld dword [ecx + 0x10]
fmul dword [esi + 4]
fld dword [ecx + 0xc]
fmul dword [esi]
faddp st(1)
fld dword [ecx + 0x14]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xd8]
fld dword [ecx + 0x1c]
fmul dword [esi + 4]
fld dword [ecx + 0x18]
fmul dword [esi]
faddp st(1)
fld dword [ecx + 0x20]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xdc]
fadd qword [eax]
fstp qword [eax]
fld dword [esp + 0xd8]
fadd qword [eax + 8]
fstp qword [eax + 8]
fld dword [esp + 0xdc]
fadd qword [eax + 0x10]
fstp qword [eax + 0x10]
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
test eax, eax
mov dword [esp + 0x90], edx
mov dword [esp + 0x28], 0
jle 0x5008d8
jmp 0x4ff5c5
mov edi, dword [esp + 0x30]
mov esi, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
mov ecx, dword [esp + 0x28]
fld dword [eax + ecx*4]
mov eax, dword [ebp + 0x10]
fst dword [esp + 0x10]
fld st(0)
fmul st(1)
mov dword [esp + 0xc], eax
add eax, 0x18
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0xc]
fstp dword [esp + 0x14]
test eax, eax
fld st(0)
fadd dword [esp + 0x90]
fstp dword [esp + 0x90]
je 0x4ff605
add eax, 0x28
mov dword [ebp + 0xc], eax
fcomp dword [0x5333ec]
fnstsw ax
test ah, 1
je 0x4ffc1f
mov edx, dword [esp + 0xac]
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xc8]
fld dword [edx]
fadd qword [ebx + 0x20]
test esi, esi
fstp qword [esp + 0x60]
fld dword [eax]
fadd qword [ebx + 0x28]
fstp qword [esp + 0x68]
fld dword [ecx]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x70]
je 0x4ff6e4
lea ecx, [edi + edi*4 + 0x41]
lea edx, [edi + edi*4]
fld dword [ebx + ecx*8]
fmul dword [esi + 8]
fld dword [ebx + edx*8 + 0x204]
fmul dword [esi + 4]
lea eax, [ebx + edx*8]
faddp st(1)
fld dword [eax + 0x200]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x210]
fmul dword [esi + 4]
fld dword [eax + 0x20c]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x214]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xe4]
fld dword [eax + 0x21c]
fmul dword [esi + 4]
fld dword [eax + 0x218]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x220]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xe8]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld dword [esp + 0xe4]
fadd qword [esp + 0x68]
fstp qword [esp + 0x68]
fld dword [esp + 0xe8]
fadd qword [esp + 0x70]
fstp qword [esp + 0x70]
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x60]
push edx
push eax
call fcn.004b32f0
fcomp dword [esp + 0x1c]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x4ff8bf
fld dword [esp + 0x90]
fsub dword [esp + 0x20]
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
mov eax, dword [esp + 0xc8]
fdiv dword [ebx + edi*4 + 0x548]
test esi, esi
fstp dword [esp + 0xc]
fld dword [ecx]
fadd qword [ebx + 0x20]
mov ecx, dword [esp + 0xd0]
fstp qword [esp + 0x60]
fld dword [edx]
fadd qword [ebx + 0x28]
mov edx, dword [esp + 0xcc]
fstp qword [esp + 0x68]
fld dword [eax]
fadd qword [ebx + 0x30]
mov eax, dword [esp + 0xb4]
fstp qword [esp + 0x70]
fld dword [ecx]
fadd qword [ebx + 0x20]
fstp qword [esp + 0x78]
fld dword [edx]
fadd qword [ebx + 0x28]
fstp qword [esp + 0x80]
fld dword [eax]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x88]
je 0x50022b
lea edx, [edi + edi*4 + 0x41]
lea ecx, [edi + edi*4]
fld dword [ebx + edx*8]
fmul dword [esi + 8]
fld dword [ebx + ecx*8 + 0x204]
fmul dword [esi + 4]
lea eax, [ebx + ecx*8]
lea ecx, [edi + edi*4 + 0x46]
faddp st(1)
fld dword [eax + 0x200]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x210]
fmul dword [esi + 4]
fld dword [eax + 0x20c]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x214]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xf0]
fld dword [eax + 0x21c]
fmul dword [esi + 4]
fld dword [eax + 0x218]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x220]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xf4]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld dword [esp + 0xf0]
fadd qword [esp + 0x68]
fstp qword [esp + 0x68]
fld dword [esp + 0xf4]
fadd qword [esp + 0x70]
fstp qword [esp + 0x70]
fld dword [ebx + ecx*8]
fmul dword [esi + 8]
fld dword [eax + 0x22c]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax + 0x228]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x238]
fmul dword [esi + 4]
fld dword [eax + 0x234]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x23c]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x108]
fld dword [eax + 0x244]
fmul dword [esi + 4]
fld dword [eax + 0x240]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x248]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x10c]
fadd qword [esp + 0x78]
fstp qword [esp + 0x78]
fld dword [esp + 0x108]
fadd qword [esp + 0x80]
fstp qword [esp + 0x80]
fld dword [esp + 0x10c]
fadd qword [esp + 0x88]
fstp qword [esp + 0x88]
jmp 0x50022b
mov esi, dword [esp + 0x30]
mov edi, dword [ebp + 0x24]
jmp 0x4ff8ca
fstp st(0)
test esi, esi
je 0x4ff8e0
fld dword [esp + 0x20]
fsub dword [ebx + esi*4 + 0x544]
dec esi
mov dword [esp + 0x30], esi
jmp 0x4ff925
mov dx, word [0xa7a620]
mov eax, dword [esp + 0x94]
push edx
push eax
call fcn.00401c80
mov ecx, dword [eax + 0xf0]
add esp, 8
test ecx, ecx
je 0x50081a
mov esi, dword [ecx + 0x59c]
mov dword [esp + 0x94], eax
fld dword [esp + 0x20]
fsub dword [ecx + esi*4 + 0x544]
dec esi
mov ebx, ecx
mov dword [esp + 0x30], esi
fstp dword [esp + 0x20]
lea ecx, [esi + esi*2]
lea edx, [esi + esi*2 + 0x42]
lea eax, [ebx + ecx*4]
fld dword [eax + 0x104]
fadd qword [ebx + 0x20]
lea ecx, [eax + 0x104]
mov dword [esp + 0xac], ecx
lea ecx, [ebx + edx*4]
mov dword [esp + 0xb0], ecx
fstp qword [esp + 0x60]
fld dword [ecx]
fadd qword [ebx + 0x28]
lea ecx, [eax + 0x10c]
mov dword [esp + 0xc8], ecx
fstp qword [esp + 0x68]
fld dword [ecx]
fadd qword [ebx + 0x30]
lea ecx, [eax + 0x110]
add eax, 0x118
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xb4], eax
test edi, edi
fstp qword [esp + 0x70]
fld dword [ecx]
fadd qword [ebx + 0x20]
lea ecx, [esi + esi*2 + 0x45]
lea ecx, [ebx + ecx*4]
fstp qword [esp + 0x78]
fld dword [ecx]
fadd qword [ebx + 0x28]
mov dword [esp + 0xcc], ecx
fstp qword [esp + 0x80]
fld dword [eax]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x88]
je 0x4ffaf7
lea ecx, [esi + esi*4 + 0x41]
lea edx, [esi + esi*4]
fld dword [ebx + ecx*8]
fmul dword [edi + 8]
fld dword [ebx + edx*8 + 0x204]
fmul dword [edi + 4]
lea eax, [ebx + edx*8]
lea edx, [esi + esi*4 + 0x46]
faddp st(1)
fld dword [eax + 0x200]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x210]
fmul dword [edi + 4]
fld dword [eax + 0x20c]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x214]
fmul dword [edi + 8]
faddp st(1)
fstp dword [esp + 0x120]
fld dword [eax + 0x21c]
fmul dword [edi + 4]
fld dword [eax + 0x218]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x220]
fmul dword [edi + 8]
faddp st(1)
fstp dword [esp + 0x124]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld dword [esp + 0x120]
fadd qword [esp + 0x68]
fstp qword [esp + 0x68]
fld dword [esp + 0x124]
fadd qword [esp + 0x70]
fstp qword [esp + 0x70]
fld dword [ebx + edx*8]
fmul dword [edi + 8]
fld dword [eax + 0x22c]
fmul dword [edi + 4]
faddp st(1)
fld dword [eax + 0x228]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x238]
fmul dword [edi + 4]
fld dword [eax + 0x234]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x23c]
fmul dword [edi + 8]
faddp st(1)
fstp dword [esp + 0x138]
fld dword [eax + 0x244]
fmul dword [edi + 4]
fld dword [eax + 0x240]
fmul dword [edi]
faddp st(1)
fld dword [eax + 0x248]
fmul dword [edi + 8]
faddp st(1)
fstp dword [esp + 0x13c]
fadd qword [esp + 0x78]
fstp qword [esp + 0x78]
fld dword [esp + 0x138]
fadd qword [esp + 0x80]
fstp qword [esp + 0x80]
fld dword [esp + 0x13c]
fadd qword [esp + 0x88]
fstp qword [esp + 0x88]
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x60]
push eax
push ecx
call fcn.004b32f0
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x80]
fstp dword [esp + 0x24]
push edx
push eax
call fcn.004b32f0
fld dword [esp + 0x2c]
fcomp dword [esp + 0x24]
add esp, 0x10
fnstsw ax
test ah, 0x41
jne 0x4ffb35
mov ecx, 1
jmp 0x4ffb37
xor ecx, ecx
fcom dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x4ffb49
mov eax, 1
jmp 0x4ffb4b
xor eax, eax
cmp ecx, eax
je 0x4ff8c8
fld dword [ebx + esi*4 + 0x548]
push ecx
fstp dword [esp + 0x18]
fld st(0)
fsqrt
fstp dword [esp + 0x10]
fld dword [esp + 0x20]
fsub st(1)
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
fsubp st(1)
fld dword [esp + 0x10]
fmul dword [esp + 0x18]
fmul dword [0x534ba8]
fdivp st(1)
fstp dword [esp]
fstp st(0)
call fcn.004b2760
fld dword [esp + 0x14]
fchs
fstp dword [esp + 0x14]
fld st(0)
fsin
fstp dword [esp + 0x1c]
fld dword [0x533400]
fsub st(1)
fstp dword [esp + 0x30]
fstp st(0)
fld dword [esp + 0x1c]
fdiv dword [esp + 0x14]
fmul dword [esp + 0x10]
fstp dword [esp]
call fcn.004b27d0
fsubr dword [esp + 0x30]
add esp, 4
fcom qword [0x534ba0]
fnstsw ax
test ah, 0x41
jne 0x4ffbfa
fsin
mov edi, dword [esp + 0x30]
fmul dword [esp + 0x10]
fdiv dword [esp + 0x18]
fdiv dword [esp + 0x14]
fsubr dword [0x5333e0]
fstp dword [esp + 0xc]
jmp 0x50022b
fstp st(0)
fld dword [esp + 0x1c]
fsqrt
mov edi, dword [esp + 0x30]
fld dword [esp + 0x10]
fsub st(1)
fld dword [esp + 0xc]
fsub st(2)
fdivp st(1)
fstp dword [esp + 0xc]
fstp st(0)
jmp 0x50022b
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xb4]
fld dword [ecx]
fadd qword [ebx + 0x20]
test esi, esi
fstp qword [esp + 0x78]
fld dword [edx]
fadd qword [ebx + 0x28]
fstp qword [esp + 0x80]
fld dword [eax]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x88]
je 0x4ffcff
lea edx, [edi + edi*4 + 0x46]
lea ecx, [edi + edi*4]
fld dword [ebx + edx*8]
fmul dword [esi + 8]
fld dword [ebx + ecx*8 + 0x22c]
fmul dword [esi + 4]
lea eax, [ebx + ecx*8]
faddp st(1)
fld dword [eax + 0x228]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x238]
fmul dword [esi + 4]
fld dword [eax + 0x234]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x23c]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x150]
fld dword [eax + 0x244]
fmul dword [esi + 4]
fld dword [eax + 0x240]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x248]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x154]
fadd qword [esp + 0x78]
fstp qword [esp + 0x78]
fld dword [esp + 0x150]
fadd qword [esp + 0x80]
fstp qword [esp + 0x80]
fld dword [esp + 0x154]
fadd qword [esp + 0x88]
fstp qword [esp + 0x88]
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x78]
push eax
push ecx
call fcn.004b32f0
fcomp dword [esp + 0x1c]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x4ffeda
fld dword [esp + 0x90]
fsub dword [esp + 0x20]
mov edx, dword [esp + 0xac]
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xc8]
fdiv dword [ebx + edi*4 + 0x548]
test esi, esi
fstp dword [esp + 0xc]
fld dword [edx]
fadd qword [ebx + 0x20]
mov edx, dword [esp + 0xd0]
fstp qword [esp + 0x60]
fld dword [eax]
fadd qword [ebx + 0x28]
mov eax, dword [esp + 0xcc]
fstp qword [esp + 0x68]
fld dword [ecx]
fadd qword [ebx + 0x30]
mov ecx, dword [esp + 0xb4]
fstp qword [esp + 0x70]
fld dword [edx]
fadd qword [ebx + 0x20]
fstp qword [esp + 0x78]
fld dword [eax]
fadd qword [ebx + 0x28]
fstp qword [esp + 0x80]
fld dword [ecx]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x88]
je 0x50022b
lea ecx, [edi + edi*4 + 0x41]
lea edx, [edi + edi*4]
fld dword [ebx + ecx*8]
fmul dword [esi + 8]
fld dword [ebx + edx*8 + 0x204]
fmul dword [esi + 4]
lea eax, [ebx + edx*8]
lea edx, [edi + edi*4 + 0x46]
faddp st(1)
fld dword [eax + 0x200]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x210]
fmul dword [esi + 4]
fld dword [eax + 0x20c]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x214]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0xfc]
fld dword [eax + 0x21c]
fmul dword [esi + 4]
fld dword [eax + 0x218]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x220]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x100]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld dword [esp + 0xfc]
fadd qword [esp + 0x68]
fstp qword [esp + 0x68]
fld dword [esp + 0x100]
fadd qword [esp + 0x70]
fstp qword [esp + 0x70]
fld dword [ebx + edx*8]
fmul dword [esi + 8]
fld dword [eax + 0x22c]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax + 0x228]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x238]
fmul dword [esi + 4]
fld dword [eax + 0x234]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x23c]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x12c]
fld dword [eax + 0x244]
fmul dword [esi + 4]
fld dword [eax + 0x240]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x248]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x130]
fadd qword [esp + 0x78]
fstp qword [esp + 0x78]
fld dword [esp + 0x12c]
fadd qword [esp + 0x80]
fstp qword [esp + 0x80]
fld dword [esp + 0x130]
fadd qword [esp + 0x88]
fstp qword [esp + 0x88]
jmp 0x50022b
mov eax, dword [ebx + 0x59c]
dec eax
cmp edi, eax
jge 0x4ffefb
fld dword [esp + 0x20]
fadd dword [ebx + edi*4 + 0x548]
inc edi
mov dword [esp + 0x30], edi
fstp dword [esp + 0x20]
jmp 0x4fff4e
mov cx, word [0xa7a620]
mov edx, dword [esp + 0x94]
push ecx
push edx
call fcn.00401c40
add esp, 8
test eax, eax
je 0x50081a
mov ecx, dword [eax + 0xf0]
test ecx, ecx
je 0x50081a
mov edx, dword [esp + 0x30]
mov esi, dword [ebp + 0x24]
fld dword [esp + 0x20]
fadd dword [ebx + edx*4 + 0x548]
xor edi, edi
mov dword [esp + 0x94], eax
mov ebx, ecx
mov dword [esp + 0x30], edi
fstp dword [esp + 0x20]
lea eax, [edi + edi*2]
lea edx, [edi + edi*2 + 0x45]
lea eax, [ebx + eax*4]
fld dword [eax + 0x104]
fadd qword [ebx + 0x20]
lea ecx, [eax + 0x104]
mov dword [esp + 0xac], ecx
lea ecx, [edi + edi*2 + 0x42]
fstp qword [esp + 0x60]
fld dword [ebx + ecx*4]
fadd qword [ebx + 0x28]
lea ecx, [ebx + ecx*4]
mov dword [esp + 0xb0], ecx
lea ecx, [eax + 0x10c]
mov dword [esp + 0xc8], ecx
fstp qword [esp + 0x68]
fld dword [ecx]
fadd qword [ebx + 0x30]
lea ecx, [eax + 0x110]
add eax, 0x118
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xb4], eax
test esi, esi
fstp qword [esp + 0x70]
fld dword [ecx]
fadd qword [ebx + 0x20]
lea ecx, [ebx + edx*4]
mov dword [esp + 0xcc], ecx
fstp qword [esp + 0x78]
fld dword [ecx]
fadd qword [ebx + 0x28]
fstp qword [esp + 0x80]
fld dword [eax]
fadd qword [ebx + 0x30]
fstp qword [esp + 0x88]
je 0x50011d
lea ecx, [edi + edi*4 + 0x41]
lea eax, [edi + edi*4]
lea edx, [edi + edi*4 + 0x46]
fld dword [ebx + ecx*8]
fmul dword [esi + 8]
fld dword [ebx + eax*8 + 0x204]
fmul dword [esi + 4]
lea eax, [ebx + eax*8]
faddp st(1)
fld dword [eax + 0x200]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x210]
fmul dword [esi + 4]
fld dword [eax + 0x20c]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x214]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x114]
fld dword [eax + 0x21c]
fmul dword [esi + 4]
fld dword [eax + 0x218]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x220]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x118]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld dword [esp + 0x114]
fadd qword [esp + 0x68]
fstp qword [esp + 0x68]
fld dword [esp + 0x118]
fadd qword [esp + 0x70]
fstp qword [esp + 0x70]
fld dword [ebx + edx*8]
fmul dword [esi + 8]
fld dword [eax + 0x22c]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax + 0x228]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x238]
fmul dword [esi + 4]
fld dword [eax + 0x234]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x23c]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x144]
fld dword [eax + 0x244]
fmul dword [esi + 4]
fld dword [eax + 0x240]
fmul dword [esi]
faddp st(1)
fld dword [eax + 0x248]
fmul dword [esi + 8]
faddp st(1)
fstp dword [esp + 0x148]
fadd qword [esp + 0x78]
fstp qword [esp + 0x78]
fld dword [esp + 0x144]
fadd qword [esp + 0x80]
fstp qword [esp + 0x80]
fld dword [esp + 0x148]
fadd qword [esp + 0x88]
fstp qword [esp + 0x88]
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x60]
push eax
push ecx
call fcn.004b32f0
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x80]
fstp dword [esp + 0x24]
push edx
push eax
call fcn.004b32f0
fstp dword [esp + 0x28]
fld dword [esp + 0x2c]
fcomp dword [esp + 0x24]
add esp, 0x10
fnstsw ax
test ah, 0x41
jne 0x50015f
mov ecx, 1
jmp 0x500161
xor ecx, ecx
fld dword [esp + 0x18]
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x500177
mov eax, 1
jmp 0x500179
xor eax, eax
cmp ecx, eax
je 0x4ffeda
fld dword [ebx + edi*4 + 0x548]
push ecx
fstp dword [esp + 0x18]
fld dword [esp + 0x20]
fsqrt
fstp dword [esp + 0x10]
fld dword [esp + 0x1c]
fsub dword [esp + 0x20]
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
fsubp st(1)
fld dword [esp + 0x10]
fmul dword [esp + 0x18]
fmul dword [0x534ba8]
fdivp st(1)
fstp dword [esp]
call fcn.004b2760
fld st(0)
fsin
fstp dword [esp + 0x20]
fld dword [0x533400]
fsub st(1)
fstp dword [esp + 0x30]
fstp st(0)
fld dword [esp + 0x20]
fdiv dword [esp + 0x14]
fmul dword [esp + 0x10]
fstp dword [esp]
call fcn.004b27d0
fsubr dword [esp + 0x30]
add esp, 4
fcom qword [0x534ba0]
fnstsw ax
test ah, 0x41
jne 0x50020f
fsin
fmul dword [esp + 0x10]
fdiv dword [esp + 0x1c]
fdiv dword [esp + 0x14]
jmp 0x500227
fstp st(0)
fld dword [esp + 0x18]
fsqrt
fld dword [esp + 0x10]
fsub dword [esp + 0xc]
fxch st(1)
fsub dword [esp + 0xc]
fdivp st(1)
fstp dword [esp + 0xc]
fld qword [esp + 0x78]
fsub qword [esp + 0x60]
fmul dword [esp + 0xc]
mov eax, dword [ebp + 0x10]
xor esi, esi
fadd qword [esp + 0x60]
fstp qword [eax]
fld qword [esp + 0x80]
fsub qword [esp + 0x68]
fmul dword [esp + 0xc]
fadd qword [esp + 0x68]
fstp qword [eax + 8]
fld qword [esp + 0x88]
fsub qword [esp + 0x70]
fmul dword [esp + 0xc]
fadd qword [esp + 0x70]
fstp qword [eax + 0x10]
cmp dword [ebp + 0xc], esi
je 0x5008c4
lea ecx, [edi + edi*4]
fld dword [ebx + ecx*8 + 0x220]
fadd dword [ebx + ecx*8 + 0x210]
lea ecx, [ebx + ecx*8]
fadd dword [ecx + 0x200]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x41
jne 0x500306
fadd dword [0x5333e0]
lea edx, [edi + edi*4 + 0x41]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + 0xa4]
fdivr dword [0x533504]
fld dword [ecx + 0x214]
fsub dword [ecx + 0x21c]
fmul st(1)
fchs
fstp dword [esp + 0x98]
fld dword [ecx + 0x218]
fsub dword [ebx + edx*8]
fmul st(1)
fchs
fstp dword [esp + 0x9c]
fld dword [ecx + 0x204]
fsub dword [ecx + 0x20c]
fmul st(1)
fchs
fstp dword [esp + 0xa0]
jmp 0x50044e
fstp st(0)
fld dword [ecx + 0x210]
fcomp dword [ecx + 0x200]
mov dword [esp + 0xb8], 1
mov dword [esp + 0xbc], 2
mov dword [esp + 0xc0], esi
mov dword [esp + 0x10], esi
fnstsw ax
test ah, 0x41
jne 0x500345
mov esi, 1
mov dword [esp + 0x10], esi
fld dword [ecx + 0x220]
mov eax, esi
shl eax, 4
fcomp dword [eax + ecx + 0x200]
fnstsw ax
test ah, 0x41
jne 0x500367
mov esi, 2
mov dword [esp + 0x10], esi
mov edx, dword [esp + esi*4 + 0xb8]
shl esi, 4
mov eax, edx
mov dword [esp + 0x1c], edx
fld dword [esi + ecx + 0x200]
shl eax, 4
mov esi, dword [esp + 0x10]
fsub dword [eax + ecx + 0x200]
mov eax, dword [esp + edx*4 + 0xb8]
shl eax, 4
fsub dword [eax + ecx + 0x200]
fadd dword [0x5333e0]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + esi*4 + 0x98]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x40
jne 0x5003c7
fdivr dword [0x533504]
lea eax, [esi + esi*2]
mov dword [esp + 0x18], eax
lea eax, [edx + edx*2]
mov dword [esp + 0x2c], eax
add esi, eax
mov eax, dword [esp + 0x18]
fld dword [ecx + esi*4 + 0x200]
add eax, edx
mov esi, dword [esp + 0x10]
fadd dword [ecx + eax*4 + 0x200]
mov eax, dword [esp + edx*4 + 0xb8]
fmul st(1)
fstp dword [esp + edx*4 + 0x98]
lea edx, [eax + eax*2]
mov dword [esp + 0x14], edx
add esi, edx
mov edx, dword [esp + 0x18]
fld dword [ecx + esi*4 + 0x200]
add edx, eax
mov esi, dword [esp + 0x14]
fadd dword [ecx + edx*4 + 0x200]
mov edx, dword [esp + 0x2c]
fmul st(1)
fstp dword [esp + eax*4 + 0x98]
add eax, edx
mov edx, dword [esp + 0x1c]
add edx, esi
fld dword [ecx + eax*4 + 0x200]
fsub dword [ecx + edx*4 + 0x200]
fmul st(1)
fchs
fstp dword [esp + 0xa4]
mov eax, dword [ecx + 0x224]
fstp st(0)
mov dword [esp + 0xa8], eax
fld dword [ecx + 0x248]
fadd dword [ecx + 0x238]
fadd dword [ecx + 0x228]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x41
jne 0x5004d8
fadd dword [0x5333e0]
lea edx, [edi + edi*4 + 0x46]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + 0x58]
fdivr dword [0x533504]
fld dword [ecx + 0x23c]
fsub dword [ecx + 0x244]
fmul st(1)
fchs
fstp dword [esp + 0x4c]
fld dword [ecx + 0x240]
fsub dword [ebx + edx*8]
fmul st(1)
fchs
fstp dword [esp + 0x50]
fld dword [ecx + 0x22c]
fsub dword [ecx + 0x234]
fmul st(1)
fchs
fstp dword [esp + 0x54]
jmp 0x5005f8
fstp st(0)
fld dword [ecx + 0x238]
fcomp dword [ecx + 0x228]
xor edx, edx
mov dword [esp + 0xd4], 1
mov dword [esp + 0xd8], 2
mov dword [esp + 0xdc], edx
fnstsw ax
test ah, 0x41
jne 0x500511
mov edx, 1
fld dword [ecx + 0x248]
mov eax, edx
shl eax, 4
fcomp dword [eax + ecx + 0x228]
fnstsw ax
test ah, 0x41
jne 0x50052f
mov edx, 2
mov esi, dword [esp + edx*4 + 0xd4]
mov eax, edx
shl eax, 4
mov edi, esi
fld dword [eax + ecx + 0x228]
mov eax, dword [esp + esi*4 + 0xd4]
shl edi, 4
shl eax, 4
fsub dword [edi + ecx + 0x228]
fsub dword [eax + ecx + 0x228]
fadd dword [0x5333e0]
fsqrt
fld st(0)
fmul dword [0x533504]
fstp dword [esp + edx*4 + 0x4c]
fcom dword [0x5333ec]
fnstsw ax
test ah, 0x40
jne 0x500586
fdivr dword [0x533504]
lea edi, [esi + esi*2]
lea eax, [edx + edx*2]
mov dword [esp + 0x18], edi
add edi, edx
mov dword [esp + 0x2c], eax
add eax, esi
fld dword [ecx + edi*4 + 0x228]
fadd dword [ecx + eax*4 + 0x228]
mov eax, dword [esp + esi*4 + 0xd4]
fmul st(1)
lea edi, [eax + eax*2]
mov dword [esp + 0x1c], edi
add edi, edx
mov edx, dword [esp + 0x2c]
fstp dword [esp + esi*4 + 0x4c]
fld dword [ecx + edi*4 + 0x228]
add edx, eax
fadd dword [ecx + edx*4 + 0x228]
mov edx, dword [esp + 0x18]
add edx, eax
fmul st(1)
fstp dword [esp + eax*4 + 0x4c]
mov eax, dword [esp + 0x1c]
fld dword [ecx + edx*4 + 0x228]
add eax, esi
fsub dword [ecx + eax*4 + 0x228]
fmul st(1)
fchs
fstp dword [esp + 0x58]
mov ecx, dword [ecx + 0x24c]
lea edx, [esp + 0x4c]
mov dword [esp + 0x5c], ecx
lea eax, [esp + 0x98]
push edx
lea ecx, [esp + 0xc8]
push eax
lea edx, [esp + 0x50]
push ecx
lea eax, [esp + 0x33]
push edx
push eax
fstp st(0)
call fcn.004b44d0
mov al, byte [esp + 0x3b]
add esp, 0x14
test al, al
je 0x50065b
fld dword [esp + 0x4c]
fchs
fstp dword [esp + 0x4c]
fld dword [esp + 0x50]
fchs
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fchs
fstp dword [esp + 0x54]
fld dword [esp + 0x58]
fchs
fstp dword [esp + 0x58]
fld dword [esp + 0x48]
fcomp dword [0x5333ec]
fnstsw ax
test ah, 0x40
je 0x500683
mov ecx, 5
lea esi, [esp + 0x98]
lea edi, [esp + 0x34]
rep movsd dword es:[edi], dword [esi]
jmp 0x500739
fld dword [esp + 0x48]
fcomp dword [0x533714]
fnstsw ax
test ah, 1
je 0x5006a4
fld dword [0x5333e0]
fsub dword [esp + 0xc]
fld dword [esp + 0xc]
jmp 0x5006ce
fld dword [esp + 0x48]
fmul dword [esp + 0xc]
fstp dword [esp + 0x18]
fld dword [esp + 0x48]
fsub dword [esp + 0x18]
fsin
fmul dword [esp + 0xc4]
fld dword [esp + 0x18]
fsin
fmul dword [esp + 0xc4]
fld dword [esp + 0x4c]
fmul st(1)
fld st(2)
fmul dword [esp + 0x98]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x5c]
faddp st(1)
lea eax, [edx + ecx + 1]
mov dword [esp + 0x44], eax
fstp dword [esp + 0x34]
fld dword [esp + 0x50]
fmul st(1)
fld st(2)
fmul dword [esp + 0x9c]
faddp st(1)
fstp dword [esp + 0x38]
fld dword [esp + 0x54]
fmul st(1)
fld dword [esp + 0xa0]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x3c]
fld dword [esp + 0x58]
fmul st(1)
fxch st(2)
fmul dword [esp + 0xa4]
faddp st(2)
fxch st(1)
fstp dword [esp + 0x40]
fstp st(0)
fld dword [esp + 0x34]
fmul dword [esp + 0x34]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x44]
fadd st(0), st(0)
fld dword [esp + 0x38]
fmul dword [esp + 0x34]
mov dword [eax + 0x24], ecx
fadd st(0), st(0)
fld dword [esp + 0x3c]
fmul dword [esp + 0x34]
fadd st(0), st(0)
fstp dword [esp + 0x1c]
fld dword [esp + 0x40]
fmul dword [esp + 0x34]
fadd st(0), st(0)
fstp dword [esp + 0xc]
fld dword [esp + 0x38]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x2c]
fld dword [esp + 0x3c]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x14]
fld dword [esp + 0x40]
fmul dword [esp + 0x38]
fadd st(0), st(0)
fstp dword [esp + 0x10]
fld dword [esp + 0x3c]
fmul dword [esp + 0x3c]
fadd st(0), st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0x40]
fmul dword [esp + 0x3c]
fadd st(0), st(0)
fld dword [0x5333e0]
fsub dword [esp + 0x2c]
fsub dword [esp + 0x18]
fstp dword [eax]
fld st(1)
fsub st(1)
fstp dword [eax + 4]
fld dword [esp + 0x10]
fadd dword [esp + 0x1c]
fstp dword [eax + 8]
fadd st(1)
fstp dword [eax + 0xc]
fstp st(0)
fsubr dword [0x5333e0]
fld st(0)
fsub dword [esp + 0x18]
fstp dword [eax + 0x10]
fld dword [esp + 0x14]
fsub dword [esp + 0xc]
fstp dword [eax + 0x14]
fld dword [esp + 0x1c]
fsub dword [esp + 0x10]
fstp dword [eax + 0x18]
fld dword [esp + 0x14]
fadd dword [esp + 0xc]
fstp dword [eax + 0x1c]
fsub dword [esp + 0x2c]
fstp dword [eax + 0x20]
jmp 0x5008c4
fld dword [esp + 0x10]
fcomp dword [0x5333ec]
fnstsw ax
test ah, 1
je 0x500860
fld dword [ebx + 0x104]
fadd qword [ebx + 0x20]
mov eax, dword [ebp + 0x10]
fstp qword [eax]
fld dword [ebx + 0x108]
fadd qword [ebx + 0x28]
fstp qword [eax + 8]
fld dword [ebx + 0x10c]
fadd qword [ebx + 0x30]
fstp qword [eax + 0x10]
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5008c4
lea esi, [ebx + 0x200]
jmp 0x5008ba
mov eax, dword [ebx + 0x59c]
mov ecx, dword [ebp + 0x10]
lea edx, [eax + eax*2]
fld dword [ebx + edx*4 + 0x104]
fadd qword [ebx + 0x20]
fstp qword [ecx]
mov eax, dword [ebx + 0x59c]
add eax, 0x16
lea eax, [eax + eax*2]
fld dword [ebx + eax*4]
fadd qword [ebx + 0x28]
fstp qword [ecx + 8]
mov eax, dword [ebx + 0x59c]
lea edx, [eax + eax*2]
mov eax, dword [ebp + 0xc]
test eax, eax
fld dword [ebx + edx*4 + 0x10c]
fadd qword [ebx + 0x30]
fstp qword [ecx + 0x10]
je 0x5008c4
mov eax, dword [ebx + 0x59c]
lea eax, [eax + eax*4]
lea esi, [ebx + eax*8 + 0x200]
mov edi, dword [ebp + 0xc]
mov ecx, 0xa
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x28]
mov ecx, dword [ebp + 0x1c]
inc eax
cmp eax, ecx
mov dword [esp + 0x28], eax
jl 0x4ff5be
mov ecx, dword [ebp + 0x14]
pop edi
pop esi
pop ebx
mov byte [ecx], 1
mov esp, ebp
pop ebp
ret