Прочитать бинарно не можете? Есть функция
read.
Читайте ей по 4 байта 2 раза в char buf[4].
little-endian означает, что сначала идут самые минимальные байты. Т.е. buf[0] - это младшие 8 бит числа, buf[3] - старшие. Для собирания числа воедино смотрите на операцию сдвига. (int)buf[3] << 24 | (int)buf[2] << 16 поставит на место 2 старших байта (младшие додумайте сами).
Тип 64-х битных чисел - long long. Вам в условии посоветовали им пользоваться.
Сложить 2 числа сами сможете?
Бинарный вывод делается, внезапно функцией
write.
Ну, еще входной и выходной файлы, возможно, открыть придется, через функцию
fopen.