Well, it's a boolean function, so it can return one of two values, true or false (actually, it's generally considered that 0 = false and anything not 0 = true).
So what your function would be doing here is checking to see if the choice passed into it matches one of those letters and, if it does, it returns a result of true. Your call to the function, in the while condition, is basically saying "do this code while ValidChoice returns true", meaning the code will execute every time true is returned from that function. If the function returns false (i.e. the 'else' part of the if statement in the function is hit), the loop will cease.