Problem understanding an execution plan
The eager index spool is accessed multiple times, each time fetching about 4 rows.



It's called by the Row Count Spool (note that the number of rebinds matches the number of executions):



Which is called iteratively by the Nested Loops Join after the Sort operator:



I'd be a bad consultant if I didn't also mention that using multi-statement table valued functions, and converting dates (some with date math) on the fly will often have a negative performance impact on queries. I realize that's not what your question is about, but hey.

If you'd like to learn more about spools (and many other operators), Fabiano Amorim has an excellent series of articles:

Operator of the Week – Spools, Eager Spool

Hope this helps.