a static hook which can be used to store hook information as a static variable so that it can easily be accessed from anywhere.
the generic argument F should be a function pointer signature of the hooked function (e.g extern "C" fn(i32) -> i32).
hooks the function with the fn_name from the library with the provided library_name such that when the function is called it instead jumps
to the given hook_to_addr.