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

Disassembly:
sub esp, 0x5c
fld qword [esp + 0x84]
push ebx
fsin
mov ebx, dword [esp + 0x78]
push ebp
push esi
mov esi, dword [esp + 0x88]
push edi
mov edi, dword [esp + 0x88]
fild dword [esp + 0x88]
fld qword [esp + 0x94]
fcos
fild dword [esp + 0x8c]
fld st(0)
fmul st(2)
fld st(3)
fmul st(5)
faddp st(1)
fmul qword [esp + 0x9c]
call fcn.004c2ba0
fld st(1)
mov edx, dword [esp + 0x7c]
fmul st(3)
fxch st(1)
sub esi, eax
fmul st(4)
add edx, esi
mov dword [esp + 0x7c], edx
fsubp st(1)
fmul qword [esp + 0x9c]
call fcn.004c2ba0
fmul qword [esp + 0x9c]
fstp dword [esp + 0x1c]
sub edi, eax
mov eax, dword [esp + 0x80]
fstp st(0)
add eax, edi
fmul qword [esp + 0x9c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0x80], eax
fstp dword [esp + 0x18]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1c]
mov edx, dword [edi]
mov dword [esp + 0x88], eax
fild dword [esp + 0x88]
mov ecx, edi
fstp dword [esp + 0x50]
call dword [edx + 0x1c]
mov dword [esp + 0x88], eax
fild dword [esp + 0x88]
mov eax, dword [edi]
mov ecx, edi
fstp dword [esp + 0x54]
call dword [eax + 0x24]
mov edx, dword [edi]
mov dword [esp + 0x88], eax
fild dword [esp + 0x88]
mov ecx, edi
fstp dword [esp + 0x64]
call dword [edx + 0x24]
mov dword [esp + 0x88], eax
fild dword [esp + 0x88]
mov dword [esp + 0x88], 0x4f000000
fld dword [esp + 0x18]
mov dword [esp + 0x10], 0xcf000000
fmul dword [0x52cadc]
mov dword [esp + 0x8c], 0x4f000000
mov dword [esp + 0x14], 0xcf000000
fstp dword [esp + 0x24]
fld dword [esp + 0x1c]
fmul dword [0x52cadc]
fstp dword [esp + 0x2c]
fild dword [esp + 0x7c]
fstp dword [esp + 0x20]
fld dword [esp + 0x2c]
fadd dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], eax
fadd dword [esp + 0x20]
fild dword [esp + 0x80]
fstp dword [esp + 0x28]
fld dword [esp + 0x30]
fsub dword [esp + 0x24]
fadd dword [esp + 0x28]
fstp dword [esp + 0x5c]
fcom dword [0x52cb44]
fnstsw ax
test ah, 5
jp 0x44c86c
fst dword [esp + 0x88]
fcom dword [0x52cb40]
fnstsw ax
test ah, 0x41
jne 0x44c87f
fstp dword [esp + 0x10]
jmp 0x44c881
fstp st(0)
fld dword [esp + 0x5c]
fcomp dword [0x52cb44]
fnstsw ax
test ah, 5
jp 0x44c89d
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x8c], ecx
fld dword [esp + 0x5c]
fcomp dword [0x52cb40]
fnstsw ax
test ah, 0x41
jne 0x44c8b6
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], edx
fld dword [esp + 0x50]
fld dword [esp + 0x1c]
fmul st(1)
fadd dword [esp + 0x24]
fadd dword [esp + 0x20]
fstp dword [esp + 0x50]
fmul dword [esp + 0x18]
fsubr dword [esp + 0x30]
fadd dword [esp + 0x28]
fld dword [esp + 0x50]
fcomp dword [esp + 0x88]
fnstsw ax
test ah, 5
jp 0x44c8f5
mov eax, dword [esp + 0x50]
mov dword [esp + 0x88], eax
fld dword [esp + 0x50]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x44c90c
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x10], ecx
fcom dword [esp + 0x8c]
fnstsw ax
test ah, 5
jp 0x44c921
fst dword [esp + 0x8c]
fcom dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x44c932
fstp dword [esp + 0x14]
jmp 0x44c934
fstp st(0)
fld dword [esp + 0x54]
fld dword [esp + 0x64]
fld dword [esp + 0x18]
fmul st(1)
fld st(2)
fmul dword [esp + 0x1c]
faddp st(1)
fadd dword [esp + 0x20]
fstp dword [esp + 0x54]
fmul dword [esp + 0x1c]
fxch st(1)
fmul dword [esp + 0x18]
fsubp st(1)
fadd dword [esp + 0x28]
fld dword [esp + 0x54]
fcomp dword [esp + 0x88]
fnstsw ax
test ah, 5
jp 0x44c97f
mov edx, dword [esp + 0x54]
mov dword [esp + 0x88], edx
fld dword [esp + 0x54]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x44c996
mov eax, dword [esp + 0x54]
mov dword [esp + 0x10], eax
fcom dword [esp + 0x8c]
fnstsw ax
test ah, 5
jp 0x44c9ab
fst dword [esp + 0x8c]
fcom dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x44c9bc
fstp dword [esp + 0x14]
jmp 0x44c9be
fstp st(0)
fld dword [esp + 0x18]
fmul st(1)
fadd dword [esp + 0x2c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x58]
fmul dword [esp + 0x1c]
fsub dword [esp + 0x24]
fadd dword [esp + 0x28]
fld dword [esp + 0x58]
fcomp dword [esp + 0x88]
fnstsw ax
test ah, 5
jp 0x44c9f9
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x88], ecx
fld dword [esp + 0x58]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x44ca10
mov edx, dword [esp + 0x58]
mov dword [esp + 0x10], edx
fcom dword [esp + 0x8c]
fnstsw ax
test ah, 5
jp 0x44ca25
fst dword [esp + 0x8c]
fcom dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x44ca36
fstp dword [esp + 0x14]
jmp 0x44ca38
fstp st(0)
fld qword [0x52caf8]
mov eax, dword [edi]
fdiv qword [esp + 0x9c]
mov ecx, edi
fstp qword [esp + 0x9c]
call dword [eax + 0x24]
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x1c]
fld dword [esp + 0x88]
call fcn.004c2ba0
fld dword [esp + 0x8c]
mov esi, eax
call fcn.004c2ba0
fld dword [esp + 0x10]
fsub dword [esp + 0x88]
mov dword [esp + 0x50], eax
call fcn.004c2ba0
fld dword [esp + 0x14]
fsub dword [esp + 0x8c]
mov dword [esp + 0x54], eax
call fcn.004c2ba0
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x58], eax
mov eax, dword [ecx]
cmp esi, eax
jle 0x44cab2
mov ebp, esi
mov dword [esp + 0x2c], ebp
jmp 0x44cab8
mov dword [esp + 0x2c], eax
mov ebp, eax
mov edx, dword [ecx + 4]
cmp dword [esp + 0x50], edx
mov dword [esp + 0x88], edx
jle 0x44cad2
mov edx, dword [esp + 0x50]
mov dword [esp + 0x28], edx
jmp 0x44cad6
mov dword [esp + 0x28], edx
mov ecx, dword [ecx + 8]
add eax, ecx
mov ecx, dword [esp + 0x54]
add ecx, esi
cmp ecx, eax
jl 0x44cae7
mov ecx, eax
mov eax, dword [esp + 0x78]
mov eax, dword [eax + 0xc]
mov esi, dword [esp + 0x88]
add eax, esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x58]
add eax, esi
mov esi, dword [esp + 0x88]
cmp eax, esi
jl 0x44cb15
mov eax, esi
mov esi, dword [esp + 0x74]
sub ecx, ebp
sub eax, edx
push edx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esi]
push ebp
mov ecx, esi
call dword [eax + 0x34]
mov edx, dword [esi]
mov ecx, esi
mov dword [esp + 0x88], eax
call dword [edx + 0x2c]
mov ebp, eax
mov eax, dword [esp + 0x64]
shr ebp, 2
sub ebp, eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
mov edx, dword [esi]
mov ecx, esi
sub ebp, eax
call dword [edx + 0x1c]
fld qword [esp + 0x94]
fchs
add ebp, eax
fld st(0)
mov dword [esp + 0x48], ebp
fsin
fmul qword [esp + 0x9c]
fmul qword [0x52cb48]
call fcn.004c2ba0
fcos
mov dword [esp + 0x8c], eax
fmul qword [esp + 0x9c]
fmul qword [0x52cb48]
call fcn.004c2ba0
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x28]
sub ecx, ebp
mov ebp, dword [esp + 0x80]
sub ebp, edx
mov edx, ecx
imul ecx, dword [esp + 0x8c]
imul edx, eax
mov dword [esp + 0x1c], eax
mov eax, ebp
imul ebp, dword [esp + 0x1c]
imul eax, dword [esp + 0x8c]
add edx, eax
neg edx
sub ecx, ebp
mov dword [esp + 0x20], edx
mov edx, dword [edi]
mov dword [esp + 0x18], ecx
mov ecx, edi
call dword [edx + 0x40]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x40]
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x48]
mov dword [esp + 0x7c], eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x48]
mov edx, dword [edi]
mov ecx, edi
mov dword [esp + 0x94], eax
call dword [edx + 0x1c]
mov ebp, eax
mov eax, dword [edi]
mov ecx, edi
mov dword [esp + 0x2c], ebp
call dword [eax + 0x24]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x68]
test eax, eax
jle 0x44d052
mov dword [esp + 0x14], eax
jmp 0x44cc30
mov eax, dword [esp + 0x64]
test eax, eax
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edx
jle 0x44d010
mov dword [esp + 0x30], eax
mov edi, ecx
sar edi, 0x14
mov esi, edx
sar esi, 0x14
test edi, edi
mov dword [esp + 0x34], edi
jl 0x44cfcb
cmp edi, ebp
jge 0x44cfcb
test esi, esi
jl 0x44cfcb
mov eax, dword [esp + 0x10]
cmp esi, eax
jge 0x44cfcb
mov cl, byte [esp + 0x90]
test cl, cl
je 0x44cf37
lea ecx, [ebp - 1]
cmp edi, ecx
je 0x44cf37
dec eax
cmp esi, eax
je 0x44cf37
fild dword [esp + 0x28]
push ecx
fmul dword [0x52cb04]
fstp dword [esp]
call fcn.0044b850
fstp dword [esp + 0x84]
fild dword [esp + 0x28]
fmul dword [0x52cb04]
fstp dword [esp]
call fcn.0044b850
fld dword [0x52cb00]
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x98]
fsub st(1)
fld dword [0x52cb00]
mov edx, esi
fsub dword [esp + 0x84]
imul edx, ebp
fld st(0)
fmul st(2)
fstp dword [esp + 0xa0]
add edx, edi
mov edi, dword [eax + edx*4]
fmul st(2)
mov ebp, dword [eax + edx*4 + 4]
lea eax, [eax + edx*4]
mov eax, dword [esp + 0x38]
fstp dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
fmul dword [esp + 0x84]
add esp, 4
inc esi
fxch st(1)
imul esi, dword [esp + 0x2c]
fmul dword [esp + 0x80]
add esi, eax
lea eax, [ecx + esi*4]
mov ecx, dword [eax + 4]
mov esi, dword [eax]
mov eax, dword [esp + 0x88]
mov eax, dword [edx + eax*4]
mov edx, eax
shr edx, 0x10
movzx edx, dl
mov dword [esp + 0x80], ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
movzx edx, ah
mov dword [esp + 0x44], eax
and eax, 0xff
sar ecx, 0x10
and ecx, 0xff
mov dword [esp + 0x40], eax
mov dword [esp + 0x34], ecx
mov eax, ebp
sar eax, 0x10
fild dword [esp + 0x34]
and eax, 0xff
mov dword [esp + 0x34], eax
mov ecx, esi
fmul st(1)
sar ecx, 0x10
fild dword [esp + 0x34]
and ecx, 0xff
mov dword [esp + 0x34], ecx
mov dword [esp + 0x3c], edx
fmul st(3)
mov edx, edi
sar edx, 0x10
and edx, 0xff
faddp st(1)
fild dword [esp + 0x34]
mov dword [esp + 0x34], edx
fmul dword [esp + 0x78]
faddp st(1)
fild dword [esp + 0x34]
fmul dword [esp + 0x9c]
faddp st(1)
call fcn.004c2ba0
mov ecx, eax
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x80]
sub ecx, eax
imul ecx, ebx
and ecx, 0xffffff00
shl eax, 8
add ecx, eax
shl ecx, 8
mov eax, ecx
sar edx, 8
and edx, 0xff
mov dword [esp + 0x38], edx
mov ecx, ebp
sar ecx, 8
fild dword [esp + 0x38]
and ecx, 0xff
mov dword [esp + 0x38], ecx
mov edx, esi
fmul st(1)
sar edx, 8
fild dword [esp + 0x38]
and edx, 0xff
mov dword [esp + 0x38], edx
mov ecx, edi
fmul st(3)
sar ecx, 8
and ecx, 0xff
faddp st(1)
fild dword [esp + 0x38]
mov dword [esp + 0x38], ecx
fmul dword [esp + 0x78]
faddp st(1)
fild dword [esp + 0x38]
mov dword [esp + 0x38], eax
fmul dword [esp + 0x9c]
faddp st(1)
call fcn.004c2ba0
mov ebx, dword [esp + 0x84]
mov edx, eax
mov eax, dword [esp + 0x3c]
sub edx, eax
imul edx, ebx
shl eax, 8
and edx, 0xffffff00
add edx, eax
mov eax, dword [esp + 0x38]
or eax, edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x80]
and eax, 0xff
mov dword [esp + 0x80], eax
and ebp, 0xff
and esi, 0xff
fild dword [esp + 0x80]
mov dword [esp + 0x80], ebp
and edi, 0xff
fmul st(1)
fild dword [esp + 0x80]
mov dword [esp + 0x80], esi
fmul st(3)
faddp st(1)
fild dword [esp + 0x80]
mov dword [esp + 0x80], edi
fmul dword [esp + 0x78]
faddp st(1)
fild dword [esp + 0x80]
fmul dword [esp + 0x9c]
faddp st(1)
call fcn.004c2ba0
fstp st(0)
mov ecx, eax
fstp st(0)
mov eax, dword [esp + 0x40]
sub ecx, eax
imul ecx, ebx
sar ecx, 8
add ecx, eax
mov eax, dword [esp + 0x3c]
or eax, ecx
mov ecx, eax
mov eax, dword [esp + 0x44]
and eax, 0xff000000
mov edx, dword [esp + 0x7c]
or ecx, eax
mov eax, dword [esp + 0x88]
mov dword [edx + eax*4], ecx
jmp 0x44cfc7
mov ecx, dword [esp + 0x94]
imul esi, ebp
mov edx, dword [esp + 0x7c]
add esi, edi
mov eax, dword [ecx + esi*4]
mov ecx, dword [esp + 0x88]
mov ecx, dword [edx + ecx*4]
mov ebp, eax
and ebp, 0xff0000
mov edx, ecx
and edx, 0xff0000
sub ebp, edx
imul ebp, ebx
sar ebp, 8
add ebp, edx
mov edx, eax
and edx, 0xff00
mov esi, ecx
and esi, 0xff00
sub edx, esi
and eax, 0xff
imul edx, ebx
mov edi, ecx
and edi, 0xff
sub eax, edi
imul eax, ebx
sar edx, 8
and ebp, 0xffff0000
add edx, esi
sar eax, 8
and edx, 0xff00
or ebp, edx
add eax, edi
or ebp, eax
mov eax, dword [esp + 0x88]
xor ebp, ecx
and ebp, 0xffffff
xor ebp, ecx
mov ecx, dword [esp + 0x7c]
mov dword [ecx + eax*4], ebp
mov ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x8c]
inc eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x30]
add ecx, edi
sub edx, esi
dec eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], eax
jne 0x44cc50
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x74]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x20]
add eax, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x8c]
add ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x1c]
add edx, ecx
dec eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
jne 0x44cc30
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x44]
mov eax, dword [edi]
mov ecx, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
jmp dword [eax + 0x44]