    MOV ecx, Size
    Or ecx, ecx
    JZ SpectrumOptimizeLSF1_NoMono
    
    MOV eax, *SpectrumIn
    OR eax, eax
    JNZ SpectrumOptimizeMono_pSpecInValid
    MOV eax, SpecTmp
  !SpectrumOptimizeMono_pSpecInValid:
    MOV edx, *SpectrumOut
    OR edx, edx
    JNZ SpectrumOptimizeMono_pSpecOutValid
    MOV edx, SpecTmp
  !SpectrumOptimizeMono_pSpecOutValid:
    PUSH ebx
    MOV ebx, BoostValues30
    
    !SpectrumOptimizeLSF1_Mono_Loop:
      FLD dword [eax]
      ADD eax, 4
      FMUL dword [ebx]
      ADD ebx, 4
      FSTP dword [edx]
      ADD edx, 4
      DEC ecx
      JNZ SpectrumOptimizeLSF1_Mono_Loop

    POP ebx
    
!SpectrumOptimizeLSF1_NoMono:
; IDE Options = PureBasic 4.60 (Windows - x86)
; CursorPosition = 7
; EnableXP