Ну, во-первых. Что делает Winrar:
"Распаковка архивов RAR, а также ARJ, bz2, CAB, GZ, ISO, JAR, LZH, TAR, UUE, XZ, Z, ZIP, ZIPX, 7z,"
Таким образом, сама программа умеет работать со множеством разных форматов, т.е при распаковке используется множество разных алгоритмов.
Во-вторых:
Хотя архивирование в формат RAR — проприетарное, на официальном сайте RarLab доступен защищённый авторскими правами бесплатный исходный код распаковщика UnRAR, лицензия на который разрешает использовать его в любом ПО. Таким образом, сторонние авторы могут создавать программы, способные распаковывать (но не создавать) RAR-архивы - таким образом, если вам задали такую тему работы, то неплохо бы начать с ознакомлением с этим материалом.
В-третьих:
Начиная с версии 5 в WinRAR добавлена поддержка нового архивного формата RAR5,. Отлично. Лезим сюда:
https://www.rarlab.com/technote.htm и изучаем внимательно.
Затем - углубляем наше понимание:
saanvi.ru/fac.php?filename=txt/soft/rar5.txt
Наконец, от тех, кто требуем от вас сам алгоритм просим денег на покупку лицензии у авторов. В противном случае обвиняем их в попытке нарушения авторских прав :-)