Olá Icaro, não funciona porque a variável valores está indefinida. Repare que no escopo de seu método numSorte(), valores não existe. E o erro acontece quando chamamos valores.length na funcção resultado().
Modifique seu método numSorte() para:
function numSorte(quantidade){
var segredos2 = [];
var numero = 1;
while(numero <= quantidade){
segredos2.push(sorteia());
numero++
}
return segredos2;
}
Agora a função retorna um array e tudo volta a funcionar. E não esqueça de trocar essa linha:
while(numSorte <= quantidade){
por esta
while(numero <= quantidade){
Espero ter ajudado e bons estudos!