The most important part of my answer was the hint: Ham_CS_RoundRespawn has no special code. You won't find it by simply searching for Ham_CS_RoundRespawn. Ham uses a generalized approach to hooking virtual functions (that of function prototypes) and doesn't target any function specifically. It's dynamically done at runtime using hamdata.ini. Understanding Ham to it's full extent is difficult, and you will probably have better luck looking at the source of CSX (and maybe decompilations of the game dll as suggested) and reason about the order of proceedings that may cause your issues. Hooking Ham_CS_RoundRespawn alone should not cause any issues, unless you want to block it. That may prevent another event - one which CSX relies on - from firing.