Just check the code in register.asp. The validation code starts around line# 210. It's always done in the same way:
if not IsValidString(trim(Request.Form("Name"))) then
Err_Msg = Err_Msg & "<li>You may not use any of these chars in your username !#$%^&*()=+{}[]|\;:/?>,<' </li>"
end if
A test to validate the desired form field and then, if the validation fails, another message is added to Err_Msg
All aditional tests need to be done this way. Test the field you want, check it to see if it's empty or has a bad value (depending on the field, of course) and then add a list item to the Err_Msg, describing the concrete error situation encountered.