맨날 x64dbg로 푸는데 익숙해져서 다른 툴도 좀 써보려고 한다. IDA 진짜 편한거 같다. 편의 기능이 너무 많아서 진짜 돈주고 쓸만한 툴이긴 한듯 하다. 디스어셈블한걸 적당히 수정하면 이렇게 될거 같다. 중요한건 저기 있는 check() 겠지. 어셈블리로 한 줄씩 해석하면 진짜 오래걸리는데.. 이렇게 보니 간편하다. 플래그도 저거랑 비교하는 거 같고.. 정리해보면, buf의 길이는 0x18, 24글자? 인걸로 보이고.. a[i]와 a[i+1]을 더해서 flag[i]와 비교하는 것 같다. 그러면 맨 마지막 글자부터 구해야겠네? scanf 인지는 모르겠지만, 마지막에 널 문자가 들어갈 것 같으니.. a[i+1] = 0 이고, a[i] = 0x4C라고 하면 얼추 들어맞는 것 같다. code = [0xAD..