Здесь имеется функция, имя которой дано (произвольным образом) foo. Вообще, в алгоритме функция нужна чтобы перезапускаться заново после того, как выявила делитель числа. Нашла у числа делитель, разделила на него, и получила новое число, с котором та же процедура повторяется, и так пока число не сведётся к простому.