0
mirror of https://github.com/sampletext32/ParkanPlayground.git synced 2025-06-20 16:18:37 +03:00

Added support for OR r8, r/m8 instruction (opcode 0x0A) with tests

This commit is contained in:
bird_egop
2025-04-13 00:23:11 +03:00
parent 7063a4a5a8
commit 3ffaaf0057
4 changed files with 143 additions and 0 deletions

View File

@ -4,6 +4,7 @@ using X86Disassembler.X86.Handlers.Call;
using X86Disassembler.X86.Handlers.FloatingPoint;
using X86Disassembler.X86.Handlers.Jump;
using X86Disassembler.X86.Handlers.Mov;
using X86Disassembler.X86.Handlers.Or;
using X86Disassembler.X86.Handlers.Pop;
using X86Disassembler.X86.Handlers.Push;
using X86Disassembler.X86.Handlers.Ret;
@ -65,6 +66,9 @@ public class InstructionHandlerFactory
// Register Xor handlers
RegisterXorHandlers();
// Register Or handlers
RegisterOrHandlers();
// Register Data Transfer handlers
RegisterDataTransferHandlers();
@ -195,6 +199,15 @@ public class InstructionHandlerFactory
_handlers.Add(new XorImmWithRm32SignExtendedHandler(_codeBuffer, _decoder, _length));
}
/// <summary>
/// Registers all Or instruction handlers
/// </summary>
private void RegisterOrHandlers()
{
// Add Or handlers
_handlers.Add(new OrR8Rm8Handler(_codeBuffer, _decoder, _length));
}
/// <summary>
/// Registers all Data Transfer instruction handlers
/// </summary>