Against a4, I would normally play e5. If the player is a beginner, then you've got Bxa3 if Ra3. If the player is actually really good, then you're playing as if it were any other opening (He could simply be "giving the move" to you.)
Against h4, I would normally play d5. Again, Bxh3 if Rh3 against beginners, and you're getting a good pawn center if the player is really good.
Be wary against a4 and h4 though. As bad as they are, a high-level player can still get an attack going quickly on that side of the board if you aren't careful.
Against f3, I'd go with e5. Obviously you're threatening Fool's Mate, but even without that threat, the potential along the e1-h4 diagonal is promising.
Anything else isn't an immediate mistake if you're opponent knows what he/she is doing. Just try to play normally and look for other weaknesses in the position as the game goes on. If that beginner continues to make similar positional mistakes, be ready to pounce on them, and don't be afraid to sacrifice a pawn or two to nab key squares and diagonals.
Last year I played someone who made similar icky choices the first 5 moves or so. I waited until I had my pieces going and offered a "poisoned pawn" to nab the e1-h4 diagonal on move 9. The beginner fell for it, and the game was more or less over at that point, all he had was interpositions for the last 3 moves. If you keep an eye on the position when your opponent makes similar positional atrocities, you'll get the same kind of results.
Well I think that any decent player knows that some openings are weak, (the a-4 \ the h-4 \ the f3 \ etc.)
My question is, how to make the most of your opponent's mistake? What do you play against this kind of weird first (and sometimes second \ third) moves? I usually go for the e-4\e-5 and d-4\d-5