Your HDD is manufactured by Seagate.
If you are still able to boot this machine, Click Start, then Run, type cmd and click "Ok". In the command session window, type chkdsk /r (note the space before /r) and press "Enter". You will be told the drive is busy and asked if you want to schedule this for the next boot. Type Y and press "Enter". Type exit and press "Enter". Reboot. (Note: On some machines, chkdsk may start immediately after the commands are entered...if this happens, you will need to type exit and press enter after the check completes to start the machine.)
This will be a very long check...let it finish. It may appear to hang or even back up a bit...this is normal...I have seen this check take hours to complete depending on the condition of the drive it's checking. I realize you have run chkdsk before on this drive, but the default procedure does not include the /r switch so it doesn't recover the bad sectors.