Put the chicken between two pieces of saran wrap and lightly flatten using a rolling pin or heavy pot or flat mallet (don't use a spiked side).
Season with salt and pepper.
Heat two tablespoons of butter in your skillet (that has a lid) on medium-high heat.
Cook the chicken on medium heat for 4-5 minutes on each side, until slightly browned and just cooked through.
Remove the chicken, add in 2 more tablespoons of butter and add the mushrooms.
Cook on medium-high heat for 1-2 minutes before stirring, cook an additional 1-2 minutes.
Remove the mushrooms and put with the chicken on another plate.
Add in the Madeira wine and beef broth.
Bring to a boil, reduce to a simmer and cook for 10-12 minutes.
While sauce is reducing boil your asparagus for 3-5 minutes in another pot or microwave on a plate in a single layer with a wet paper towel on top for 4-5 minutes.
Add the chicken back into the pan, top with mushrooms and asparagus.
Cook an additional 1-2 minutes, cover the chicken with Mozzarella cheese and mushrooms.
Cover the pan and let cook for 2-3 minutes or until cheese is melted.