Hola
kharen!. En esta linea :
Código C:
Ver originalliResultado = Convert.ToInt32(SqlHelper.ExecuteScalar(poTx, "usp_RegistrarUsuario", par));
Que valor te devuelve el procedure
usp_RegistrarUsuario? Asegurate de saber que valor devuelve, porque aparentemente devuelve una cadena con letras y "Forzosamente" lo conviertes a int32.