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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x168
push ebx
push ebp
mov ebp, ecx
mov eax, dword [ebp + 0x72]
mov ecx, dword [ebp + 0x76]
mov dx, word [ebp + 0x7a]
mov bl, byte [ebp + 0x7c]
mov dword [esp + 0x44], eax
mov eax, dword [0x7ce910]
test eax, eax
push esi
push edi
mov dword [esp + 0x50], ecx
mov word [esp + 0x54], dx
mov byte [esp + 0x56], bl
mov esi, 1
je 0x444239
cmp byte [ebp + 0x75], 3
mov byte [esp + 0x17], 1
je 0x44423e
mov byte [esp + 0x17], 0
mov al, byte [ebp + 0x70]
test al, al
je 0x444343
fld qword [ebp + 0x68]
lea eax, [esp + 0x100]
push eax
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x118]
push edx
lea eax, [esp + 0xc0]
push eax
lea ecx, [esp + 0x7c]
push ecx
lea edx, [esp + 0x5c]
push edx
push ecx
mov ecx, 0x7ca590
fstp dword [esp]
call fcn.00454da0
mov eax, dword [0x7cc184]
test eax, eax
je 0x44429e
mov ecx, dword [0x7cc1b0]
xor eax, eax
test ecx, ecx
sete al
mov edi, eax
jmp 0x4442a8
mov edi, dword [0x7cc1b0]
neg edi
sbb edi, edi
mov edx, dword [0x7cc1dc]
mov ecx, dword [0x7cc368]
mov eax, dword [0x7cc33c]
test edx, edx
setne byte [esp + 0x27]
test ecx, ecx
setne byte [esp + 0x16]
test eax, eax
setne byte [esp + 0x66]
test bl, bl
mov dword [esp + 0x68], edi
je 0x4443aa
mov ecx, dword [ebp + 0x1f00]
mov al, byte [ecx + 0x344c]
test al, al
mov ecx, ebp
push 0
je 0x4443a3
push esi
call fcn.00447c70
xor edi, edi
mov bl, 3
mov byte [esp + 0x17], 0
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], 0x3f800000
mov byte [esp + 0x4c], 2
mov byte [esp + 0x4d], 2
mov byte [esp + 0x4e], 2
mov byte [esp + 0x4f], bl
mov byte [esp + 0x50], 1
mov byte [esp + 0x53], bl
mov byte [esp + 0x54], 2
mov byte [esp + 0x55], 2
mov byte [esp + 0x67], 0
mov dword [ebp + 0x1efc], edi
jmp 0x4443da
xor edi, edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0xb4], 0x3f800000
mov dword [esp + 0x110], edi
mov dword [esp + 0x114], edi
mov dword [esp + 0x100], 0xfffffffe
mov byte [esp + 0x27], 0
mov byte [esp + 0x16], 0
mov byte [esp + 0x66], 0
mov byte [esp + 0x56], 0
mov byte [esp + 0x17], 0
mov bl, byte [esp + 0x4f]
mov byte [esp + 0x67], 0
mov dword [ebp + 0x1efc], 0
jmp 0x4443da
push 0
call fcn.00447c70
mov al, byte [esp + 0x17]
test al, al
je 0x44438e
mov eax, dword [ebp + 0x1ef0]
mov bl, byte [esp + 0x4f]
cmp eax, 0xffffffff
sete al
test al, al
mov byte [esp + 0x67], al
je 0x4443da
fld dword [esp + 0xb4]
fstp qword [ebp + 8]
fld dword [esp + 0x6c]
jmp 0x4443e8
fld dword [esp + 0x6c]
fstp qword [ebp + 8]
fld dword [esp + 0xb4]
fstp qword [ebp + 0x10]
xor ecx, ecx
cmp edi, ecx
fld dword [esp + 0x48]
fst qword [ebp]
fld dword [esp + 0x114]
fst qword [ebp + 0x20]
je 0x44444f
jle 0x44440a
cmp dword [ebp + 0x34], 6
je 0x444414
cmp edi, ecx
jge 0x44442d
cmp dword [ebp + 0x34], 5
jne 0x44442d
fld dword [0x7ce8ec]
fadd qword [ebp + 0x38]
fcomp qword [ebp + 0x60]
fnstsw ax
test ah, 0x41
jne 0x44442d
xor edi, edi
mov dword [esp + 0x68], edi
mov al, byte [ebp + 0x71]
test al, al
jne 0x44444f
cmp edi, ecx
jle 0x44443d
cmp bl, 1
jmp 0x444442
jge 0x44444f
cmp bl, 2
je 0x444449
cmp bl, 3
jne 0x44444f
xor edi, edi
mov dword [esp + 0x68], edi
cmp edi, dword [ebp + 0x2c]
jne 0x44445a
mov dword [esp + 0x68], ecx
jmp 0x44445d
mov dword [ebp + 0x2c], edi
mov al, byte [esp + 0x27]
cmp byte [ebp + 0x28], al
jne 0x44446d
mov byte [esp + 0x27], 0
jmp 0x444470
mov byte [ebp + 0x28], al
mov eax, dword [ebp + 0xc]
fxch st(1)
mov edx, dword [ebp + 8]
fstp qword [ebp + 0x40]
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x14]
fstp qword [ebp + 0x58]
fld qword [ebp + 0x1c50]
mov dword [ebp + 0x54], eax
fmul qword [ebp + 0x1c5c]
mov dword [ebp + 0x48], edx
mov edx, dword [ebp + 0x10]
mov dword [ebp + 0x50], edx
fcom qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x4444bd
fld st(0)
fadd qword [ebp + 8]
fxch st(1)
fadd qword [0x59e420]
fdivp st(1)
fstp qword [ebp + 8]
jmp 0x4444bf
fstp st(0)
mov eax, dword [ebp + 0x1d30]
sub eax, ecx
je 0x44457a
dec eax
je 0x4444f6
dec eax
jne 0x44465d
fld qword [ebp + 8]
fcomp qword [0x59ec70]
fnstsw ax
test ah, 5
jp 0x44465d
mov dword [ebp + 0x1d30], ecx
jmp 0x44465d
mov al, byte [esp + 0x16]
test al, al
jne 0x44456d
mov ecx, dword [ebp + 0x1f00]
mov dword [ebp + 0x1d30], 2
mov eax, dword [0x8aae70]
mov edx, eax
and edx, 0xff
fld dword [edx*4 + 0x8ab274]
add ecx, 0x14
inc eax
mov edx, eax
mov dword [0x8aae70], eax
and edx, 0xff
fld dword [edx*4 + 0x8aae74]
sub esp, 8
fxch st(1)
fmul dword [0x59e84c]
inc eax
mov dword [0x8aae70], eax
fadd dword [0x59e43c]
fstp dword [esp + 4]
fmul dword [0x59e868]
fsubr dword [0x59e43c]
fstp dword [esp]
push 2
push 0x29
call fcn.004f87c0
mov dword [esp + 0x68], 0
jmp 0x44465d
mov al, byte [esp + 0x16]
test al, al
je 0x44465d
fld qword [ebp + 0x1d34]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x44465d
cmp dword [ebp + 0x1ef0], ecx
jne 0x44465d
cmp dword [ebp + 0xd0], 2
je 0x44465d
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 0x74]
add eax, 0x64
fld qword [eax + 8]
fld qword [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
fcomp qword [0x59e900]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x44465d
mov ecx, dword [ebp + 0x1f00]
mov dword [ebp + 0xd0], esi
mov dword [ebp + 0x1d30], esi
mov eax, dword [0x8aae70]
mov edx, eax
and edx, 0xff
fld dword [edx*4 + 0x8ab274]
add ecx, 0x14
inc eax
mov edx, eax
mov dword [0x8aae70], eax
and edx, 0xff
fld dword [edx*4 + 0x8aae74]
sub esp, 8
fxch st(1)
fmul dword [0x59e84c]
inc eax
mov dword [0x8aae70], eax
fadd dword [0x59e43c]
fstp dword [esp + 4]
fmul dword [0x59e868]
fsubr dword [0x59e43c]
fstp dword [esp]
push 2
push 0x29
call fcn.004f87c0
mov eax, dword [ebp + 0x1d30]
test eax, eax
je 0x444681
test bl, bl
jne 0x444672
mov byte [esp + 0x4f], 1
jmp 0x44467c
cmp bl, 2
jne 0x44467c
mov byte [esp + 0x4f], 3
mov byte [esp + 0x4c], 2
fld qword [ebp + 0x9c]
mov dword [esp + 0x28], 0
fcomp qword [0x59e430]
mov dword [esp + 0x2c], 0x3ff00000
fnstsw ax
test ah, 0x41
jne 0x444718
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 0x74]
add eax, 0x64
fld qword [eax + 8]
fld qword [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 qword [0x59eeb8]
fnstsw ax
test ah, 5
jp 0x4446fc
fmul qword [0x59eeb0]
fcos
fsubr qword [0x59e420]
fmul qword [ebp + 0x9c]
fmul qword [0x59e880]
fsubr qword [0x59e420]
jmp 0x44470a
fstp st(0)
fld qword [0x59e420]
fsub qword [ebp + 0x9c]
fstp qword [esp + 0x28]
fld qword [esp + 0x28]
fmul qword [ebp]
fstp qword [ebp]
mov al, byte [esp + 0x52]
test al, al
je 0x444837
mov eax, dword [ebp + 0x15f0]
lea ecx, [esp + 0xc4]
push ecx
lea edx, [eax + 0x64]
push edx
lea ecx, [eax + 0x1c]
call fcn.004388d0
fld qword [esp + 0xd4]
fmul qword [esp + 0xd4]
fld qword [esp + 0xc4]
fmul qword [esp + 0xc4]
faddp st(1)
fcomp qword [0x59eea8]
fnstsw ax
test ah, 0x41
jne 0x444837
fld qword [esp + 0xd4]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x444837
fld qword [esp + 0xc4]
fchs
fld qword [esp + 0xd4]
fchs
fpatan
fmul qword [ebp + 0x8c]
fst qword [esp + 0x18]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x4447c1
fld dword [esp + 0x48]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jnp 0x4447e3
fld qword [esp + 0x18]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x444837
fld dword [esp + 0x48]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x444837
fld qword [esp + 0x18]
fabs
fld qword [esp + 0x28]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x444835
fld qword [0x59e420]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x444824
fstp st(0)
mov dword [esp + 0x28], 0
fld dword [esp + 0x48]
mov dword [esp + 0x2c], 0x3ff00000
fmul qword [esp + 0x28]
fstp qword [ebp]
jmp 0x444837
fstp qword [esp + 0x28]
fld dword [esp + 0x48]
fmul qword [esp + 0x28]
fstp qword [ebp]
jmp 0x444837
fstp st(0)
test byte [0x7ce6d0], 1
je 0x444893
lea eax, [ebp + 0x504]
mov ecx, 4
nop
lea esp, [esp]
mov edx, dword [eax + 0x1d4]
mov dword [eax], edx
mov edx, dword [eax + 0x1d8]
mov dword [eax + 4], edx
mov edx, dword [eax + 0x1dc]
mov dword [eax + 0x10], edx
mov edx, dword [eax + 0x1e0]
mov dword [eax + 0x14], edx
mov edx, dword [eax + 0x1e4]
mov dword [eax + 0xb4], edx
mov edx, dword [eax + 0x1e8]
mov dword [eax + 0xb8], edx
add eax, 0x464
dec ecx
jne 0x444850
mov al, byte [esp + 0x53]
test al, al
mov al, byte [esp + 0x54]
jne 0x4448a9
test al, al
je 0x445f39
jmp 0x4448ad
test al, al
je 0x4448e1
lea ecx, [ebp + 0x690]
mov edx, 4
mov edi, 0x4091f0a3
lea ecx, [ecx]
fld qword [ecx]
fcomp qword [0x59eea0]
fnstsw ax
test ah, 0x41
jne 0x4448d8
mov dword [ecx], 0xd70a3d71
mov dword [ecx + 4], edi
add ecx, 0x464
dec edx
jne 0x4448c0
mov edx, dword [ebp + 0x15f0]
fld qword [edx + 4]
mov ecx, dword [ebp + 0xb4]
test ecx, ecx
fstp dword [esp + 0xb8]
fld qword [edx + 0xc]
lea ebx, [edx + 4]
fstp dword [esp + 0xbc]
lea edi, [ebp + 0xb8]
fld qword [edx + 0x14]
fstp dword [esp + 0xc0]
fld qword [ebx]
fsub qword [edi]
fld qword [ebx + 8]
fsub qword [edi + 8]
fld qword [ebx + 0x10]
fsub qword [edi + 0x10]
je 0x44494d
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp qword [0x59ee98]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jne 0x44497e
jmp 0x444953
fstp st(0)
fstp st(0)
fstp st(0)
push ecx
lea eax, [esp + 0xbc]
push eax
mov ecx, 0x5ea2c0
call fcn.00403640
mov edx, dword [ebp + 0x15f0]
lea ebx, [edx + 4]
mov ecx, 6
mov esi, ebx
mov dword [ebp + 0xb4], eax
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 0xb4]
fld dword [edi + 0x94]
lea ecx, [edi + 0xa4]
fsub dword [esp + 0xb8]
mov eax, dword [ecx]
fld dword [edi + 0x98]
mov dword [esp + 0x84], eax
fsub dword [esp + 0xbc]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
fld dword [edi + 0x9c]
fsub dword [esp + 0xc0]
mov dword [esp + 0x8c], ecx
fld dword [esp + 0x8c]
mov dword [esp + 0x88], eax
mov dword [esp + 0x18], edi
fmul st(1)
fld dword [esp + 0x88]
fmul st(3)
faddp st(1)
fld dword [esp + 0x84]
fmul st(4)
faddp st(1)
fstp dword [esp + 0x74]
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [esp + 0xb8]
fsub dword [edi + 0x94]
fld dword [esp + 0xbc]
fsub dword [edi + 0x98]
fld dword [esp + 0xc0]
fsub dword [edi + 0x9c]
fld dword [edi + 0x88]
fstp dword [esp + 0x40]
fmul dword [edi + 0x28]
fxch st(1)
fmul dword [edi + 0x24]
faddp st(1)
fxch st(1)
fmul dword [edi + 0x20]
faddp st(1)
fmul dword [0x59e450]
fld st(0)
fmul dword [edi + 0x20]
fstp dword [esp + 0x78]
mov eax, dword [esp + 0x78]
mov dword [esp + 0x104], eax
fld st(0)
fmul dword [edi + 0x24]
fstp dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x108], ecx
fmul dword [edi + 0x28]
fstp dword [esp + 0x80]
mov eax, dword [esp + 0x80]
fld dword [esp + 0x74]
mov dword [esp + 0x10c], eax
fcomp dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x444aab
fld dword [edi + 0x3c]
mov ecx, dword [edi + 0x110]
fdivr dword [0x59e43c]
fmul dword [esp + 0x74]
fchs
jmp 0x444ab8
mov ecx, dword [edi + 0x10c]
fld dword [esp + 0x74]
fdiv dword [ecx + 0x3c]
fcom dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x444acf
fstp st(0)
fld dword [0x59e440]
jmp 0x444ae4
fcom dword [0x59e43c]
fnstsw ax
test ah, 0x41
jne 0x444ae4
fstp st(0)
fld dword [0x59e43c]
fld dword [esp + 0xb8]
mov al, byte [esp + 0x54]
test al, al
fsub dword [ecx + 0x94]
fld dword [esp + 0xbc]
fsub dword [ecx + 0x98]
fld dword [esp + 0xc0]
fsub dword [ecx + 0x9c]
fmul dword [ecx + 0x28]
fxch st(1)
fmul dword [ecx + 0x24]
faddp st(1)
fxch st(1)
fmul dword [ecx + 0x20]
faddp st(1)
fmul dword [0x59e450]
fld st(0)
fmul dword [ecx + 0x20]
fxch st(1)
fmul dword [ecx + 0x28]
fstp dword [esp + 0x98]
fsub dword [esp + 0x78]
fld dword [esp + 0x98]
fsub dword [esp + 0x80]
fxch st(1)
fmul st(2)
fstp dword [esp + 0x90]
fmul st(1)
fld dword [esp + 0x90]
fadd dword [esp + 0x78]
fstp dword [esp + 0x104]
fld dword [esp + 0x10c]
fadd st(1)
fstp dword [esp + 0x10c]
fstp st(0)
fld dword [ecx + 0x88]
fsub dword [esp + 0x40]
fmulp st(1)
fadd dword [esp + 0x40]
fld qword [edx + 0x64]
fstp dword [esp + 0xe8]
fld qword [edx + 0x6c]
fstp dword [esp + 0xec]
fld qword [edx + 0x74]
fstp dword [esp + 0xf0]
je 0x445123
fld dword [0x8afee8]
fadd dword [0x8afeec]
fmul dword [0x59e450]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x444c12
fld dword [0x8afee8]
fadd dword [0x8afeec]
fmul dword [0x59e450]
fld qword [ebp + 0xac]
fsub qword [0x59e420]
fmulp st(1)
fadd qword [0x59e420]
fcom dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x444c10
fld st(0)
fsqrt
fadd st(1)
fmul dword [0x59e450]
fmulp st(2)
fstp st(0)
fld dword [esp + 0xf0]
fmul dword [esp + 0xf0]
fld dword [esp + 0xec]
fmul dword [esp + 0xec]
faddp st(1)
fld dword [esp + 0xe8]
fmul dword [esp + 0xe8]
faddp st(1)
fsqrt
fst dword [esp + 0x40]
fld st(1)
fsub qword [0x59e7e0]
fcompp
fnstsw ax
test ah, 5
jp 0x444cf3
fld dword [esp + 0x40]
fcomp st(1)
fnstsw ax
test ah, 1
jne 0x444c72
fstp st(0)
fld qword [0x59e420]
jmp 0x444c82
fsubr dword [esp + 0x40]
fmul qword [0x59eb78]
fadd qword [0x59e420]
fcom qword [ebp + 0x10]
mov al, byte [esp + 0x54]
cmp al, 1
fnstsw ax
jne 0x444ca9
test ah, 0x41
jne 0x44511f
fadd qword [ebp + 0x10]
fmul qword [0x59e880]
fstp qword [ebp + 0x10]
jmp 0x445125
test ah, 0x41
jne 0x444cb1
fst qword [ebp + 0x10]
fcom qword [0x59e428]
fnstsw ax
test ah, 0x41
jne 0x444cef
fcom qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x444cd7
xor eax, eax
fstp st(0)
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
jmp 0x444cf5
fchs
fld qword [ebp + 8]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x444cea
fstp st(0)
fld qword [ebp + 8]
fstp qword [ebp + 8]
jmp 0x444cf5
fstp st(0)
jmp 0x444cf5
fstp st(0)
cmp byte [esp + 0x54], 2
jne 0x445125
fld qword [edx + 0x74]
fld qword [edx + 0x6c]
fld qword [edx + 0x64]
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
fst dword [esp + 0x40]
fstp st(3)
fstp st(0)
fstp st(0)
fcomp dword [0x59ee94]
fnstsw ax
test ah, 0x41
jne 0x445125
fld qword [ebx]
mov esi, dword [edi + 0x110]
fstp dword [esp + 0xdc]
mov dword [esp + 0x70], 0x43fa0000
fld qword [edx + 0x14]
mov dword [esp + 0xe0], 0
fstp dword [esp + 0xe4]
mov ebx, 0x19
fld qword [edx + 0x2c]
fchs
fstp dword [esp + 0x58]
fld qword [edx + 0x44]
fchs
fstp dword [esp + 0x5c]
fld qword [edx + 0x5c]
fchs
fstp dword [esp + 0x60]
lea ecx, [esi + 0x20]
mov edx, ecx
mov eax, dword [edx]
mov dword [esp + 0x124], eax
mov eax, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [esp + 0x128], eax
fld dword [esp + 0x128]
fmul dword [0x59e440]
mov dword [esp + 0x12c], edx
fld dword [esp + 0x12c]
fsub st(1)
fstp dword [esp + 0x13c]
mov eax, dword [esp + 0x13c]
fld dword [esp + 0x124]
mov dword [esp + 0x118], eax
fmul dword [0x59e440]
fld dword [esp + 0x12c]
fmul dword [0x59e440]
fsubp st(1)
fstp dword [esp + 0x140]
mov edx, dword [esp + 0x140]
fld dword [esp + 0x124]
mov dword [esp + 0x11c], edx
fsubr st(1)
fstp dword [esp + 0x144]
mov eax, dword [esp + 0x144]
mov dword [esp + 0x120], eax
fstp st(0)
fld dword [esp + 0x60]
fmul dword [ecx + 8]
fld dword [esp + 0x5c]
fmul dword [ecx + 4]
faddp st(1)
fld dword [esp + 0x58]
fmul dword [ecx]
faddp st(1)
fcomp dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x444eaa
fld dword [esi + 0x2c]
fld st(0)
fmul dword [ecx]
fld st(1)
fmul dword [ecx + 4]
fstp dword [esp + 0x134]
fxch st(1)
fmul dword [ecx + 8]
fstp dword [esp + 0x138]
fld dword [esi]
fsub st(1)
fstp dword [esp + 0xf4]
mov ecx, dword [esp + 0xf4]
fstp st(0)
fld dword [esi + 4]
fsub dword [esp + 0x134]
fstp dword [esp + 0xf8]
mov edx, dword [esp + 0xf8]
fld dword [esi + 8]
fsub dword [esp + 0x138]
fstp dword [esp + 0xfc]
mov eax, dword [esp + 0xfc]
jmp 0x444ef7
fld dword [esi + 0x30]
fld st(0)
fmul dword [ecx]
fld st(1)
fmul dword [ecx + 4]
fstp dword [esp + 0x14c]
fxch st(1)
fmul dword [ecx + 8]
fstp dword [esp + 0x150]
fadd dword [esi]
fstp dword [esp + 0x34]
mov ecx, dword [esp + 0x34]
fld dword [esp + 0x14c]
fadd dword [esi + 4]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
fld dword [esp + 0x150]
fadd dword [esi + 8]
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x7c]
push edx
lea edx, [esp + 0x60]
lea ecx, [esp + 0xe4]
mov dword [esp + 0x88], eax
call fcn.004352c0
fst dword [esp + 0x30]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x444fd7
fld dword [esp + 0x30]
fmul dword [esp + 0x58]
fstp dword [esp + 0xc4]
fld dword [esp + 0x30]
fmul dword [esp + 0x5c]
fld dword [esp + 0x30]
fmul dword [esp + 0x60]
fld dword [esp + 0xc4]
fadd dword [esp + 0xdc]
fstp dword [esp + 0x90]
fxch st(1)
fstp dword [esp + 0x94]
fadd dword [esp + 0xe4]
fld dword [esp + 0x78]
fsub dword [esp + 0x90]
fld dword [esp + 0x7c]
fsub dword [esp + 0x94]
fld dword [esp + 0x80]
fsub st(3)
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [0x59e920]
fstp st(0)
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x444fd7
fld dword [esp + 0x70]
fcomp dword [esp + 0x30]
fnstsw ax
test ah, 0x41
jne 0x444fd7
mov eax, dword [esp + 0x30]
mov dword [esp + 0x70], eax
dec ebx
mov esi, dword [esi + 0x110]
jne 0x444d82
fld dword [0x59ee94]
fld dword [esp + 0xdc]
fsub dword [edi + 0x94]
fld dword [edi + 0x98]
fchs
fld dword [esp + 0xe4]
fsub dword [edi + 0x9c]
fmul dword [edi + 0x28]
fxch st(1)
fmul dword [edi + 0x24]
faddp st(1)
fxch st(1)
fmul dword [edi + 0x20]
faddp st(1)
fabs
fst dword [esp + 0x30]
fcomp dword [0x59e478]
fnstsw ax
test ah, 5
jp 0x445048
fstp st(0)
fld dword [0x59e478]
fsub dword [esp + 0x30]
fmul dword [0x59ee90]
fadd dword [0x59ee94]
fld dword [esp + 0x60]
fmul dword [edi + 0xac]
fld dword [esp + 0x5c]
fmul dword [edi + 0xa8]
faddp st(1)
fld dword [esp + 0x58]
fmul dword [edi + 0xa4]
faddp st(1)
fabs
fcom dword [0x59ee8c]
fnstsw ax
test ah, 0x41
jne 0x445089
fsub dword [0x59ee8c]
fmul dword [0x59ee88]
faddp st(1)
jmp 0x44508b
fstp st(0)
fld dword [esp + 0x70]
fmul dword [0x59e8cc]
faddp st(1)
fld dword [0x59ee84]
fsubr st(1)
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 5
jp 0x445123
fld dword [esp + 0x40]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x4450ef
fsubr dword [esp + 0x40]
xor eax, eax
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
fmul dword [0x59ee80]
fcom qword [ebp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x44511f
fld qword [0x59e420]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x4450ea
fstp st(0)
fld qword [0x59e420]
fstp qword [ebp + 0x10]
jmp 0x445125
fsub dword [esp + 0x40]
fmul dword [0x59ee80]
fcom qword [ebp + 8]
fnstsw ax
test ah, 5
jp 0x44511f
fld qword [0x59e420]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x44511a
fstp st(0)
fld qword [0x59e420]
fstp qword [ebp + 8]
jmp 0x445125
fstp st(0)
jmp 0x445125
fstp st(0)
mov al, byte [esp + 0x56]
test al, al
je 0x4458fa
mov esi, dword [ebp + 0x1f00]
mov al, byte [esi + 0x344c]
add esi, 0x32cc
test al, al
je 0x4458fa
mov eax, dword [ebp + 0x1ef0]
xor edi, edi
cmp eax, 0xffffffff
jne 0x445162
push 4
push edi
mov ecx, ebp
call fcn.00447e00
mov eax, dword [esi + 0x184]
mov ebx, 2
cmp eax, ebx
je 0x44517f
cmp eax, 3
je 0x44517f
cmp eax, 4
jne 0x445760
mov eax, dword [ebp + 0x1f00]
lea ecx, [esp + 0xc4]
push ecx
lea edx, [esp + 0xe0]
push edx
push eax
mov ecx, 0x8acee0
call fcn.004d1100
lea ecx, [esp + 0xf4]
push ecx
mov ecx, dword [ebp + 0x1f00]
lea edx, [esp + 0x94]
push edx
add ecx, 0xc
call fcn.004efb20
fld dword [esp + 0xdc]
fsub dword [esp + 0x90]
lea edx, [esp + 0x154]
lea ecx, [esp + 0xc4]
fstp dword [esp + 0x34]
fld dword [esp + 0xe0]
fsub dword [esp + 0x94]
fstp dword [esp + 0x38]
fld dword [esp + 0xe4]
fsub dword [esp + 0x98]
fstp dword [esp + 0x3c]
call fcn.00566e40
fld dword [esp + 0x15c]
mov byte [esp + 0x16], 1
fmul dword [0x59e670]
fld dword [esp + 0x168]
fmul dword [0x59e670]
fld dword [esp + 0x174]
fmul dword [0x59e670]
fld st(2)
fmul dword [esp + 0x34]
fld dword [esp + 0x3c]
fmul st(2)
faddp st(1)
fld dword [esp + 0x38]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0xf0]
fmul st(1)
fld dword [esp + 0xec]
fmul st(3)
faddp st(1)
fxch st(3)
fmul dword [esp + 0xe8]
faddp st(3)
fstp st(0)
fstp st(0)
fld dword [0x59e440]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x445287
fstp st(0)
fld dword [0x59e440]
cmp dword [esi + 0x184], 4
je 0x44533f
fld dword [esp + 0x30]
fadd qword [0x59e880]
fmul qword [0x59e880]
fsubrp st(1)
fcom qword [0x59eb08]
fnstsw ax
test ah, 5
jp 0x44561a
fld dword [esp + 0x30]
fcomp dword [0x59e440]
fnstsw ax
test ah, 5
jnp 0x445314
fcom qword [0x59ee78]
fnstsw ax
test ah, 5
jnp 0x445314
fcom dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x445306
fchs
mov dword [ebp + 8], edi
fmul qword [0x59eb28]
mov dword [ebp + 0xc], edi
fcom qword [ebp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x44561e
fstp qword [ebp + 0x10]
jmp 0x445620
fmul qword [0x59eb28]
fstp qword [ebp + 8]
jmp 0x445620
fcomp qword [0x59ee70]
mov dword [ebp + 8], edi
mov dword [ebp + 0xc], edi
mov dword [ebp + 0x10], edi
mov dword [ebp + 0x14], 0x3ff00000
fnstsw ax
test ah, 5
jp 0x445620
mov byte [esp + 0x16], 0
jmp 0x445620
fld dword [0x8acfb4]
fxch st(1)
fcompp
fnstsw ax
test ah, 0x41
jne 0x445355
mov byte [esp + 0x16], 0
mov ecx, dword [ebp + 0x1f00]
mov eax, dword [ecx + 0x32e0]
cmp eax, edi
je 0x445426
cmp dword [eax + 0x78], ebx
jne 0x445388
fld dword [eax + 0x7c]
fadd dword [0x59e84c]
fcomp dword [eax + 0x84]
fnstsw ax
test ah, 5
jnp 0x445426
lea eax, [esp + 0x148]
push eax
lea edx, [esp + 0x134]
push edx
push ecx
mov ecx, 0x8acee0
call fcn.004d1140
lea eax, [esp + 0x118]
push eax
lea ecx, [esp + 0x14c]
push ecx
mov ecx, dword [ebp + 0x1f00]
lea edx, [esp + 0x138]
push edx
add ecx, 0xc
call fcn.004ef6c0
fld dword [esp + 0x118]
fsub dword [esp + 0xb8]
fld dword [esp + 0x11c]
fsub dword [esp + 0xbc]
fld dword [esp + 0x120]
fsub dword [esp + 0xc0]
fld st(2)
fmul st(3)
fld st(2)
fmul st(3)
faddp st(1)
fld st(1)
fmul st(2)
faddp st(1)
fcomp dword [0x59e43c]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x445426
mov dword [ebp + 8], edi
mov dword [ebp + 0xc], edi
mov dword [ebp + 0x10], edi
mov dword [ebp + 0x14], 0x3ff00000
cmp dword [0x8acfd4], ebx
jne 0x445620
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 4]
mov ecx, dword [0x8acfd8]
cmp ecx, edi
fstp dword [esp + 0x78]
fld qword [eax + 0xc]
mov dword [esp + 0x70], 0x42c80000
fstp dword [esp + 0x7c]
fld qword [eax + 0x14]
fstp dword [esp + 0x80]
je 0x4454d8
lea eax, [esp + 0x3c]
push eax
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x3c]
push eax
call fcn.0054b950
fld dword [esp + 0x34]
fsub dword [esp + 0x78]
fld dword [esp + 0x38]
fsub dword [esp + 0x7c]
fld dword [esp + 0x3c]
fsub dword [esp + 0x80]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [0x59ee68]
fnstsw ax
test ah, 5
jp 0x4454d2
mov eax, dword [ebp + 0xb4]
fmul dword [eax + 0xac]
add eax, 0xa4
fxch st(1)
fmul dword [eax + 4]
faddp st(1)
fxch st(1)
fmul dword [eax]
faddp st(1)
fstp dword [esp + 0x70]
jmp 0x4454d8
fstp st(0)
fstp st(0)
fstp st(0)
mov ecx, dword [0x8ad078]
cmp ecx, edi
je 0x445569
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x3c]
push eax
lea edx, [esp + 0x3c]
push edx
call fcn.0054b950
fld dword [esp + 0x34]
fsub dword [esp + 0x78]
fld dword [esp + 0x38]
fsub dword [esp + 0x7c]
fld dword [esp + 0x3c]
fsub dword [esp + 0x80]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [0x59ee68]
fnstsw ax
test ah, 5
jp 0x445563
mov eax, dword [ebp + 0xb4]
fmul dword [eax + 0xac]
add eax, 0xa4
fxch st(1)
fmul dword [eax + 4]
faddp st(1)
fxch st(1)
fmul dword [eax]
faddp st(1)
fld dword [esp + 0x70]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x445567
fstp dword [esp + 0x70]
jmp 0x445569
fstp st(0)
fstp st(0)
fstp st(0)
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 0x74]
add eax, 0x64
fld qword [eax + 8]
fld qword [eax]
fld dword [esp + 0x70]
fadd qword [0x59eb48]
fmul qword [0x59eb28]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(4)
fmul st(5)
faddp st(1)
fsqrt
fstp st(4)
fxch st(3)
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x40]
fstp st(1)
fstp st(0)
fld dword [esp + 0x40]
fcomp qword [0x59eb08]
fnstsw ax
test ah, 5
jp 0x445620
fld dword [esp + 0x70]
fcomp qword [0x59eb48]
fnstsw ax
test ah, 5
jnp 0x445608
fld dword [esp + 0x40]
fcomp qword [0x59ee78]
fnstsw ax
test ah, 5
jnp 0x445608
fld dword [esp + 0x40]
fcomp dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x4455f9
fld dword [esp + 0x40]
jmp 0x4452e2
fld dword [esp + 0x40]
fmul qword [0x59eb28]
fstp qword [ebp + 8]
jmp 0x445620
mov dword [ebp + 8], edi
mov dword [ebp + 0xc], edi
mov dword [ebp + 0x10], edi
mov dword [ebp + 0x14], 0x3ff00000
jmp 0x445620
fstp st(0)
jmp 0x445620
fstp st(0)
fld qword [ebp + 0x138]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x44
jp 0x445684
push edi
lea eax, [esp + 0xe0]
push eax
mov ecx, 0x5ea2c0
call fcn.00403640
fld dword [esp + 0xdc]
fsub dword [eax + 0x94]
fld dword [esp + 0xe0]
fsub dword [eax + 0x98]
fld dword [esp + 0xe4]
fsub dword [eax + 0x9c]
fmul dword [eax + 0x28]
fxch st(1)
fmul dword [eax + 0x24]
faddp st(1)
fxch st(1)
fmul dword [eax + 0x20]
faddp st(1)
fstp qword [ebp + 0x138]
fld qword [ebp + 0x138]
mov al, byte [esp + 0x16]
test al, al
fabs
fadd st(0), st(0)
fadd qword [0x59edb8]
fstp qword [esp + 0x40]
je 0x445760
fld dword [esp + 0x30]
fcomp qword [esp + 0x40]
fnstsw ax
test ah, 5
jp 0x445760
fld dword [esp + 0x30]
fld qword [0x59e7d0]
fsub qword [esp + 0x40]
fcompp
fnstsw ax
test ah, 5
jp 0x445760
fld dword [esp + 0x30]
fcomp dword [0x59e440]
fld dword [esp + 0x30]
fnstsw ax
test ah, 0x41
jnp 0x445706
fcomp qword [0x59e7d0]
fnstsw ax
test ah, 5
jp 0x4456fc
fld dword [0x59e43c]
jmp 0x44571c
fld dword [esp + 0x30]
fsub qword [0x59e7d0]
fmul qword [0x59e890]
fld qword [esp + 0x40]
fsub qword [0x59e7d0]
fadd st(0), st(0)
fdivp st(1)
fcos
fmul qword [ebp + 0x138]
mov eax, dword [esp + 0x18]
fld st(0)
fmul dword [eax + 0x20]
fstp dword [esp + 0x34]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x104], ecx
fld st(0)
fmul dword [eax + 0x24]
fstp dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x108], edx
fmul dword [eax + 0x28]
fstp dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x10c], eax
cmp dword [0x5c329c], edi
jle 0x4458fa
mov ecx, dword [ebp + 0x1f00]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0x40]
cmp edi, dword [edx + 0x4894]
je 0x4458ec
mov ebx, dword [edi*4 + 0x7c54f0]
mov esi, dword [ebp + 0x15f0]
lea eax, [ebx + 0x34e0]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x34], ecx
fld dword [esp + 0x34]
fstp qword [esp + 0xc4]
mov dword [esp + 0x38], edx
fld dword [esp + 0x38]
lea ecx, [esp + 0x90]
push ecx
fstp qword [esp + 0xd0]
mov dword [esp + 0x40], eax
fld dword [esp + 0x40]
lea edx, [esp + 0xc8]
fstp qword [esp + 0xd8]
push edx
lea eax, [esi + 4]
push eax
lea ecx, [esi + 0x1c]
call fcn.004361d0
fld qword [esp + 0x90]
fabs
fcomp qword [0x59e7e0]
fnstsw ax
test ah, 5
jp 0x4458ec
fld qword [esp + 0xa0]
fcomp qword [0x59ee60]
fnstsw ax
test ah, 0x41
jne 0x4458ec
fld qword [esp + 0xa0]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x4458ec
add ebx, 0x34f8
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov eax, dword [ebx + 8]
mov dword [esp + 0xf4], ecx
fld dword [esp + 0xf4]
mov dword [esp + 0xf8], edx
fld dword [esp + 0xf8]
mov dword [esp + 0xfc], eax
fld dword [esp + 0xfc]
fmul qword [esi + 0x5c]
mov eax, dword [0x8acfd4]
cmp eax, 2
fxch st(1)
fmul qword [esi + 0x44]
faddp st(1)
fxch st(1)
fmul qword [esi + 0x2c]
faddp st(1)
fld qword [esi + 0x74]
fld qword [esi + 0x6c]
fld qword [esi + 0x64]
fxch st(3)
fchs
fld st(3)
fmul st(4)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fxch st(4)
fxch st(1)
fxch st(4)
fsubp st(4)
fstp st(0)
fstp st(0)
fstp st(0)
je 0x4458ba
fadd qword [0x59eea8]
fcom qword [0x59eb08]
fnstsw ax
test ah, 5
jp 0x4458ea
fcom qword [0x59ee78]
fnstsw ax
test ah, 5
jp 0x445a88
xor eax, eax
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x14], 0x3ff00000
fstp st(0)
mov eax, dword [0x5c329c]
inc edi
cmp edi, eax
jl 0x445776
mov dl, byte [esp + 0x53]
test dl, dl
je 0x445f39
fld dword [esp + 0x84]
fmul dword [esp + 0xe8]
fld dword [esp + 0x8c]
fmul dword [esp + 0xf0]
faddp st(1)
fld dword [esp + 0x88]
fmul dword [esp + 0xec]
faddp st(1)
fld dword [0x59e440]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x44594b
fstp st(0)
fld dword [0x59e440]
fmul qword [0x59ee58]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x94]
mov dword [esp + 0x58], eax
mov eax, dword [ecx + 0x98]
fadd qword [0x59e7e0]
fstp dword [esp + 0x40]
mov dword [esp + 0x5c], eax
fld dword [esp + 0x40]
mov eax, dword [ecx + 0x9c]
fcomp dword [esp + 0x74]
mov dword [esp + 0x60], eax
fnstsw ax
test ah, 0x41
jne 0x445af2
fld dword [esp + 0x8c]
fmul dword [esp + 0x8c]
fld dword [esp + 0x88]
fmul dword [esp + 0x88]
faddp st(1)
fld dword [esp + 0x84]
fmul dword [esp + 0x84]
faddp st(1)
fsqrt
fld dword [esp + 0x74]
fadd st(1)
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 5
jp 0x4459fd
mov eax, dword [ecx + 0x110]
test eax, eax
je 0x4459fd
fstp st(0)
fld dword [ecx + 0x3c]
mov ecx, eax
fld dword [esp + 0x74]
fadd st(1)
fstp dword [esp + 0x74]
fld dword [esp + 0x74]
fadd st(1)
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 5
jnp 0x4459d1
mov eax, dword [ecx + 0x110]
test eax, eax
je 0x445ad6
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x44
jnp 0x445ad8
fld dword [esp + 0x40]
fsub dword [esp + 0x74]
fld st(0)
fmul dword [ecx + 0xa4]
fld st(1)
fmul dword [ecx + 0xa8]
fstp dword [esp + 0x94]
fxch st(1)
fmul dword [ecx + 0xac]
fstp dword [esp + 0x98]
fadd dword [ecx + 0x94]
fstp dword [esp + 0x34]
fld dword [esp + 0x94]
fadd dword [ecx + 0x98]
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
fld dword [esp + 0x98]
fadd dword [ecx + 0x9c]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x58], ecx
fstp dword [esp + 0x3c]
mov ecx, dword [esp + 0x3c]
jmp 0x445aea
fcom dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x445ab7
fchs
xor eax, eax
fmul qword [0x59eb28]
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
fcom qword [ebp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x445acf
fstp qword [ebp + 0x10]
jmp 0x4458ec
fmul qword [0x59eb28]
fcom qword [ebp + 8]
fnstsw ax
test ah, 5
jp 0x445acf
fstp qword [ebp + 8]
jmp 0x4458ec
fstp st(0)
jmp 0x4458ec
fstp st(0)
add ecx, 0x94
mov eax, dword [ecx]
mov dword [esp + 0x58], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], ecx
fld dword [esp + 0x58]
mov ecx, dword [ebp + 0x15f0]
fadd dword [esp + 0x104]
fld dword [esp + 0x10c]
fadd dword [esp + 0x60]
fxch st(1)
fsub dword [esp + 0xb8]
fstp dword [esp + 0xc4]
fsub dword [esp + 0xc0]
fld qword [ecx + 0x2c]
fchs
fld qword [ecx + 0x5c]
fchs
fxch st(1)
fpatan
fld dword [esp + 0xc4]
fxch st(2)
fxch st(1)
fxch st(2)
fpatan
fsubp st(1)
fcom dword [0x59e660]
fnstsw ax
test ah, 0x41
jne 0x445b59
fsub dword [0x59e888]
jmp 0x445b6c
fcom dword [0x59ee50]
fnstsw ax
test ah, 5
jp 0x445b6c
fadd dword [0x59e888]
fmul qword [ebp + 0x8c]
fst qword [esp + 0x18]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x445b8d
mov dword [esp + 0x1c], 0x3ff00000
jmp 0x445ba6
fld qword [esp + 0x18]
fcomp qword [0x59e428]
fnstsw ax
test ah, 5
jp 0x445bae
mov dword [esp + 0x1c], 0xbff00000
mov dword [esp + 0x18], 0
fld qword [ecx + 0x5c]
fmul qword [ecx + 0x74]
fld qword [ecx + 0x44]
fmul qword [ecx + 0x6c]
faddp st(1)
fld qword [ecx + 0x2c]
fmul qword [ecx + 0x64]
faddp st(1)
fst qword [esp + 0xd4]
fcomp qword [0x59e428]
fnstsw ax
test ah, 0x41
jne 0x445c03
fld qword [esp + 0xd4]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x445bf2
fld qword [esp + 0x18]
jmp 0x445bfd
fld qword [esp + 0xd4]
fmul qword [esp + 0x18]
fchs
fstp qword [esp + 0x18]
cmp dl, 3
je 0x445f2b
test byte [0x7ce6d0], 1
je 0x445cdc
cmp dl, 1
jne 0x445c26
fld qword [0x59ee48]
jmp 0x445c2c
fld qword [0x59ee40]
lea eax, [ebp + 0x504]
mov ecx, 2
fld st(0)
add eax, 0x464
dec ecx
fmul qword [eax - 0x290]
fstp qword [eax - 0x464]
fld st(0)
fmul qword [eax - 0x288]
fstp qword [eax - 0x454]
jne 0x445c37
cmp dl, 1
fstp st(0)
jne 0x445c6a
fld qword [0x59ee38]
jmp 0x445c70
fld qword [0x59ee30]
lea eax, [ebp + 0xdcc]
mov ecx, 2
nop
lea esp, [esp]
fld st(0)
add eax, 0x464
dec ecx
fmul qword [eax - 0x290]
fstp qword [eax - 0x464]
fld st(0)
fmul qword [eax - 0x288]
fstp qword [eax - 0x454]
jne 0x445c80
cmp dl, 1
fstp st(0)
jne 0x445cb3
fld qword [0x59ee28]
jmp 0x445cb9
fld qword [0x59ee20]
lea eax, [ebp + 0x5b8]
mov ecx, 4
fld st(0)
add eax, 0x464
dec ecx
fadd qword [eax - 0x334]
fstp qword [eax - 0x464]
jne 0x445cc4
fstp st(0)
cmp dword [0x7ce6d0], 2
jl 0x445e8d
cmp dl, 1
jne 0x445dca
fld qword [ebp]
fsub qword [ebp + 0xa4]
fabs
fmul qword [ebp + 0x68]
fld qword [ebp]
fcomp qword [ebp + 0xa4]
fld qword [esp + 0x18]
fnstsw ax
fcomp qword [ebp]
test ah, 5
fnstsw ax
jp 0x445d67
test ah, 5
jp 0x445d26
fmul qword [0x59ee18]
jmp 0x445d3d
fld qword [esp + 0x18]
fcomp qword [ebp + 0xa4]
fnstsw ax
test ah, 5
jp 0x445d3d
fmul qword [0x59eb48]
fsubr qword [ebp + 0xa4]
fst qword [ebp + 0xa4]
fcomp qword [ebp]
fnstsw ax
test ah, 5
jp 0x445db3
mov edx, dword [ebp]
mov eax, dword [ebp + 4]
mov dword [ebp + 0xa4], edx
mov dword [ebp + 0xa8], eax
jmp 0x445db3
test ah, 0x41
jne 0x445d74
fmul qword [0x59ee18]
jmp 0x445d8b
fld qword [esp + 0x18]
fcomp qword [ebp + 0xa4]
fnstsw ax
test ah, 0x41
jne 0x445d8b
fmul qword [0x59eb48]
fadd qword [ebp + 0xa4]
fst qword [ebp + 0xa4]
fcomp qword [ebp]
fnstsw ax
test ah, 0x41
jne 0x445db3
mov ecx, dword [ebp]
mov edx, dword [ebp + 4]
mov dword [ebp + 0xa4], ecx
mov dword [ebp + 0xa8], edx
mov eax, dword [ebp + 0xa4]
mov ecx, dword [ebp + 0xa8]
mov dword [ebp], eax
mov dword [ebp + 4], ecx
jmp 0x445f39
fld dword [esp + 0x48]
fcomp qword [0x59e430]
fld qword [esp + 0x18]
fnstsw ax
test ah, 5
jp 0x445e36
fsub qword [esp + 0x28]
fcomp qword [0x59ee10]
fnstsw ax
test ah, 0x41
jne 0x445e00
fld qword [esp + 0x18]
fadd qword [0x59eb28]
fmul dword [esp + 0x48]
jmp 0x445e08
fld dword [esp + 0x48]
fmul qword [esp + 0x28]
fadd qword [esp + 0x18]
fstp qword [ebp]
fld qword [ebp]
fcomp qword [0x59e428]
fnstsw ax
test ah, 5
jp 0x445f39
mov dword [ebp], 0
mov dword [ebp + 4], 0xbff00000
jmp 0x445f39
fadd qword [esp + 0x28]
fcomp qword [0x59eb28]
fnstsw ax
test ah, 5
jp 0x445e57
fld qword [0x59eb28]
fsub qword [esp + 0x18]
fmul dword [esp + 0x48]
jmp 0x445e5f
fld dword [esp + 0x48]
fmul qword [esp + 0x28]
fadd qword [esp + 0x18]
fstp qword [ebp]
fld qword [ebp]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x445f39
mov dword [ebp], 0
mov dword [ebp + 4], 0x3ff00000
jmp 0x445f39
cmp dl, 1
jne 0x445e9a
fld qword [0x59ee08]
jmp 0x445ea0
fld qword [0x59ee00]
fmul qword [ebp + 0x8c]
fmul qword [0x59eae8]
fld qword [esp + 0x28]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x445ebf
fstp st(0)
fld qword [esp + 0x28]
fld dword [esp + 0x48]
fcomp dword [0x59e440]
fnstsw ax
test ah, 5
jp 0x445ee1
fld qword [esp + 0x18]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jnp 0x445f03
fld dword [esp + 0x48]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x445f1e
fld qword [esp + 0x18]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x445f1e
fld qword [esp + 0x18]
fabs
fstp qword [esp + 0x28]
fcom qword [esp + 0x28]
fnstsw ax
test ah, 0x41
je 0x445f1e
fstp st(0)
fld qword [esp + 0x28]
fld dword [esp + 0x48]
fmul st(1)
fstp qword [ebp]
fstp st(0)
jmp 0x445f39
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [ebp], edx
mov dword [ebp + 4], eax
mov al, byte [esp + 0x55]
xor esi, esi
test al, al
mov dword [ebp + 0xec], esi
mov dword [ebp + 0xf0], esi
mov dword [ebp + 0xf4], esi
mov dword [ebp + 0xf8], esi
mov dword [ebp + 0xfc], esi
mov dword [ebp + 0x100], esi
mov dword [ebp + 0x104], esi
mov dword [ebp + 0x108], esi
mov dword [ebp + 0x10c], esi
mov dword [ebp + 0x110], esi
mov dword [ebp + 0x114], esi
mov dword [ebp + 0x118], esi
je 0x446322
mov ecx, dword [ebp + 0x15f0]
fld qword [ecx + 0x74]
fld qword [ecx + 0x6c]
fld qword [ecx + 0x64]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp qword [0x59e7d8]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x446322
fld qword [ecx + 0x3c]
fcomp qword [0x59e880]
fnstsw ax
test ah, 0x41
jne 0x446322
mov eax, dword [ebp + 0x1f00]
cmp dword [eax + 0x4064], esi
jne 0x446322
fld qword [ecx + 0x14]
lea edx, [esp + 0x90]
fld qword [ecx + 0xc]
xor bl, bl
fld qword [ecx + 4]
lea ecx, [esp + 0xc4]
push ecx
fstp dword [esp + 0x88]
push edx
fstp dword [esp + 0x90]
push eax
mov ecx, 0x8acee0
fstp dword [esp + 0x98]
call fcn.004d1140
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0xc8]
push ecx
mov ecx, dword [ebp + 0x1f00]
lea edx, [esp + 0x98]
push edx
add ecx, 0xc
call fcn.004ef6c0
fld dword [esp + 0x58]
fsub dword [esp + 0x84]
fstp dword [esp + 0x58]
fld dword [esp + 0x5c]
fsub dword [esp + 0x88]
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fsub dword [esp + 0x8c]
fstp dword [esp + 0x60]
fld dword [esp + 0x58]
fmul dword [esp + 0x58]
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fld dword [esp + 0x5c]
fmul dword [esp + 0x5c]
faddp st(1)
fcomp qword [0x59eea8]
fnstsw ax
test ah, 5
jp 0x4460a6
mov bl, 1
jmp 0x44612b
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 4]
add eax, 4
fsub qword [ebp + 0x120]
lea edi, [ebp + 0x120]
fld qword [eax + 8]
fsub qword [edi + 8]
fld qword [eax + 0x10]
mov eax, dword [ebp + 0x11c]
cmp eax, esi
fsub qword [edi + 0x10]
je 0x4460f9
fld st(2)
fmul st(3)
fld st(1)
fmul st(2)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fcomp qword [0x59ee98]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jne 0x44612b
jmp 0x4460ff
fstp st(0)
fstp st(0)
fstp st(0)
push 0
lea eax, [esp + 0x88]
push eax
mov ecx, 0x5ea2c0
call fcn.00403640
mov esi, dword [ebp + 0x15f0]
add esi, 4
mov ecx, 6
mov dword [ebp + 0x11c], eax
rep movsd dword es:[edi], dword [esi]
xor esi, esi
test bl, bl
mov ecx, dword [ebp + 0x11c]
mov edi, 0x3ff00000
jne 0x446327
fld dword [esp + 0x84]
xor dl, dl
fsub dword [ecx]
fld dword [esp + 0x88]
fsub dword [ecx + 4]
fld dword [esp + 0x8c]
fsub dword [ecx + 8]
fmul dword [ecx + 0x28]
fxch st(1)
fmul dword [ecx + 0x24]
faddp st(1)
fxch st(1)
fmul dword [ecx + 0x20]
faddp st(1)
fld dword [ecx + 0x2c]
fchs
fld st(1)
fcompp
fnstsw ax
test ah, 5
jnp 0x4461eb
fld dword [ecx + 0x30]
fxch st(1)
fcompp
fnstsw ax
test ah, 0x41
je 0x4461ed
add ecx, 0xa4
mov eax, dword [ecx]
mov dword [esp + 0x34], eax
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x3c], ecx
fld dword [esp + 0x3c]
fchs
mov dword [esp + 0x38], eax
fld dword [esp + 0x34]
fpatan
mov ecx, dword [ebp + 0x15f0]
fld qword [ecx + 0x2c]
fmul qword [0x59e428]
fld qword [ecx + 0x5c]
fmul qword [0x59e428]
fchs
fxch st(1)
fpatan
fld st(0)
fld st(2)
fsub qword [0x59e890]
fcompp
fnstsw ax
test ah, 0x41
jne 0x446210
fadd dword [0x59e888]
jmp 0x446229
fstp st(0)
mov ecx, dword [ecx + 0x110]
fld dword [ecx]
mov dl, 1
fsub dword [esp + 0x84]
fld dword [ecx + 8]
fsub dword [esp + 0x8c]
fchs
fxch st(1)
fpatan
jmp 0x4461b2
fld st(0)
fld st(2)
fadd qword [0x59e890]
fcompp
fnstsw ax
test ah, 5
jp 0x446229
fsub dword [0x59e888]
fxch st(1)
fsub st(1)
fstp dword [esp + 0x18]
fstp st(0)
fld dword [esp + 0x18]
fabs
fcomp qword [0x59edf8]
fnstsw ax
test ah, 0x41
jne 0x4462d0
mov al, byte [esp + 0x56]
test al, al
je 0x44626e
mov edx, dword [ebp + 0x1f00]
mov al, byte [edx + 0x344c]
test al, al
je 0x44626e
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
mov dword [ebp + 0x10], esi
mov dword [ebp + 0x14], edi
fld qword [ecx + 0x8c]
fmul qword [ecx + 0x54]
fld qword [ecx + 0x84]
fmul qword [ecx + 0x3c]
faddp st(1)
fld qword [ecx + 0x24]
fmul qword [ecx + 0x7c]
faddp st(1)
fmul qword [0x59edf0]
fld dword [esp + 0x18]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x4462c8
fadd qword [0x59ede8]
fld st(0)
fmul qword [ecx + 0x24]
fstp qword [ebp + 0x104]
fld st(0)
fmul qword [ecx + 0x3c]
fstp qword [ebp + 0x10c]
fmul qword [ecx + 0x54]
fstp qword [ebp + 0x114]
jmp 0x446327
fsub qword [0x59ede8]
jmp 0x4462a7
test dl, dl
je 0x446327
cmp byte [esp + 0x55], 1
jbe 0x446327
mov al, byte [esp + 0x56]
test al, al
je 0x4462f3
mov eax, dword [ebp + 0x1f00]
mov dl, byte [eax + 0x344c]
test dl, dl
jne 0x446327
fld qword [ecx + 0x2c]
fmul qword [0x59ede0]
fstp qword [ebp + 0xec]
fld qword [ecx + 0x44]
fmul qword [0x59ede0]
fstp qword [ebp + 0xf4]
fld qword [ecx + 0x5c]
fmul qword [0x59ede0]
fstp qword [ebp + 0xfc]
jmp 0x446327
mov edi, 0x3ff00000
mov cl, byte [esp + 0x4f]
test cl, cl
mov ebx, dword [esp + 0x68]
je 0x4465aa
cmp ebx, esi
jne 0x4465aa
cmp dword [ebp + 0x34], 3
jg 0x44635c
fld dword [0x7ce8c8]
fadd qword [ebp + 0x38]
fcomp qword [ebp + 0x60]
fnstsw ax
test ah, 5
jp 0x4465aa
mov edx, dword [ebp + 0x1ef0]
cmp edx, 0xffffffff
jne 0x4463c9
mov al, byte [esp + 0x67]
test al, al
je 0x4465aa
fld dword [ebp + 0x1efc]
mov dword [ebp + 0x1efc], esi
fld dword [esp + 0x6c]
fcomp dword [0x59e440]
fnstsw ax
test ah, 0x41
jne 0x4465a8
fld dword [esp + 0x6c]
fmul qword [ebp + 0x68]
faddp st(1)
fst dword [ebp + 0x1efc]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x4465aa
push 4
push esi
mov ecx, ebp
call fcn.00447e00
mov dword [ebp + 0x1efc], esi
jmp 0x4465aa
cmp edx, esi
jne 0x4464cd
mov edx, dword [ebp + 0x1efc]
mov al, byte [esp + 0x17]
test al, al
mov dword [esp + 0x18], edx
mov dword [ebp + 0x1efc], esi
je 0x44647c
cmp dword [ebp + 0x1ef8], esi
jne 0x4465aa
fld dword [esp + 0xb4]
fcomp qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x44647c
mov eax, dword [ebp + 0x15f0]
fld qword [eax + 0x74]
add eax, 0x64
fld qword [eax + 8]
fld qword [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)
fcomp qword [0x59e420]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x44647c
fld dword [esp + 0xb4]
fmul qword [ebp + 0x68]
fadd dword [esp + 0x18]
fst dword [ebp + 0x1efc]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x4465aa
push 4
push 0xffffffffffffffff
mov ecx, ebp
call fcn.00447e00
mov dword [ebp + 0x1efc], esi
jmp 0x4465aa
cmp dword [ebp + 0x1ef8], esi
jne 0x4465aa
fld dword [esp + 0x6c]
fcomp qword [0x59eb28]
fnstsw ax
test ah, 1
jne 0x4465aa
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c8c]
fnstsw ax
test ah, 0x41
jne 0x4465aa
cmp cl, 2
je 0x4465aa
push 4
push 1
mov ecx, ebp
call fcn.00447e00
jmp 0x4465aa
cmp dword [ebp + 0x1ef8], esi
jne 0x4465aa
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c94]
fnstsw ax
test ah, 0x41
jne 0x446536
cmp edx, dword [ebp + 0x1eac]
jge 0x4465aa
cmp dword [ebp + 0x1d30], 1
je 0x4465aa
cmp cl, 2
je 0x4465aa
mov eax, dword [ebp + 0x144]
mov ecx, dword [ebp + 0x140]
push eax
push ecx
mov ecx, ebp
call fcn.00443af0
test al, al
je 0x4465aa
push 4
inc edx
push edx
call fcn.00447e00
jmp 0x4465aa
cmp cl, 1
je 0x4465aa
cmp edx, 1
jne 0x446570
fld dword [esp + 0x6c]
fcomp qword [0x59eb28]
fnstsw ax
test ah, 5
jp 0x4465aa
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c8c]
fnstsw ax
test ah, 5
jp 0x4465aa
push 4
push esi
mov ecx, ebp
call fcn.00447e00
jmp 0x4465aa
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + edx*8 + 0x1c9c]
fnstsw ax
test ah, 5
jp 0x4465aa
mov eax, dword [ebp + 0x14c]
mov ecx, dword [ebp + 0x148]
push eax
push ecx
mov ecx, ebp
call fcn.00443af0
test al, al
je 0x4465aa
push 4
dec edx
push edx
call fcn.00447e00
jmp 0x4465aa
fstp st(0)
mov eax, dword [esp + 0x100]
cmp eax, 0xffffffff
jl 0x4465d1
cmp eax, dword [ebp + 0x30]
je 0x4465d1
push 1
push eax
mov ecx, ebp
call fcn.00447e00
mov edx, dword [esp + 0x100]
mov dword [ebp + 0x30], edx
jmp 0x446634
cmp ebx, esi
je 0x446634
cmp dword [0x7cc1b8], esi
jne 0x4465ea
cmp dword [0x7cc1bc], 0x59
jne 0x4465ea
xor al, al
jmp 0x4465ec
mov al, 1
cmp ebx, 1
jne 0x44660b
test al, al
mov eax, dword [ebp + 0x1ef4]
je 0x446600
cmp eax, 0xffffffff
jle 0x446634
cmp eax, dword [ebp + 0x1eac]
jge 0x446634
inc eax
jmp 0x44662b
cmp ebx, 0xffffffff
jne 0x446634
test al, al
mov eax, dword [ebp + 0x1ef4]
je 0x446625
cmp eax, ebx
jle 0x446634
cmp eax, 1
je 0x446634
jmp 0x44662a
cmp eax, 0xffffffff
jle 0x446634
dec eax
push esi
mov ecx, ebp
push eax
call fcn.00447e00
mov al, byte [esp + 0x27]
test al, al
je 0x446649
push 1
push esi
mov ecx, ebp
call fcn.00447e00
mov dword [ebp + 0x30], esi
fld qword [ebp + 0x163c]
mov eax, dword [ebp + 0x1630]
fmul qword [ebp]
fadd qword [ebp + 0x1634]
fstp qword [eax]
mov ecx, dword [ebp + 0x1644]
fld qword [ebp + 0x1650]
fmul qword [ebp]
fadd qword [ebp + 0x1648]
fstp qword [ecx]
mov cl, byte [esp + 0x4c]
test cl, cl
mov dword [ebp + 0x170], esi
mov dword [ebp + 0x174], esi
je 0x44676f
mov al, byte [esp + 0x66]
test al, al
jne 0x44676f
mov eax, dword [ebp + 0x1e14]
sub eax, esi
je 0x4466df
dec eax
je 0x4466bf
dec eax
jne 0x4466f3
fld qword [ebp + 0x834]
fadd qword [ebp + 0x3d0]
fmul qword [0x59e880]
jmp 0x4466f7
fld qword [ebp + 0x10fc]
fadd qword [ebp + 0xc98]
fadd qword [ebp + 0x834]
fadd qword [ebp + 0x3d0]
fmul qword [0x59eb50]
jmp 0x4466f7
fld qword [ebp + 0x10fc]
fadd qword [ebp + 0xc98]
fmul qword [0x59e880]
jmp 0x4466f7
fld qword [esp + 0x28]
fmul qword [ebp + 0x150]
fadd qword [ebp + 0x158]
fcom qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x44671a
fstp st(0)
fld qword [0x59e430]
jmp 0x44672f
fcom qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x44672f
fstp st(0)
fld qword [0x59e420]
cmp cl, 1
fsub qword [0x59e420]
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
jne 0x446750
fmul qword [ebp + 0x160]
jmp 0x446756
fmul qword [ebp + 0x168]
fadd qword [0x59e420]
fmul qword [ebp + 8]
fstp qword [ebp + 8]
fld qword [esp + 0x28]
fsub qword [ebp + 8]
fstp qword [ebp + 0x170]
mov eax, dword [ebp + 0x1d30]
cmp eax, esi
je 0x446998
cmp eax, 1
mov dword [ebp + 0x20], esi
jne 0x4467ed
fld qword [ebp + 0x1c5c]
mov dword [ebp + 0x24], edi
fcomp qword [ebp + 0x1d3c]
fnstsw ax
test ah, 0x41
jne 0x446a55
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1d44]
fnstsw ax
test ah, 5
jp 0x4467e2
fld qword [ebp + 0x1d44]
fsub qword [ebp + 0x1c5c]
fld qword [ebp + 0x1d44]
fsub qword [ebp + 0x1d3c]
fdivp st(1)
fcom qword [ebp + 8]
fnstsw ax
test ah, 5
jp 0x446a53
fstp qword [ebp + 8]
jmp 0x446a55
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
jmp 0x446a55
cmp dword [ebp + 0x1ef0], 1
mov dword [ebp + 0x24], esi
jne 0x446976
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1e38]
fnstsw ax
test ah, 0x41
jne 0x446976
mov eax, dword [ebp + 0x1e14]
sub eax, esi
je 0x4468a7
dec eax
je 0x446857
dec eax
jne 0x4468cf
fld qword [ebp + 0x8fc]
fsub qword [ebp + 0xa14]
fmul qword [ebp + 0x82c]
fld qword [ebp + 0x498]
fsub qword [ebp + 0x5b0]
fmul qword [ebp + 0x3c8]
faddp st(1)
jmp 0x4468d3
fld qword [ebp + 0x11c4]
fsub qword [ebp + 0x12dc]
fmul qword [ebp + 0x10f4]
fld qword [ebp + 0xd60]
fsub qword [ebp + 0xe78]
fmul qword [ebp + 0xc90]
faddp st(1)
fld qword [ebp + 0x8fc]
fsub qword [ebp + 0xa14]
fmul qword [ebp + 0x82c]
faddp st(1)
fld qword [ebp + 0x498]
fsub qword [ebp + 0x5b0]
fmul qword [ebp + 0x3c8]
faddp st(1)
jmp 0x4468d3
fld qword [ebp + 0x11c4]
fsub qword [ebp + 0x12dc]
fmul qword [ebp + 0x10f4]
fld qword [ebp + 0xd60]
fsub qword [ebp + 0xe78]
fmul qword [ebp + 0xc90]
faddp st(1)
jmp 0x4468d3
fld qword [esp + 0x28]
fld qword [ebp + 0x1d34]
fdiv qword [ebp + 0x1eb8]
fmul st(1)
fdiv qword [ebp + 0x1e58]
fsubr qword [0x59e420]
fstp qword [ebp + 0x20]
fstp st(0)
fld qword [ebp + 0x20]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x446907
mov dword [ebp + 0x24], esi
jmp 0x44691a
fld qword [ebp + 0x20]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x44691d
mov dword [ebp + 0x24], edi
mov dword [ebp + 0x20], esi
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1d3c]
fnstsw ax
test ah, 0x41
jne 0x446976
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1d44]
fnstsw ax
test ah, 5
jp 0x44696c
fld qword [ebp + 0x1d44]
fsub qword [ebp + 0x1c5c]
fld qword [ebp + 0x1d44]
fsub qword [ebp + 0x1d3c]
fdivp st(1)
fcom qword [ebp + 8]
fnstsw ax
test ah, 5
jp 0x446974
fstp qword [ebp + 8]
jmp 0x446976
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
jmp 0x446976
fstp st(0)
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c84]
fnstsw ax
test ah, 5
jp 0x446a55
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], edi
jmp 0x446a55
mov al, byte [esp + 0x50]
test al, al
je 0x446a0f
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c84]
fnstsw ax
test ah, 5
jp 0x4469b8
mov dword [ebp + 0x24], edi
jmp 0x446a0c
fld qword [ebp + 0x1c5c]
fcomp qword [ebp + 0x1c8c]
fnstsw ax
test ah, 5
jp 0x446a09
fld dword [0x59e43c]
fsub dword [esp + 0x6c]
fld qword [ebp + 0x1c8c]
fsub qword [ebp + 0x1c5c]
fld qword [ebp + 0x1c8c]
fsub qword [ebp + 0x1c84]
fdivp st(1)
fstp qword [esp + 0x28]
fcom qword [esp + 0x28]
fnstsw ax
test ah, 0x41
je 0x446a04
fstp st(0)
fld qword [esp + 0x28]
fstp qword [ebp + 0x20]
jmp 0x446a0f
mov dword [ebp + 0x24], esi
mov dword [ebp + 0x20], esi
fld qword [ebp + 0x20]
fcomp qword [0x59eba0]
fnstsw ax
test ah, 5
jp 0x446a27
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], esi
jmp 0x446a55
fld qword [ebp + 0x20]
fcomp qword [0x59eb38]
fnstsw ax
test ah, 0x41
jne 0x446a3f
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], edi
jmp 0x446a55
fld qword [ebp + 0x20]
fsub qword [0x59eba0]
fmul qword [0x59e930]
fstp qword [ebp + 0x20]
jmp 0x446a55
fstp st(0)
mov eax, dword [ebp + 0xd0]
cmp eax, esi
je 0x446a89
cmp eax, 1
jne 0x446a7d
cmp dword [ebp + 0x1ef0], esi
je 0x446a83
cmp dword [ebp + 0x1d30], 1
je 0x446a83
mov dword [ebp + 0xd0], esi
jmp 0x446a89
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], edi
mov dword [ebp + 0x10], esi
mov dword [ebp + 0x14], edi
fld qword [ebp + 0x155c]
fmul qword [ebp + 0x10]
fld qword [0x59e420]
fsub qword [ebp + 0x1564]
fmul st(1)
fstp qword [esp + 0x90]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
fmul qword [ebp + 0x1564]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], edx
fstp qword [esp + 0xa0]
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0xa8], eax
mov al, byte [esp + 0x4e]
test al, al
mov dword [esp + 0xac], ecx
je 0x446c1f
cmp al, 1
mov dword [esp + 0x28], 0x33333333
mov dword [esp + 0x18], 0xcccccccd
jne 0x446b24
fld qword [0x59edd8]
mov dword [esp + 0x1c], 0x3fdccccc
mov dword [esp + 0x2c], 0x3fc33333
jmp 0x446b3a
fld qword [0x59ea68]
mov dword [esp + 0x1c], 0x3feccccc
mov dword [esp + 0x2c], 0x3fd33333
mov ecx, dword [ebp + 0x15f0]
fld qword [ecx + 0x4c]
fmul qword [ecx + 0x74]
fld qword [ecx + 0x34]
fmul qword [ecx + 0x6c]
faddp st(1)
fld qword [ecx + 0x1c]
fmul qword [ecx + 0x64]
faddp st(1)
fstp qword [esp + 0xc4]
fld qword [ecx + 0x2c]
fmul qword [ecx + 0x64]
fld qword [ecx + 0x5c]
fmul qword [ecx + 0x74]
faddp st(1)
fld qword [ecx + 0x44]
fmul qword [ecx + 0x6c]
faddp st(1)
fst qword [esp + 0xd4]
fmul qword [esp + 0xd4]
fld qword [esp + 0xc4]
fmul qword [esp + 0xc4]
faddp st(1)
fcomp qword [0x59eea8]
fnstsw ax
test ah, 0x41
jne 0x446c1d
fld qword [esp + 0xd4]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x446c1d
fld qword [ecx + 0x54]
fmul qword [ecx + 0x8c]
fld qword [ecx + 0x3c]
fmul qword [ecx + 0x84]
faddp st(1)
fld qword [ecx + 0x24]
fmul qword [ecx + 0x7c]
faddp st(1)
fld qword [esp + 0xc4]
fchs
fld qword [esp + 0xd4]
fchs
fpatan
fld qword [ebp + 0x94]
fmul qword [ebp]
fsubp st(1)
fxch st(1)
fmul qword [0x59eba0]
fsubp st(1)
fcom qword [0x59e430]
fnstsw ax
test ah, 0x41
jne 0x446cac
fsubrp st(1)
fld qword [0x59e430]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x446cc1
fstp st(0)
fld dword [esp + 0x110]
mov bl, byte [esp + 0x4d]
test bl, bl
fmul qword [ebp + 0x1554]
fld qword [esp + 0xa0]
fadd st(1)
fstp qword [esp + 0xa0]
fld qword [esp + 0xa8]
fadd st(1)
fstp qword [esp + 0xa8]
fstp st(0)
je 0x446edc
mov al, byte [ebp + 0x178]
test al, al
je 0x446e70
xor ecx, ecx
cmp bl, 1
lea edx, [ebp + 0x3d0]
jne 0x446e08
lea esp, [esp]
fld qword [edx]
fmul qword [ebp + 0x17c]
fadd qword [ebp + 0x184]
fcom qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x446dbe
fstp st(0)
fld qword [0x59e430]
jmp 0x446dd3
faddp st(1)
fld qword [0x59e430]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x446c1d
fcom qword [0x59e430]
fnstsw ax
test ah, 0x44
jnp 0x446c1d
fmul qword [esp + 0x18]
fcom qword [esp + 0x28]
fnstsw ax
test ah, 0x41
jne 0x446ce9
fstp st(0)
fld qword [esp + 0x28]
jmp 0x446d04
fld qword [esp + 0x28]
fchs
fstp qword [esp + 0x28]
fcom qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x446d04
fstp st(0)
fld qword [esp + 0x28]
fld qword [esp + 0x90]
xor ecx, ecx
fsub st(1)
fstp qword [esp + 0x90]
fld qword [esp + 0x98]
fadd st(1)
fstp qword [esp + 0x98]
fld qword [esp + 0xa0]
fsub st(1)
fstp qword [esp + 0xa0]
fld qword [esp + 0xa8]
fadd st(1)
fstp qword [esp + 0xa8]
fld qword [esp + ecx*8 + 0x90]
fcomp qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x446d63
mov dword [esp + ecx*8 + 0x94], esi
jmp 0x446d7e
fld qword [esp + ecx*8 + 0x90]
fcomp qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x446d85
mov dword [esp + ecx*8 + 0x94], edi
mov dword [esp + ecx*8 + 0x90], esi
inc ecx
cmp ecx, 4
jl 0x446d46
fabs
fmul qword [0x59edd0]
fcom qword [0x59edc8]
fnstsw ax
test ah, 0x41
jne 0x446da8
fstp st(0)
fld qword [0x59edc8]
fcom qword [ebp + 8]
fnstsw ax
test ah, 0x41
jne 0x446c1d
fstp qword [ebp + 8]
jmp 0x446c1f
fcom qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x446dd3
fstp st(0)
fld qword [0x59e420]
fsub qword [0x59e420]
inc ecx
add edx, 0x464
cmp ecx, 4
fmul qword [ebp + 0x18c]
fadd qword [0x59e420]
fmul qword [esp + ecx*8 + 0x88]
fstp qword [esp + ecx*8 + 0x88]
jl 0x446c80
jmp 0x446edc
fld qword [edx]
fmul qword [ebp + 0x17c]
fadd qword [ebp + 0x184]
fcom qword [0x59e430]
fnstsw ax
test ah, 5
jp 0x446e2d
fstp st(0)
fld qword [0x59e430]
jmp 0x446e42
fcom qword [0x59e420]
fnstsw ax
test ah, 0x41
jne 0x446e42
fstp st(0)
fld qword [0x59e420]
fsub qword [0x59e420]
inc ecx
add edx, 0x464
cmp ecx, 4
fmul qword [ebp + 0x194]
fadd qword [0x59e420]
fmul qword [esp + ecx*8 + 0x88]
fstp qword [esp + ecx*8 + 0x88]
jl 0x446e08
jmp 0x446edc
fld qword [0x59e420]
lea ecx, [ebp + 0x3d0]
mov edx, 4
fcom qword [ecx]
fnstsw ax
test ah, 0x41
jne 0x446e8e
fstp st(0)
fld qword [ecx]
add ecx, 0x464
dec edx
jne 0x446e81
cmp bl, 1
fmul qword [ebp + 0x17c]
fadd qword [ebp + 0x184]
fsub qword [0x59e420]
jne 0x446eb6
fmul qword [ebp + 0x18c]
jmp 0x446ebc
fmul qword [ebp + 0x194]
fadd qword [0x59e420]
xor eax, eax
fld st(0)
inc eax
cmp eax, 4
fmul qword [esp + eax*8 + 0x88]
fstp qword [esp + eax*8 + 0x88]
jl 0x446ec4
fstp st(0)
mov eax, dword [ebp + 0x1f00]
cmp dword [eax + 0x834], esi
je 0x446f06
mov cl, byte [eax + 0x874]
test cl, cl
je 0x446f06
cmp dword [eax + 0x95c], esi
je 0x446f06
mov cl, byte [eax + 0x99c]
test cl, cl
jne 0x446f32
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
cmp dword [eax + 0xa84], esi
je 0x446f56
mov cl, byte [eax + 0xac4]
test cl, cl
je 0x446f56
cmp dword [eax + 0xbac], esi
je 0x446f56
mov cl, byte [eax + 0xbec]
test cl, cl
jne 0x446f82
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
xor ecx, ecx
lea eax, [ebp + 0x668]
lea ebx, [ebx]
fld qword [esp + ecx*8 + 0x90]
inc ecx
fmul qword [eax + 8]
add eax, 0x464
cmp ecx, 4
fadd qword [eax - 0x464]
fstp qword [eax - 0x764]
jl 0x446f90
movzx edx, byte [esp + 0x50]
movzx eax, byte [esp + 0x4f]
push edx
push eax
mov ecx, ebp
call fcn.00443b70
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret