Pro alone won’t be able to do this for you. The essential part of this will need to run on the server, and you will need to use a programming language (and probably a database) to make it all work the way you describe.
At a block level, you would need the following things to happen:
Check to see if the visitor has a cookie set by your server, authorizing download.
If yes, optionally save a new tracking record, indicating which content was downloaded and by whom (using the cookie to find out who it is) and allow the download.
If no, show a form requesting the e-mail address, save the result of that request in your database, save the cookie for repeat visits, and then save the tracking record and allow the download.
I’ve build one such thing before, if you go to http://tgas.com and download any of their white papers, you will get frisked for your e-mail address, name, and company info – but only once per year.