| 158 | } |
| 159 | |
| 160 | PUCHAR DetourGenJmpIndirect(PUCHAR pCode, PUCHAR* ppJmpVal) { |
| 161 | PUCHAR pJmpSrc = pCode + 6; |
| 162 | JmpIndirect code; |
| 163 | code.imm32 = (INT32)((PUCHAR)ppJmpVal - pJmpSrc); |
| 164 | MapLockedCopyMemory(pCode, &code, sizeof(code)); |
| 165 | pCode++; // jmp [+imm32] |
| 166 | pCode++; |
| 167 | ((INT32*&)pCode)++; |
| 168 | return pCode; |
| 169 | } |
| 170 | |
| 171 | PUCHAR DetourGenBrk(PUCHAR pCode, PUCHAR pLimit) { |
| 172 | ULONG count = pLimit - pCode; |
no test coverage detected