Current implementation has an off by 1 in rounding, should round up to even but doesn't. Need to figure out how to implement it properly so just leaving the software version here for later verification.
x64_util.h