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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
fld qword [ebp + 0x18]
fcomp qword [0x585c80]
push ebx
push esi
push edi
mov dword [esp + 0x24], ecx
fnstsw ax
test ah, 0x40
jne 0x45c482
fld qword [ebp + 0x10]
fmul qword [0x585b20]
mov eax, dword [ecx + 0x24]
xor ebx, ebx
cmp eax, ebx
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0x1c], ebx
fst qword [esp + 0x28]
fsin
fld qword [ebp + 8]
fmul qword [0x585b20]
fld st(0)
fcos
fst qword [esp + 0x10]
fmul st(2)
fchs
fstp qword [esp + 0x88]
fsin
fst qword [esp + 0x90]
fld qword [esp + 0x28]
fcos
mov dword [esp + 0x28], eax
fld st(0)
fmul qword [esp + 0x10]
fstp qword [esp + 0x98]
fld st(1)
fmul st(3)
fchs
fstp qword [esp + 0xa0]
fld qword [esp + 0x10]
fchs
fstp qword [esp + 0xa8]
fld st(0)
fmul st(2)
fstp qword [esp + 0xb0]
fstp qword [esp + 0xb8]
fstp st(0)
fstp qword [esp + 0xc8]
jle 0x45c482
jmp 0x45c284
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x60]
lea edx, [esp + 0x68]
push eax
mov eax, dword [esp + 0x20]
push edx
push eax
call fcn.0045c120
test al, al
je 0x45c2ce
fld qword [esp + 0x60]
fmul qword [0x585b20]
fld st(0)
fcos
fld qword [esp + 0x68]
fmul qword [0x585b20]
fld st(0)
fcos
fmul st(2)
fstp qword [esp + 0x30]
fsin
fmul st(1)
fstp qword [esp + 0x38]
fstp st(0)
fsin
fstp qword [esp + 0x40]
xor edx, edx
mov dword [esp + edx + 0x48], ebx
mov dword [esp + edx + 0x4c], ebx
fld qword [esp + edx + 0x48]
lea ecx, [esp + 0x30]
lea eax, [esp + edx + 0x88]
mov esi, 3
fld qword [ecx]
fmul qword [eax]
add eax, 0x18
add ecx, 8
dec esi
faddp st(1)
jne 0x45c2ec
fstp qword [esp + edx + 0x48]
add edx, 8
cmp edx, 0x18
jl 0x45c2d0
fld qword [ebp + 0x18]
fmul qword [0x585b20]
mov ecx, 6
lea esi, [esp + 0x48]
lea edi, [esp + 0x30]
lea eax, [esp + 0x88]
fld st(0)
fcos
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], edx
lea ecx, [esp + 0x48]
mov edi, 3
fstp qword [esp + 0x10]
fsin
fld qword [esp + 0x10]
fmul qword [esp + 0x30]
fld st(1)
fmul qword [esp + 0x38]
fsubp st(1)
fstp qword [esp + 0x70]
fmul qword [esp + 0x30]
fld qword [esp + 0x10]
fmul qword [esp + 0x38]
faddp st(1)
fstp qword [esp + 0x78]
mov dword [ecx], ebx
mov dword [ecx + 4], ebx
fld qword [ecx]
lea edx, [esp + 0x70]
mov esi, 3
fld qword [eax]
fmul qword [edx]
add eax, 8
add edx, 8
dec esi
faddp st(1)
jne 0x45c385
fstp qword [ecx]
add ecx, 8
dec edi
jne 0x45c375
fld qword [esp + 0x58]
call sub.MSVCRT.dll__CIasin
fmul qword [0x585b28]
fcom qword [0x588960]
fnstsw ax
test ah, 0x40
jne 0x45c3ec
fcom qword [0x58b5d0]
fnstsw ax
test ah, 0x40
jne 0x45c3ec
fld qword [esp + 0x50]
fld qword [esp + 0x48]
fpatan
fld st(0)
fmul qword [0x585b28]
fcomp qword [0x585c80]
fnstsw ax
test ah, 1
je 0x45c3f2
fadd qword [0x58b5c8]
jmp 0x45c3f2
fld qword [0x585c80]
fxch st(1)
fstp qword [esp + 0x10]
fmul qword [0x585b28]
fld qword [esp + 0x10]
fcomp qword [0x585c80]
fnstsw ax
test ah, 1
je 0x45c432
fld qword [esp + 0x10]
fchs
fstp qword [esp + 0x10]
fadd qword [0x585c78]
fcom qword [0x588958]
fnstsw ax
test ah, 0x41
jne 0x45c432
fsub qword [0x588958]
fadd qword [0x58b5c0]
call sub.MSVCRT.dll__ftol
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
mov eax, dword [edi + 0x3c]
fstp qword [eax + esi*8]
fld qword [esp + 0x10]
fadd qword [0x58b5c0]
call sub.MSVCRT.dll__ftol
mov ecx, dword [edi + 0x40]
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
mov eax, dword [esp + 0x28]
inc esi
cmp esi, eax
mov dword [esp + 0x1c], esi
fstp qword [ecx + esi*8 - 8]
jl 0x45c280
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c