We ran into some weird issues where the memory was corrupted on certain architectures. It turns out we free'd memory before using it.
This ensures we make a copy of the data before freeing it, and extracts a common function for both crates to use.
* Update cargo.lock on windows
* Move ABE key decoding to helper.exe
* Safe slice operations (no panics)
* Refactor CNG code a bit
* Refactor CNG code a bit more
* Update README to match the new flow
* DRY up v1 and v2 decryption
* Remove all the crates and windows features that are not needed
* helper.exe split into a bunch of files
* Refator mod windows
* Minor cleanup
---------
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>