private void ReadType(BinaryReader reader)
{
uint num2;
uint key = reader.ReadUInt32();
TypeInfo item = new TypeInfo {
name = reader.ReadString()
};
while ((num2 = reader.ReadUInt32()) != 0)
{
FieldInfo info2 = new FieldInfo {
name = reader.ReadString()
};
item.fields[num2] = info2;
}
if (this.types.ContainsKey(key))
{
throw new Exception(string.Format("Type info for object {0} was already loaded!!!", key));
}
this.types[key] = item;
this.allTypes.Add(item);
}