usually when one see he cant read/write data to HDD, one can display SMART data for that HDD (Crystal Disk Info) and if there is pending sector count, one can right click drive, go to Properties/Tools and do filesystem check to cure pending sectors.

Offline uncorrectable means problem with drive, if the count is above 200 one can experience data loss (canot read or write some sectors). If HDD is in warranty, return drive to the seller for replacement or contact local branch of the HDD vendor.

How to fix drive so bad / offline uncorrectable sectors are isolated and not used for writing data?

Here are some useful resources:

http://hdrecover.sourceforge.net/ - Attempts to recover a hard disk that has bad blocks on it.
http://www.dposoft.net/rbd.html - utility ... intended to isolate unrecoverable bad sectors from partitions.
http://www.sj-vs.net/forcing-a-hard-disk-to-reallocate-bad-sectors/ - manually reallocate bad sectors