Fala ai Pedro, tudo bem? 
Então, para entendermos bem esse código devemos entender como funciona um fatorial. O fatorial é uma operação matemática usada no estudo de análise combinatória. Um fatorial é representado por um número seguido de um simbolo de exclamação (!), como exemplo: Quando usamos 5! estamos dizendo que queremos usar o fatorial de 5.
A ideia de um fatorial é a multiplicação do número informado por todos os seus antecessores maiores que zero (basicamente a multiplicação de 1 até o número informado). Seguindo o exemplo acima: 
5! = 1 * 2 * 3 * 4 * 5
Ou seja, no código informado criamos a variável fatorial com o valor 1. E fazemos um loop que faz nossa variável i que faz ele ter o valor de 2 até o número informado. Além disso, no nosso loop nos multiplicamos nossa variável fatorial com a variável i. 
Seguindo essa ideia, vamos passar o valor 5 como parâmetro da sua função (como valor para numero) e fazer um teste de mesa:
- Na primeira repetição do loop vai ser 1 * 2;
- Na segunda 2 * 3, onde 2 é o valor de 1 * 2;
- Na terceira 6 * 4, onde 6 é o valor de 1 * 2 * 3;
- Na quarta 24 * 5, onde 24 é o valor de 1 * 2 * 3 * 4;
- Após isso, chegou até o valor 5 e temos o resultado: 120. Logo: 5! = 120.
Espero ter te ajudado, qualquer dúvida é só avisar aqui no fórum.