본문 바로가기
🔧 리버싱

(⊙_⊙)?Dreamhack 리버싱 문제풀이: rev-basic-5

by 불타는 참새 2023. 11. 1.

*(unsigned __int8 *)(a1 + i + 1) + *(unsigned __int8 *)(a1 + i) != byte_140003000[i]

00007FF646C8300: AD D8 CB CB 9D 97 CB C4 92 A1 D2 D7 D2 D6 A8 A5 
00007FF646C8301: DC C7 AD A3 A1 98 4C 00

 

*(unsigned __int8 *)(a1 + i + 1) + *(unsigned __int8 *)(a1 + i) != byte_140003000[i]

(정답문자열[ i +1] ) + ( 정답문자열[ i ]) == 입력값[ i ]

 

#include<stdio.h>
int main(void)
{
	int a, i;
	int arr[0x18]={0xAD, 0xD8, 0xCB, 0xCB, 0x9D, 0x97, 0xCB, 0xC4, 0x92, 0xA1, 0xD2, 0xD7, 0xD2, 0xD6, 0xA8, 0xA5, 0xDC, 0xC7, 0xAD, 0xA3, 0xA1, 0x98, 0x4C, 0x00}; 
	
	for(i=0;i<0x18-1;i++)
	{
		a=arr[i]+arr[i+1];
		printf("%c", a);
	}
	
	
	return 0;

}