To avoid this problem in any complicated stored procedures, initialize the variable to empty before using them in any string manipulation.
e.g.
Declare @MobileCode as varchar(50), @MobileCodeNew as varchar(50), @MobileCodeForN as varchar(50), @RCOOC as varchar(50)
select @MobileCode = ''
select @MobileCodeNew = ''
select @MobileCodeForN = ''
select @RCOOC = ''
-- do what you got to do!
-- do what you got to do!
PRINT 'BEFORE NEW SRNO STARTS @MobileCode= '+@MobileCode+' @MobileCodeNew ='+@MobileCodeNew+'@MobileCodeForN ='+@MobileCodeForN+'@RCOOC ='+@RCOOC+'@MobileCodeForN ='+@MobileCodeForN