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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x304
push ebx
mov ebx, ecx
lea eax, [ebx + 0x75c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x44], ecx
lea ecx, [ebx + 0x768]
mov dword [esp + 0x48], edx
mov edx, dword [ecx]
mov dword [esp + 0x4c], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
push esi
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], eax
push edi
mov dword [ebx + 0x3bf4], 0x3f800000
mov dword [ebx + 0x3bf8], 0xff7fffff
mov dword [esp + 0x8c], ecx
lea edx, [esp + 0xd8]
lea eax, [ebx + 0x8b8]
mov dword [esp + 0xc], 4
mov ecx, eax
mov edi, dword [ecx]
mov esi, edx
mov dword [esi], edi
mov edi, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esi + 4], edi
mov dword [esi + 8], ecx
mov ecx, dword [esp + 0xc]
add eax, 0x128
add edx, 0xc
dec ecx
mov dword [esp + 0xc], ecx
jne 0x4e5fd7
mov ecx, dword [ebp + 0xc]
mov al, byte [ecx + 0x54a]
test al, al
je 0x4e609b
fld dword [esp + 0xec]
fadd dword [esp + 0xe0]
fmul dword [0x59e450]
fst dword [esp + 0xe0]
fstp dword [esp + 0xec]
fld dword [esp + 0xd8]
fsub dword [esp + 0xe4]
fmul dword [0x59e450]
fst dword [esp + 0xd8]
fchs
fstp dword [esp + 0xe4]
fld dword [esp + 0x104]
fadd dword [esp + 0xf8]
fmul dword [0x59e450]
fst dword [esp + 0xf8]
fstp dword [esp + 0x104]
fld dword [esp + 0xf0]
fsub dword [esp + 0xfc]
fmul dword [0x59e450]
fst dword [esp + 0xf0]
fchs
fstp dword [esp + 0xfc]
fld qword [ecx + 0x54c]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x4e60ea
fld dword [esp + 0xd8]
fsub dword [esp + 0xe4]
fsubr qword [ecx + 0x54c]
fmul qword [0x59e880]
fld dword [esp + 0xd8]
fadd st(1)
fstp dword [esp + 0xd8]
fld dword [esp + 0xe4]
fsub st(1)
fstp dword [esp + 0xe4]
fstp st(0)
fld qword [ecx + 0x554]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x4e6139
fld dword [esp + 0xf0]
fsub dword [esp + 0xfc]
fsubr qword [ecx + 0x554]
fmul qword [0x59e880]
fld dword [esp + 0xf0]
fadd st(1)
fstp dword [esp + 0xf0]
fld dword [esp + 0xfc]
fsub st(1)
fstp dword [esp + 0xfc]
fstp st(0)
fld qword [ecx + 0x55c]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x4e6184
fld dword [esp + 0xf8]
fsub dword [esp + 0xe0]
fsubr qword [ecx + 0x55c]
fmul qword [0x59e880]
fld dword [esp + 0xe0]
fsub st(1)
fstp dword [esp + 0xe0]
fadd dword [esp + 0xf8]
fstp dword [esp + 0xf8]
fld qword [ecx + 0x564]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x4e61cf
fld dword [esp + 0x104]
fsub dword [esp + 0xec]
fsubr qword [ecx + 0x564]
fmul qword [0x59e880]
fld dword [esp + 0xec]
fsub st(1)
fstp dword [esp + 0xec]
fadd dword [esp + 0x104]
fstp dword [esp + 0x104]
lea ecx, [ebx + 0x358c]
mov dword [esp + 0x20], ecx
lea eax, [esp + 0xd8]
lea ecx, [ebx + 0x8b8]
mov dword [esp + 0xc], 4
mov edi, edi
mov edx, eax
mov edi, dword [edx]
mov esi, ecx
mov dword [esi], edi
mov edi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esi + 4], edi
mov dword [esi + 8], edx
mov esi, dword [esp + 0x20]
mov edx, eax
mov edi, dword [edx]
mov dword [esi], edi
mov edi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esi + 4], edi
mov dword [esi + 8], edx
mov edx, dword [esp + 0xc]
add esi, 0xf8
add ecx, 0x128
add eax, 0xc
dec edx
mov dword [esp + 0x20], esi
mov dword [esp + 0xc], edx
jne 0x4e61f0
mov esi, dword [ebp + 8]
fild dword [esi + 0xc04]
mov edi, dword [ebp + 0xc]
lea ecx, [ebx + 0x3674]
xor eax, eax
fmul qword [esi + 0xbf8]
fadd qword [esi + 0xbf0]
fld dword [ebx + 0x358c]
fadd dword [ebx + 0x377c]
fmul dword [0x59e450]
fld dword [ebx + 0x3874]
fadd dword [ebx + 0x3684]
fmul dword [0x59e450]
fsub st(1)
fmul st(2)
fadd st(1)
fstp dword [esp + 0x9c]
fstp st(0)
fld qword [edi + 0x40]
fmul qword [0x59ea58]
fstp dword [esp + 0x58]
fild dword [esi + 0xc44]
fmul qword [esi + 0xc38]
fadd qword [esi + 0xc30]
fstp dword [esp + 0x28]
fld dword [0x59e43c]
fsub dword [esp + 0x28]
fstp dword [esp + 0x20]
fld dword [0x59e43c]
fsub st(1)
fld dword [esp + 0x20]
fmul st(1)
fstp dword [esp + 0x114]
fld dword [esp + 0x20]
fmul st(2)
fstp dword [esp + 0x118]
fmul dword [esp + 0x28]
fstp dword [esp + 0x11c]
fld dword [esp + 0x28]
fmul st(1)
fstp dword [esp + 0x120]
fstp st(0)
fld dword [esp + 0x58]
mov edx, dword [esp + eax + 0x114]
fmul dword [esp + eax + 0x114]
mov dword [ecx], edx
add eax, 4
add ecx, 0xf8
cmp eax, 0x10
fstp dword [esp + eax + 0xc4]
jl 0x4e62f8
fld qword [edi + 0x60]
xor ecx, ecx
fstp dword [ebx + 0x4024]
lea eax, [esi + 0x138]
fild dword [eax + 0xc]
inc ecx
add eax, 0x2c0
cmp ecx, 4
fmul qword [eax - 0x2c0]
fadd qword [eax - 0x2c8]
fld dword [esp + ecx*4 + 0x110]
fmul dword [0x59e7fc]
fmulp st(1)
fadd dword [ebx + 0x4024]
fstp dword [ebx + 0x4024]
jl 0x4e6332
fld dword [esp + 0x4c]
mov eax, dword [ebx + 0x32bc]
test eax, eax
fadd dword [esp + 0x84]
fmul dword [0x59e450]
fadd dword [esp + 0x9c]
fchs
fld dword [ebx + 0x368c]
fadd dword [ebx + 0x3594]
fmul dword [esp + 0x20]
fmul dword [0x59e450]
fld dword [ebx + 0x387c]
fadd dword [ebx + 0x3784]
fmul dword [esp + 0x28]
fmul dword [0x59e450]
faddp st(1)
fchs
fld qword [edi + 0x70]
fadd st(2)
fstp dword [esp + 0x14]
fld qword [edi + 0x80]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fstp st(0)
fld dword [esp + 0x50]
fsub qword [edi + 0x78]
fstp dword [esp + 0x108]
fld qword [edi + 0x60]
fadd dword [esp + 0x108]
fchs
fstp dword [esp + 0x18]
jne 0x4e6436
lea eax, [ebx + 0x72c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x6c], ecx
fld dword [esp + 0x6c]
fsub qword [0x7c8a24]
mov dword [esp + 0x70], edx
fstp dword [esp + 0x14]
mov dword [esp + 0x74], eax
fld dword [esp + 0x70]
fsub qword [0x7c8a2c]
fstp dword [esp + 0x18]
fld dword [esp + 0x74]
fsub qword [0x7c8a34]
fstp dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
lea ecx, [ebx + 0x72c]
mov dword [ecx], edx
mov edx, dword [esp + 0x1c]
mov dword [ecx + 4], eax
lea eax, [edi + 0x88]
mov dword [ecx + 8], edx
push eax
mov ecx, 0x8ad254
call fcn.004d7880
mov dword [ebx + 0x396c], eax
mov ecx, dword [esi + 0xbc4]
push 0
push ecx
mov ecx, ebx
call fcn.004f1a60
mov edx, dword [ebx + 0x3970]
mov ecx, dword [ebx + 0x396c]
push edx
call fcn.004d7570
fld dword [0x59e440]
fld dword [0x59e440]
lea ecx, [eax + 0x18]
fld dword [0x59e440]
add eax, 0x160
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x140], eax
lea eax, [esi + 0x1b8]
xor ecx, ecx
lea esp, [esp]
fild dword [eax + 0xc]
add ecx, 4
add eax, 0x2c0
cmp ecx, 0x10
fmul qword [eax - 0x2c0]
fadd qword [eax - 0x2c8]
fst dword [esp + ecx + 0x58]
faddp st(3)
fild dword [eax - 0x1f4]
fmul qword [eax - 0x200]
fadd qword [eax - 0x208]
fild dword [eax - 0x274]
fmul qword [eax - 0x280]
fadd qword [eax - 0x288]
faddp st(1)
fmul qword [0x59e880]
fst dword [esp + ecx + 0xa8]
faddp st(2)
fild dword [eax - 0x1b4]
fmul qword [eax - 0x1c0]
fadd qword [eax - 0x1c8]
fild dword [eax - 0x234]
fmul qword [eax - 0x240]
fadd qword [eax - 0x248]
faddp st(1)
fmul qword [0x59e880]
fst dword [esp + ecx + 0x120]
faddp st(1)
jl 0x4e64c0
fstp dword [esp + 0xc]
add edi, 0x1400
fxch st(1)
add esi, 0xf8
fmul dword [0x59e7f8]
mov dword [esp + 0x20], edi
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x28], esi
fstp dword [esp + 0xbc]
mov dword [esp + 0x2c], 0
lea esi, [ebx + 0x35ac]
fmul dword [0x59e7f8]
fstp dword [esp + 0xc0]
fld dword [esp + 0xc]
fmul dword [0x59e7f8]
fstp dword [esp + 0xc]
mov edx, dword [esp + 0x20]
xor eax, eax
mov dword [esi - 8], eax
mov dword [esi - 4], eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x18], eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], 0x3f800000
mov dword [esi + 0x14], eax
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], eax
fld dword [0x8afef0]
fadd dword [0x5acafc]
fstp dword [esi + 0x30]
fld qword [edx + 0x60]
fadd st(0), st(0)
fld st(0)
fxch st(1)
fstp dword [esi + 0x38]
fst dword [esi + 0x3c]
fld dword [0x59e43c]
fdiv st(1)
fstp dword [esi + 0x40]
mov ecx, dword [ebx + 0x34a8]
mov dword [esi + 0x44], ecx
mov ecx, dword [esp + 0x2c]
fstp st(0)
cmp ecx, eax
je 0x4e6612
cmp ecx, 1
mov ecx, dword [esp + 0x140]
jne 0x4e6619
mov ecx, dword [esp + 0xc4]
fld dword [esp + 0xbc]
xor eax, eax
mov dword [esi + 0x94], eax
mov dword [esi + 0x90], 0x3f800000
mov edx, 0x7cf0bdc2
mov dword [esi + 0x98], edx
mov dword [esi + 0x9c], edx
mov dword [esi + 0xac], eax
mov dword [esi + 0xb0], eax
mov dword [esi + 0xb4], eax
mov dword [esi + 0xb8], eax
mov dword [esi + 0xbc], eax
mov eax, dword [esp + 0x2c]
fsub dword [esp + eax*4 + 0x5c]
sub esp, 8
fmul qword [edi + 0xfc]
fadd dword [esp + eax*4 + 0x64]
fstp dword [esp + 0x38]
fld dword [esp + 0xc8]
fsub dword [esp + eax*4 + 0xb4]
fmul qword [edi + 0xfc]
fadd dword [esp + eax*4 + 0xb4]
lea eax, [esp + eax*4 + 0x12c]
fstp dword [esp + 0x2c]
fld dword [esp + 0x14]
fsub dword [eax]
fmul qword [edi + 0xfc]
fadd dword [eax]
mov eax, dword [esp + 0x30]
fstp dword [esp + 0x18]
fild dword [eax + 0xc]
fmul qword [eax]
fadd qword [eax - 8]
fstp qword [esp]
call fcn.004d6ae0
fld dword [esp + 0x30]
fadd st(1)
mov eax, dword [esp + 0x20]
fdivr dword [0x59e43c]
fld st(1)
fmul dword [esp + 0x30]
fmul st(1)
fst dword [esp + 0x30]
fmul qword [edi + 0x104]
fstp dword [esi + 0xc0]
fld dword [esp + 0x10]
fmul qword [edi + 0x114]
fld dword [esp + 0x24]
fmul qword [edi + 0x10c]
faddp st(1)
fstp dword [esi + 0xc4]
fmul st(1)
fstp dword [esi + 0x4c]
fstp st(0)
fld qword [eax]
fsub qword [eax + 8]
mov eax, dword [esp + 0x28]
fabs
fadd dword [0x59e450]
fstp dword [esi + 0x50]
fild dword [eax + 0x4c]
fmul qword [eax + 0x40]
fadd qword [eax + 0x38]
mov ecx, dword [esp + 0x2c]
test ecx, ecx
lea eax, [esi - 0x20]
fsubr dword [esp + 0x108]
fadd dword [esi + 0x64]
fld dword [esp + ecx*4 + 0xc8]
fdiv dword [esp + 0x30]
fsubp st(1)
fstp dword [esi - 0x1c]
fld dword [esp + 0x14]
fadd dword [eax]
fstp dword [eax]
fld dword [esp + 0x18]
fadd dword [esi - 0x1c]
fstp dword [esi - 0x1c]
fld dword [esp + 0x1c]
fadd dword [esi - 0x18]
fstp dword [esi - 0x18]
mov edx, dword [esi - 0x1c]
mov dword [esi + 0x34], edx
mov edx, ecx
je 0x4e677c
cmp edx, 1
jne 0x4e6793
mov ecx, dword [ebp + 8]
fild dword [ecx + 0xd84]
fmul qword [ecx + 0xd78]
fadd qword [ecx + 0xd70]
jmp 0x4e67a8
mov ecx, dword [ebp + 8]
fild dword [ecx + 0xdc4]
fmul qword [ecx + 0xdb8]
fadd qword [ecx + 0xdb0]
test edx, edx
fstp dword [esp + 0x30]
je 0x4e67b5
cmp edx, 2
jne 0x4e67c6
mov ecx, dword [esp + 0x28]
fild dword [ecx - 0x34]
fmul qword [ecx - 0x40]
fadd qword [ecx - 0x48]
fchs
jmp 0x4e67dd
fld dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
fchs
fstp dword [esp + 0x30]
fild dword [ecx - 0x34]
fmul qword [ecx - 0x40]
fadd qword [ecx - 0x48]
mov edx, dword [esp + 0x30]
fstp dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push ecx
push edx
push 0
push eax
mov eax, dword [esp + 0x3c]
push eax
lea ecx, [ebx + 0x6e4]
call fcn.004e2540
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
inc eax
add ecx, 0x108
add edx, 0x2c0
add esi, 0xf8
cmp eax, 4
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x28], edx
jl 0x4e65a3
xor edx, edx
xor ecx, ecx
lea eax, [ebx + 0x3604]
lea esp, [esp]
cmp ecx, edx
mov dword [eax - 4], edx
je 0x4e684c
cmp ecx, 1
jne 0x4e6854
fld dword [ebx + 0x3784]
jmp 0x4e685a
fld dword [ebx + 0x3594]
fld dword [ebx + 0x3594]
inc ecx
fsub dword [ebx + 0x3784]
add eax, 0xf8
cmp ecx, 4
fdivp st(1)
fabs
fld qword [0x59e420]
fsub qword [edi + 0x104]
fxch st(1)
fmulp st(1)
fmul dword [0x59e99c]
fstp dword [eax - 0xf8]
fld qword [0x59e420]
fsub qword [edi + 0x104]
fmul qword [0x59eb50]
fdiv dword [eax - 0x168]
fstp dword [eax - 0xf4]
fld qword [0x59e420]
fsub qword [edi + 0x104]
fmul qword [0x59ed10]
fdiv dword [eax - 0x170]
fstp dword [eax - 0xf0]
jl 0x4e6840
mov esi, dword [ebp + 8]
fild dword [esi + 0xcc4]
push esi
fmul qword [esi + 0xcb8]
fadd qword [esi + 0xcb0]
fstp dword [ebx + 0x3978]
mov ecx, dword [esi + 0xcc0]
dec ecx
mov dword [esp + 0x28], ecx
fild dword [esp + 0x28]
lea ecx, [ebx + 0x32c0]
fmul qword [esi + 0xcb8]
fadd qword [esi + 0xcb0]
fst dword [ebx + 0x397c]
fld dword [0x59e43c]
fdiv st(1)
fstp dword [ebx + 0x3980]
fstp st(0)
fild dword [0x7d0b64]
fmul qword [edi + 0x674]
fmul dword [0x7d01e8]
fstp dword [ebx + 0x3984]
call fcn.004a5330
fld qword [edi + 0x40]
fst dword [ebx + 0x3510]
sub esp, 8
fld dword [ebx + 0x3978]
mov ecx, edi
fmul dword [0x59e7fc]
faddp st(1)
fst dword [ebx + 0x3514]
fld dword [0x59e43c]
fdiv st(1)
fstp dword [ebx + 0x3518]
fstp st(0)
fld qword [edi + 0x48]
fstp dword [ebx + 0x351c]
fld qword [edi + 0x50]
fstp dword [ebx + 0x3520]
fld qword [edi + 0x58]
fstp dword [ebx + 0x3524]
fld dword [0x59e43c]
fdiv dword [ebx + 0x351c]
fstp dword [ebx + 0x3528]
fld dword [0x59e43c]
fdiv dword [ebx + 0x3520]
fstp dword [ebx + 0x352c]
fld dword [0x59e43c]
fdiv dword [ebx + 0x3524]
fstp dword [ebx + 0x3530]
fld qword [edi + 0x12c]
fstp dword [ebx + 0x3564]
fld qword [edi + 0x134]
fstp dword [ebx + 0x3568]
fld qword [edi + 0x13c]
fstp dword [ebx + 0x356c]
mov edx, dword [esi + 0x1440]
dec edx
mov dword [esp + 0x2c], edx
fild dword [esp + 0x2c]
fmul qword [esi + 0x1438]
fadd qword [esi + 0x1430]
fst dword [ebx + 0x3960]
fstp dword [ebx + 0x1038]
fild dword [esi + 0xd04]
fmul qword [esi + 0xcf8]
fadd qword [esi + 0xcf0]
fstp qword [esp]
call fcn.004f6850
fstp dword [esp + 0x24]
sub esp, 8
fild dword [esi + 0xd44]
mov ecx, edi
fmul qword [esi + 0xd38]
fadd qword [esi + 0xd30]
fstp qword [esp]
call fcn.004f6880
fadd dword [esp + 0x24]
xor ecx, ecx
fmul qword [edi + 0x104]
fmul qword [0x59eb50]
fstp dword [ebx + 0x3974]
fld qword [edi + 0x1374]
fadd qword [edi + 0x684]
mov dword [ebx + 0x3994], ecx
fst dword [ebx + 0x3988]
fld dword [0x59e43c]
fdiv st(1)
fstp dword [ebx + 0x398c]
fstp st(0)
fild dword [esi + 0x1584]
fmul qword [esi + 0x1578]
fadd qword [esi + 0x1570]
fstp dword [ebx + 0x3998]
fld qword [edi + 0x694]
fadd qword [edi + 0x68c]
fmul qword [0x59e880]
fstp dword [ebx + 0x399c]
mov eax, dword [edi + 0x13c0]
mov dword [ebx + 0x39b4], eax
mov byte [ebx + 0x39ec], cl
fld qword [edi + 0x6a4]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x4e6ae8
mov eax, 1
jmp 0x4e6aea
xor eax, eax
mov byte [ebx + 0x39ed], al
mov eax, dword [0x8aae70]
mov edx, eax
and edx, 0xff
fld dword [edx*4 + 0x8aae74]
inc eax
fmul qword [0x59e430]
mov dword [0x8aae70], eax
mov eax, dword [ebx + 0x3998]
fadd qword [edi + 0x6ac]
fstp dword [ebx + 0x3990]
mov dword [esp + 0x10], eax
fld dword [ebx + 0x399c]
fcom dword [ebx + 0x3990]
fnstsw ax
test ah, 0x41
jne 0x4e6b41
fstp dword [ebx + 0x3990]
jmp 0x4e6b5e
fstp st(0)
fld dword [ebx + 0x3990]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x4e6b5e
mov edx, dword [esp + 0x10]
mov dword [ebx + 0x3990], edx
mov dword [ebx + 0x39b8], ecx
fld qword [edi + 0x135c]
fstp dword [ebx + 0x39bc]
lea esi, [ebx + 8]
fld qword [edi + 0x1364]
mov ecx, esi
fstp dword [ebx + 0x39c0]
fld qword [edi + 0x136c]
fstp dword [ebx + 0x39c4]
fld qword [edi + 0x68c]
fmul dword [0x5acdc0]
fstp dword [esp + 0x24]
fld dword [ebx + 0x3998]
fmul dword [0x5acee0]
fstp dword [esi + 0x80]
call fcn.004f8330
mov eax, dword [esp + 0x24]
mov ecx, esi
mov dword [esi + 0x84], eax
call fcn.004f8330
fld dword [ebx + 0x3998]
fmul dword [0x5aceac]
xor esi, esi
mov dword [ebx + 0x39a8], esi
mov dword [ebx + 0x39ac], esi
call fcn.00587bdc
mov ecx, 2
sub ecx, eax
mov dword [ebx + 0x39b0], ecx
shl ecx, 3
push ecx
call fcn.00587c03
mov dword [ebx + 0x39a4], eax
mov eax, dword [ebx + 0x39b0]
add esp, 4
cmp eax, esi
mov dword [esp + 0x2c], esi
jle 0x4e6c79
mov edi, dword [ebp + 0xc]
fild dword [esp + 0x2c]
lea edx, [esp + 0x168]
push edx
lea eax, [esp + 0x14c]
fmul dword [0x59ec20]
push eax
sub esp, 8
mov ecx, edi
fstp qword [esp]
call fcn.004f6720
fld qword [esp + 0x148]
mov ecx, dword [ebx + 0x39a4]
fsub qword [edi + 0x138c]
inc esi
fstp dword [ecx + esi*8 - 8]
mov edx, dword [ebx + 0x39a4]
fld qword [esp + 0x168]
mov dword [esp + 0x2c], esi
fsub qword [esp + 0x148]
fstp dword [edx + esi*8 - 4]
mov eax, dword [ebx + 0x39b0]
cmp esi, eax
jl 0x4e6c14
mov eax, dword [ebp + 0xc]
xor esi, esi
mov dword [ebx + 0x39c8], esi
mov byte [ebx + 0x39ee], 0
mov dword [ebx + 0x39f0], esi
mov dword [ebx + 0x39f4], 0xfffffffe
mov eax, dword [eax + 0x13c4]
cmp eax, esi
mov dword [ebx + 0x39f8], eax
jl 0x4e6ccd
lea edi, [ebx + 0x39cc]
lea ecx, [esi + 0x2b]
push ecx
mov ecx, dword [ebp + 8]
call fcn.0042ed00
fstp dword [edi]
mov eax, dword [ebx + 0x39f8]
inc esi
add edi, 4
cmp esi, eax
jle 0x4e6cb1
mov edx, dword [ebp + 0xc]
fld qword [edx + 0x13a8]
xor eax, eax
fmul qword [0x5ad1a8]
lea esi, [ebx + 0x3a10]
lea edi, [esi + 4]
mov ecx, 7
fadd qword [edx + 0x13a0]
fstp dword [ebx + 0x39fc]
fld qword [edx + 0x13b8]
fmul qword [0x5ad1a8]
fadd qword [edx + 0x13b0]
fstp dword [ebx + 0x3a00]
mov dword [ebx + 0x3a04], eax
fld dword [ebx + 0x3998]
mov dword [ebx + 0x3a08], eax
fmul dword [0x5ad1a0]
fstp dword [ebx + 0x3a0c]
fld dword [ebx + 0x399c]
fmul dword [0x5ad19c]
fstp dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov dword [esi], eax
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x39f8]
mov esi, 2
cmp eax, esi
jl 0x4e6d93
lea ecx, [ebx + 0x39d4]
nop
lea esp, [esp]
fld dword [ecx]
fdiv dword [ecx - 4]
fmul dword [ebx + 0x3a0c]
fmul dword [0x5ad198]
fcom dword [esp + 0xc]
fnstsw ax
test ah, 5
jp 0x4e6d82
fstp st(0)
fld dword [esp + 0xc]
fstp dword [ecx + 0x44]
mov eax, dword [ebx + 0x39f8]
inc esi
add ecx, 4
cmp esi, eax
jle 0x4e6d60
mov eax, dword [ebp + 8]
fild dword [eax + 0x1344]
xor edi, edi
fmul qword [eax + 0x1338]
fadd qword [eax + 0x1330]
lea ebx, [ebx]
test edi, edi
jne 0x4e6dc8
lea ecx, [edx + 0x13d0]
lea eax, [edx + 0x14d8]
lea esi, [ebx + 0x3a30]
jmp 0x4e6dda
lea ecx, [edx + 0x15e0]
lea eax, [edx + 0x16e8]
lea esi, [ebx + 0x3a44]
fld qword [eax + 0xb0]
inc edi
cmp edi, 2
fadd qword [ecx + 0xb0]
fmul qword [0x59e880]
fstp dword [esi]
fld qword [eax + 0xa8]
fadd qword [ecx + 0xa8]
fmul qword [0x59e880]
fstp dword [esi + 4]
fld qword [eax + 0xc8]
fadd qword [ecx + 0xc8]
fmul qword [0x5ad190]
fstp dword [esi + 8]
fld qword [eax + 0xd0]
fadd qword [ecx + 0xd0]
fmul qword [0x5ad190]
fstp dword [esi + 0xc]
fld st(0)
fmul qword [eax + 0xe0]
fadd qword [eax + 0xd8]
fld st(1)
fmul qword [ecx + 0xe0]
fadd qword [ecx + 0xd8]
faddp st(1)
fmul qword [0x5ad190]
fstp dword [esi + 0x10]
jl 0x4e6db0
mov ecx, dword [ebp + 8]
fstp st(0)
fild dword [ecx + 0x1384]
xor edx, edx
fmul qword [ecx + 0x1378]
fadd qword [ecx + 0x1370]
fld dword [0x59e43c]
fsub st(1)
fmul dword [ebx + 0x3a30]
fst dword [esp + 0x10]
fstp dword [ebx + 0x3a30]
fmul dword [ebx + 0x3a44]
fst dword [ebx + 0x3a44]
fld dword [esp + 0x10]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e6eba
mov dword [ebx + 0x3618], edx
mov dword [ebx + 0x3710], edx
jmp 0x4e6ed0
fld dword [0x59e43c]
fdiv dword [esp + 0x10]
fst dword [ebx + 0x3618]
fstp dword [ebx + 0x3710]
fcom dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e6eed
fstp st(0)
mov dword [ebx + 0x3808], edx
mov dword [ebx + 0x3900], edx
jmp 0x4e6eff
fdivr dword [0x59e43c]
fst dword [ebx + 0x3808]
fstp dword [ebx + 0x3900]
fld dword [0x59e440]
lea eax, [ecx + 0x138]
mov ecx, 4
fild dword [eax + 0xc]
add eax, 0x2c0
dec ecx
fmul qword [eax - 0x2c0]
fadd qword [eax - 0x2c8]
faddp st(1)
jne 0x4e6f10
fmul dword [0x59e84c]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
lea ecx, [esp + 0x134]
fstp dword [esp + 0xc]
push ecx
fld dword [ebx + 0x3594]
lea edx, [esp + 0x148]
fadd dword [ebx + 0x368c]
push edx
push ecx
lea ecx, [edi + 0x144]
fmul dword [0x59e450]
fstp dword [esp + 0xc0]
fld dword [ebx + 0x3784]
fadd dword [ebx + 0x387c]
fmul dword [0x59e450]
fstp dword [esp + 0x70]
fild dword [esi + 0xe04]
fmul qword [esi + 0xdf8]
fadd qword [esi + 0xdf0]
fstp dword [esp]
call fcn.004f3190
fild dword [esi + 0xe44]
lea eax, [esp + 0x13c]
push eax
fmul qword [esi + 0xe38]
lea ecx, [esp + 0x13c]
push ecx
push ecx
fadd qword [esi + 0xe30]
lea ecx, [edi + 0x198]
fstp dword [esp]
call fcn.004f3190
fld dword [esp + 0xb4]
fadd qword [edi + 0x2f0]
mov ecx, dword [esp + 0xc]
fstp dword [esp + 0xc0]
lea edx, [esp + 0x10c]
fild dword [esi + 0x1284]
push edx
lea eax, [esp + 0x154]
push eax
fmul qword [esi + 0x1278]
push ecx
push ecx
mov ecx, edi
fadd qword [esi + 0x1270]
fstp dword [esp]
call fcn.004f68b0
fld dword [esp + 0x64]
fadd qword [edi + 0x3ec]
lea edx, [esp + 0x110]
fstp dword [esp + 0x24]
push edx
fild dword [esi + 0x12c4]
lea eax, [esp + 0x160]
push eax
push ecx
fmul qword [esi + 0x12b8]
mov ecx, edi
fadd qword [esi + 0x12b0]
fstp dword [esp]
call fcn.004f6950
fld dword [esp + 0x64]
fadd qword [edi + 0x424]
mov eax, dword [esp + 0xc]
fstp dword [esp + 0xc4]
lea ecx, [esp + 0x58]
fild dword [esi + 0x1304]
push ecx
lea edx, [esp + 0x118]
push edx
fmul qword [esi + 0x12f8]
push eax
sub esp, 8
mov ecx, edi
fadd qword [esi + 0x12f0]
fstp dword [esp + 4]
fild dword [esi + 0x1344]
fmul qword [esi + 0x1338]
fadd qword [esi + 0x1330]
fstp dword [esp]
call fcn.004f69e0
fld dword [esp + 0x64]
fadd qword [edi + 0x510]
mov edx, dword [esp + 0xc]
lea ecx, [esp + 0x9c]
fstp dword [esp + 0xbc]
push ecx
push edx
mov ecx, edi
call fcn.004f6a50
fld dword [esp + 0x138]
fadd dword [esp + 0x144]
xor eax, eax
fld dword [esp + 0x150]
mov dword [ebx + 0x3a58], eax
mov dword [ebx + 0x3a5c], eax
fadd st(1)
mov dword [ebx + 0x3a60], eax
fld dword [esp + 0x154]
lea ecx, [ebx + 0x3a64]
fadd st(2)
fstp dword [esp + 0x60]
fld dword [esp + 0x158]
fadd st(2)
fstp dword [esp + 0x64]
fld dword [esp + 0x15c]
fadd st(1)
fstp st(2)
fstp st(0)
fld dword [esp + 0x160]
fadd dword [esp + 0x60]
fld dword [esp + 0x164]
fadd dword [esp + 0x64]
fstp dword [esp + 0x64]
fld dword [esp + 0x114]
fadd st(2)
fstp dword [esp + 0x6c]
mov edx, dword [esp + 0x6c]
fld dword [esp + 0x118]
mov dword [ecx], edx
fadd st(1)
fstp dword [esp + 0x70]
mov edx, dword [esp + 0x70]
mov dword [ecx + 4], edx
fstp st(0)
fstp st(0)
fld dword [esp + 0x11c]
fadd dword [esp + 0x64]
fstp dword [esp + 0x74]
mov edx, dword [esp + 0x74]
mov dword [ecx + 8], edx
fld dword [esp + 0x9c]
mov ecx, dword [ebx + 0x3a6c]
fadd dword [esp + 0x58]
mov dword [ebx + 0x3a74], eax
fld dword [esp + 0x110]
mov dword [ebx + 0x3a78], ecx
fadd st(1)
fadd dword [esp + 0x10c]
fadd dword [esp + 0x13c]
fadd dword [esp + 0x134]
fchs
fst dword [esp + 0x10]
fst dword [ebx + 0x3a70]
fstp dword [ebx + 0x3a7c]
fchs
fstp dword [ebx + 0x3a80]
fld dword [esp + 0x10]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jnp 0x4e7225
fld dword [esp + 0x110]
fmul dword [esp + 0x24]
fld dword [esp + 0x10c]
fmul dword [esp + 0xc0]
faddp st(1)
fld dword [esp + 0x9c]
fmul dword [esp + 0xbc]
faddp st(1)
fld dword [esp + 0x58]
fmul dword [esp + 0xc4]
faddp st(1)
fdiv dword [esp + 0x10]
fchs
fstp dword [ebx + 0x3a74]
mov eax, dword [ebp + 0xc]
fld dword [ebx + 0x3a74]
fsubr qword [eax + 0x11c]
lea esi, [eax + 0x17f0]
lea edi, [ebx + 0x3d78]
mov ecx, 0x9e
fmul qword [eax + 0x124]
fadd dword [ebx + 0x3a74]
fstp dword [ebx + 0x3a74]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0xcc8]
test ecx, ecx
je 0x4e72b0
fld dword [ebx + 0x3d9c]
lea edx, [ebx + 0x3d9c]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e72b0
fld dword [edx + 4]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e72b0
fld dword [edx + 8]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e72b0
lea eax, [ebx + 0x3da4]
push eax
lea eax, [ebx + 0x3da0]
push eax
push edx
call fcn.0054b420
fld dword [esp + 0x14]
fadd dword [ebx + 0x3d9c]
fstp dword [ebx + 0x3d9c]
fld dword [esp + 0x18]
fadd dword [ebx + 0x3da0]
fstp dword [ebx + 0x3da0]
fld dword [esp + 0x1c]
fadd dword [ebx + 0x3da4]
fstp dword [ebx + 0x3da4]
mov ecx, dword [ebx + 0xd0c]
test ecx, ecx
je 0x4e7337
fld dword [ebx + 0x3dcc]
lea edx, [ebx + 0x3dcc]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e7337
fld dword [edx + 4]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e7337
fld dword [edx + 8]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e7337
lea eax, [ebx + 0x3dd4]
push eax
lea eax, [ebx + 0x3dd0]
push eax
push edx
call fcn.0054b420
fld dword [esp + 0x14]
lea ecx, [ebx + 0xd50]
fadd dword [ebx + 0x3dcc]
mov dword [esp + 0xc], ecx
lea esi, [ebx + 0x3eb8]
mov dword [esp + 0x10], 8
fstp dword [ebx + 0x3dcc]
fld dword [esp + 0x18]
fadd dword [ebx + 0x3dd0]
fstp dword [ebx + 0x3dd0]
fld dword [esp + 0x1c]
fadd dword [ebx + 0x3dd4]
fstp dword [ebx + 0x3dd4]
nop
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
test ecx, ecx
je 0x4e73c7
fld dword [esi - 8]
lea edi, [esi - 8]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e73c7
fld dword [esi - 4]
lea edx, [esi - 4]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e73c7
fld dword [esi]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jp 0x4e73c7
push esi
push edx
push edi
call fcn.0054b420
fld dword [esp + 0x14]
mov edx, dword [esp + 0xc]
fadd dword [esi - 8]
mov eax, dword [esp + 0x10]
add edx, 0x44
add esi, 0xc
fstp dword [esi - 0x14]
dec eax
fld dword [esp + 0x18]
mov dword [esp + 0xc], edx
fadd dword [esi - 0x10]
mov dword [esp + 0x10], eax
fstp dword [esi - 0x10]
fld dword [esp + 0x1c]
fadd dword [esi - 0xc]
fstp dword [esi - 0xc]
jne 0x4e7380
xor edi, edi
mov dword [ebx + 0x3a9c], edi
mov ecx, ebx
mov dword [ebx + 0x3b54], edi
mov dword [ebx + 0x3b58], edi
mov dword [ebx + 0x3b5c], edi
call fcn.004e9bd0
mov dword [ebx + 0x3be8], edi
mov dword [ebx + 0x3bec], edi
mov dword [ebx + 0x3bf0], edi
lea eax, [ebx + 0x3594]
mov ecx, 4
lea esp, [esp]
fld dword [eax - 8]
add eax, 0xf8
dec ecx
fadd dword [ebx + 0x3be8]
fstp dword [ebx + 0x3be8]
fld dword [eax - 0xfc]
fadd dword [ebx + 0x3bec]
fstp dword [ebx + 0x3bec]
fld dword [ebx + 0x3bf0]
fadd dword [eax - 0xf8]
fstp dword [ebx + 0x3bf0]
jne 0x4e7440
fld dword [ebx + 0x3be8]
xor esi, esi
fmul dword [0x59e7f8]
fstp dword [ebx + 0x3be8]
fld dword [ebx + 0x3bec]
fmul dword [0x59e7f8]
fstp dword [ebx + 0x3bec]
fld dword [ebx + 0x3bf0]
fmul dword [0x59e7f8]
fstp dword [ebx + 0x3bf0]
mov dword [ebx + 0x3b6c], edi
mov byte [ebx + 0x3b74], 0
mov byte [ebx + 0x3b75], 0
cmp esi, 4
jge 0x4e78ce
cmp esi, edi
je 0x4e74d9
cmp esi, 1
jne 0x4e74e1
fld dword [0x59e670]
jmp 0x4e74e7
fld dword [0x59e43c]
cmp esi, edi
je 0x4e74f0
cmp esi, 2
jne 0x4e74f8
fld dword [0x59e43c]
jmp 0x4e74fe
fld dword [0x59e670]
mov ecx, dword [ebx + 0x6e8]
fstp dword [esp + 0x124]
lea eax, [esp + 0x90]
push eax
fstp dword [esp + 0x130]
lea edx, [esp + 0x128]
mov dword [esp + 0x12c], 0
call fcn.004dd7c0
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x98]
mov dword [esp + 0x40], ecx
mov ecx, esi
imul ecx, ecx, 0x128
lea edi, [ecx + ebx]
mov ecx, dword [edi + 0x828]
test ecx, ecx
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], eax
je 0x4e75a2
lea edx, [esp + 0x40]
push edx
lea edx, [esp + 0x128]
call fcn.004dd7c0
fld dword [esp + 0x40]
fadd dword [edi + 0x82c]
fstp dword [esp + 0x40]
fld dword [esp + 0x44]
fadd dword [edi + 0x830]
fstp dword [esp + 0x44]
fld dword [esp + 0x48]
fadd dword [edi + 0x834]
fstp dword [esp + 0x48]
test esi, esi
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x98]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
je 0x4e75cc
cmp esi, 1
jne 0x4e761c
mov ecx, dword [ebx + 0xcc8]
test ecx, ecx
je 0x4e761c
lea eax, [esp + 0x34]
push eax
lea edx, [esp + 0x128]
call fcn.004dd7c0
fld dword [esp + 0x34]
fadd dword [ebx + 0xccc]
fstp dword [esp + 0x34]
fld dword [esp + 0x38]
fadd dword [ebx + 0xcd0]
fstp dword [esp + 0x38]
fld dword [esp + 0x3c]
fadd dword [ebx + 0xcd4]
fstp dword [esp + 0x3c]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x98], ecx
test esi, esi
je 0x4e7625
cmp esi, 2
jne 0x4e7686
fld dword [esp + 0x40]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 0x41
jne 0x4e763a
fld dword [esp + 0x40]
jmp 0x4e763e
fld dword [esp + 0x34]
fld dword [esp + 0x90]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 0x41
jne 0x4e765f
fld dword [esp + 0x90]
lea edx, [esi + esi*2]
lea ecx, [ebx + edx*4]
jmp 0x4e76d9
fld dword [esp + 0x40]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 0x41
jne 0x4e767a
fld dword [esp + 0x40]
lea edx, [esi + esi*2]
lea ecx, [ebx + edx*4]
jmp 0x4e76d9
fld dword [esp + 0x34]
lea edx, [esi + esi*2]
lea ecx, [ebx + edx*4]
jmp 0x4e76d9
fld dword [esp + 0x40]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 5
jp 0x4e769b
fld dword [esp + 0x40]
jmp 0x4e769f
fld dword [esp + 0x34]
fld dword [esp + 0x90]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 5
jp 0x4e76ba
fld dword [esp + 0x90]
jmp 0x4e76d3
fld dword [esp + 0x40]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 5
jp 0x4e76cf
fld dword [esp + 0x40]
jmp 0x4e76d3
fld dword [esp + 0x34]
lea eax, [esi + esi*2]
lea ecx, [ebx + eax*4]
test esi, esi
fadd dword [esp + 0x14]
lea edx, [esi + esi*2 + 0xeaf]
lea edx, [ebx + edx*4]
fstp dword [ecx + 0x3ab8]
mov dword [edx], 0
je 0x4e76fc
cmp esi, 1
jne 0x4e7745
fld dword [esp + 0x48]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 5
jp 0x4e7711
fld dword [esp + 0x48]
jmp 0x4e7715
fld dword [esp + 0x3c]
fld dword [esp + 0x98]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 5
jp 0x4e7730
fld dword [esp + 0x98]
jmp 0x4e7792
fld dword [esp + 0x48]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 5
jp 0x4e778e
fld dword [esp + 0x48]
jmp 0x4e7792
fld dword [esp + 0x48]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 0x41
jne 0x4e775a
fld dword [esp + 0x48]
jmp 0x4e775e
fld dword [esp + 0x3c]
fld dword [esp + 0x98]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 0x41
jne 0x4e7779
fld dword [esp + 0x98]
jmp 0x4e7792
fld dword [esp + 0x48]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 0x41
jne 0x4e778e
fld dword [esp + 0x48]
jmp 0x4e7792
fld dword [esp + 0x3c]
fadd dword [esp + 0x1c]
mov eax, dword [ebp + 0xc]
fstp dword [ecx + 0x3ac0]
test byte [eax + 0x3c], 1
je 0x4e7847
test esi, esi
jne 0x4e77c2
fld dword [esp + 0x14]
fadd dword [esp + 0x84]
fstp dword [esp + 0x6c]
fld dword [esp + 0x54]
jmp 0x4e7803
cmp esi, 1
jne 0x4e77d9
fld dword [esp + 0x14]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x6c]
fld dword [esp + 0x54]
jmp 0x4e7803
cmp esi, 2
jne 0x4e77eb
fld dword [esp + 0x14]
fadd dword [esp + 0x84]
jmp 0x4e77f8
cmp esi, 3
jne 0x4e780b
fld dword [esp + 0x14]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x6c]
fld dword [esp + 0x8c]
fadd dword [esp + 0x1c]
fstp dword [esp + 0x74]
fld dword [esp + 0x6c]
fmul dword [0x5ad18c]
fld dword [ecx + 0x3ab8]
fmul dword [0x5ace00]
faddp st(1)
fstp dword [ecx + 0x3ab8]
fld dword [esp + 0x74]
fmul dword [0x5ad18c]
fld dword [ecx + 0x3ac0]
fmul dword [0x5ace00]
faddp st(1)
fstp dword [ecx + 0x3ac0]
test byte [eax + 0x3c], 2
je 0x4e7853
mov dword [edx], 0xbc75c28f
test byte [eax + 0x3c], 4
je 0x4e7874
test esi, esi
je 0x4e7862
cmp esi, 2
jne 0x4e78c0
fld dword [ecx + 0x3ab8]
fadd dword [0x59e454]
fstp dword [ecx + 0x3ab8]
xor edi, edi
lea edx, [esi + esi*2]
fld dword [ebx + edx*4 + 0x3ac0]
lea eax, [ebx + edx*4 + 0x3ab8]
fld dword [eax + 4]
fld dword [eax]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp st(3)
fstp st(0)
fstp st(0)
fcom dword [ebx + 0x3b6c]
fnstsw ax
test ah, 0x41
jne 0x4e7cca
fstp dword [ebx + 0x3b6c]
jmp 0x4e7ccc
fld dword [ecx + 0x3ab8]
fsub dword [0x59e454]
jmp 0x4e786e
cmp esi, 8
jge 0x4e79c5
lea ecx, [esi - 4]
cmp ecx, edi
jne 0x4e78f7
fld dword [esp + 0x54]
lea eax, [esi + esi*2]
fadd dword [esp + 0x1c]
lea eax, [ebx + eax*4 + 0x3ab8]
mov dword [eax], edi
fstp dword [eax + 8]
jmp 0x4e7950
cmp ecx, 1
jne 0x4e7918
fld dword [esp + 0x8c]
lea edx, [esi + esi*2]
fadd dword [esp + 0x1c]
lea eax, [ebx + edx*4 + 0x3ab8]
mov dword [eax], edi
fstp dword [eax + 8]
jmp 0x4e7950
cmp ecx, 2
jne 0x4e7931
fld dword [esp + 0x14]
lea eax, [esi + esi*2]
fadd dword [esp + 0x4c]
lea eax, [ebx + eax*4 + 0x3ab8]
jmp 0x4e794b
cmp ecx, 3
jne 0x4e7953
fld dword [esp + 0x14]
lea edx, [esi + esi*2]
fadd dword [esp + 0x84]
lea eax, [ebx + edx*4 + 0x3ab8]
fstp dword [eax]
mov dword [eax + 8], edi
mov dword [eax + 4], edi
mov edx, dword [ebp + 0xc]
test byte [edx + 0x3c], 2
je 0x4e7971
lea eax, [esi + esi*2 + 0xeaf]
fld dword [ebx + eax*4]
lea eax, [ebx + eax*4]
fsub dword [0x5acd44]
fstp dword [eax]
test byte [edx + 0x3c], 4
je 0x4e7876
cmp ecx, 2
jne 0x4e799e
lea ecx, [esi + esi*2]
fld dword [ebx + ecx*4 + 0x3ab8]
lea eax, [ebx + ecx*4 + 0x3ab8]
fsub dword [0x5ad188]
fstp dword [eax]
jmp 0x4e7876
cmp ecx, 3
jne 0x4e7876
lea edx, [esi + esi*2]
fld dword [ebx + edx*4 + 0x3ab8]
lea eax, [ebx + edx*4 + 0x3ab8]
fadd dword [0x5ad188]
fstp dword [eax]
jmp 0x4e7876
cmp esi, 0xc
jge 0x4e7ca5
lea eax, [esi - 8]
cmp eax, edi
je 0x4e7b2b
cmp eax, 1
je 0x4e7b2b
mov ecx, dword [ebp + 0xc]
test byte [ecx + 0x3c], 8
je 0x4e7a00
cmp eax, 2
jne 0x4e79f8
fld dword [0x59e99c]
jmp 0x4e7a13
fld dword [0x59e450]
jmp 0x4e7a13
cmp eax, 2
jne 0x4e7a0d
fld dword [0x5ad184]
jmp 0x4e7a13
fld dword [0x59e84c]
mov ecx, dword [ebx + 0x6e8]
fstp dword [esp + 0x78]
lea edx, [esp + 0xa0]
push edx
lea edx, [esp + 0x7c]
mov dword [esp + 0x80], 0x3f800000
mov dword [esp + 0x84], 0x3f4ccccd
call fcn.004dd7c0
mov ecx, dword [ebx + 0xd0c]
cmp ecx, edi
je 0x4e7bfe
lea eax, [esp + 0xc8]
push eax
lea edx, [esp + 0x7c]
call fcn.004dd7c0
fld dword [esp + 0xc8]
fadd dword [ebx + 0xd10]
fstp dword [esp + 0xc8]
fld dword [esp + 0xcc]
fadd dword [ebx + 0xd14]
fstp dword [esp + 0xcc]
fld dword [esp + 0xd0]
fadd dword [ebx + 0xd18]
fst dword [esp + 0xd0]
fmul dword [esp + 0x80]
fld dword [esp + 0xcc]
fmul dword [esp + 0x7c]
faddp st(1)
fld dword [esp + 0xc8]
fmul dword [esp + 0x78]
faddp st(1)
fld dword [esp + 0xa8]
fmul dword [esp + 0x80]
fld dword [esp + 0xa4]
fmul dword [esp + 0x7c]
faddp st(1)
fld dword [esp + 0xa0]
fmul dword [esp + 0x78]
faddp st(1)
fcompp
fnstsw ax
test ah, 5
jp 0x4e7bfe
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xd0]
mov byte [ebx + 0x3b74], 1
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], eax
jmp 0x4e7bfe
mov ecx, dword [ebp + 0xc]
test byte [ecx + 0x3c], 8
je 0x4e7b5e
cmp eax, edi
jne 0x4e7b4b
fld dword [0x59e99c]
mov dword [esp + 0x80], 0xbdcccccd
jmp 0x4e7b7b
fld dword [0x59e450]
mov dword [esp + 0x80], 0xbdcccccd
jmp 0x4e7b7b
cmp eax, edi
jne 0x4e7b6a
fld dword [0x5ad184]
jmp 0x4e7b70
fld dword [0x59e84c]
mov dword [esp + 0x80], 0
mov ecx, dword [ebx + 0x6e8]
fstp dword [esp + 0x78]
lea edx, [esp + 0xa0]
push edx
lea edx, [esp + 0x7c]
mov dword [esp + 0x80], 0x3f800000
call fcn.004dd7c0
fld dword [esp + 0xa0]
fadd dword [esp + 0x14]
lea eax, [esi + esi*2]
lea ecx, [ebx + eax*4 + 0x3ab8]
fstp dword [esp + 0xac]
mov edx, dword [esp + 0xac]
fld dword [esp + 0xa4]
mov dword [ecx], edx
fadd dword [esp + 0x18]
fstp dword [esp + 0xb0]
mov eax, dword [esp + 0xb0]
fld dword [esp + 0xa8]
mov dword [ecx + 4], eax
fadd dword [esp + 0x1c]
fstp dword [esp + 0xb4]
mov edx, dword [esp + 0xb4]
mov dword [ecx + 8], edx
fld dword [esp + 0xa0]
lea eax, [esi + esi*2]
fadd dword [esp + 0x14]
lea eax, [ebx + eax*4]
lea ecx, [eax + 0x3ab8]
fstp dword [esp + 0x5c]
mov edx, dword [esp + 0x5c]
fld dword [esp + 0xa4]
mov dword [ecx], edx
fadd dword [esp + 0x18]
fstp dword [esp + 0x60]
mov edx, dword [esp + 0x60]
fld dword [esp + 0xa8]
mov dword [ecx + 4], edx
fadd dword [esp + 0x1c]
fstp dword [esp + 0x64]
mov edx, dword [esp + 0x64]
mov dword [ecx + 8], edx
mov ecx, dword [ebp + 0xc]
test byte [ecx + 0x3c], 4
je 0x4e7876
lea ecx, [esi - 8]
cmp ecx, 2
jge 0x4e7c8b
fld dword [eax + 0x3ac0]
lea edx, [esi + esi*2 + 0xeaf]
fsub dword [0x59e7f8]
fstp dword [eax + 0x3ac0]
lea eax, [ebx + edx*4]
fld dword [eax]
fadd dword [0x59e7e8]
fstp dword [eax]
jmp 0x4e7876
lea eax, [esi + esi*2 + 0xeaf]
fld dword [ebx + eax*4]
lea eax, [ebx + eax*4]
fadd dword [0x59e8c8]
fstp dword [eax]
jmp 0x4e7876
fld dword [esp + 0x18]
lea ecx, [esi + esi*2]
fadd dword [esp + 0x50]
lea eax, [ebx + ecx*4 + 0x3ab8]
mov dword [eax], edi
mov dword [eax + 8], edi
fmul dword [0x59e450]
fstp dword [eax + 4]
jmp 0x4e7876
fstp st(0)
inc esi
cmp esi, 0xd
jl 0x4e74c7
fld dword [ebx + 0x3b6c]
lea eax, [esp + 0x174]
fadd dword [0x59e84c]
lea ecx, [ebx + 0x3abc]
mov edx, 0xd
fstp dword [ebx + 0x3b70]
fld dword [esp + 0x14]
fchs
fld dword [esp + 0x18]
fchs
fld dword [esp + 0x1c]
fchs
lea esp, [esp]
fld st(2)
add ecx, 0xc
fstp dword [eax - 4]
add eax, 0x20
dec edx
fld st(1)
fstp dword [eax - 0x20]
fst dword [eax - 0x1c]
fld dword [ecx - 0x10]
fsub dword [esp + 0x14]
fstp dword [eax - 0x18]
fld dword [ecx - 0xc]
fsub dword [esp + 0x18]
fstp dword [eax - 0x14]
fld dword [ecx - 8]
fsub dword [esp + 0x1c]
fstp dword [eax - 0x10]
jne 0x4e7d10
mov ecx, dword [ebx + 0x6e8]
fstp st(0)
push 0xd
fstp st(0)
lea eax, [esp + 0x174]
fstp st(0)
push eax
call fcn.0054f830
mov byte [ebx + 0x3ff0], 0
mov dword [ebx + 0x3ff4], edi
mov dword [ebx + 0x3ff8], edi
mov dword [ebx + 0x3ffc], edi
mov dword [ebx + 0x4000], edi
mov dword [ebx + 0x4004], edi
mov dword [ebx + 0x4008], edi
mov dword [ebx + 0x400c], edi
mov dword [ebx + 0x4010], edi
fld dword [ebx + 0x358c]
fadd dword [ebx + 0x3684]
fld dword [ebx + 0x3590]
fadd dword [ebx + 0x3688]
fld dword [ebx + 0x3594]
fadd dword [ebx + 0x368c]
fstp dword [esp + 0xb4]
fxch st(1)
fmul dword [0x59e450]
fstp dword [esp + 0x5c]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xac], ecx
fmul dword [0x59e450]
fstp dword [esp + 0x60]
mov edx, dword [esp + 0x60]
fld dword [esp + 0xb4]
mov dword [esp + 0xb0], edx
fmul dword [0x59e450]
fstp dword [esp + 0x64]
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb4], eax
mov eax, dword [ebp + 0xc]
fld qword [eax + 0x60]
fchs
fst dword [esp + 0xb0]
fld dword [ebx + 0x377c]
fadd dword [ebx + 0x3874]
fld dword [ebx + 0x3780]
fadd dword [ebx + 0x3878]
fld dword [ebx + 0x3784]
fadd dword [ebx + 0x387c]
mov dword [ebx + 0x3d48], edi
mov dword [ebx + 0x3d4c], edi
mov dword [ebx + 0x3d50], edi
fstp dword [esp + 0x12c]
fxch st(1)
fmul dword [0x59e450]
fstp dword [esp + 0x5c]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x84], ecx
fmul dword [0x59e450]
fstp dword [esp + 0x60]
mov edx, dword [esp + 0x60]
fld dword [esp + 0x12c]
mov dword [esp + 0x88], edx
fmul dword [0x59e450]
lea edx, [ebx + 0x1c]
fstp dword [esp + 0x64]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x8c], ecx
fstp dword [esp + 0x88]
fld dword [esp + 0x8c]
fadd qword [eax + 0x1350]
fld dword [esp + 0x88]
fadd qword [eax + 0x1348]
fld dword [esp + 0x84]
fadd qword [eax + 0x1340]
fstp dword [ebx + 0x3d54]
fstp dword [ebx + 0x3d58]
fstp dword [ebx + 0x3d5c]
mov ecx, dword [ebx + 0x3d54]
mov dword [edx], ecx
mov ecx, dword [ebx + 0x3d58]
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 0x3d5c]
mov dword [edx + 8], ecx
push eax
mov ecx, ebx
mov dword [ebx + 0x3d60], edi
call fcn.004ee150
mov dword [ebx + 0x4014], edi
mov byte [ebx + 0x4018], 0
mov dword [ebx + 0x401c], edi
call fcn.005884ed
mov dword [ebx + 0x4020], eax
fld dword [ebx + 0x3998]
mov edx, dword [ebx + 0x39f8]
fdiv dword [ebx + edx*4 + 0x39cc]
lea ecx, [ebx + 0x1078]
lea eax, [ebx + 0x3ab8]
mov dword [esp + 0x58], 0xd
fstp dword [ebx + 0x3968]
mov edx, eax
mov edi, dword [edx]
mov esi, ecx
mov dword [esi], edi
mov edi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esi + 4], edi
mov dword [esi + 8], edx
mov edx, dword [esp + 0x58]
add eax, 0xc
add ecx, 0x1c
dec edx
mov dword [esp + 0x58], edx
jne 0x4e7f53
mov eax, dword [ebp + 0xc]
xor edx, edx
add ebx, 0x11e4
add eax, 0x1450
test edx, edx
je 0x4e7f91
cmp edx, 1
jne 0x4e7f9a
lea ecx, [esp + 0xac]
jmp 0x4e7fa1
lea ecx, [esp + 0x84]
mov esi, dword [ecx]
fld qword [eax - 8]
mov dword [esp + 0x4c], esi
fadd dword [esp + 0x4c]
mov esi, dword [ecx + 4]
mov ecx, dword [ecx + 8]
fstp dword [esp + 0x4c]
mov dword [esp + 0x50], esi
fld qword [eax]
mov esi, dword [esp + 0x4c]
fadd dword [esp + 0x50]
mov dword [esp + 0x54], ecx
mov ecx, ebx
inc edx
fstp dword [esp + 0x50]
add eax, 0x108
fld qword [eax - 0x100]
mov dword [ecx], esi
fadd dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov dword [ecx + 4], esi
add ebx, 0x1c
cmp edx, 4
fstp dword [esp + 0x54]
mov esi, dword [esp + 0x54]
mov dword [ecx + 8], esi
jl 0x4e7f88
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8