Egg

Eggs are items that contain Pokémon. Eggs can be obtained in several ways: buying them from Shops, breeding level 100 Pokémon or in some Dungeons loot. Hatching an egg will boost the bred Pokémon's attack by 25% of its base attack. Where you buy / obtain an egg has zero effect on the pokemon Hatched from that egg.

Shop Egg Pool
In the following tables, Bolded names indicate Pokémon that can be obtained in their respective regions by either hatching shop eggs or through Wandering Pokémon on the Farm. Bolded and Italicized names indicate Pokémon that can only be obtained in their respective region by hatching shop eggs.  Bold, Italicized, and underlined  names indicate Pokémon that cannot be obtained outside shop eggs (ie can't find it wild in a later region even with Require Complete Pokédex challenge off) as of v0.8.15

The Egg Pool split works like this:
 * 50% chance of getting a Pokemon from the furthest region you've been to (odds split evenly for each possible Pokemon from the furthest region reached)
 * Remaining 50% is split among all previous region egg pool Pokemon, favoring more recent regions. See the  Helpful Info section below for more details.

Helpful Info
When you enter the next area the Pokémon rates change. Assuming you've just entered Sinnoh the Water Egg table changes from

In Hoenn
(Squirtle, Lapras, Staryu, Psyduck)

(Totodile, Wooper, Marill, Qwilfish)

(Mudkip, Feebas, Clamperl)

(Mudkip, Feebas, Clamperl)

In Sinnoh
(Squirtle, Lapras, Staryu, Psyduck)

(Totodile, Wooper, Marill, Qwilfish)

(Mudkip, Feebas, Clamperl)

(Mudkip, Feebas, Clamperl)

(Piplup, Finneon, Buizel)

(Piplup, Finneon, Buizel)

(Piplup, Finneon, Buizel)

(Piplup, Finneon, Buizel)

This makes the chance of getting a Pokémon from the new region you entered 50% and dropping the total combination of all previous areas percent's down to 50%. The Mystery Egg will pull randomly from all egg pools, making it most useful when you have not obtained any egg Pokémon for that region yet.