0
mirror of https://github.com/sampletext32/ParkanPlayground.git synced 2025-05-19 11:51:17 +03:00

137 Commits

Author SHA1 Message Date
bird_egop
2123ed2c5d add tons of tests 2025-04-15 22:20:46 +03:00
bird_egop
abe4d38d4b more cleanup 2025-04-15 02:42:47 +03:00
bird_egop
49f1d7d221 cleanup 2025-04-15 02:32:14 +03:00
bird_egop
3ea327064a Fix x86 disassembler issues with direct memory addressing and immediate value formatting 2025-04-15 02:29:32 +03:00
bird_egop
d351f41808 Fixed x86 disassembler issues: 1) Corrected ModRMDecoder to use RegisterIndex.Sp instead of RegisterIndex.Si for SIB detection 2) Updated floating point instruction handlers to use proper instruction types 3) Enhanced ImmediateOperand.ToString() to show full 32-bit representation for sign-extended values 2025-04-15 00:14:28 +03:00
bird_egop
9117830ff1 unbreak tests 2025-04-14 23:08:52 +03:00
bird_egop
685eeda03d Updated instruction handlers to use Type and StructuredOperands instead of Mnemonic and Operands 2025-04-14 22:09:05 +03:00
bird_egop
c516e063e7 basic decompiler and fixes 2025-04-14 02:07:17 +03:00
bird_egop
157171fa90 remove more special cases. use standardized api 2025-04-14 01:52:33 +03:00
bird_egop
c9e854a663 remove direct position changes from modrmdecoder 2025-04-14 01:15:26 +03:00
bird_egop
99b93523a4 more refactoring 2025-04-14 01:08:14 +03:00
bird_egop
f54dc10596 Simplified XorImmWithRm16Handler by improving boundary checking and removing redundant code 2025-04-14 01:01:31 +03:00
bird_egop
4567465570 Simplified TestRegMemHandler by improving boundary checking and removing redundant code 2025-04-14 00:56:57 +03:00
bird_egop
d3d2c4c63f Simplified TestRegMem8Handler by removing unused variables and improving code structure 2025-04-14 00:54:16 +03:00
bird_egop
b7c6092b7f Simplified TEST instruction handlers by removing special cases and improving code structure 2025-04-14 00:53:16 +03:00
bird_egop
dae52fc3ec Simplified SubImmFromRm32SignExtendedHandler by removing special case for operand type-based formatting 2025-04-14 00:41:58 +03:00
bird_egop
5b09d6f9b8 Simplified SubImmFromRm16SignExtendedHandler by removing special case for register name conversion 2025-04-14 00:39:58 +03:00
bird_egop
689195c6e5 Simplified SubImmFromRm16Handler by removing special case for register name conversion and improving boundary checking 2025-04-14 00:38:47 +03:00
bird_egop
e134452eda Improved PUSH handlers by moving reg field check to CanHandle and adding proper boundary checking 2025-04-14 00:33:39 +03:00
bird_egop
53696a9f1c Removed special case check for 0x83 in OrRm8R8Handler to avoid introducing special cases in general solutions 2025-04-14 00:30:53 +03:00
bird_egop
243789892d Further simplified MultiByteNopHandler by using an array of tuples and matching patterns from longest to shortest 2025-04-14 00:23:58 +03:00
bird_egop
4b549f4b1b Simplified MultiByteNopHandler by using a dictionary-based approach to replace complex conditional logic 2025-04-14 00:21:24 +03:00
bird_egop
c9901aa9b8 Simplified MovRm32Imm32Handler by improving boundary checking and error handling, and updated test to match expected behavior 2025-04-14 00:19:36 +03:00
bird_egop
2d0f701dd1 Simplified TwoByteConditionalJumpHandler and MovRegMemHandler by improving boundary checking and target address calculation 2025-04-14 00:17:31 +03:00
bird_egop
996be18172 Simplified JmpRel32Handler by improving target address calculation and code organization 2025-04-14 00:11:55 +03:00
bird_egop
38770de005 Simplified jump instruction handlers by using consistent decoder methods and improving code organization 2025-04-14 00:09:44 +03:00
bird_egop
5daab494e1 Simplified LoadStoreInt32Handler by replacing if-else logic with a dictionary-based approach 2025-04-14 00:00:30 +03:00
bird_egop
fac1339fec Simplified LoadStoreInt16Handler by replacing complex logic with a dictionary-based approach and improving memory operand handling 2025-04-13 23:53:27 +03:00
bird_egop
4e837f5c63 Simplified LoadStoreFloat64Handler by replacing if-else logic with a dictionary-based approach 2025-04-13 23:52:00 +03:00
bird_egop
b531db77d5 Simplified LoadStoreControlHandler by replacing complex switch statements with a dictionary-based approach 2025-04-13 23:50:23 +03:00
bird_egop
0ff20494e1 Simplified Int32OperationHandler by replacing complex if-else logic with a dictionary-based approach 2025-04-13 23:48:45 +03:00
bird_egop
46a4696481 Simplified Int16OperationHandler by replacing complex if-else logic with a dictionary-based approach 2025-04-13 23:47:10 +03:00
bird_egop
7ab388f26d Simplified FnstswHandler by using CanReadByte for boundary checking and improving code readability 2025-04-13 23:45:26 +03:00
bird_egop
ec1aa4a124 Simplified CmpImmWithRm8Handler by removing unnecessary raw bytes handling and improving operand formatting 2025-04-13 23:41:30 +03:00
bird_egop
ec70b31058 Simplified CmpImmWithRm32Handler and added AndImmWithRm32Handler 2025-04-13 23:39:57 +03:00
bird_egop
8d1522b6cb Added XML documentation comments to buffer reading methods in InstructionDecoder 2025-04-13 23:36:53 +03:00
bird_egop
6827cb735e Simplified StringInstructionHandler by combining mnemonic and operands into a single dictionary and removing redundant switch statement 2025-04-13 23:24:14 +03:00
bird_egop
00547ed273 simplify reading logic 2025-04-13 23:22:30 +03:00
bird_egop
0ea3294c61 Simplified AndImmToRm32SignExtendedHandler for better maintainability and consistency 2025-04-13 23:18:38 +03:00
bird_egop
f19f2254fe Simplified AndImmToRm8Handler for better maintainability and consistency 2025-04-13 23:16:34 +03:00
bird_egop
cf1e1acf71 Simplified instruction handlers for better maintainability and consistency. Fixed operand size handling in XOR handlers with 16-bit registers. Added support for 6-byte NOP variant. Fixed formatting of immediate values to maintain consistent output. 2025-04-13 23:15:11 +03:00
bird_egop
11a2cfada4 nice big refactor 2025-04-13 23:06:52 +03:00
bird_egop
59df064ca4 broken tests 2025-04-13 20:20:51 +03:00
bird_egop
89b2b32cd6 fix xor AX, 16bit imm 2025-04-13 19:55:13 +03:00
bird_egop
b0ade45f1b refactor xors 2025-04-13 19:35:28 +03:00
bird_egop
30676b36a1 Updated InstructionHandlerFactory to register XOR handlers and updated test project files 2025-04-13 19:28:56 +03:00
bird_egop
56c12b552c Fixed XOR instruction handlers for consistent immediate value handling 2025-04-13 19:26:08 +03:00
bird_egop
e91a0223f7 Refactor SUB handlers 2025-04-13 18:22:44 +03:00
bird_egop
a04a16af7d Updated NOP instruction handlers to match Ghidra's output format 2025-04-13 18:09:13 +03:00
bird_egop
8cf26060f2 Implemented NOP instruction handlers for multi-byte NOP variants 2025-04-13 18:00:26 +03:00