Breeding works with egg groups. So if you have two Pokemon in the same egg group who are different genders they will breed. The egg that is produced will be the same Pokemon as the mother.
So if you take a Female Butterfree (Egg group: Bug) and a Male Scyther (Egg group: Bug) you will get a Butterfree egg.
The moves the baby Pokemon knows are passed down by the male.
I don't have a list for just Pokemon in Emerald, but here's a link to all the various Egg groups.
That's the Amorphous Egg group, but the rest of them are on the left.
More on breeding