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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
push ebx
mov ebx, ecx
cmp byte [ebx + 0xa5], 0
push esi
push edi
jne 0x47c9ac
fld qword [ebp + 0x18]
fld qword [ebp + 8]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x47c510
fst qword [esp + 0x60]
jmp 0x47c518
fxch st(1)
fst qword [esp + 0x60]
fxch st(1)
fld qword [ebp + 0x20]
fld qword [ebp + 0x10]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x47c52d
fst qword [esp + 0x68]
jmp 0x47c535
fxch st(1)
fst qword [esp + 0x68]
fxch st(1)
fxch st(2)
fcom st(3)
fnstsw ax
test ah, 0x41
jne 0x47c544
fstp st(3)
jmp 0x47c546
fstp st(0)
fxch st(2)
fstp qword [esp + 0x70]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x47c559
fstp st(1)
jmp 0x47c55b
fstp st(0)
mov eax, dword [ebx]
fstp qword [esp + 0x78]
mov edx, dword [eax + 0x80]
call edx
test al, al
je 0x47c9ac
mov ecx, dword [ebx + 0xd4]
mov eax, dword [ebx + 0xd0]
mov edx, dword [ebx + 0xd8]
mov dword [esp + 0x20], ecx
mov ecx, dword [ebx + 0xa0]
mov dword [esp + 0x28], eax
mov eax, dword [ecx]
mov dword [esp + 0x18], edx
mov edx, dword [eax + 0x4c]
call edx
mov ecx, dword [ebx + 0xa0]
mov esi, dword [eax + 0x1c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x4c]
call edx
mov ecx, dword [ebx + 0xa0]
mov edi, dword [eax + 0x20]
mov eax, dword [ecx]
mov edx, dword [eax + 0x4c]
call edx
mov eax, dword [eax + 0x24]
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov dword [esp + 0x10], eax
mov eax, dword [edx + 0x4c]
call eax
mov ecx, dword [eax + 0x28]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, dword [eax + 0x2c]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, dword [eax + 0x30]
mov eax, dword [ebx + 0xcc]
mov dword [esp + 0x1c], ecx
cmp eax, 0x10
jne 0x47cc53
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, 8
sub ecx, dword [eax + 0x10]
mov eax, dword [ebp + 0x28]
mov edx, dword [eax + 0xc]
imul edx, dword [eax]
mov dword [esp + 0x54], edx
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
movzx ecx, ax
mov dword [esp + 0x4c], ecx
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, 8
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp + 0x28]
mov edx, dword [eax + 4]
imul edx, dword [eax + 0xc]
mov dword [esp + 0x54], edx
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
movzx ecx, ax
mov dword [esp + 0x40], ecx
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, 8
sub ecx, dword [eax + 0x18]
fld qword [ebp + 0x20]
mov eax, dword [ebp + 0x28]
fld st(0)
mov edx, dword [eax + 8]
fld qword [ebp + 0x10]
imul edx, dword [eax + 0xc]
fsub st(1), st(0)
fld qword [ebp + 0x18]
fld st(0)
fld qword [ebp + 8]
fsub st(1), st(0)
fld st(4)
fabs
fld st(2)
fabs
mov dword [esp + 0x54], edx
fcompp
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
mov dword [esp + 0x3c], 1
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
movzx ecx, ax
fnstsw ax
fldz
mov dword [esp + 0x44], ecx
mov ecx, dword [ebx + 0xb8]
shr ecx, 1
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
test ah, 0x41
jne 0x47c9b5
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x47c888
fstp st(4)
fxch st(1)
fchs
fxch st(4)
fchs
fxch st(3)
fxch st(5)
fxch st(3)
fxch st(4)
fxch st(1)
fxch st(2)
fxch st(5)
fcomp st(4)
fnstsw ax
test ah, 0x41
jne 0x47c755
fxch st(3)
neg ecx
fchs
mov dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x54], ecx
fxch st(3)
fld st(2)
call fcn.0076f850
fld st(4)
mov dword [esp + 0x38], eax
imul eax, dword [esp + 0x50]
mov dword [esp + 0x50], eax
call fcn.0076f850
mov ecx, dword [esp + 0x50]
mov edx, dword [ebx + 0xbc]
fxch st(4)
add ecx, eax
lea eax, [edx + ecx*2]
mov dword [esp + 0x30], eax
movzx eax, word [eax]
mov edx, eax
and edx, dword [esp + 0x28]
mov dword [esp + 0x48], eax
and eax, dword [esp + 0x20]
mov ecx, esi
shr edx, cl
movzx ecx, word [esp + 0x4c]
add edx, ecx
mov ecx, dword [esp + 0x2c]
mov dx, word [ecx + edx*4]
mov ecx, esi
shl dx, cl
mov ecx, edi
shr eax, cl
mov ecx, eax
movzx eax, word [esp + 0x40]
add ecx, eax
mov eax, dword [esp + 0x24]
movzx eax, word [eax + ecx*4]
mov ecx, edi
shl ax, cl
mov ecx, dword [esp + 0x10]
or dx, ax
mov eax, dword [esp + 0x48]
and eax, dword [esp + 0x18]
shr eax, cl
movzx ecx, word [esp + 0x44]
add eax, ecx
mov ecx, dword [esp + 0x1c]
movzx eax, word [ecx + eax*4]
mov ecx, dword [esp + 0x10]
shl ax, cl
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], ecx
or dx, ax
mov eax, dword [esp + 0x30]
mov word [eax], dx
fadd qword [0x7a8008]
add eax, 2
mov dword [esp + 0x30], eax
call fcn.0076f850
fld st(2)
fsub st(4)
mov dword [esp + 0xc], eax
fld qword [0x82dc10]
fmul st(1), st(0)
fxch st(1)
call fcn.0076f850
fmulp st(3)
mov dword [esp + 0x50], eax
fld st(2)
call fcn.0076f850
fild dword [esp + 0x38]
mov dword [esp + 0x34], eax
fsubp st(2)
fild dword [esp + 0x34]
fmulp st(2)
fxch st(2)
fsubrp st(3)
fxch st(2)
call fcn.0076f850
mov dword [esp + 0x58], eax
fild dword [esp + 0x58]
faddp st(2)
fxch st(1)
call fcn.0076f850
fild dword [esp + 0xc]
mov ecx, eax
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x47c99c
fld qword [esp + 0x60]
fld qword [esp + 0x68]
fld qword [esp + 0x70]
fld qword [esp + 0x78]
jmp 0x47c895
fstp st(6)
jmp 0x47c736
mov ecx, dword [esp + 0x38]
fxch st(4)
test ecx, ecx
jle 0x47c8f6
add ecx, dword [esp + 0x50]
fxch st(4)
mov edx, dword [esp + 0x3c]
fcom st(3)
mov eax, dword [esp + 0x30]
add dword [esp + 0x14], edx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x54]
lea edx, [eax + ecx*2]
fnstsw ax
mov dword [esp + 0x30], edx
test ah, 5
jnp 0x47c994
fild dword [esp + 0x14]
fcom st(3)
fnstsw ax
test ah, 5
jnp 0x47d1f5
fxch st(1)
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x47c994
fcomp st(4)
fnstsw ax
test ah, 0x41
je 0x47c996
jmp 0x47c900
add ecx, dword [esp + 0x34]
fstp st(4)
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x30]
movzx eax, word [eax]
mov edx, eax
and edx, dword [esp + 0x28]
mov dword [esp + 0x48], eax
and eax, dword [esp + 0x20]
mov ecx, esi
shr edx, cl
movzx ecx, word [esp + 0x4c]
add edx, ecx
mov ecx, dword [esp + 0x2c]
mov dx, word [ecx + edx*4]
mov ecx, esi
shl dx, cl
mov ecx, edi
shr eax, cl
inc dword [esp + 0xc]
fild dword [esp + 0xc]
mov ecx, eax
movzx eax, word [esp + 0x40]
fcom st(5)
add ecx, eax
mov eax, dword [esp + 0x24]
movzx eax, word [eax + ecx*4]
mov ecx, edi
shl ax, cl
mov ecx, dword [esp + 0x10]
or dx, ax
mov eax, dword [esp + 0x48]
and eax, dword [esp + 0x18]
shr eax, cl
movzx ecx, word [esp + 0x44]
add eax, ecx
mov ecx, dword [esp + 0x1c]
movzx eax, word [ecx + eax*4]
mov ecx, dword [esp + 0x10]
shl ax, cl
or dx, ax
mov eax, dword [esp + 0x30]
mov word [eax], dx
add eax, 2
mov dword [esp + 0x30], eax
fnstsw ax
test ah, 0x41
jnp 0x47c88f
fstp st(0)
fstp st(3)
fstp st(2)
fstp st(1)
fstp st(0)
fstp st(0)
mov edx, dword [ebx]
mov eax, dword [edx + 0x84]
mov ecx, ebx
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x24
fcom st(5)
fnstsw ax
test ah, 0x41
jne 0x47cb4e
fstp st(1)
fxch st(1)
fchs
fxch st(4)
fchs
fxch st(3)
fxch st(5)
fxch st(3)
fxch st(4)
fxch st(1)
fxch st(2)
fxch st(2)
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x47c9ed
fchs
mov dword [esp + 0x3c], 0xffffffff
fld st(1)
call fcn.0076f850
fnstcw word [esp + 0xc]
mov ecx, eax
fld st(2)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x58], eax
mov eax, dword [ebx + 0xbc]
mov dword [esp + 0x38], ecx
fldcw word [esp + 0x58]
fistp qword [esp + 0x58]
mov edx, dword [esp + 0x58]
imul edx, dword [ebx + 0xb8]
fldcw word [esp + 0xc]
fxch st(2)
shr edx, 1
add edx, ecx
movzx ecx, word [esp + 0x44]
lea eax, [eax + edx*2]
movzx edx, word [esp + 0x40]
mov dword [esp + 0x30], eax
movzx eax, word [eax]
mov dword [esp + 0x58], ecx
movzx ecx, word [esp + 0x4c]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x44], edx
mov edx, eax
and edx, dword [esp + 0x28]
mov dword [esp + 0x48], eax
and eax, dword [esp + 0x20]
mov ecx, esi
shr edx, cl
mov ecx, dword [esp + 0x2c]
add edx, dword [esp + 0x54]
mov dx, word [ecx + edx*4]
mov ecx, esi
shl dx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
movzx eax, word [ecx + eax*4]
mov ecx, edi
shl ax, cl
mov ecx, dword [esp + 0x10]
or dx, ax
mov eax, dword [esp + 0x48]
and eax, dword [esp + 0x18]
shr eax, cl
mov ecx, dword [esp + 0x1c]
add eax, dword [esp + 0x58]
movzx eax, word [ecx + eax*4]
mov ecx, dword [esp + 0x10]
shl ax, cl
mov ecx, dword [esp + 0x50]
add ecx, ecx
mov dword [esp + 0x40], ecx
or dx, ax
mov eax, dword [esp + 0x30]
mov word [eax], dx
add eax, ecx
mov ecx, dword [esp + 0x38]
fadd qword [0x7a8008]
mov dword [esp + 0x30], eax
mov dword [esp + 0xc], ecx
call fcn.0076f850
mov dword [esp + 0x14], eax
fld st(1)
fsub st(3)
fld qword [0x82dc10]
fmul st(1), st(0)
fxch st(1)
call fcn.0076f850
fmulp st(2)
mov dword [esp + 0x50], eax
fld st(1)
call fcn.0076f850
fisub dword [esp + 0x38]
mov dword [esp + 0x34], eax
fimul dword [esp + 0x34]
fxch st(1)
fsubrp st(2)
fxch st(1)
call fcn.0076f850
mov dword [esp + 0x4c], eax
fild dword [esp + 0x4c]
faddp st(1)
call fcn.0076f850
fild dword [esp + 0x14]
mov ecx, eax
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x47c99c
fld qword [esp + 0x60]
fld qword [esp + 0x68]
fld qword [esp + 0x70]
fld qword [esp + 0x78]
jmp 0x47cb5b
fstp st(3)
jmp 0x47c9d8
mov ecx, dword [esp + 0x38]
fxch st(4)
test ecx, ecx
jle 0x47cbba
mov eax, dword [esp + 0x3c]
add dword [esp + 0xc], eax
fild dword [esp + 0xc]
mov edx, dword [esp + 0x30]
add ecx, dword [esp + 0x50]
lea eax, [edx + eax*2]
fcom st(4)
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], ecx
fnstsw ax
test ah, 5
jnp 0x47d1fc
fxch st(5)
fcom st(3)
fnstsw ax
test ah, 5
jnp 0x47d205
fxch st(5)
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x47d1fe
fcom st(4)
fnstsw ax
fstp st(4)
test ah, 5
jnp 0x47c996
jmp 0x47cbc4
add ecx, dword [esp + 0x34]
fstp st(4)
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x30]
movzx eax, word [ecx]
mov edx, eax
and edx, dword [esp + 0x28]
mov dword [esp + 0x48], eax
and eax, dword [esp + 0x20]
mov ecx, esi
shr edx, cl
mov ecx, dword [esp + 0x2c]
inc dword [esp + 0x14]
fild dword [esp + 0x14]
add edx, dword [esp + 0x54]
mov dx, word [ecx + edx*4]
fcom st(5)
mov ecx, esi
shl dx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
movzx eax, word [ecx + eax*4]
mov ecx, edi
shl ax, cl
mov ecx, dword [esp + 0x10]
or dx, ax
mov eax, dword [esp + 0x48]
and eax, dword [esp + 0x18]
shr eax, cl
mov ecx, dword [esp + 0x1c]
add eax, dword [esp + 0x58]
movzx eax, word [ecx + eax*4]
mov ecx, dword [esp + 0x10]
shl ax, cl
or dx, ax
mov eax, dword [esp + 0x30]
mov word [eax], dx
add eax, dword [esp + 0x40]
mov dword [esp + 0x30], eax
fnstsw ax
test ah, 0x41
jnp 0x47cb55
jmp 0x47c994
cmp eax, 0x20
jne 0x47c9a0
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov ecx, 8
sub ecx, dword [eax + 0x10]
mov eax, dword [ebp + 0x28]
mov edx, dword [eax + 0xc]
imul edx, dword [eax]
mov dword [esp + 0x54], edx
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov dword [esp + 0x48], eax
mov eax, dword [edx + 0x4c]
call eax
mov ecx, 8
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp + 0x28]
mov edx, dword [eax + 4]
imul edx, dword [eax + 0xc]
mov dword [esp + 0x54], edx
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
mov ecx, dword [ebx + 0xa0]
mov edx, dword [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [edx + 0x4c]
call eax
fld qword [ebp + 0x20]
mov ecx, 8
fld st(0)
sub ecx, dword [eax + 0x18]
fld qword [ebp + 0x10]
mov eax, dword [ebp + 0x28]
fsub st(1), st(0)
mov edx, dword [eax + 8]
fld qword [ebp + 0x18]
imul edx, dword [eax + 0xc]
fld st(0)
fld qword [ebp + 8]
fsub st(1), st(0)
fld st(4)
fabs
fld st(2)
fabs
fcompp
mov dword [esp + 0x54], edx
mov eax, 0x80808081
imul edx
add edx, dword [esp + 0x54]
mov dword [esp + 0x3c], 1
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, cl
mov ecx, dword [ebx + 0xb8]
shr ecx, 2
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x54], ecx
fnstsw ax
fldz
test ah, 0x41
jne 0x47cf9a
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x47ce9e
fstp st(4)
fxch st(1)
fchs
fxch st(4)
fchs
fxch st(3)
fxch st(5)
fxch st(3)
fxch st(4)
fxch st(1)
fxch st(2)
fxch st(5)
fcomp st(4)
fnstsw ax
test ah, 0x41
jne 0x47cd9b
fxch st(3)
neg ecx
fchs
mov dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x54], ecx
fxch st(3)
fxch st(2)
call fcn.0076f850
fld st(3)
mov dword [esp + 0x38], eax
imul eax, dword [esp + 0x4c]
mov dword [esp + 0x50], eax
call fcn.0076f850
mov ecx, dword [esp + 0x50]
mov edx, dword [ebx + 0xbc]
fxch st(3)
add ecx, eax
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov eax, dword [eax]
mov edx, eax
and edx, dword [esp + 0x18]
mov dword [esp + 0x50], eax
and eax, dword [esp + 0x20]
shr edx, cl
mov ecx, dword [esp + 0x1c]
add edx, dword [esp + 0x40]
mov edx, dword [ecx + edx*4]
mov ecx, dword [esp + 0x10]
shl edx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
mov eax, dword [ecx + eax*4]
mov ecx, edi
shl eax, cl
mov ecx, esi
or edx, eax
mov eax, dword [esp + 0x50]
and eax, dword [esp + 0x28]
shr eax, cl
mov ecx, dword [esp + 0x2c]
add eax, dword [esp + 0x48]
mov eax, dword [ecx + eax*4]
mov ecx, esi
shl eax, cl
mov ecx, dword [esp + 0x38]
mov dword [esp + 0xc], ecx
or edx, eax
mov eax, dword [esp + 0x30]
mov dword [eax], edx
fadd qword [0x7a8008]
add eax, 4
mov dword [esp + 0x30], eax
call fcn.0076f850
fld st(1)
fld qword [0x82dc10]
mov dword [esp + 0x14], eax
fmul st(1), st(0)
fld st(1)
fsub st(3)
call fcn.0076f850
fxch st(3)
fsubrp st(2)
mov dword [esp + 0x34], eax
fxch st(1)
fmulp st(2)
fxch st(1)
call fcn.0076f850
mov dword [esp + 0x4c], eax
call fcn.0076f850
fild dword [esp + 0x14]
mov dword [esp + 0x38], eax
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x47c99c
fld qword [esp + 0x60]
fld qword [esp + 0x68]
fld qword [esp + 0x70]
fld qword [esp + 0x78]
jmp 0x47cea7
fstp st(6)
jmp 0x47cd7c
fxch st(4)
mov eax, dword [esp + 0x34]
test eax, eax
jle 0x47cf0c
add eax, dword [esp + 0x4c]
fxch st(4)
mov edx, dword [esp + 0x3c]
fcom st(3)
add dword [esp + 0xc], edx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x30]
lea edx, [eax + ecx*4]
fnstsw ax
mov dword [esp + 0x30], edx
test ah, 5
jnp 0x47c994
fild dword [esp + 0xc]
fcom st(3)
fnstsw ax
test ah, 5
jnp 0x47d1f5
fxch st(1)
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x47c994
fcomp st(4)
fnstsw ax
test ah, 0x41
je 0x47c996
jmp 0x47cf16
add eax, dword [esp + 0x38]
fstp st(4)
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
mov edx, eax
and edx, dword [esp + 0x18]
mov dword [esp + 0x50], eax
and eax, dword [esp + 0x20]
shr edx, cl
mov ecx, dword [esp + 0x1c]
inc dword [esp + 0x14]
fild dword [esp + 0x14]
add edx, dword [esp + 0x40]
mov edx, dword [ecx + edx*4]
fcom st(5)
mov ecx, dword [esp + 0x10]
shl edx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
mov eax, dword [ecx + eax*4]
mov ecx, edi
shl eax, cl
mov ecx, esi
or edx, eax
mov eax, dword [esp + 0x50]
and eax, dword [esp + 0x28]
shr eax, cl
mov ecx, dword [esp + 0x2c]
add eax, dword [esp + 0x48]
mov eax, dword [ecx + eax*4]
mov ecx, esi
shl eax, cl
or edx, eax
mov eax, dword [esp + 0x30]
mov dword [eax], edx
add eax, 4
mov dword [esp + 0x30], eax
fnstsw ax
test ah, 0x41
jnp 0x47cea5
jmp 0x47c994
fcom st(5)
fnstsw ax
test ah, 0x41
jne 0x47d0fa
fstp st(1)
fxch st(1)
fchs
fxch st(4)
fchs
fxch st(3)
fxch st(5)
fxch st(3)
fxch st(4)
fxch st(1)
fxch st(2)
fxch st(2)
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x47cfd2
fchs
mov dword [esp + 0x3c], 0xffffffff
fxch st(1)
call fcn.0076f850
fnstcw word [esp + 0xc]
mov ecx, eax
fld st(1)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x58], eax
mov eax, dword [ebx + 0xbc]
mov dword [esp + 0x38], ecx
fldcw word [esp + 0x58]
fistp qword [esp + 0x58]
mov edx, dword [esp + 0x58]
imul edx, dword [ebx + 0xb8]
fldcw word [esp + 0xc]
fxch st(1)
shr edx, 2
add edx, ecx
mov ecx, dword [esp + 0x10]
lea eax, [eax + edx*4]
mov dword [esp + 0x30], eax
mov eax, dword [eax]
mov edx, eax
and edx, dword [esp + 0x18]
mov dword [esp + 0x50], eax
and eax, dword [esp + 0x20]
shr edx, cl
mov ecx, dword [esp + 0x1c]
add edx, dword [esp + 0x40]
mov edx, dword [ecx + edx*4]
mov ecx, dword [esp + 0x10]
shl edx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
mov eax, dword [ecx + eax*4]
mov ecx, edi
shl eax, cl
mov ecx, esi
or edx, eax
mov eax, dword [esp + 0x50]
and eax, dword [esp + 0x28]
shr eax, cl
mov ecx, dword [esp + 0x2c]
add eax, dword [esp + 0x48]
mov eax, dword [ecx + eax*4]
mov ecx, esi
shl eax, cl
mov ecx, dword [esp + 0x4c]
add ecx, ecx
add ecx, ecx
or edx, eax
mov eax, dword [esp + 0x30]
mov dword [eax], edx
fadd qword [0x7a8008]
add eax, ecx
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], ecx
call fcn.0076f850
fld st(0)
fld qword [0x82dc10]
mov dword [esp + 0xc], eax
fmul st(1), st(0)
fld st(1)
fsub st(4)
call fcn.0076f850
fxch st(2)
fsubrp st(3)
mov dword [esp + 0x34], eax
fxch st(2)
fmulp st(1)
call fcn.0076f850
mov dword [esp + 0x4c], eax
call fcn.0076f850
fild dword [esp + 0xc]
mov dword [esp + 0x38], eax
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x47c99c
fld qword [esp + 0x60]
fld qword [esp + 0x68]
fld qword [esp + 0x70]
fld qword [esp + 0x78]
jmp 0x47d103
fstp st(3)
jmp 0x47cfbd
fxch st(4)
mov eax, dword [esp + 0x34]
test eax, eax
jle 0x47d166
add eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x3c]
add dword [esp + 0x14], eax
fild dword [esp + 0x14]
lea eax, [edx + eax*4]
mov dword [esp + 0x30], eax
fcom st(4)
fnstsw ax
test ah, 5
jnp 0x47d1fc
fxch st(5)
fcom st(3)
fnstsw ax
test ah, 5
jnp 0x47d205
fxch st(5)
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x47d1fe
fcom st(4)
fnstsw ax
fstp st(4)
test ah, 5
jnp 0x47c996
jmp 0x47d170
add eax, dword [esp + 0x38]
fstp st(4)
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx]
mov ecx, dword [esp + 0x10]
mov edx, eax
and edx, dword [esp + 0x18]
mov dword [esp + 0x50], eax
and eax, dword [esp + 0x20]
shr edx, cl
mov ecx, dword [esp + 0x1c]
inc dword [esp + 0xc]
fild dword [esp + 0xc]
add edx, dword [esp + 0x40]
mov edx, dword [ecx + edx*4]
fcom st(5)
mov ecx, dword [esp + 0x10]
shl edx, cl
mov ecx, edi
shr eax, cl
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x44]
mov eax, dword [ecx + eax*4]
mov ecx, edi
shl eax, cl
mov ecx, esi
or edx, eax
mov eax, dword [esp + 0x50]
and eax, dword [esp + 0x28]
shr eax, cl
mov ecx, dword [esp + 0x2c]
add eax, dword [esp + 0x48]
mov eax, dword [ecx + eax*4]
mov ecx, esi
shl eax, cl
or edx, eax
mov eax, dword [esp + 0x30]
mov dword [eax], edx
add eax, dword [esp + 0x58]
mov dword [esp + 0x30], eax
fnstsw ax
test ah, 0x41
jnp 0x47d101
jmp 0x47c994
fstp st(1)
jmp 0x47c994
fstp st(5)
fstp st(4)
jmp 0x47c996
fstp st(0)
fstp st(4)
jmp 0x47c996