To make the cupcakes, preheat oven to 350 degrees F and line cupcake pans with paper liners.
In a liquid measuring cup, combine hot water and cocoa powder and whisk until smooth. In a medium bowl, combine flour, baking soda, baking powder, and salt, and whisk to blend.
In a medium saucepan set over medium heat, combine the butter and sugar. Cook, stirring occasionally, until the mixture is smooth and the butter is completely melted. Transfer the mixture to the bowl of an electric mixer and beat on medium-low speed until the bowl is cool to the touch, about 5 minutes. Add the eggs one at a time, blending well after each addition and scraping down the sides of the bowl as needed. Blend in the vanilla and then the cocoa mixture until smooth. With the mixer running on low speed, add the dry ingredients in three additions alternating with the sour cream or greek yogurt; begin and end wih the dry ingredients and blend each addition just until incorporated.
Divide the batter evenly between the prepared cupcake liners, and bake 20-22 minutes, until a toothpick inserted into the center of the cupcakes comes out clean. Let cool in the pans for 5-10 minutes, then transfer to a wire rack to cool completely before frosting.
To make the frosting, combine the cream cheese, butter, and peanut butter in the bowl of an electric mixer. Combine on medium speed until smooth. Add the powdered sugar one cup at a time, beating continuously. Mix in the whipped topping until frosting is smooth and fluffy. Frost cooled cupcakes as desired, then top with a sprinkling of crushed with Butterfinger bits.
Notes
I store these in the fridge, because of the cream cheese-based frosting, and allow the cupcakes to sit at room temperature for about 30 minutes before serving. Obviously how you store/serve these is your own judgment call!