i found it out thanks to inazuma ans smogon:
basically, the power of Punish is 60. Every time your opponent boosts a stat, the power of Punish increases. The formula is a bit complex but basically you multiply .25 by every amount of boost for each stat (from 1 to 6), add 1, then multiply all these numbers together. So, say an opponent had a Dragon Dance, a Scheme, and two Acid Armors. The power would be:
60 * 1.25 (ATK, from the D) * 2 (DEF, from the Acid Armors) * 1.5 (SAT, from the Scheme) * 1.25 (SPD, from the DD) = 281.25.
The best application is against any booster except DEF-boosting ones (Bulk Up, Curse, Acid Armor) - fortunately, this includes the good majority of them (Swords Dance, Calm Mind, Agility/Rock Cart, Scheme/Tail Glow, Dragon Dance). The trick is getting decent power out of it. After one double boost, it's already more powerful than Crunch; after two it's either at 120 or 135.
Okay, now, the trick is finding a good user of it. A couple Dark types get it - Weavile, Skutank, Absol. You can also use it on Ho-oh to beat up various ubers - let Kyogre get those 6 Calm Minds, then hit it with a 375 power attack.
credit:Misty+ from the smogon forums