Fopen for write return NULL в первом запуске?
Я заметил, что пока вы держите открытые файлы для записи, но не закрываете их.
Попробуйте добавить fclose ( outFile) после fwrite:
outFile = fopen ( current_file_name , "wb" );
fwrite(output, sizeof( char ), bytes_read, outFile);
fclose(outFile)
Возможно, вы открываете больше файлов, чем позволяет ваша ОС.