reversing/립케알

reversing.kr - ImagePrc

ddanss 2019. 5. 5. 15:14
728x90

디버거 프로그램으로 보면 15F90번 비교하는 부분이 있다. 그 부분이 핵심비교문이다.

 

PeViewer로보면 rsrc부분에 비교하는 부분이 있다. rsrc 전체다.

 

그부분을 복사해서 0x36부터 붙이면 된다. 0x35까진 비트맵 헤더다.

 

0~1 은 42 4D로 기본 그림판 포맷이다.

 

2~5 는 그림 파일 크기다. 15F36 (이걸 좀 작게해줘도 답은 보인다.)

 

6~7, 8~9 는 무슨 준비 값이라는데.. 잘모르겠다

 

A~D 까지는 비트맵 데이터를 찾을 수 있는 시작 오프셋이다. 36부터 그림이 시작된다. (바이트 단위)

 

E~0x11은 비트맵 헤더 크기이며 40(0x28)으로 되어있다.

 

0x12~0x15는 비트맵 가로 크기 (200)

 

0x16~0x19는 비트맵 세로 크기다. (150)

 

0x1A~0x1B는 사용하는 색판의 수. 기본 1이다.

 

0x1C~0x1D는 한 화소에 들어가는 비트 수이며 그림의 색 깊이를 뜻한다. 보통 값은 1, 4, 8, 16, 24, 32이다. (24비트로 해야 답이 보임)

 

0x1E~0x21는 압축 방식

 

0x22~0x25는 그림 크기 (15F90)

 

0x26~0x29는 그림의 가로 해상도. (미터 당 화소, signed integer)

 

0x2A~0x2D는 그림의 세로 해상도. (미터 당 화소, signed integer) 

 

0x2E~0x31는 색 팔레트의 색 수, 또는 0에서 기본값 2n

 

0x32~0x35는 중요한 색의 수. 모든 색이 중요할 경우 0. 일반적으로 무시. 

 

0x36~는 다 그림 정보.

반응형