Если что, извиняюсь - я заметил, что тема давняя... Но на мой взгляд можно сделать лучше:
Код:

$defaultbrowser = RegRead ('HKCU\SOFTWARE\Clients\StartMenuInternet','')
if StringLen($defaultbrowser) = 0 Then
$defaultbrowser = RegRead ('HKLM\SOFTWARE\Clients\StartMenuInternet','')
EndIf
ProcessWait ($defaultbrowser)
ProcessClose ($defaultbrowser)
ProcessWaitClose ($defaultbrowser)
Как верно заметил katok888, если Firefox установить браузером по умолчанию через настройки самого Firefox, то он прописывается не в HKLM\SOFTWARE\Clients\StartMenuInternet, а в HKCU\SOFTWARE\Clients\StartMenuInternet. Вышеприведенный скрипт сначала пытается прочитать браузер по умолчанию из HKCU, а если там его нет, то читает значение из HKLM.