Rating:

With sourcery levels, source was provided. Looking at the source I could recognize that the constraints on last part of the input only depended on the four starting chars. Those 4 chars were also unbounded so had many combinations of satisfying input. Just by changing source from the lab I wrote a solver that would generate correct string by taking first 4 chars as input. Source [here](https://gist.github.com/sudhackar/cde1a434b355b2b03394b9d3d9c36568)

```sh
$ nasm -f elf lab2_solve.asm
$ ld -m elf_i386 -o lab2_solve lab2_solve.o
$ ./lab2_solve
FLAG
ebJjgPLrEsBp
$ ./lab2_solve
flag
ebPpeRKjIiJh
$ ./lab2_solve
meme
cdKpeREdDtMo

```

Original writeup (https://gist.github.com/sudhackar/cde1a434b355b2b03394b9d3d9c36568).