편집 : OllyDBG에서 가능하다는 것을 알고 있지만 작동시키기 위해 런타임 버전 (CPP)이 필요합니다.대상 기능의 변경은 완전히 완료되지 않았습니다.
this 스위치 내부에 기능 (의사 코드)이 있습니다. 케이스 115의 작동을 수정하고 싶습니다. 내가 예를 들어, 지침,이 경우 특정 부분에서 대체하려는
sub_100CE3E8(a1, v19);
break;
1024185D 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
10241860 50 PUSH EAX
10241861 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
10241864 51 PUSH ECX
10241865 8B0D A0B12A10 MOV ECX,DWORD PTR DS:[102AB1A0]
1024186B E8 78CBE8FF CALL somelib.100CE3E8
그리고
(케이스 (115)) : 변경 CALL 100CE3E8 그것은처럼 보이는 100CF1E9
를 호출 1024186B
저는 이러한 종류의 작업을 수행하기 위해 MS Windows Detours 1.5를 사용하고 있으며 대부분의 경우 잘 작동합니다.
void hSwitchFunction(int a1)
{
//So what should I put here to jump directly to 1024185D,
//and don't replace the function completely?
//I mean I want to modify just the part of this function.
}
//somewhere in the code
DetourFunction((PBYTE)0x10241630, (PBYTE)hSwitchFunction);
//somewhere in the code
나는 그것을 알고 있지만 의사 코드를 hSwitchFunction 본문에 넣는 방법을 모른다. 그래서 나는 그것의 부분을 수정할 수 있습니다. – deepspace