As Mike stated, the best way istouse information_schema. As long as you're not in the master database, system stored procedures won't be returned.
select*
from DatabaseName.information_schema.routines
where routine_type ='PROCEDURE'
Iffor some reason you had non-system stored procedures in the master database, you could use the query (this will filter out MOST system stored procedures):
select*
from master.information_schema.routines
where routine_type ='PROCEDURE'
and Left(Routine_Name, 3)NOTIN('sp_', 'xp_', 'ms_')