I don't see any problem here.
In step (iii) you declare a target of your attack from all viable targets.
The check for weapon requirements has already been done in step (ii), although you don't need to pay the costs (if applicable) until step (iv).
as the check for requirements cannot succeed if you don't meet the conditions there is no situation where you couldn't fire your weapon after arriving at step (iii)