I need to determine the dates which are the "3rd Friday of each month" for a date range of "1.1.1996 - 30.8.2014" in SQL Server.

I expect I should use a combination of `DENSE_RANK()` and `PARTITION BY()` to set "rank = 3". However, I am new to SQL and unable to find the correct code.