Trying to setup an Accrual formula that "resets" on the anniversary of an employees hire date

I am trying to create a formula that will "reset" the number of hours an employee has accrued on the anniversary of their hire date.  

For example, if I have 56 hours of sick & my hire date is 9/5/2016, I want it to "reset" to 40 on 9/5/2017.  If I only have 32 hours of sick, then it would do nothing.  (It can be sick or vacation.)  Has anyone done this?

Thank you in advance for any & all help!