bird_egop
|
bdd691a021
|
Inlined local methods in StringInstructionHandler for better readability
|
2025-04-13 02:19:19 +03:00 |
|
bird_egop
|
410211fcc6
|
Converted StringInstructionDecoder to StringInstructionHandler for better consistency with handler pattern
|
2025-04-13 02:18:12 +03:00 |
|
bird_egop
|
9dfa559045
|
Refactored instruction decoder to improve modularity. Created StringInstructionDecoder and updated PrefixDecoder. Fixed handler registration in InstructionHandlerFactory.
|
2025-04-13 02:16:12 +03:00 |
|
bird_egop
|
c14a92bf04
|
Added support for string instructions with REP prefix, specifically F3 A5 (REP MOVS)
|
2025-04-13 02:10:48 +03:00 |
|
bird_egop
|
bfaeba0d5f
|
Fixed segment override prefix handling for 0x64 (FS) opcode with tests
|
2025-04-13 01:39:38 +03:00 |
|
bird_egop
|
b4a85d2839
|
fix duplicated code
|
2025-04-13 01:36:11 +03:00 |
|
bird_egop
|
52841237c1
|
Added CmpRm32R32Handler for CMP r/m32, r32 instruction (0x39) with tests
|
2025-04-13 01:34:56 +03:00 |
|
bird_egop
|
28ba47bfab
|
add factory tests
|
2025-04-13 01:30:58 +03:00 |
|
bird_egop
|
c701fdb435
|
Added CmpAlImmHandler for CMP AL, imm8 instruction (0x3C) with tests
|
2025-04-13 01:30:42 +03:00 |
|
bird_egop
|
9cad5ff95c
|
fixup
|
2025-04-13 01:11:45 +03:00 |
|
bird_egop
|
8123ced2d6
|
Removed duplicate OR instruction handlers and files to fix handler organization
|
2025-04-13 01:11:20 +03:00 |
|
bird_egop
|
03aa51d13c
|
Removed Group1 folder and fixed handler organization. Organized handlers by instruction type instead of abstract groupings.
|
2025-04-13 01:08:49 +03:00 |
|
bird_egop
|
b8a37e626c
|
Implemented Group1 instruction handlers for CMP r/m8, imm8 and fixed OR r/m8, imm8
|
2025-04-13 01:02:37 +03:00 |
|
bird_egop
|
402cdc68fb
|
Added support for INC r32 instructions (0x40-0x47) with tests
|
2025-04-13 00:55:20 +03:00 |
|
bird_egop
|
7d23af32fa
|
Added support for MOV r/m8, imm8 (0xC6) and ADD r/m32, r32 (0x01) instructions with tests
|
2025-04-13 00:50:23 +03:00 |
|
bird_egop
|
266fdfeee5
|
Added support for CALL r/m32 (0xFF /2) and ADD r32, r/m32 (0x03) instructions with tests
|
2025-04-13 00:45:53 +03:00 |
|
bird_egop
|
393aac5bf6
|
Added support for DEC r32 instructions (0x48-0x4F) with tests
|
2025-04-13 00:41:36 +03:00 |
|
bird_egop
|
439b6576b7
|
Added support for CMP r32, r/m32 (0x3B) and MOV r/m32, imm32 (0xC7) instructions with tests
|
2025-04-13 00:38:38 +03:00 |
|
bird_egop
|
70f2acd3d1
|
Added support for LEA instruction (opcode 0x8D) with tests
|
2025-04-13 00:34:03 +03:00 |
|
bird_egop
|
79bb19df6b
|
Reorganized OR instruction handlers into a dedicated folder
|
2025-04-13 00:28:20 +03:00 |
|
bird_egop
|
94a61a17a1
|
Added complete set of OR instruction handlers with tests
|
2025-04-13 00:26:13 +03:00 |
|
bird_egop
|
3ffaaf0057
|
Added support for OR r8, r/m8 instruction (opcode 0x0A) with tests
|
2025-04-13 00:23:11 +03:00 |
|
bird_egop
|
7063a4a5a8
|
fix float
|
2025-04-13 00:21:01 +03:00 |
|
bird_egop
|
016e1ee54f
|
Reorganized instruction handlers into more descriptive folders (ArithmeticImmediate and ArithmeticUnary)
|
2025-04-12 23:46:05 +03:00 |
|
bird_egop
|
f658f4384c
|
cleanup
|
2025-04-12 23:40:48 +03:00 |
|
bird_egop
|
3cc6d27e33
|
Split FloatingPointHandler into specialized handlers for each instruction type and fixed FLDCW instruction formatting
|
2025-04-12 23:33:40 +03:00 |
|
bird_egop
|
82653f96f2
|
split float handlers
|
2025-04-12 23:24:42 +03:00 |
|
bird_egop
|
bb695cf3bb
|
move handlers, remove bases
|
2025-04-12 23:03:07 +03:00 |
|
bird_egop
|
acccf5169a
|
Fixed FnstswHandler test by registering the handler in InstructionHandlerFactory
|
2025-04-12 22:34:02 +03:00 |
|
bird_egop
|
c027adc113
|
split and move handlers
|
2025-04-12 22:18:46 +03:00 |
|
bird_egop
|
0cc03c2479
|
Added test for INT3 instruction handler
|
2025-04-12 22:16:12 +03:00 |
|
bird_egop
|
d5bcd56774
|
Added tests for previously untested DataTransferHandler methods and fixed NOP instruction handling
|
2025-04-12 22:05:51 +03:00 |
|
bird_egop
|
a0e40c8a52
|
Fixed instruction handlers and tests for Group1, Group3, and XOR instructions
|
2025-04-12 21:48:41 +03:00 |
|
bird_egop
|
794b56c6b5
|
move handlers
|
2025-04-12 21:34:16 +03:00 |
|
bird_egop
|
a6b6cc1149
|
Removed two-byte instruction handling from FloatingPointHandler. Simplified the code by removing the TwoByteInstructions dictionary and related methods since we now have dedicated handlers for specific instructions.
|
2025-04-12 21:29:43 +03:00 |
|
bird_egop
|
6ed6a7bd00
|
Fixed floating point instruction handling. Removed redundant FNSTSW AX check from FloatingPointHandler and added dedicated test for FnstswHandler.
|
2025-04-12 21:27:17 +03:00 |
|
bird_egop
|
fe0b04f5a1
|
Fixed TEST instruction handlers and tests. Updated TestImmWithRm8Handler and TestImmWithRm32Handler to properly check opcode in CanHandle and validate reg field in Decode. Improved test cases to use InstructionDecoder directly.
|
2025-04-12 21:21:03 +03:00 |
|
bird_egop
|
bf5fcdd2ff
|
Fixed ConditionalJumpHandler to correctly implement x86 architecture specifications
|
2025-04-12 21:09:41 +03:00 |
|
bird_egop
|
bd251b6c06
|
Improved ConditionalJumpHandler with better documentation and clearer code
|
2025-04-12 21:02:52 +03:00 |
|
bird_egop
|
0925bb7fef
|
Fixed ConditionalJumpHandler to correctly display jump offset and added X86DisassemblerTests project to solution
|
2025-04-12 21:00:32 +03:00 |
|
bird_egop
|
87e0c152e2
|
Fixed disassembler regression by adding handlers for TEST r/m8, r8 and TEST r/m8, imm8 instructions
|
2025-04-12 20:32:38 +03:00 |
|
bird_egop
|
dbc9b42007
|
Removed obsolete handler classes and restored InstructionHandlerFactory
|
2025-04-12 20:25:29 +03:00 |
|
bird_egop
|
1442fd7060
|
Removed obsolete Group1Handler and Group3Handler classes
|
2025-04-12 20:14:28 +03:00 |
|
bird_egop
|
e4b8645da0
|
Implemented individual handlers for Group1 and Group3 instructions
|
2025-04-12 20:13:01 +03:00 |
|
bird_egop
|
58a148ebd8
|
Refactor instruction handlers to use single instruction per handler pattern
|
2025-04-12 19:57:42 +03:00 |
|
bird_egop
|
82ffd51a3e
|
Add support for RET instruction with immediate operand (0xC2)
|
2025-04-12 19:36:46 +03:00 |
|
bird_egop
|
0fb3fd7311
|
Add support for XOR instruction
|
2025-04-12 19:35:25 +03:00 |
|
bird_egop
|
f3aa862a57
|
Add support for two-byte conditional jumps, including JNZ (0F 85)
|
2025-04-12 19:30:13 +03:00 |
|
bird_egop
|
cedd7a931e
|
Add support for TEST instruction
|
2025-04-12 19:26:00 +03:00 |
|
bird_egop
|
ae1c4730d0
|
Add support for FNSTSW instruction
|
2025-04-12 19:21:32 +03:00 |
|