Hmmm, okay - only minor changes. Try this and let me know please.

Break On
Dim $SO
$SO=SetOption('Explicit','On')
$SO=SetOption('NoVarsInStrings','On')
$SO=SetOption('NoMacrosInStrings','On')

Dim $sComputers,$sComputer,$Details,$Detail
Dim $Alive,$WMIOkay
$sComputers = ReadFile(@ScriptDir+'\'+'computer_list.txt')
'Reading computer list: ' + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
For Each $sComputer In $sComputers
If $sComputer
'Computer ' + $sComputer + ' found ' + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
$Alive = Ping($sComputer)
'pinging ' + $sComputer + + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
If $Alive
'Computer ' $sComputer + ' responded to ping ' + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
$WMIOkay = ConfirmWMI($sComputer)
'Checking WMI on ' + $sComputer + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
If $WMIOkay
'WMI appears to be responding for ' + $sComputer + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
$Details = GetBIOSInfo($sComputer)
'Checking BIOS for ' + $sComputer + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
For Each $Detail In $Details
If $Detail
'BIOS for ' +$sComputer +': ' + $Detail + ' ::Error results: ' +@ERROR + ' ' +@SERROR ?
EndIf
Next
EndIf
EndIf
EndIf
??
Next


Function GetBIOSInfo(optional $sComputer)
Dim $WMIService,$BIOSItems,$BIOSName,$BIOSVersion,$SMBIOSVersion
Dim $Item, $SerialNumber, $Manufacturer, $BIOSArray[4]
$sComputer=IIf(Not $sComputer,'','\\'+Join(Split($sComputer,'\'),'',3)+'\')
$WMIService = GetObject('winmgmts:{impersonationLevel=impersonate}!'+$sComputer+'root\cimv2')
$BIOSItems = $WMIService.ExecQuery('Select * from Win32_BIOS where PrimaryBIOS = true',,48)
For Each $Item in $BIOSItems
If $Item
$BIOSName = Trim($Item.Name)
$BIOSVersion = Trim($Item.Version)
$SMBIOSVersion = Trim($Item.SMBIOSBIOSVersion)
$SerialNumber = Trim($Item.SerialNumber)
$Manufacturer = Trim($Item.Manufacturer)
EndIf
Next
$BIOSArray[0]=$BIOSName $BIOSArray[1]=$BIOSVersion $BIOSArray[2]=$SMBIOSVersion $BIOSArray[3]=$SerialNumber
$BIOSArray[4]=$Manufacturer
$GetBIOSInfo=$BIOSArray
EndFunction

Function ReadFile($file)
Dim $lf, $f, $_, $t
$lf=CHR(10)
$f=FreeFileHandle
$_=Open($f,$file)
If @ERROR Exit @ERROR EndIf
Do $t=$t+$lf+ReadLine($f) Until @ERROR
$_=Close($f)
$ReadFile=Split(SubStr($t,2),$lf)
EndFunction

Function Ping($PC)
Shell'%comspec% /c ping -n 1 '+$PC+' >nul'
$Ping = NOT @ERROR
EndFunction

Function ConfirmWMI(optional $sComputer)
Dim $objWMIService,$objWMISetting,$colWMISettings
$sComputer=IIf(Not $sComputer,'','\\'+Join(Split($sComputer,'\'),'',3)+'\')
$objWMIService = GetObject('winmgmts:{impersonationLevel=impersonate}!'+$sComputer+'root\cimv2')
If @ERROR
$ConfirmWMI = Val('&'+Right(DecToHex(@ERROR),4))
Exit $ConfirmWMI
EndIf
$colWMISettings = $objWMIService.ExecQuery('Select * from Win32_WMISetting')
For Each $objWMISetting In $colWMISettings
$ConfirmWMI = $objWMISetting.BuildVersion
Next
Exit $ConfirmWMI
EndFunction