Enchant creature you control
When Cocoon enters, tap enchanted creature and put three pupa counters on Cocoon.
Enchanted creature doesn't untap during your untap step if Cocoon has a pupa counter on it.
At the beginning of your upkeep, remove a pupa counter from Cocoon. If you can't, sacrifice it, put a +1/+1 counter on enchanted creature, and that creature gains flying.
If the Aura is moved to a different creature, the number of counters is unchanged.