Pokémon Black Version and Pokémon White Version - Before the Attack
Before a Pokémon uses an attack, the following effects are checked, in this order:
Not determined yet.
If the pre-attack checks succeed, the Pokémon uses the move, PP is reduced, and targets are determined. If there is no PP remaining or there is no target, the process stops. (In these cases, Snatch doesn’t consider the attack as used.)
The exception to PP reduction is Struggle when it’s chosen for use automatically because the Pokémon has no moves it could choose.