I found how to do something in C#, but can't find C++ equivelents. All converters are for C++ to C#, not vice verca. Here:
Code:
FileStream fs = new FileStream((map.path,
FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
BinaryReader br = new BinaryReader(fs);
BinaryWriter bw = new BinaryWriter(fs);
int sig = 0;
long length = br.BaseStream.Length;
br.BaseStream.Position = 2048;
for (long i = 2048; i < length; i += 4)
sig ^= br.ReadInt32();
bw.BaseStream.Position = 720;
bw.Write(sig);
br.Close();
bw.Close();