It doesn't do any type of pronunciation checking. The algorithm is very weak it just starts with an uppercase alphabet letter (vowel or not) then it checks if it's a vowel or not and appends the opposite type in lowercase until the name is within a bounded length. The flaw of such a brutish method is like you pointed out, sometimes the names might not make phoenetic sense.