Программа-загрузчик, которую изначально прошивали через контакты ICSP, остаётся на месте.
Это не всегда так и это не обязательно. Исходный загрузчик в состоянии скопировать себя во временную область флеша и передать туда управление. После чего в состоянии обновить ВЕСЬ КОД, включая исходный загрузчик. Так же есть достаточно много МК содержащих режим работы с ДВУМЯ партициями. Тогда перепрошивка осуществляется в нерабочую партицию, а затем изменяется рабочая партиция. Изменение загрузчика при перепрошивке - это очень полезная фича, позволяющая изменять, в том числе, протокол обмена при самопрограммировании.