Description
Programmers were so busy assessing if they could implement functional programming in C, they did not step back and think if they should implement functional programming in C.
Attachments
Output with original flag: 18 6f 98 19 58 70 b0 9a 2b dc b 6a 4b a6 9c 2c 6c 99 58 2c 36 9f 8c 35 66 64 1a
Source code: https://cybersharing.net/s/dcfa62eb941d2893
Writeup
Two pure functions are provided, one to XOR a given character with 0x007 and one to rotate a bit right once. One impure function is provided that stores the result in storage of the result of the functionals at the right of it, and loading the next flag character for the functionals at the left for processing. It's easier to crack since the source code is provided, but reversing a binary will be annoying due to the involvement of the stack.
Maybe next time.
Flag
ictf{7h15_wa5_a_m157ak3_a1b2c3d4}