Fiz pequenas alterações que podem ser interessantes, a primeira está em console.log(amigos) que criei para vizualizar os elemento em posições diferentes.
A segunda está no For, onde os blocos de inicialização e final foram omitidos e tratados como variáveis, não consegui desenvolver o bloco de condição, mas no geral achei interessante demostrar
function sortear() {
embaralha(amigos);
//Mostra o array embarralhado via console
*console.log(amigos);*
//Captura o dado do campo lista sorterio ,
let sorteio = document.getElementById('lista-sorteio');
//Faz uma busca em todos o array
**let i = 0;**
**for (;i < amigos.length;)** {
//Verifica se a posição do elemento é identica ao tamanho do array
if (i == amigos.length - 1) {
//Se for verdadeiro o mostra o ultimo elemento ao primeiro
sorteio.innerHTML = sorteio.innerHTML + amigos[i] + ' --> ' + amigos[0] + '<br>';
} else {
//Se for falso o elemento ao seu sucessor
sorteio.innerHTML = sorteio.innerHTML + amigos[i] + ' --> ' + amigos[i + 1] + '<br>';
}
**i++;**
}
Fonte: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/for