Si el procedimiento no existe deberias usar CREATE PROCEDURE en vez de ALTER PROCEDURE y ademas creo que deberias asignar el valor a tu variable de salida:
Código SQL
[-]CREATE PROCEDURE [dbo][SP_EXISTE_EMPRESA]
-- Add the parameters for the stored procedure here
@SP_NOMBRE NVARCHAR(50),
@NOMBRE NVARCHAR(50]) OUTPUT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT @NOMBRE = EMPRESAS.NOMBRE FROM EMPRESAS
WHERE EMPRESAS.NOMBRE = @SP_NOMBRE
RETURN @NOMBRE
END
Saludos