I cannot start apache2 server because some other process is blocking port 80. From the Netstat I have learned that it is a System process who has a socket open to port 80 with an IP address of 0.0.0.0. This does not help much. What exactly in System process is listening on the port 80? How do I stop System process from using port 80? What the hell is IP address 0.0.0.0?
Any thoughts?

I think it may be SQL Server Reporting Services (SQLEXPRESS) that comes with MS SQL Server 2012.
To disable that service, follow these steps:

Then please try starting apache2 and see if the problem is still there. It helped solving this problem in my case.
SEND BITCOIN TIPS
As I understand you use Windows as OS and IIS as web server. So seems IIS uses this port.
Try to stop IIS and run Apache.
SEND BITCOIN TIPS
FavScripts.com is a free tool to save your favorite scripts and commands, then quickly find and copy-paste your commands with just few clicks.
Boost your productivity with FavScripts.com!