private static void GetPddbItemListNames(string filePath) { try { if (!File.Exists(filePath)) { return; } var fs = new FileStream(filePath, FileMode.Open); var ebr = new EndianBinaryReader(new BigEndianBitConverter(), fs); fs.Position = PddbStartOffsetReadStart; _pddbTableLength = ebr.ReadUInt32(); fs.Position = PddbFirstItemOffset; _pddbSymbolsOffset = _pddbTableLength + SaveFileHeaderLength; byte pdddbDataType = 0; var sb = new StringBuilder(string.Empty); bool bool0 = false; int int0 = 0; var byte4 = new byte[5]; var byte5 = new byte[2]; while (fs.Position < _pddbSymbolsOffset) { ReadPddbValues(fs, pdddbDataType, byte4, byte5, ref sb, ref bool0, ref int0); } List1 = List0.Distinct().ToList(); List1.Sort(); int num2 = 0; foreach (int num3 in List1) { PddbItemListNames.Add(ReadPddbSymbols(fs, num2++)); } fs.Close(); } catch { } }