| 473 | } |
| 474 | |
| 475 | void pushVmContext(Instruction* instruction) |
| 476 | { |
| 477 | emitPushRegister(instruction, ZYDIS_REGISTER_R15, 64); |
| 478 | emitPushRegister(instruction, ZYDIS_REGISTER_R14, 64); |
| 479 | emitPushRegister(instruction, ZYDIS_REGISTER_R13, 64); |
| 480 | emitPushRegister(instruction, ZYDIS_REGISTER_R12, 64); |
| 481 | emitPushRegister(instruction, ZYDIS_REGISTER_R11, 64); |
| 482 | emitPushRegister(instruction, ZYDIS_REGISTER_R10, 64); |
| 483 | emitPushRegister(instruction, ZYDIS_REGISTER_R9, 64); |
| 484 | emitPushRegister(instruction, ZYDIS_REGISTER_R8, 64); |
| 485 | emitPushRegister(instruction, ZYDIS_REGISTER_RBP, 64); |
| 486 | emitPushRegister(instruction, ZYDIS_REGISTER_RDI, 64); |
| 487 | emitPushRegister(instruction, ZYDIS_REGISTER_RSI, 64); |
| 488 | emitPushRegister(instruction, ZYDIS_REGISTER_RDX, 64); |
| 489 | emitPushRegister(instruction, ZYDIS_REGISTER_RCX, 64); |
| 490 | emitPushRegister(instruction, ZYDIS_REGISTER_RBX, 64); |
| 491 | emitPushRegister(instruction, ZYDIS_REGISTER_RAX, 64); |
| 492 | emitPushRegister(instruction, ZYDIS_REGISTER_RFLAGS, 64); |
| 493 | } |
| 494 | |
| 495 | template <typename T> |
| 496 | void emitPushRegister(Instruction* instruction, T reg, BYTE size) |
no test coverage detected