Most of the online crud I hobbled through to find a solution was just that – crud.
This seems to fix Access Denied error when starting Windows XP Firewall.
Open a run command and type:
services.msc click [OK]
Make sure Security Center is started, if not start it and make sure it is set to start Automatically.
Then try to start Windows Firewall
If that still doesn’t work:
Open a command prompt and enter:
rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%infnetrass.inf
Restart Windows, and then run this command (from Command Prompt):
NETSH FIREWALL RESET