Потому что c диспатчит эвент. Конструктор принимает объект который имплементит IEventDispatcher, но неизвестно если наследует (не наследует) у EventDispatcher (в данном случае в этом конструкторе нет смысла т.к. спрайт наследует). Я так понял из хелпа и пары туманных объяснений

Т.е. этот инстанс EventDispatcher цепляется (композиция) к c, в итоге именно c диспатчит эвент.
Поправьте если неправ, тоже интересно
Да, e.target выдаёт [object Sprite], и это именно с (прицепил name, выдаёт его имя).