| 752 | } |
| 753 | |
| 754 | PUCHAR Disasm::CopyInstruction(PUCHAR pDst, PUCHAR pSrc) { |
| 755 | // Configure scratch areas if real areas are not available. |
| 756 | if (nullptr == pDst) { |
| 757 | pDst = m_ScratchDst; |
| 758 | } |
| 759 | if (nullptr == pSrc) { |
| 760 | // We cannot copy a non-existent instruction |
| 761 | return nullptr; |
| 762 | } |
| 763 | |
| 764 | // Figure out how big the instruction is, do the appropriate copy, |
| 765 | // and figure out what the target of the instruction is if any |
| 766 | // |
| 767 | RefCopyEntry pEntry = &s_CopyTable[pSrc[0]]; |
| 768 | return (this->*pEntry->pfCopy)(pEntry, pDst, pSrc); |
| 769 | } |
| 770 | |
| 771 | PUCHAR Disasm::CopyBytes(RefCopyEntry pEntry, PUCHAR pDst, PUCHAR pSrc) { |
| 772 | ULONG bytesFixed; |
no outgoing calls
no test coverage detected