private void ReadTableHeap()
{
TableHeap tableHeap = this.image.TableHeap;
uint pointerToRawData = tableHeap.Section.PointerToRawData;
this.MoveTo(tableHeap.Offset + pointerToRawData);
base.Advance(6);
byte num = this.ReadByte();
base.Advance(1);
tableHeap.Valid = this.ReadInt64();
tableHeap.Sorted = this.ReadInt64();
for (int i = 0; i < 45; i++)
{
if (tableHeap.HasTable((Table)((byte)i)))
{
tableHeap.Tables[i].Length = this.ReadUInt32();
}
}
ImageReader.SetIndexSize(this.image.StringHeap, num, 1);
ImageReader.SetIndexSize(this.image.GuidHeap, num, 2);
ImageReader.SetIndexSize(this.image.BlobHeap, num, 4);
this.ComputeTableInformations();
}