function detect_Cab(e,i){if(48<i&&File.compare("'MSCF'00000000",e)){bDetected=1,sVersion=File.readByte(e+25)+".0"+File.readByte(e+24)
var r=e+File.readDword(e+16),a=File.readWord(e+28),t=File.readDword(e+8)
switch(4&File.readByte(e+30)&&(e+=File.readDword(e+36)+4),15&File.readByte(e+42)){case 1:sOptions=sOptions.append("MSZip")
break
case 2:sOptions=sOptions.append("Quantum")
break
case 3:sOptions=sOptions.append("LZX")}for(t-=File.readDword(e+36);a--;)Archive.add(File.readDword(r),t,16&File.readByte(r+14)),r=File.findByte(r+16,256,0)+1,t=0
return sOptions=sOptions.append(Archive.contents()),1}return 0}includeScript("archive-file"),sName="Microsoft Cabinet File"