글 수 87
00601333 > \55 PUSH EBP
00601334 . 8BCE MOV ECX,ESI
00601336 . E8 95030000 CALL RanceQue.006016D0
0060133B . 837E 14 00 CMP DWORD PTR DS:[ESI+14],0
0060133F . 894424 24 MOV DWORD PTR SS:[ESP+24],EAX
00601343 . 75 04 JNZ SHORT RanceQue.00601349
00601345 . 33C9 XOR ECX,ECX
00601347 . EB 03 JMP SHORT RanceQue.0060134C
00601349 8B4D 04 MOV ECX,DWORD PTR SS:[EBP+4]
0060134C 8B73 48 MOV ESI,DWORD PTR DS:[EBX+48]
0060134F . 8BD6 MOV EDX,ESI
00601351 . 0FAFF0 IMUL ESI,EAX
00601354 . 0FAFD1 IMUL EDX,ECX
00601357 . 52 PUSH EDX
00601358 . 53 PUSH EBX
00601334 . 8BCE MOV ECX,ESI
00601336 . E8 95030000 CALL RanceQue.006016D0
0060133B . 837E 14 00 CMP DWORD PTR DS:[ESI+14],0
0060133F . 894424 24 MOV DWORD PTR SS:[ESP+24],EAX
00601343 . 75 04 JNZ SHORT RanceQue.00601349
00601345 . 33C9 XOR ECX,ECX
00601347 . EB 03 JMP SHORT RanceQue.0060134C
00601349 8B4D 04 MOV ECX,DWORD PTR SS:[EBP+4]
0060134C 8B73 48 MOV ESI,DWORD PTR DS:[EBX+48]
0060134F . 8BD6 MOV EDX,ESI
00601351 . 0FAFF0 IMUL ESI,EAX
00601354 . 0FAFD1 IMUL EDX,ECX
00601357 . 52 PUSH EDX
00601358 . 53 PUSH EBX
우선 자폰 회피를 수정한곳의 분기문을 따라 오면 위 코드중 강조한 부분이 보일 겁니다.
[EBP+4]가 글자 크기를 보내는 곳 입니다. 대사, 이름 같이 형식이 다른면 크기도 제각각이라
추가할 코드가 30바이트 정도 먹으니 수정할 공간이 부족한 관계로 적당한 공간이 빈곳에 아래 코드를 입력합니다.
MOV ECX,DWORD PTR SS:[EBP+4]
CMP CL,16
JL SHORT
분기지점2
CMP CL,28
JL SHORT
분기지점1
SUB CL,4
SUB CL,2 <-- 분기지점1
SUB CL,4 <--
분기지점2
MOV BYTE PTR SS:[EBP+4],CL
MOV ESI,DWORD PTR DS:[EBX+48]
RETN
그후 입력한 코드를 사용할수있게 강조된 부분을 콜문으로 수정해 줍니다.
아래 스샷은 수정후의 폰트 크기.
사족1. 글자 안겹치니 좋타.
사족2. 이제 황금지점만 찾으면 되겠는데 있을까...
사족3. 저질 코드 최적화 해주신 피시식님께 감사르~