public ATR1(ref FileBase file) { int start = file.ReadInt32(); file.Skip(0x8); int baseOffset = file.Position(); int entryCount = file.ReadInt32(); file.Skip(0x4); mAttributes = new List <AttributeEntry>(); for (int i = 0; i < entryCount; i++) { AttributeEntry e = new AttributeEntry { _0 = file.ReadByte(), _1 = file.ReadByte(), _2 = file.ReadByte(), _3 = file.ReadByte(), _4 = file.ReadByte(), _5 = file.ReadByte(), _6 = file.ReadByte(), _7 = file.ReadByte() }; int offs = file.ReadInt32(); int orig = file.Position(); file.Seek(baseOffset + offs); e.mString = file.ReadStringUTF16(); file.Seek(orig); } file.Seek(start + baseOffset); while (file.Position() % 0x10 != 0) { file.Skip(0x1); } }