FinderOuter has similar functionality.
https://github.com/Coding-Enthusiast/FinderOuterMissing Base16
PrivateKey: 00000000000000000000000000000000000000000000000000******a7b90de4
PubKey: 029588f9aace0310751f37d130afa1b792e70b542b29d373f64a56a50bcd90ac3f
The given key is missing 6 characters.
Total number of permutations to check: 16 777 216
Running in parallel.
Found the key: 00000000000000000000000000000000000000000000000000397f5aa7b90de4
Elapsed time: 00:00:37.3199093
k/s= 453 438
Hmmmm, I wonder why it's so much slower than the python script. I haven't looked at the foundouter code in a while, so I'm not 100% the language or if it is using multi threading.
When I run the same example in the one you used finderouter for, here are my results:
Known Characters aa7b90de4
Public Key 029588f9aace0310751f37d130afa1b792e70b542b29d373f64a56a50bcd90ac3f
Private Key Found: 0x397f5aa7b90de4
Run Time : 0:00:01.804207
That's a huge difference in speed, like 36 to 1, or 36 times faster.