In a large bowl, combine warm milk, sugar, and yeast. Let it sit for about 5 minutes until frothy.
Add the melted butter, egg, vanilla extract, cocoa powder, and salt. Mix well.
Gradually add the flour, one cup at a time, mixing until a dough forms.
Knead the dough on a floured surface for about 5 minutes until smooth.
Place the dough in a greased bowl, cover with a kitchen towel, and let it rise in a warm place for about 1 hour or until doubled in size.
Once the dough has risen, punch it down and roll it out on a floured surface into a rectangle (about 12x18 inches).
Spread the softened butter over the dough.
In a small bowl, mix brown sugar, cinnamon, and cocoa powder, then sprinkle it evenly over the buttered dough.
Starting from the long edge, roll the dough tightly into a log.
Cut the log into 12 equal pieces and place them in a greased 9x13 inch baking dish.
Cover and let rise for another 30 minutes.
Preheat the oven to 350°F. Bake the rolls for 20-25 minutes or until golden brown.
While the rolls are baking, prepare the cream cheese frosting by beating together the cream cheese, butter, powdered sugar, vanilla extract, and milk until smooth and creamy.
Once the rolls are done baking, let them cool for about 10 minutes before spreading the cream cheese frosting on top.
Serve warm.