more optimized function macros for win64
add keyed hashing