As of the 7th Generation of Pokémon, here are the top 10 heaviest:

*Cosmoem*, *Primal Groudon*, and *Celesteela* are tied for the heaviest with a weight of **2,204.4** lbs.

*Groudon* is the 2nd heaviest and weighs **2,094.4** lbs.

*Mega Metagross* is the 3rd heaviest and weighs **2,078.7** lbs.

*Mudsdale* is the 4th heaviest and weighs **2,028.3** lbs.

*Guzzlord* is the 5th heaviest and weighs **1,957.7** lbs.

*Stakataka* is the 6th heaviest and weighs **1,807.8** lbs.

*Altered Forme Giratina* is the 7th heaviest and weighs **1,653.5** lbs.

*Mega Steelix* is the 8th heaviest and weighs **1,631.4** lbs.

*Dialga* is the 9th heaviest and weighs **1,505.8** lbs.

*Origin Forme Giratina* is the 10th heaviest and weighs **1433** lbs.

For the Heavy Ball, here are the modifiers for SM:

-20 if used on Pokémon weighing at most 220.2 lbs.

No modifier if used on Pokémon weighing between 220.5 lbs and 440.7 lbs.

+20 if used on Pokémon weighing between 440.9 lbs. and 661.2 lbs.

+30 if used on Pokémon weighing at least 661.4 lbs.

(So, if you use a heavy ball on one of these Pokémon listed above, there is a great chance that it'll go in it.)

Source