From http://msdn.microsoft.com/en-us/library/windows/desktop/aa366895(v=vs.85).aspx
There is no lock count for virtual pages, so multiple calls to the VirtualUnlock function are never required to unlock a region of pages.
And remembering that a page in Windows is 4kb, and that the keys we use are much much smaller, we get that if you allocate two private keys that get to be in the same memory page and then one of the two is freed, it will probably VirtualUnlock the other key. Woops.