private void ReadHeader(FileStream fs) { fz = new FreeZone(); int pos = 20; int len = ReadInt32(fs, 12); pos += len; _HeaderOff = pos; NameCount = ReadInt32(fs, pos); pos += 4; NameOffset = ReadInt32(fs, pos); pos += 4; ExportCount = ReadInt32(fs, pos); pos += 4; ExportOffset = ReadInt32(fs, pos); pos += 4; ImportCount = ReadInt32(fs, pos); pos += 4; ImportOffset = ReadInt32(fs, pos); pos += 4; fz.start = ReadInt32(fs, pos); pos += 4; fz.end = ReadInt32(fs, pos); pos = NameOffset; Header = new byte[pos]; fs.Seek(0, SeekOrigin.Begin); for (int i = 0; i < pos; i++) { Header[i] = (byte)fs.ReadByte(); } }
private void ReadHeader(FileStream fs) { fz = new FreeZone(); int pos = 20; int len = ReadInt32(fs, 12); pos += len; _HeaderOff = pos; NameCount = ReadInt32(fs, pos); pos += 4; NameOffset= ReadInt32(fs, pos); pos += 4; ExportCount = ReadInt32(fs, pos); pos += 4; ExportOffset = ReadInt32(fs, pos); pos += 4; ImportCount = ReadInt32(fs, pos); pos += 4; ImportOffset = ReadInt32(fs, pos); pos += 4; fz.start = ReadInt32(fs, pos); pos += 4; fz.end = ReadInt32(fs, pos); pos = NameOffset; Header = new byte[pos]; fs.Seek(0, SeekOrigin.Begin); for (int i = 0; i < pos; i++) Header[i] = (byte)fs.ReadByte(); }