Preheat oven to 350 degrees.
In a medium bowl, mix together flour, baking soda and salt. Set aside.
In a stand mixer fitted with a paddle attachment, cream the butter and both sugars. Scrape down the bowl.
Add the pudding mix, eggs and vanilla. (White chocolate pudding mix can be hard to find so if you can't find it vanilla will work as well)
Slowly add the dry ingredients and mix until combined.
Stir in the crushed Oreos and peanut butter chips. You can mix in all the M&M's at this time or you can mix in about 1/4 cup and reserve the rest to top each cookie dough ball with a few M&M's before you bake them. Doing this will make your cookies more colorful once baked.
Line a baking sheet with parchment paper. Place tablespoon size balls of cookie dough on the baking sheet about two inches apart (ice-cream scoops work great for this). If you are toping them with M&M's do this now. Bake for about 12 minutes or until the cookies start to turn golden brown around the edge.
Allow the cookies to cool on the baking sheet for a few minutes and then transfer to a wire rack to cool completely.