In a large bowl, whisk together the granulated sugar, cocoa powder, cornstarch and salt. Set aside.
In a large pan, heat the milk until steaming. Once steaming, slowly whisk the dry ingredients into the steaming milk.
Continue whisking constantly until the pudding has thickened and coats the back of a spoon with a thick layer of pudding.
Once the pudding has thickened, remove it from the heat and whisk in the vanilla and butter.
After the pudding is completely mixed, transfer it to a large shallow dish (like a large pie plate or even a 9x13 pan - the larger the pan the faster the pudding will chill). Cover the pudding with plastic wrap, making sure that the plastic wrap is touching the top of the pudding to avoid getting a layer on the top of your pudding.
Cool the pudding in the fridge until completely chilled.
Once chilled, combine the cream cheese and butter in the bowl of a stand mixer or with an electric hand mixer until smooth.
To the cream cheese and butter mixture, add the powdered sugar, mixing until combined.
Fold the whipped topping into the cream cheese mixture until smooth.
Once smooth, add the chocolate pudding to the cream cheese mixture and fold until completely combined. Set aside.
Crush the entire package of Oreos into a fine crumb. (I use my blender or food processor for this, but you can also put in a ziplock bag and crush with a rolling pin).
Divide the Oreo crumbs in half.
To one half of the crushed oreos, add the melted butter.
Press the oreo/butter mix into the bottom of a 9x13 pan.
Top the oreo crust with the chocolate pudding mixture.
Sprinkle the remaining oreo crumbs on top of the pudding mixture.
Decorate with chocolate eggs, peeps, green colored coconut (for grass) and chocolate carrots, as desired.