public void Read(__BinaryParser input)
{
this.objectId = input.ReadInt32();
this.name = input.ReadString();
this.numMembers = input.ReadInt32();
this.memberNames = new string[this.numMembers];
this.binaryTypeEnumA = new BinaryTypeEnum[this.numMembers];
this.typeInformationA = new object[this.numMembers];
this.memberAssemIds = new int[this.numMembers];
for (int i = 0; i < this.numMembers; i++)
{
this.memberNames[i] = input.ReadString();
}
for (int j = 0; j < this.numMembers; j++)
{
this.binaryTypeEnumA[j] = (BinaryTypeEnum) input.ReadByte();
}
for (int k = 0; k < this.numMembers; k++)
{
if ((this.binaryTypeEnumA[k] != BinaryTypeEnum.ObjectUrt) && (this.binaryTypeEnumA[k] != BinaryTypeEnum.ObjectUser))
{
this.typeInformationA[k] = BinaryConverter.ReadTypeInfo(this.binaryTypeEnumA[k], input, out this.memberAssemIds[k]);
}
else
{
BinaryConverter.ReadTypeInfo(this.binaryTypeEnumA[k], input, out this.memberAssemIds[k]);
}
}
if (this.binaryHeaderEnum == BinaryHeaderEnum.ObjectWithMapTypedAssemId)
{
this.assemId = input.ReadInt32();
}
}