Will rewrite the MR and add proper tests.
Regarding returning a pointer to the middle of the view, I had only checked UnmapViewOfSection, which works even if the pointer doesn't point to the start of the view (this is documented). Seems like UnmapViewOfFile requires a pointer to the start tho.