public static string GetTextFromFile(uint pointer, uint fileOffset, BinaryReader file)
{
if (pointer > fileOffset)
pointer -= fileOffset;
if (pointer >= 0x80000000)
pointer -= 0x80000000;
file.BaseStream.Seek((long)pointer, SeekOrigin.Begin);
int count = 0;
while (true)
{
if (file.BaseStream.Position == file.BaseStream.Length || file.ReadByte() == 0)
break;
count += 1;
}
count = count / 2;
file.BaseStream.Seek((long)pointer, SeekOrigin.Begin);
char[] chars = file.ReadChars(count);
string text = new string(chars);
return text;
}