Okay getting somewhere ...
Looks like the pixels are stored as differences. Seriously strange.
Using that tool, I converted the IMF file to tga and compared the two files.
The TGA file starts with a pixel 9D,9D,9D,00 and I can see that in the IMF file.
The TGA version continues with a bunch of the same pixels, the IMF with a bunch of 0,0,0,0
Further on I can see a pixel 9c,9c,9c,03 and in the IMF file FF,FF,FF,00
And again later on the TGA goes back to 9d,9d,9d in the IMF file I can see 1,1,1,
It doesn't all fit yet, but the mist is clearing a little