bn_mul_recursive doesn't handle all cases correctly, which results in