File buff.cpp
CBuffMgr::RemoveBuffs
Make a new flag for your case RBF_HASTE, and define the condition to be removed. Edit function CUserMng::AddRemoveAllSkillInfluence and CDPClient::OnRemoveAllSkillInfluence to match with your custom remove skill function. And finally edit in CMover:

odie