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

Disassembly:
push rbx
push rsi
push rdi
push r12
sub rsp, 0x58
movsxd r12, r8d
mov esi, r9d
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
jne 0x1400ce1e3
lea r8, [0x1402bee38]
xor r9d, r9d
lea rdx, str.C:Users_vijayDocumentsProjectsFxSound_fxsound_appdspptutilDspUtil_spectrum_spectrumProcess.cpp
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, 1
add rsp, 0x58
pop r12
pop rdi
pop rsi
pop rbx
ret
movss xmm0, dword [rsp + 0xa0]
ucomiss xmm0, dword [rcx + 0x554]
jp 0x1400ce1ff
jne 0x1400ce1ff
cmp esi, dword [rcx + 0x550]
je 0x1400ce21f
movss dword [rcx + 0x554], xmm0
mov dword [rcx + 0x550], esi
call fcn.1400d5960
test eax, eax
je 0x1400ce21f
lea r8, [0x1402bdf80]
jmp 0x1400ce1c2
mov qword [rsp + 0x88], rbp
mov ebp, dword [rsp + 0xa8]
mov qword [rsp + 0x90], r13
movsxd r13, dword [rbx + 0x560]
mov qword [rsp + 0x98], r14
xor r14d, r14d
test r12d, r12d
jle 0x1400ce5d2
mov qword [rsp + 0x50], r15
mov r8d, r14d
movaps xmmword [rsp + 0x40], xmm6
lea r14, [r13*4]
movss xmm6, dword [0x1402c460c]
mov r9, rdi
movaps xmmword [rsp + 0x30], xmm7
movss xmm7, dword [0x1403ac6c4]
movaps xmmword [rsp + 0x20], xmm8
cmp esi, 2
jne 0x1400ce298
movss xmm8, dword [rdi + r8*8 + 4]
addss xmm8, dword [rdi + r8*8]
jmp 0x1400ce29d
movss xmm8, dword [r9]
test ebp, ebp
je 0x1400ce2af
movaps xmm5, xmm8
subss xmm5, dword [rbx + 0x499b0]
jmp 0x1400ce2b2
xorps xmm5, xmm5
lea rcx, [rbx + 0x41c]
mov edx, 2
nop
movss xmm2, dword [rbx + 0x499bc]
movss xmm3, dword [rbx + 0x499b8]
movss xmm1, dword [rcx - 4]
mulss xmm3, dword [rcx + 0xc]
movaps xmm4, xmm1
mulss xmm4, dword [rcx - 0x10]
movss xmm0, dword [rcx - 0xc]
mulss xmm0, dword [rcx]
addss xmm4, xmm5
movss dword [rcx], xmm1
addss xmm4, xmm0
addss xmm4, xmm6
movss dword [rcx - 4], xmm4
mulss xmm4, dword [rcx - 8]
movss dword [rcx + 4], xmm4
mulss xmm4, xmm4
mulss xmm4, xmm2
addss xmm4, xmm3
comiss xmm4, xmm7
movss dword [rcx + 0xc], xmm4
jbe 0x1400ce329
mov dword [rcx + 8], 0x3f800000
jmp 0x1400ce348
movss dword [rsp + 0x80], xmm4
mov eax, dword [rsp + 0x80]
add eax, 0xff800000
sar eax, 1
add eax, 0x20000000
mov dword [rcx + 8], eax
movss xmm1, dword [rcx + 0x1c]
movss xmm0, dword [rcx + 0x14]
movaps xmm4, xmm1
mulss xmm4, dword [rcx + 0x10]
mulss xmm0, dword [rcx + 0x20]
movss xmm2, dword [rbx + 0x499bc]
addss xmm4, xmm5
movss xmm3, dword [rbx + 0x499b8]
movss dword [rcx + 0x20], xmm1
addss xmm4, xmm0
addss xmm4, xmm6
movss dword [rcx + 0x1c], xmm4
mulss xmm4, dword [rcx + 0x18]
movss dword [rcx + 0x24], xmm4
mulss xmm3, dword [rcx + 0x2c]
mulss xmm4, xmm4
mulss xmm4, xmm2
addss xmm4, xmm3
comiss xmm4, xmm7
movss dword [rcx + 0x2c], xmm4
jbe 0x1400ce3b3
mov dword [rcx + 0x28], 0x3f800000
jmp 0x1400ce3d2
movss dword [rsp + 0x80], xmm4
mov eax, dword [rsp + 0x80]
add eax, 0xff800000
sar eax, 1
add eax, 0x20000000
mov dword [rcx + 0x28], eax
movss xmm1, dword [rcx + 0x3c]
movss xmm0, dword [rcx + 0x34]
movaps xmm4, xmm1
mulss xmm4, dword [rcx + 0x30]
mulss xmm0, dword [rcx + 0x40]
movss xmm2, dword [rbx + 0x499bc]
addss xmm4, xmm5
movss xmm3, dword [rbx + 0x499b8]
movss dword [rcx + 0x40], xmm1
addss xmm4, xmm0
addss xmm4, xmm6
movss dword [rcx + 0x3c], xmm4
mulss xmm4, dword [rcx + 0x38]
movss dword [rcx + 0x44], xmm4
mulss xmm3, dword [rcx + 0x4c]
mulss xmm4, xmm4
mulss xmm4, xmm2
addss xmm4, xmm3
comiss xmm4, xmm7
movss dword [rcx + 0x4c], xmm4
jbe 0x1400ce43d
mov dword [rcx + 0x48], 0x3f800000
jmp 0x1400ce45c
movss dword [rsp + 0x80], xmm4
mov eax, dword [rsp + 0x80]
add eax, 0xff800000
sar eax, 1
add eax, 0x20000000
mov dword [rcx + 0x48], eax
movss xmm1, dword [rcx + 0x5c]
movss xmm0, dword [rcx + 0x54]
movaps xmm4, xmm1
mulss xmm4, dword [rcx + 0x50]
mulss xmm0, dword [rcx + 0x60]
movss xmm2, dword [rbx + 0x499bc]
addss xmm4, xmm5
movss xmm3, dword [rbx + 0x499b8]
movss dword [rcx + 0x60], xmm1
addss xmm4, xmm0
addss xmm4, xmm6
movss dword [rcx + 0x5c], xmm4
mulss xmm4, dword [rcx + 0x58]
movss dword [rcx + 0x64], xmm4
mulss xmm3, dword [rcx + 0x6c]
mulss xmm4, xmm4
mulss xmm4, xmm2
addss xmm4, xmm3
comiss xmm4, xmm7
movss dword [rcx + 0x6c], xmm4
jbe 0x1400ce4c7
mov dword [rcx + 0x68], 0x3f800000
jmp 0x1400ce4e6
movss dword [rsp + 0x80], xmm4
mov eax, dword [rsp + 0x80]
add eax, 0xff800000
sar eax, 1
add eax, 0x20000000
mov dword [rcx + 0x68], eax
movss xmm1, dword [rcx + 0x7c]
movss xmm0, dword [rcx + 0x74]
movaps xmm4, xmm1
mulss xmm4, dword [rcx + 0x70]
mulss xmm0, dword [rcx + 0x80]
movss xmm2, dword [rbx + 0x499bc]
addss xmm4, xmm5
movss xmm3, dword [rbx + 0x499b8]
movss dword [rcx + 0x80], xmm1
addss xmm4, xmm0
addss xmm4, xmm6
movss dword [rcx + 0x7c], xmm4
mulss xmm4, dword [rcx + 0x78]
movss dword [rcx + 0x84], xmm4
mulss xmm3, dword [rcx + 0x8c]
mulss xmm4, xmm4
mulss xmm4, xmm2
addss xmm4, xmm3
comiss xmm4, xmm7
movss dword [rcx + 0x8c], xmm4
jbe 0x1400ce563
mov dword [rcx + 0x88], 0x3f800000
jmp 0x1400ce585
movss dword [rsp + 0x80], xmm4
mov eax, dword [rsp + 0x80]
add eax, 0xff800000
sar eax, 1
add eax, 0x20000000
mov dword [rcx + 0x88], eax
add rcx, 0xa0
sub rdx, 1
jne 0x1400ce2c0
mov eax, dword [rbx + 0x499ac]
add r8, r13
add r9, r14
movss dword [rbx + 0x499ac], xmm8
mov dword [rbx + 0x499b0], eax
cmp r8, r12
jl 0x1400ce284
movaps xmm8, xmmword [rsp + 0x20]
xor r14d, r14d
movaps xmm7, xmmword [rsp + 0x30]
movaps xmm6, xmmword [rsp + 0x40]
mov r15, qword [rsp + 0x50]
movd xmm0, r13d
mov r13, qword [rsp + 0x90]
cvtdq2ps xmm0, xmm0
movd xmm1, r12d
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [rbx + 0x55c]
divss xmm1, xmm0
movss xmm0, dword [rbx + 0x574]
addss xmm1, dword [rbx + 0x578]
comiss xmm1, xmm0
movss dword [rbx + 0x578], xmm1
jb 0x1400ce82e
movsxd rcx, dword [rbx + 0x570]
subss xmm1, xmm0
mov r8d, r14d
movss dword [rbx + 0x578], xmm1
mov eax, dword [rbx + 0x424]
mov dword [rbx + rcx*4 + 0x5a4], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x444]
mov dword [rbx + rcx*4 + 0x5a8], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x464]
mov dword [rbx + rcx*4 + 0x5ac], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x484]
mov dword [rbx + rcx*4 + 0x5b0], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x4a4]
mov dword [rbx + rcx*4 + 0x5b4], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x4c4]
mov dword [rbx + rcx*4 + 0x5b8], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x4e4]
mov dword [rbx + rcx*4 + 0x5bc], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x504]
mov dword [rbx + rcx*4 + 0x5c0], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x524]
mov dword [rbx + rcx*4 + 0x5c4], eax
movsxd rcx, dword [rbx + 0x570]
mov eax, dword [rbx + 0x544]
mov dword [rbx + rcx*4 + 0x5c8], eax
mov eax, dword [rbx + 0x56c]
mov edx, dword [rbx + 0x570]
lea ecx, [rax + rax*4]
mov eax, edx
add ecx, ecx
sub eax, ecx
lea ecx, [rax + 0x12502]
cmovns ecx, eax
test ecx, ecx
cmovns r8d, ecx
movsxd rdi, r8d
test ebp, ebp
jne 0x1400ce790
lea eax, [rdx + 0xa]
cmp edx, r8d
jle 0x1400ce764
cmp eax, 0x12502
jge 0x1400ce753
movsxd rdx, eax
cmp rdx, 0x12502
jge 0x1400ce753
mov r8d, 0x12502
lea rcx, [rbx + 0x57c]
sub r8, rdx
lea rcx, [rcx + rdx*4]
shl r8, 2
xor edx, edx
call fcn.1400dda90
test rdi, rdi
jle 0x1400ce790
lea rcx, [rbx + 0x57c]
mov r8, rdi
jmp 0x1400ce784
cmp eax, 0x12502
jge 0x1400ce790
movsxd rdx, eax
cmp rdx, rdi
jge 0x1400ce790
lea rcx, [rbx + 0x57c]
mov r8, rdi
lea rcx, [rcx + rdx*4]
sub r8, rdx
shl r8, 2
xor edx, edx
call fcn.1400dda90
nop
mov eax, dword [rbx + rdi*4 + 0x5a4]
mov dword [rbx + 0x57c], eax
mov eax, dword [rbx + rdi*4 + 0x5a8]
mov dword [rbx + 0x580], eax
mov eax, dword [rbx + rdi*4 + 0x5ac]
mov dword [rbx + 0x584], eax
mov eax, dword [rbx + rdi*4 + 0x5b0]
mov dword [rbx + 0x588], eax
mov eax, dword [rbx + rdi*4 + 0x5b4]
mov dword [rbx + 0x58c], eax
mov eax, dword [rbx + rdi*4 + 0x5b8]
mov dword [rbx + 0x590], eax
mov eax, dword [rbx + rdi*4 + 0x5bc]
mov dword [rbx + 0x594], eax
mov eax, dword [rbx + rdi*4 + 0x5c0]
mov dword [rbx + 0x598], eax
mov eax, dword [rbx + rdi*4 + 0x5c4]
mov dword [rbx + 0x59c], eax
mov eax, dword [rbx + rdi*4 + 0x5c8]
mov dword [rbx + 0x5a0], eax
add dword [rbx + 0x570], 0xa
mov eax, dword [rbx + 0x570]
cmp eax, 0x12502
cmovge eax, r14d
mov dword [rbx + 0x570], eax
mov r14, qword [rsp + 0x98]
xor eax, eax
mov rbp, qword [rsp + 0x88]
add rsp, 0x58
pop r12
pop rdi
pop rsi
pop rbx
ret