I am no expert, but from what I understand about hooks and hooking, is that you will need to reverse engineer the code you want to hook, so that you understand which function do what, and which functions you want to hook.
You will then need to decide if you are going to do it at run-time or if you are going to modify the executable. Then you code your hook, and use it.
Easier said than done, difficulty will vary depending on the code you are hooking.
Wikipedia seems to have quite a bit of info and code examples, as well as many external links.