Možeš preko funkcije DeviceIoControl iz windows.h.
Pročešljaj izvorni kod
RaWrite-a, pisan je u Delphiju ali se koriste WinAPI funkcije pa odatle možeš videti šta i kako. Zanemari pozive iz diskio.dll, oni se koriste samo ako je u pitanju Windows 9x. Na NT-u se koristi IOCTL, pogledaj WinIOCTL.pas i BlockDev.pas. Obrati pažnju na procedure TNTDisk.ReadPhysicalSector i TNTDisk.WritePhysicalSector (kad budeš prevodio na C, Pointer zameni sa void*, za ostalo ćeš se snaći).