When you boot up and it takes really long, search up 'see which processes' and you should see an option saying 'See which processes start up automatically when you start windows'. Click this and look into the top-right corner. Something there will tell me your last BIOS time. Tell me that. If you can't find the button in search, go to Task Manager and press start-up. Now repeat all this on one of those times when your computer doesn't take long. What's your hard drive by the way? Is you computer the same specs as your tomshardware profile says?