Did black misplay here or did I miss something? I'm getting back into chess after a hiatus of 8+ years, so I'm a bit rusty. This position is from a game I just played online.

I'm white and it's my move. I threaten black's rook and knight with Qd5, and this is how it played out. I'm amazed it worked in my favor, because as far as I can tell, instead of 3. - a6, he could have moved 3. - Qf6, which would save him after a few exchanges. Am I missing something, or did he just make the wrong move?

EDIT: Removed irrelevant sentence about Kf7.

r1b1kbnr/p1pp4/1p6/4nP1p/6pq/2N5/PPP1BPPP/R1BQ1RK1 w - - 0 1

1. Qd5 Nc6
2. Bb5 Nge7
3. Re1 a6
4. Bxc6 dxc6
5. Qxc6+ Bd7
6. Qxa8+ Kf7
7. Qxa6
As you saw in your game a6 failed terribly as it's simply inviting white to take on c6 and win the rook. Black had a better way of avoiding all of this a move earlier, i.e. 2. Bb5 Nf6 instead of Nge7. See illustration:

r1b1kbnr/p1pp4/1p6/4nP1p/6pq/2N5/PPP1BPPP/R1BQ1RK1 w - - 0 1

1. Qd5 Nc6
2. Bb5 Nf6
3. Re1+ Kd8
4. Qd2 (4. Qd3 Bc5) (4. Qc4 Bc5)


Finally as for Qf6, as has been suggested in comments by others, it simply loses to Ne4 (or the engine move which is Bf4, but it doesn't matter as Ne4 is good enough):

r1b1kbnr/p1pp4/1p6/4nP1p/6pq/2N5/PPP1BPPP/R1BQ1RK1 w - - 0 1

1. Qd5 Nc6
2. Bb5 Nge7
3. Re1 Qf6
4. Ne4 Qf7
5. Bxc6 dxc6
6. Qe5 Bg7
7. f6


So both a6 and Qf6 blunder the game away, the former bit more horribly so.