>>11857859(2/2)
Interestingly, there's actually a good chance the correlation between attack and gender is inadvertent and not an intentional piece of game design. You are able to trade Pokemon between Gens I and II. This created a problem for the programmers, since Gen II adds new Pokemon attributes such as gender and shininess. It may seem intuitive to assign these new attributes randomly to a Pokemon when it is transferred from Gen I to Gen II, but this creates a problem in that the attributes wouldn't be persistent if a Pokemon is traded back and forth across gens multiple times. The way the programmers solved this is by making the new attributes be derived from a Pokemon's IV, since IV are random numbers assigned to every Pokemon the same way in both gens.
The data type for IVs is just 2 bytes. The first 4 bits of these two bytes are for the attack IV, the next 4 are for defense, the next 4 are for speed, and the last 4 are for special. When checking for a Pokemon's gender, the game uses the 3 most significant bits of the IV bytes for no other reason than that's the check that can be programmed with the fewest assembly instructions. Those bits just happen to correspond to the attack IV, so its likely that male Pokemon being stronger than female Pokemon is not intentional.
The data type shenanigans have some other implications with regards to Pokemon gender distribution. In Pokemon species with a 7/8:1/8 male to female ratio (this is most Pokemon species), it is impossible for shiny Pokemon to be female. This is because only 8 different IV combinations correspond to a shiny Pokemon, and none of those combinations have an attack IV of 1 or 0.