Place a large skillet over medium heat. Add the sausage into the skillet to brown.
While the sausage is cooking, chop up the squash and other ingredients. Once the sausage is browned, remove it from skillet and set aside for later.
Leaving the fat from the sausage in the skillet, toss in the butternut squash pieces and cook until it starts to just turn tender, stirring occasionally (about 10-12 minutes). Add in the leek after the squash has cooked for 5 minutes.
Next, add in the mushrooms, garlic, rosemary and spinach to the squash and stir everything together until the spinach starts to wilt down.
Next, make small divots in the hash for the eggs. Crack the eggs into the divots and cover the skillet to let the eggs cook for a few minutes. Watch the eggs closely, if you want runny yolks (like I do) you will need to serve them as soon as the whites turn white because the yolks will harden quickly after that.
Spoon the eggs and hash mixture onto a plate and serve.