About the reinterpret_casts/static_cast etc. this is the only right way how to cast in C++, sure u can use C Casts but u can mess up things with it if u dont to it right.
uhm yeah I diddnt checked the ChatBox hook just copy'ed to the Thread from syrons source.