$Path = FileOpenDialog("Select the file BIN file", @ScriptDir, "bin files(*.bin)",1) If @error = 1 Then Exit $File = FileOpen ($Path, 0+16) Filesetpos($File,20,0) $PackNum = Dec (Hex (FileRead ($File, 4), 4), 4) Dim $PackOffs[$PackNum] Filesetpos($File,96,0) $Name = StringTrimRight(CompGetFileName($Path),3) For $i = 1 to $PackNum $PackOffs[$i-1] = Dec (Hex (FileRead ($File, 4), 4), 4) Next FileSetPos($File,$PackOffs[1]+148,0) $StrNum = Dec (Hex (FileRead ($File, 4), 4), 4) FileRead ($File, 8) $Offtab = Dec (Hex (FileRead ($File, 4), 4), 4) $Sizetab = Dec (Hex (FileRead ($File, 4), 4), 4) Dim $Text,$Offsets[$StrNum],$Sizes[$StrNum] FileSetPos($File,$PackOffs[1]+128+$Offtab,0) For $i = 1 to $StrNum $Offsets[$i-1] = Dec (Hex (FileRead ($File, 4), 4), 4) Next FileSetPos($File,$PackOffs[1]+128+$Sizetab,0) For $i = 1 to $StrNum $Sizes[$i-1] = Dec (Hex (FileRead ($File, 4), 4), 4) Next For $i = 1 to $StrNum FileSetPos($File,$PackOffs[1]+128+$Offsets[$i-1],0) $Text &= "["&$i&"]"&@CRLF & BinaryToString(Fileread($File,$Sizes[$i-1]),3) & @CRLF Next $TextFile = FileOpen ($Name&"txt", 2+64) FileWrite ($TextFile, $Text) FileClose ($TextFile) TrayTip ("Exporter", "Finish!", 3) sleep (3000) Func CompGetFileName($Path) If StringLen($Path) < 4 Then Return -1 $ret = StringSplit($Path,"\",2) If IsArray($ret) Then Return $ret[UBound($ret)-1] EndIf If @error Then Return -1 EndFunc