# Handycar writeup by @bigger777
При скачивании файла получаем архив. При распаковке получаем два файла. В одном сишный код, в другом какой-то список команд.
Немного покурив код, понимаем, что идет подключение на сервер с ip 194.135.94.122 на порт 1778.
Компилим код `gcc main.c -o main` и запускаем `./main`.
При подключении вводим рандомный логин и пароль. Далее можно ввести цифру от 1 до 3. В зависимости от цифры отправляется код на брейнфаке.
Онлайн компиллятор брейнфака в помощь (https://fatiherikli.github.io/brainfuck-visualizer/).
Результат трех команд:

Видим, что в первой ячейке ASCI код буквы "G", а во второй код цифры "1". Окей...
Смотрим файл с апи (в текстовом редакторе он корявый, поэтому Рома скинул пример в нормальном виде https://hackmd.io/@rerand0m/BJdL3OtnH).
*Примечание Ромы: Это MarkDown, его можно открывать в специальных редакторах, я не думал, что с этим могут быть проблемы.*
Видимо, нам нужен флаг. Поэтому пишим такой брейнфак, который в ячейки записывает ASCI код букв FLAG:
```brainfuck
>>++++++++++[<+++++++>-]>
++++++++++[<+++++++>-]<
++++++>>++++++++++[<++++++>-]
<+++++>>++++++++++[<+++++++>-]<+<<<
```
Сервер посылает нас нах и просит авторизоваться.
В апи сказано как это сделать. Нужно заполнить ячейки так:
| 0 | ASCI код "A" | ASCI код "U"| Код любого символа, например "А" (типа логин) | *пустая ячейка* | Код любого символа, например "P" (типа пароль) |
|-|-|-|-|-|-|
Брейнфак:
```
++++++++++[<++++++>-]<+++++>>++++++++++[<++++++++>-]<+++++>>++++++++++[<++++++>-]<+++++>>>++++++++++[<++++++++>-]>
```
В сишном коде изменяем первую и вторую команду на наши брейнфаки, перекомпилируем и запускаем.
Сначала регаем пользователя, переподключаемся и заходим за него, далее отправляем команду с брейнфаком FLAG.
Получаем флаг.