public ulong ReadUInt64() { long low = (uint)this.ReadInt32(); long high = (uint)this.ReadInt32(); // 0x100000000 is 2 raised to the 32th power plus 1 return (ulong)((high * 0x100000000) + low); }