So first of all, amp_GENDER would be an array index so it's only going to have a single value by itself... you should put it at this spot in init_constants:
Set it to the value of AMP_MAX (which is the first unused value for the AMP array index), then increase AMP_MAX by 1. While you're editing the init_constants script, also add in two new gender macros gender_MALE and gender_FEMALE (set to 0 and 1 as you wanted)
Next, go to amp_generate_monster (which sets up a newly spawned monster's AMP data) and add a new line like this:
global.active_monster_party[argument0,amp_GENDER] = choose(gender_MALE,gender_FEMALE)
This should make a newly spawned monster have a 50% chance to be male and a 50% chance to be female.
Finally, in monster_get_battlesprite, you'd get the gender via amp_read_var(argument0,amp_GENDER) and then have an if statement: if gender is equal to gender_MALE, return global.monster_data[amp_read_var(argument0,amp_MONID),mond_SPRITE_BATTLE_MALE], otherwise return global.monster_data[amp_read_var(argument0,amp_MONID),mond_SPRITE_BATTLE_FEMALE].
(Changing the battle sprite index in the monster data array so there's more than one was the stuff I told you about last time, and with this change we use both those new sprites)