Correct me if I'm wrong, but it seems that the program has a bug. I think it wants to parse an integer and check it whether it's zero (I think '0' is the correct pin) or not. However, std::cin will convert any string to zero, which spoils the FLAG if you supply a random string input. |
==> |
The solution (not a very good one) is explained here:
https://0x0000zer0.gitlab.io/0xBLOG/crackme_lilvm2.html |
==> |
Here is the explanation:
https://0x0000zer0.gitlab.io/0xBLOG/crackme_Full_Unpack_Me.html |
==> |
It is '@xA8z5RC3oE1'. I have only worked out how to get the password. All the rest should be similar. |
==> |
Is the password 'I-love-cracking-but-this-one-was-hard-pls-dont-leak-password-let-others-cry-while-trying-XD'? |
==> |
5"5p9#p)?%"p6(angle bracket here)17pjpbbeeddbgb
Sorry, I meant the above one. Brackets seem to be extracted. |
==> |
Is it '5"5p9#p)?%"p6 |
==> |
Is it '3This_Is_the_Password' ? |
==> |