DreamHack/Reverising
rev-basic-8
G_OM
2024. 10. 17. 16:52
IDA로 파일을 실행시켜 보자.
'Correct'가 출력돼야 하니 sub_14001000을 확인
unsigned __int8 : 0부터 255까지의 값을 갖는 부호 없는 8비트 정수
a1은 한정적이라고 할 수 있다.
'(-5 * *(_byte *)(a1+i) =' a1[i] 의 값을 -5 곱한 후 byte_140003000[i] 와 비교
byte_140003000 배열이다.
종합적으로 uint8_t 은 0~255까지의 값 byte_140003000 배열 값들도 많지가 않다
식은 그대로 가되 unsigned 8-bit로 처리해주고 비교하면 된다.
result = (-5 * a1) % 256
수식 : -5 * a1 연산 후에 256으로 나눈 나머지 값들을 쓴다.
그러면 바로 브루트 포스로 하면...
어?