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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x25c
xor edx, edx
push ebx
mov ebx, ecx
mov al, byte [ebx + 0x1c4]
test al, al
push esi
push edi
mov dword [ebx + 0x31c], edx
mov dword [ebx + 0x320], edx
mov dword [ebx + 0x134], edx
mov dword [ebx + 0x138], edx
mov dword [ebx + 0x144], edx
mov dword [ebx + 0x148], edx
mov dword [ebx + 0x14c], edx
mov dword [ebx + 0x150], edx
mov dword [ebx + 0x268], edx
mov dword [ebx + 0x26c], 0x3ff00000
mov dword [ebx + 0x13c], edx
mov dword [ebx + 0x140], edx
mov dword [ebx + 0x154], edx
mov dword [ebx + 0x158], edx
mov dword [ebx + 0x324], edx
mov dword [ebx + 0x328], edx
je 0x436914
mov dword [ebx + 0x264], edx
mov dword [ebx + 0xfc], 0xffffffff
mov dword [ebx + 0x100], 0xffefffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebx + 0x15c]
fld qword [ecx + 0x1c]
fstp qword [esp + 0x38]
fld qword [ecx + 0x34]
fstp qword [esp + 0x40]
fld qword [ecx + 0x4c]
fstp qword [esp + 0x48]
fld qword [esp + 0x40]
fmul qword [0x59e430]
fld qword [esp + 0x48]
fsub st(1)
fstp qword [esp + 0x88]
fld qword [esp + 0x38]
fmul qword [0x59e430]
fld qword [esp + 0x48]
fmul qword [0x59e430]
fsubp st(1)
fstp qword [esp + 0x90]
fld qword [esp + 0x38]
fsubr st(1)
fstp qword [esp + 0x98]
fstp st(0)
fld qword [esp + 0x90]
fmul qword [esp + 0x90]
fld qword [esp + 0x98]
fmul qword [esp + 0x98]
faddp st(1)
fld qword [esp + 0x88]
fmul qword [esp + 0x88]
faddp st(1)
fsqrt
fcom qword [0x59e430]
fnstsw ax
test ah, 0x44
jp 0x436a3c
fstp st(0)
mov dword [esp + 0x98], 0
fld qword [0x59e420]
mov dword [esp + 0x9c], 0
fld qword [0x59e430]
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0x3ff00000
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0x3ff00000
jmp 0x436b09
fld qword [0x59e420]
fdiv st(1)
fstp qword [esp + 0x10]
fstp st(0)
fld qword [esp + 0x10]
fmul qword [esp + 0x88]
fld qword [esp + 0x90]
fmul qword [esp + 0x10]
fld qword [esp + 0x98]
fmul qword [esp + 0x10]
fst qword [esp + 0x98]
fmul qword [esp + 0x40]
fld st(1)
fmul qword [esp + 0x48]
fsubp st(1)
fstp qword [esp + 0x68]
fld st(1)
fmul qword [esp + 0x48]
fld qword [esp + 0x98]
fmul qword [esp + 0x38]
fsubp st(1)
fstp qword [esp + 0x70]
fld qword [esp + 0x38]
fmul st(1)
fld st(2)
fmul qword [esp + 0x40]
fsubp st(1)
fstp qword [esp + 0x78]
fld qword [esp + 0x70]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x436ada
fld qword [esp + 0x78]
fchs
fld qword [esp + 0x68]
fchs
fstp qword [esp + 0x68]
fld qword [esp + 0x70]
fchs
fstp qword [esp + 0x70]
fstp qword [esp + 0x78]
fld qword [esp + 0x40]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x436b09
fld qword [esp + 0x48]
fchs
fld qword [esp + 0x38]
fchs
fstp qword [esp + 0x38]
fld qword [esp + 0x40]
fchs
fstp qword [esp + 0x40]
fstp qword [esp + 0x48]
fld qword [ebx + 0xbc]
mov esi, dword [ebx + 0x228]
fabs
mov eax, dword [ebx + 0x224]
fmul qword [ebx + 0x214]
mov dword [esp + 0x84], esi
mov dword [esp + 0x80], eax
lea esi, [ecx + 4]
fadd qword [ebx + 0x20c]
fst qword [esp + 0xd0]
fmul qword [esp + 0x68]
fstp qword [esp + 0xb8]
fld qword [esp + 0xd0]
fmul qword [esp + 0x70]
fstp qword [esp + 0xc0]
fld qword [esp + 0xd0]
fmul qword [esp + 0x78]
fstp qword [esp + 0xc8]
fld qword [ebx + 0x21c]
fld qword [esp + 0x38]
fmul st(1)
fstp qword [esp + 0x20]
fld qword [esp + 0x40]
fmul st(1)
fstp qword [esp + 0x28]
fmul qword [esp + 0x48]
fstp qword [esp + 0x30]
fld qword [esp + 0x80]
fmul st(2)
fstp qword [esp + 0x50]
fmul qword [esp + 0x80]
fstp st(1)
fld qword [esp + 0x98]
fmul qword [esp + 0x80]
fstp qword [esp + 0x60]
fld qword [esi]
fsub qword [esp + 0xb8]
fld qword [esi + 8]
fsub qword [esp + 0xc0]
fld qword [esi + 0x10]
fsub qword [esp + 0xc8]
fstp qword [esp + 0x108]
fld st(1)
fsub qword [esp + 0x20]
fstp qword [esp + 0x88]
fld qword [esp + 0x28]
fsubr st(1)
fstp qword [esp + 0x90]
fld qword [esp + 0x108]
fsub qword [esp + 0x30]
fstp qword [esp + 0x98]
fxch st(1)
fadd qword [esp + 0x20]
fstp qword [esp + 0xb8]
fadd qword [esp + 0x28]
fld qword [esp + 0x30]
fadd qword [esp + 0x108]
fstp qword [esp + 0xc8]
fld qword [esp + 0x88]
fsub qword [esp + 0x50]
fstp qword [esp + 0x1d8]
fld qword [esp + 0x90]
fsub st(2)
fstp qword [esp + 0x1e0]
fld qword [esp + 0x98]
fsub qword [esp + 0x60]
fstp qword [esp + 0x1e8]
fld qword [esp + 0x88]
fadd qword [esp + 0x50]
fstp qword [esp + 0x1f0]
fld st(1)
fadd qword [esp + 0x90]
fstp qword [esp + 0x1f8]
fld qword [esp + 0x60]
fadd qword [esp + 0x98]
fstp qword [esp + 0x200]
fld qword [esp + 0xb8]
fsub qword [esp + 0x50]
fstp qword [esp + 0x208]
fld st(0)
mov cl, byte [0x7ce994]
fsub st(2)
test cl, cl
mov eax, 3
fstp qword [esp + 0x210]
fld qword [esp + 0xc8]
fsub qword [esp + 0x60]
fstp qword [esp + 0x218]
je 0x436d17
fld qword [esp + 0xb8]
mov ecx, 6
fadd qword [esp + 0x50]
lea edi, [esp + 0x238]
mov eax, 5
fstp qword [esp + 0x220]
fadd st(1)
fstp qword [esp + 0x228]
fstp st(0)
fld qword [esp + 0x60]
fadd qword [esp + 0xc8]
fstp qword [esp + 0x230]
rep movsd dword es:[edi], dword [esi]
jmp 0x436d1b
fstp st(0)
fstp st(0)
cmp eax, edx
mov ecx, dword [ebx + 0x264]
mov dword [esp + 0x18], ecx
mov dword [esp + 0xa0], edx
jle 0x436e3f
lea esi, [esp + 0x1e8]
lea edi, [esp + 0x118]
mov dword [esp + 0xdc], eax
lea esp, [esp]
fld qword [esi - 0x10]
mov edx, dword [esp + 0x18]
fstp qword [esp + 0x1a4]
fld qword [esi - 8]
lea eax, [esp + 0x1a4]
fadd qword [0x59eb28]
push eax
mov ecx, 0x7c9360
mov dword [esp + 0x1c0], 0x33333333
fstp qword [esp + 0x1b0]
fld qword [esi]
mov dword [esp + 0x1c4], 0x3fd33333
fstp qword [esp + 0x1b8]
mov dword [esp + 0x1c8], 0x40000000
mov dword [esp + 0x1cc], 0x479e17b8
mov dword [esp + 0x1d8], edx
call fcn.0044c4c0
test eax, eax
mov dword [edi + 0x10], eax
je 0x436e13
mov ecx, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
mov dword [edi - 4], edx
mov dword [edi - 8], ecx
mov dword [esp + 0x18], eax
mov eax, dword [eax + 0x54]
fld dword [eax + 0x18]
mov edx, dword [esp + 0xa0]
fmul qword [esi]
mov ecx, dword [esi + 4]
inc edx
fsin
mov dword [esp + 0xa0], edx
add edi, 0x1c
fld qword [esi - 0x10]
fmul dword [eax + 0x18]
fsin
faddp st(1)
fmul dword [eax + 0x14]
mov eax, dword [esi]
mov dword [edi - 0x14], eax
mov dword [edi - 0x10], ecx
fadd qword [esp + 0x1cc]
fstp qword [edi - 0x1c]
jmp 0x436e1a
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0xdc]
add esi, 0x18
dec eax
mov dword [esp + 0xdc], eax
jne 0x436d50
cmp edx, 3
jge 0x436fab
test edx, edx
jne 0x436e66
mov dword [ebx + 0x264], 0
mov dword [ebx + 0xfc], 0xffffffff
mov dword [ebx + 0x100], 0xffefffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov edx, dword [esp + 0xa0]
cmp edx, 1
mov ecx, dword [esp + 0x128]
jne 0x436f1a
fld qword [esp + 0x110]
mov eax, dword [esp + 0x120]
fadd qword [0x59eb20]
mov esi, dword [esp + 0x124]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x13c], eax
fstp qword [esp + 0x12c]
mov dword [esp + 0x140], esi
mov eax, dword [ecx + 0x54]
fld dword [eax + 0x18]
mov edx, 2
fmul qword [esp + 0x120]
fsin
fld dword [eax + 0x18]
fmul qword [esp + 0x12c]
fsin
faddp st(1)
fmul dword [eax + 0x14]
fld qword [esp + 0x120]
fmul qword [ecx + 0x10]
fld qword [esp + 0x12c]
fmul qword [ecx]
faddp st(1)
fadd qword [ecx + 0x18]
fmul qword [esp + 0x12c]
fld qword [esp + 0x120]
fmul qword [ecx + 8]
fadd qword [ecx + 0x20]
fmul qword [esp + 0x120]
faddp st(1)
fadd qword [ecx + 0x28]
faddp st(1)
fstp qword [esp + 0x134]
mov eax, edx
imul eax, eax, 0x1c
mov dword [esp + eax + 0x128], ecx
mov ecx, dword [esp + 0x110]
mov esi, dword [esp + 0x114]
mov dword [esp + eax + 0x110], ecx
mov ecx, dword [esp + eax + 0x128]
lea eax, [esp + eax + 0x110]
mov dword [eax + 4], esi
inc edx
fld qword [esp + 0x120]
mov dword [esp + 0xa0], edx
fadd qword [0x59eb20]
cmp edx, 3
fst qword [eax + 0x10]
mov esi, dword [ecx + 0x54]
fld st(0)
fld qword [eax]
fld qword [eax]
fmul dword [esi + 0x18]
fsin
fld dword [esi + 0x18]
fmul st(4)
fsin
faddp st(1)
fmul dword [esi + 0x14]
fld st(2)
fmul qword [ecx + 0x10]
fld st(2)
fmul qword [ecx]
faddp st(1)
fadd qword [ecx + 0x18]
fmul st(2)
fld st(3)
fmul qword [ecx + 8]
fadd qword [ecx + 0x20]
fmul st(4)
faddp st(1)
fadd qword [ecx + 0x28]
faddp st(1)
fstp qword [eax + 8]
fstp st(0)
fstp st(0)
fstp st(0)
lea edx, [esp + 0x20]
jne 0x437061
push edx
lea eax, [esp + 0x14c]
push eax
lea edx, [esp + 0x134]
lea ecx, [esp + 0x118]
call fcn.0056c640
test eax, eax
je 0x437007
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0x3ff00000
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
jmp 0x437036
fld qword [esp + 0x28]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x437036
fld qword [esp + 0x30]
fchs
fld qword [esp + 0x20]
fchs
fstp qword [esp + 0x20]
fld qword [esp + 0x28]
fchs
fstp qword [esp + 0x28]
fstp qword [esp + 0x30]
fld qword [esp + 0x30]
fmul qword [esp + 0x120]
fld qword [esp + 0x20]
fmul qword [esp + 0x110]
faddp st(1)
fld qword [esp + 0x28]
fmul qword [esp + 0x118]
faddp st(1)
fstp qword [esp + 0x10]
jmp 0x43707a
lea ecx, [esp + 0x10]
push ecx
push edx
mov edx, dword [esp + 0xa8]
lea ecx, [esp + 0x118]
call fcn.004366e0
mov eax, dword [ebx + 0x15c]
fld qword [esp + 0xd0]
fcomp qword [ebx + 0x21c]
lea edx, [eax + 4]
mov eax, dword [esp + 0xd0]
fld qword [ebx + 0x21c]
mov ecx, 6
mov esi, edx
lea edi, [esp + 0x50]
mov dword [esp + 0xb0], eax
fnstsw ax
rep movsd dword es:[edi], dword [esi]
test ah, 0x41
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xb4], ecx
jp 0x43712b
fsub qword [esp + 0xd0]
fld qword [esp + 0xd0]
fadd st(1)
fstp qword [esp + 0xb0]
fld qword [esp + 0x68]
fmul st(1)
fld st(1)
fmul qword [esp + 0x70]
fstp qword [esp + 0xc0]
fxch st(1)
fmul qword [esp + 0x78]
fstp qword [esp + 0xc8]
fadd qword [esp + 0x50]
fstp qword [esp + 0x50]
fld qword [esp + 0xc0]
fadd qword [esp + 0x58]
fstp qword [esp + 0x58]
fld qword [esp + 0xc8]
fadd qword [esp + 0x60]
fstp qword [esp + 0x60]
fld qword [0x59e430]
jmp 0x437143
fld qword [esp + 0xd0]
fmul qword [esp + 0xd0]
fld st(1)
fmul st(2)
fsubp st(1)
fsqrt
fstp st(1)
fld qword [esp + 0x50]
fmul qword [esp + 0x20]
fld qword [esp + 0x30]
fmul qword [esp + 0x60]
faddp st(1)
fld qword [esp + 0x28]
fmul qword [esp + 0x58]
faddp st(1)
fsubr qword [esp + 0x10]
fadd qword [esp + 0xb0]
fstp qword [esp + 0x80]
fld qword [ebx + 0x21c]
fadd qword [0x59e420]
fld st(0)
fadd qword [ebx + 0x21c]
fld st(0)
fmul st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp qword [esp + 0xa8]
fstp st(0)
fld qword [esp + 0x38]
fmul st(1)
fstp qword [esp + 0x68]
fld qword [esp + 0x40]
fmul st(1)
fstp qword [esp + 0x70]
fmul qword [esp + 0x48]
fstp st(1)
fld qword [esp + 0x68]
fadd qword [edx]
fstp qword [esp + 0x68]
fld qword [esp + 0x70]
fadd qword [edx + 8]
fstp qword [esp + 0x70]
fadd qword [edx + 0x10]
fld qword [esp + 0x68]
fmul qword [esp + 0x20]
fld qword [esp + 0x30]
fmul st(2)
faddp st(1)
fld qword [esp + 0x28]
fmul qword [esp + 0x70]
faddp st(1)
fsubr qword [esp + 0x10]
fadd qword [esp + 0xa8]
fld qword [esp + 0x80]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x437286
fstp st(0)
mov edx, dword [esp + 0x80]
fstp st(0)
mov eax, dword [esp + 0x84]
fld qword [esp + 0x80]
mov dword [ebx + 0x324], edx
fsub qword [esp + 0xb0]
mov dword [ebx + 0x328], eax
fld qword [esp + 0x20]
fmul st(1)
fld st(1)
fmul qword [esp + 0x28]
fstp qword [esp + 0x90]
fxch st(1)
fmul qword [esp + 0x30]
fstp qword [esp + 0x98]
fld qword [esp + 0x50]
fadd st(1)
fstp qword [esp + 0x88]
fstp st(0)
fld qword [esp + 0x90]
fadd qword [esp + 0x58]
fstp qword [esp + 0x90]
fld qword [esp + 0x98]
fadd qword [esp + 0x60]
fstp qword [esp + 0x98]
jmp 0x4372e6
fst qword [ebx + 0x324]
fsub qword [esp + 0xa8]
fld qword [esp + 0x20]
fmul st(1)
fld st(1)
fmul qword [esp + 0x28]
fstp qword [esp + 0x90]
fxch st(1)
fmul qword [esp + 0x30]
fstp qword [esp + 0x98]
fld qword [esp + 0x68]
fadd st(1)
fstp qword [esp + 0x88]
fstp st(0)
fld qword [esp + 0x90]
fadd qword [esp + 0x70]
fstp qword [esp + 0x90]
fld qword [esp + 0x98]
fadd st(1)
fstp qword [esp + 0x98]
fstp st(0)
mov edx, dword [esp + 0xa0]
xor esi, esi
cmp edx, esi
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 0x7fefffff
jle 0x437363
lea ecx, [esp + 0x120]
lea ebx, [ebx]
fld qword [esp + 0x88]
fsub qword [ecx - 0x10]
fld qword [esp + 0x90]
fsub qword [ecx - 8]
fld qword [esp + 0x98]
fsub qword [ecx]
fld st(2)
fmulp st(3)
fld st(0)
fmul st(1)
faddp st(3)
fld st(1)
fmul st(2)
faddp st(3)
fstp st(0)
fstp st(0)
fcom qword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x43735b
mov eax, dword [ecx + 8]
fstp qword [esp + 0x10]
mov dword [ebx + 0x264], eax
jmp 0x43735d
fstp st(0)
add ecx, 0x1c
dec edx
jne 0x437310
fld qword [ebx + 0x324]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x43739f
mov dword [ebx + 0x324], esi
mov dword [ebx + 0x328], esi
mov dword [ebx + 0xfc], 0xffffffff
mov dword [ebx + 0x100], 0xffefffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebx + 0x264]
fld qword [ebx + 0x22c]
fmul qword [ebx + 0x324]
mov edx, dword [ecx + 0x54]
mov ecx, dword [ebx + 0x15c]
fld qword [esp + 0x30]
fmul qword [ecx + 0x74]
mov dword [esp + 0xdc], edx
fld qword [esp + 0x28]
fmul qword [ecx + 0x6c]
faddp st(1)
fld qword [esp + 0x20]
fmul qword [ecx + 0x64]
faddp st(1)
fmul qword [ebx + 0x234]
fsubp st(1)
fst qword [ebx + 0x31c]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x43741e
mov dword [ebx + 0x31c], esi
mov dword [ebx + 0x320], esi
mov dword [ebx + 0xfc], 0xffffffff
mov dword [ebx + 0x100], 0xffefffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
fld qword [ecx + 0x1c]
fld qword [ecx + 0x34]
fstp qword [esp + 0x40]
fld qword [ecx + 0x4c]
fstp qword [esp + 0x48]
fld qword [esp + 0x20]
fmul st(1)
fld qword [esp + 0x30]
fmul qword [esp + 0x48]
faddp st(1)
fld qword [esp + 0x28]
fmul qword [esp + 0x40]
faddp st(1)
fst qword [esp + 0x80]
fabs
fcomp qword [0x59eb18]
fnstsw ax
test ah, 0x41
jne 0x4375be
fstp st(0)
fld qword [ecx + 0x2c]
fld qword [ecx + 0x44]
fld qword [ecx + 0x5c]
fld qword [esp + 0x28]
fmul st(1)
fld qword [esp + 0x30]
fmul st(3)
fsubp st(1)
fld st(3)
fmul qword [esp + 0x30]
fld qword [esp + 0x20]
fmul st(3)
fsubp st(1)
fld qword [esp + 0x20]
fmul st(4)
fld st(5)
fmul qword [esp + 0x28]
fsubp st(1)
fstp qword [esp + 0x48]
fld st(1)
fmul st(2)
fld qword [esp + 0x48]
fmul qword [esp + 0x48]
faddp st(1)
fld st(1)
fmul st(2)
faddp st(1)
fsqrt
fdivr qword [0x59e420]
fst qword [esp + 0x10]
fmul st(2)
fstp qword [esp + 0x38]
fld qword [esp + 0x10]
fmul st(1)
fstp qword [esp + 0x40]
fstp st(0)
fstp st(0)
fld qword [esp + 0x10]
fmul qword [esp + 0x48]
fstp qword [esp + 0x48]
fld st(1)
fmul qword [esp + 0x48]
fld st(1)
fmul qword [esp + 0x40]
fsubp st(1)
fstp qword [esp + 0xb8]
fld qword [esp + 0x38]
fmul st(1)
fld st(3)
fmul qword [esp + 0x48]
fsubp st(1)
fstp qword [esp + 0xc0]
fld st(2)
fmul qword [esp + 0x40]
fld qword [esp + 0x38]
fmul st(3)
fsubp st(1)
fld qword [esp + 0xc0]
fmul st(2)
fld st(1)
fmul st(4)
fsubp st(1)
fstp qword [esp + 0x50]
fld st(3)
fmul st(1)
fld qword [esp + 0xb8]
fmul st(3)
fsubp st(1)
fstp qword [esp + 0x58]
fstp st(0)
fstp st(0)
fld qword [esp + 0xb8]
fmul st(1)
fxch st(2)
fmul qword [esp + 0xc0]
fsubp st(2)
fstp st(0)
fld qword [esp + 0x50]
fmul qword [esp + 0x20]
fld qword [esp + 0x30]
fmul st(2)
faddp st(1)
fld qword [esp + 0x28]
fmul qword [esp + 0x58]
faddp st(1)
fstp qword [esp + 0x80]
fstp st(0)
fld qword [esp + 0x30]
fmul qword [esp + 0x40]
fld qword [esp + 0x28]
fmul qword [esp + 0x48]
fsubp st(1)
fstp qword [esp + 0x68]
fld qword [esp + 0x20]
fmul qword [esp + 0x48]
fld qword [esp + 0x38]
fmul qword [esp + 0x30]
fsubp st(1)
fstp qword [esp + 0x70]
fld qword [esp + 0x38]
fmul qword [esp + 0x28]
fld qword [esp + 0x20]
fmul qword [esp + 0x40]
fsubp st(1)
fstp qword [esp + 0x78]
jmp 0x437676
fld qword [esp + 0x30]
fmul qword [esp + 0x40]
fld qword [esp + 0x28]
fmul qword [esp + 0x48]
fsubp st(1)
fld qword [esp + 0x20]
fmul qword [esp + 0x48]
fld st(2)
fmul qword [esp + 0x30]
fsubp st(1)
fxch st(2)
fmul qword [esp + 0x28]
fld qword [esp + 0x20]
fmul qword [esp + 0x40]
fsubp st(1)
fstp qword [esp + 0x78]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld qword [esp + 0x78]
fmul qword [esp + 0x78]
faddp st(1)
fsqrt
fdivr qword [0x59e420]
fst qword [esp + 0x10]
fmul st(1)
fstp qword [esp + 0x68]
fld qword [esp + 0x10]
fmul st(2)
fstp qword [esp + 0x70]
fstp st(1)
fstp st(0)
fld qword [esp + 0x10]
fmul qword [esp + 0x78]
fstp qword [esp + 0x78]
fld qword [esp + 0x28]
fmul qword [esp + 0x78]
fld qword [esp + 0x30]
fmul qword [esp + 0x70]
fsubp st(1)
fstp qword [esp + 0x38]
fld qword [esp + 0x68]
fmul qword [esp + 0x30]
fld qword [esp + 0x20]
fmul qword [esp + 0x78]
fsubp st(1)
fstp qword [esp + 0x40]
fld qword [esp + 0x20]
fmul qword [esp + 0x70]
fld qword [esp + 0x68]
fmul qword [esp + 0x28]
fsubp st(1)
fstp qword [esp + 0x48]
fld qword [esp + 0x80]
call fcn.00588570
fstp qword [ebx + 0x314]
fld qword [ebx + 0x324]
mov eax, dword [ebx + 0x15c]
fmul qword [0x59e880]
fld qword [esp + 0x20]
fmul st(1)
fld st(1)
fmul qword [esp + 0x28]
fstp qword [esp + 0xc0]
fxch st(1)
fmul qword [esp + 0x30]
fstp qword [esp + 0xc8]
fld qword [esp + 0x88]
fsub st(1)
fxch st(1)
fstp st(0)
fld qword [esp + 0x90]
fsub qword [esp + 0xc0]
fld qword [esp + 0x98]
fsub qword [esp + 0xc8]
fstp qword [esp + 0xc8]
fxch st(1)
fsub qword [eax + 4]
fstp qword [esp + 0xf8]
fsub qword [eax + 0xc]
fld qword [esp + 0xc8]
fsub qword [eax + 0x14]
fld st(0)
fmul qword [eax + 0x84]
fld st(2)
fmul qword [eax + 0x8c]
fsubp st(1)
fstp qword [esp + 0x50]
fld qword [esp + 0xf8]
fmul qword [eax + 0x8c]
fxch st(1)
fmul qword [eax + 0x7c]
fsubp st(1)
fxch st(1)
fmul qword [eax + 0x7c]
fld qword [esp + 0xf8]
fmul qword [eax + 0x84]
fsubp st(1)
fstp qword [esp + 0x60]
fld qword [esp + 0x50]
fadd qword [eax + 0x64]
fstp qword [esp + 0x50]
fadd qword [eax + 0x6c]
fld qword [esp + 0x60]
fadd qword [eax + 0x74]
fld qword [esp + 0x50]
fmul qword [esp + 0x38]
fld st(1)
fmul qword [esp + 0x48]
faddp st(1)
fld st(2)
fmul qword [esp + 0x40]
faddp st(1)
fstp qword [esp + 0x10]
fld qword [esp + 0x50]
fmul qword [esp + 0x68]
fxch st(2)
fmul qword [esp + 0x70]
faddp st(2)
fld st(0)
fmul qword [esp + 0x78]
faddp st(2)
fstp st(0)
fld st(0)
fmul st(1)
fld qword [esp + 0x10]
fmul qword [esp + 0x10]
faddp st(1)
fsqrt
fstp qword [ebx + 0x134]
fld qword [esp + 0x48]
fmul qword [eax + 0x74]
fld qword [esp + 0x40]
fmul qword [eax + 0x6c]
faddp st(1)
fld qword [esp + 0x38]
fmul qword [eax + 0x64]
faddp st(1)
fld qword [esp + 0x70]
fmul qword [eax + 0x6c]
fld qword [esp + 0x78]
fmul qword [eax + 0x74]
faddp st(1)
fld qword [esp + 0x68]
fmul qword [eax + 0x64]
faddp st(1)
fst qword [esp + 0xb0]
fmul qword [esp + 0xb0]
fld st(1)
fmul st(2)
faddp st(1)
fsqrt
fstp qword [esp + 0xa8]
fstp st(0)
fld qword [esp + 0xa8]
fcomp qword [ebx + 0x124]
fnstsw ax
test ah, 5
jp 0x437813
fld qword [ebx + 0x12c]
jmp 0x437834
fld qword [0x59e420]
mov dword [ebx + 0xfc], 0xffffffff
fdiv qword [esp + 0xa8]
mov dword [ebx + 0x100], 0xffefffff
fld qword [esp + 0x10]
fmul st(1)
fstp qword [esp + 0x10]
fmul st(1)
fstp qword [esp + 0xa0]
fstp st(0)
fld qword [esp + 0xa0]
fmul qword [esp + 0xa0]
fld qword [esp + 0x10]
fmul qword [esp + 0x10]
faddp st(1)
fld st(0)
fsqrt
fstp qword [esp + 0xe8]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x4378b1
fld qword [0x59e420]
fdiv qword [esp + 0xe8]
fstp qword [esp + 0xe0]
fld qword [esp + 0xa0]
fabs
fld qword [esp + 0x10]
fabs
fadd st(1)
fdivr qword [0x59e420]
fmul st(1)
fstp qword [esp + 0x80]
fstp st(0)
jmp 0x4378dd
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
fld qword [ebx + 0x31c]
fcom qword [ebx + 0x2a8]
fnstsw ax
test ah, 0x41
jne 0x437900
fstp st(0)
fld qword [ebx + 0x298]
fsub qword [ebx + 0x2a0]
jmp 0x43791a
fmul qword [ebx + 0x2b0]
fmul qword [0x59e890]
fcos
fmul qword [ebx + 0x2a0]
fadd qword [ebx + 0x298]
fld qword [ebx + 0x31c]
fcom qword [ebx + 0x2c8]
fnstsw ax
test ah, 0x41
jne 0x43793d
fstp st(0)
fld qword [ebx + 0x2b8]
fsub qword [ebx + 0x2c0]
jmp 0x437957
fmul qword [ebx + 0x2d0]
fmul qword [0x59e890]
fcos
fmul qword [ebx + 0x2c0]
fadd qword [ebx + 0x2b8]
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0xe8]
fsub st(1)
push esi
push edi
fmul qword [esp + 0x88]
fadd st(1)
fstp qword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
fstp st(0)
push eax
push ecx
mov ecx, dword [ebx + 0x2d8]
call fcn.004d6830
fstp qword [esp + 0xf0]
fld qword [esp + 0xb0]
fabs
fcom qword [0x59e420]
fnstsw ax
test ah, 5
jp 0x437a41
fld qword [esp + 0xa0]
fmul qword [esp + 0xb0]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x4379e2
fld qword [0x59e420]
fsub st(1)
fmul qword [0x59e880]
fstp qword [esp + 0xe8]
fstp st(0)
jmp 0x4379f5
fadd qword [0x59e420]
fmul qword [0x59e880]
fstp qword [esp + 0xe8]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov ecx, dword [ebx + 0x2dc]
push esi
push edi
push edx
push eax
call fcn.004d6830
fstp qword [esp + 0xb0]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
push esi
push edi
push ecx
mov ecx, dword [ebx + 0x2e0]
push edx
call fcn.004d6830
fsub qword [esp + 0xb0]
fmul qword [esp + 0xe8]
fadd qword [esp + 0xb0]
jmp 0x437a87
fstp st(0)
push esi
fld qword [esp + 0xa4]
push edi
fmul qword [esp + 0xb8]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x437a72
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
push eax
push ecx
mov ecx, dword [ebx + 0x2dc]
jmp 0x437a82
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov ecx, dword [ebx + 0x2e0]
push edx
push eax
call fcn.004d6830
fsub qword [esp + 0xf0]
fmul qword [esp + 0x80]
fadd qword [esp + 0xf0]
fmul qword [esp + 0xe0]
fld st(0)
fmul qword [ebx + 0x2e4]
fmul qword [esp + 0x18]
fst qword [ebx + 0x144]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x437ad6
mov dword [ebx + 0x144], 0
mov dword [ebx + 0x148], 0x3ff00000
fld qword [ebx + 0x144]
mov eax, dword [esp + 0xdc]
fsqrt
fstp qword [ebx + 0x14c]
fld qword [ebx + 0x280]
fmul qword [ebx + 0x270]
fsubr qword [ebx + 0x278]
fld qword [ebx + 0x270]
fmul dword [eax + 0xc]
fsubr dword [eax + 8]
fst qword [ebx + 0x268]
fld qword [ebx + 0x290]
fmul qword [ebx + 0x270]
fsubr qword [ebx + 0x288]
fsub st(2)
fmul qword [esp + 0x80]
faddp st(2)
fxch st(1)
fmul st(1)
fmul qword [ebx + 0x39c]
fstp st(1)
fld qword [ebx + 0x31c]
fcom qword [ebx + 0x25c]
fnstsw ax
test ah, 0x41
jne 0x437b53
fstp st(0)
fld qword [ebx + 0x25c]
fld st(0)
mov eax, dword [ebx + 0xfc]
fmul qword [ebx + 0x23c]
or edx, 0xffffffff
cmp eax, edx
mov ecx, 0xffefffff
fadd qword [ebx + 0x244]
fmul st(1)
fadd qword [ebx + 0x24c]
fmul st(1)
fadd qword [ebx + 0x254]
fmul qword [ebx + 0x31c]
fmulp st(2)
fstp st(0)
fst qword [ebx + 0x13c]
fmulp st(1)
fchs
fld qword [esp + 0x10]
fmul st(1)
fstp qword [esp + 0x18]
fmul qword [esp + 0xa0]
jne 0x437bb4
cmp dword [ebx + 0x100], ecx
je 0x437dc8
fld qword [ebx + 0xbc]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x437c3d
fld qword [ebx + 0x324]
fmul qword [0x59e880]
fsubr qword [esp + 0xd0]
fld qword [ebp + 8]
fsub qword [ebx + 0xfc]
fmulp st(1)
fmul qword [ebx + 0xbc]
fld qword [esp + 0x68]
fmul st(1)
fld st(1)
fmul qword [esp + 0x70]
fstp qword [esp + 0xc0]
fxch st(1)
fmul qword [esp + 0x78]
fstp qword [esp + 0xc8]
fadd qword [ebx + 0xe4]
fstp qword [ebx + 0xe4]
fld qword [esp + 0xc0]
fadd qword [ebx + 0xec]
fstp qword [ebx + 0xec]
fld qword [esp + 0xc8]
fadd qword [ebx + 0xf4]
fstp qword [ebx + 0xf4]
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov dword [ebx + 0xfc], eax
mov dword [ebx + 0x100], esi
fld qword [ebx + 0xe4]
fsub qword [esp + 0x88]
fstp qword [esp + 0x50]
fld qword [ebx + 0xec]
fsub qword [esp + 0x90]
fstp qword [esp + 0x58]
fld qword [ebx + 0xf4]
fsub qword [esp + 0x98]
fstp qword [esp + 0x60]
fld qword [esp + 0x50]
fmul qword [esp + 0x50]
fld qword [esp + 0x60]
fmul qword [esp + 0x60]
faddp st(1)
fld qword [esp + 0x58]
fmul qword [esp + 0x58]
faddp st(1)
fsqrt
fst qword [esp + 0xe0]
fcomp qword [0x59eb10]
fnstsw ax
test ah, 1
je 0x437dbc
fld qword [ebx + 0x134]
fcomp qword [0x59eb08]
fnstsw ax
test ah, 1
je 0x437dbc
fld qword [esp + 0xa8]
fmul qword [ebx + 0x12c]
fsubr qword [0x59e420]
fld qword [ebx + 0x134]
fmul qword [0x59eb28]
fsubr qword [0x59e420]
fmulp st(1)
fmul qword [0x59eb00]
fld qword [esp + 0xe0]
fcomp qword [0x59eaf8]
fnstsw ax
test ah, 0x41
jne 0x437d25
fld qword [esp + 0xe0]
fmul qword [0x59eaf0]
fsubr qword [0x59e900]
fmulp st(1)
fld qword [esp + 0x50]
fmul qword [esp + 0x38]
fld qword [esp + 0x60]
fmul qword [esp + 0x48]
faddp st(1)
fld qword [esp + 0x58]
fmul qword [esp + 0x40]
faddp st(1)
fmul st(1)
fadd qword [esp + 0x18]
fstp qword [esp + 0x10]
fld qword [esp + 0x50]
fmul qword [esp + 0x68]
fld qword [esp + 0x58]
fmul qword [esp + 0x70]
faddp st(1)
fld qword [esp + 0x60]
fmul qword [esp + 0x78]
faddp st(1)
fmul st(1)
fadd st(2)
fstp qword [esp + 0xa8]
fstp st(0)
fld qword [ebx + 0x13c]
fld qword [esp + 0xa8]
fmul qword [esp + 0xa8]
fld qword [esp + 0x10]
fmul qword [esp + 0x10]
faddp st(1)
fld st(1)
fmul st(2)
fcompp
fnstsw ax
fstp st(0)
test ah, 5
jnp 0x437dbc
mov eax, dword [esp + 0x10]
fstp st(0)
mov esi, dword [esp + 0x14]
fld qword [esp + 0xa8]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], esi
jmp 0x437dc8
mov dword [ebx + 0xfc], edx
mov dword [ebx + 0x100], ecx
cmp dword [ebx + 0xfc], edx
jne 0x437e11
cmp dword [ebx + 0x100], ecx
jne 0x437e11
fld qword [esp + 0x88]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
fstp qword [ebx + 0xe4]
fld qword [esp + 0x90]
fstp qword [ebx + 0xec]
fld qword [esp + 0x98]
fstp qword [ebx + 0xf4]
mov dword [ebx + 0xfc], ecx
mov dword [ebx + 0x100], edx
fld qword [ebx + 0x2ec]
fmul qword [ebx + 0x13c]
fmul qword [ebx + 0x144]
fstp qword [esp + 0xf0]
fld qword [ebx + 0x314]
fabs
fcom qword [ebx + 0x2f4]
fnstsw ax
test ah, 5
jp 0x437e5a
fld qword [ebx + 0x304]
fmul qword [ebx + 0x314]
fsin
fmul qword [esp + 0xf0]
fsubr qword [esp + 0x18]
jmp 0x437eaf
fcom qword [0x59e898]
fnstsw ax
test ah, 5
jp 0x437eb3
fld st(0)
fsub qword [ebx + 0x2f4]
fmul qword [ebx + 0x30c]
fcos
fadd qword [0x59e420]
fmul qword [0x59e880]
fmul qword [esp + 0xf0]
fld qword [ebx + 0x314]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x437eab
fld qword [esp + 0x18]
fsub st(1)
fstp qword [esp + 0x18]
fstp st(0)
jmp 0x437eb3
fadd qword [esp + 0x18]
fstp qword [esp + 0x18]
fmul qword [ebx + 0x2fc]
mov eax, dword [ebx + 0x15c]
add eax, 0x134
mov ecx, 6
fsubr qword [0x59e420]
lea edi, [esp + 0x50]
fmul st(1)
fstp qword [esp + 0xe0]
fstp st(0)
fld qword [ebx + 0x31c]
fld qword [esp + 0x20]
fmul st(1)
fld st(1)
fmul qword [esp + 0x28]
fstp qword [esp + 0xc0]
fxch st(1)
fmul qword [esp + 0x30]
fstp qword [esp + 0xc8]
fadd qword [eax]
fstp qword [eax]
fld qword [esp + 0xc0]
fadd qword [eax + 8]
fstp qword [eax + 8]
fld qword [esp + 0xc8]
fadd qword [eax + 0x10]
fstp qword [eax + 0x10]
mov edx, dword [ebx + 0x15c]
mov eax, dword [esp + 0xdc]
lea esi, [edx + 0x7c]
rep movsd dword es:[edi], dword [esi]
fld qword [esp + 0x50]
fmul qword [esp + 0x50]
fld qword [esp + 0x60]
fmul qword [esp + 0x60]
faddp st(1)
fld qword [esp + 0x58]
fmul qword [esp + 0x58]
faddp st(1)
fld dword [eax + 0x10]
fadd qword [ebx + 0x32c]
fmul qword [ebx + 0x324]
fstp qword [esp + 0x10]
fcom qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x437f9b
fsqrt
fdivr qword [0x59e420]
fmul qword [esp + 0x10]
fst qword [esp + 0xa8]
fmul qword [esp + 0x50]
fld qword [esp + 0xa8]
fmul qword [esp + 0x58]
fld qword [esp + 0xa8]
jmp 0x437fb1
fstp st(0)
fld qword [esp + 0x50]
fmul qword [esp + 0x10]
fld qword [esp + 0x10]
fmul qword [esp + 0x58]
fld qword [esp + 0x10]
fmul qword [esp + 0x60]
mov ecx, 6
lea esi, [esp + 0x50]
lea edi, [esp + 0x250]
fstp qword [esp + 0x60]
fld qword [edx + 0x14c]
fsub st(2)
fstp qword [edx + 0x14c]
fld qword [edx + 0x154]
fsub st(1)
fstp qword [edx + 0x154]
fstp st(0)
fstp st(0)
fld qword [edx + 0x15c]
fsub qword [esp + 0x60]
fstp qword [edx + 0x15c]
lea edx, [esp + 0x88]
fld qword [esp + 0x68]
fmul qword [esp + 0xe0]
fld qword [esp + 0xe0]
fmul qword [esp + 0x70]
fld qword [esp + 0xe0]
fmul qword [esp + 0x78]
fstp qword [esp + 0x108]
fld qword [esp + 0x38]
fmul qword [esp + 0x18]
fld qword [esp + 0x18]
fmul qword [esp + 0x40]
fstp qword [esp + 0xc0]
fld qword [esp + 0x18]
fmul qword [esp + 0x48]
fstp qword [esp + 0xc8]
fadd st(2)
fstp qword [esp + 0x50]
fadd qword [esp + 0xc0]
fstp qword [esp + 0x58]
fstp st(0)
fld qword [esp + 0x108]
fadd qword [esp + 0xc8]
fstp qword [esp + 0x60]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x250]
push ecx
mov ecx, dword [ebx + 0x15c]
push edx
call fcn.00569a20
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
mov dword [ebx + 0x154], eax
mov dword [ebx + 0x158], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8