internal bool Write(ref DJsIO x)
 {
     if (!xLoaded)
         return false;
     try
     {
         if (x == null || !x.Accessed)
             return false;
         x.Position = 0x22C;
         foreach (STFSLicense b in xLisc)
         {
             x.Write(b.ID);
             x.Write(b.Var1);
             x.Write(b.Flags);
         }
         x.Position = 0x344;
         x.Write((uint)xThisType);
         x.Write(MetaDataVersion);
         x.Write(xContentSize);
         x.Write(MediaID);
         x.Write(Version_);
         x.Write(Version_Base);
         x.Write(TitleID);
         x.Write(Platform);
         x.Write(ExecutableType);
         x.Write(DiscNumber);
         x.Write(DiscInSet);
         x.Write(SaveGameID);
         x.WriteUInt40((ulong)SaveConsoleID);
         x.Write(ProfileID);
         x.Position = 0x39D;
         x.Write(DataFileCount);
         x.Write(DataFileSize);
         x.Write(Reserved);
         x.Write(SeriesID);
         x.Write(SeasonID);
         x.Write(SeasonNumber);
         x.Write(EpidsodeNumber);
         x.Position += 0x28;
         x.Write(xDeviceID);
         for (int i = 0; i < 9; i++)
             x.Write(xTitles[i], StringForm.Unicode, 0x80, PadLocale.Right, PadType.Null);
         for (int i = 0; i < 9; i++)
             x.Write(xDescriptions[i], StringForm.Unicode, 0x80, PadLocale.Right, PadType.Null);
         x.Write(xPublisher, StringForm.Unicode, 0x40, PadLocale.Right, PadType.Null);
         x.Write(xTitle, StringForm.Unicode, 0x40, PadLocale.Right, PadType.Null);
         x.Write(IDTransferByte);
         x.Write(xPackageImage.Length);
         x.Write(xContentImage.Length);
         x.Write(xPackageImage);
         x.Write(new byte[0x4000 - xPackageImage.Length]);
         x.Write(xContentImage);
         x.Write(new byte[(0x4000 - xContentImage.Length)]);
         return true;
     }
     catch { return false; }
 }