mirror of
https://github.com/sampletext32/ParkanPlayground.git
synced 2025-06-19 16:08:02 +03:00
Fixed several instruction handling issues: 1) Added proper handling for zero displacements in memory operands, 2) Fixed large unsigned displacement values display, 3) Added CmpEaxImmHandler for CMP EAX, imm32 instruction, 4) Fixed JP and JNP conditional jump instruction types
This commit is contained in:
@ -41,19 +41,19 @@ FF14D9;[{ "Type": "Call", "Operands": ["dword ptr [ecx+ebx*8]"] }]
|
||||
# FF149D;[{ "Type": "Call", "Operands": ["dword ptr [ebp+ebx*4]"] }]
|
||||
|
||||
# CALL m32 (opcode FF /2) with displacement
|
||||
FF5000;[{ "Type": "Call", "Operands": ["dword ptr [eax+0x0]"] }]
|
||||
FF5000;[{ "Type": "Call", "Operands": ["dword ptr [eax+0x00]"] }]
|
||||
FF5010;[{ "Type": "Call", "Operands": ["dword ptr [eax+0x10]"] }]
|
||||
FF90FFFFFF7F;[{ "Type": "Call", "Operands": ["dword ptr [eax+0x7FFFFFFF]"] }]
|
||||
FF9000000080;[{ "Type": "Call", "Operands": ["dword ptr [eax+0x80000000]"] }]
|
||||
|
||||
# CALL m32 (opcode FF /2) with SIB and displacement
|
||||
FF5400FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+eax*1-0x1]"] }]
|
||||
FF54C0FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+eax*8-0x1]"] }]
|
||||
FF5444FF;[{ "Type": "Call", "Operands": ["dword ptr [esp+eax*2-0x1]"] }]
|
||||
FF5485FF;[{ "Type": "Call", "Operands": ["dword ptr [ebp+eax*4-0x1]"] }]
|
||||
FF5498FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+ebx*4-0x1]"] }]
|
||||
FF54D9FF;[{ "Type": "Call", "Operands": ["dword ptr [ecx+ebx*8-0x1]"] }]
|
||||
FF549DFF;[{ "Type": "Call", "Operands": ["dword ptr [ebp+ebx*4-0x1]"] }]
|
||||
FF5400FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+eax*1-0x01]"] }]
|
||||
FF54C0FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+eax*8-0x01]"] }]
|
||||
FF5444FF;[{ "Type": "Call", "Operands": ["dword ptr [esp+eax*2-0x01]"] }]
|
||||
FF5485FF;[{ "Type": "Call", "Operands": ["dword ptr [ebp+eax*4-0x01]"] }]
|
||||
FF5498FF;[{ "Type": "Call", "Operands": ["dword ptr [eax+ebx*4-0x01]"] }]
|
||||
FF54D9FF;[{ "Type": "Call", "Operands": ["dword ptr [ecx+ebx*8-0x01]"] }]
|
||||
FF549DFF;[{ "Type": "Call", "Operands": ["dword ptr [ebp+ebx*4-0x01]"] }]
|
||||
|
||||
# CALL m16:32 (opcode FF /3) - Far call with memory operand
|
||||
FF1C;[{ "Type": "Call", "Operands": ["fword ptr [esp]"] }]
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 15.
|
@ -49,11 +49,11 @@ RawBytes;Instructions
|
||||
3B4B10;[{ "Type": "Cmp", "Operands": ["ecx", "dword ptr [ebx+0x10]"] }]
|
||||
|
||||
# CMP with memory operands
|
||||
8004251000000042;[{ "Type": "Cmp", "Operands": ["byte ptr [0x10]", "0x42"] }]
|
||||
813C2578563412;[{ "Type": "Cmp", "Operands": ["dword ptr [eax]", "0x12345678"] }]
|
||||
8104251000000078563412;[{ "Type": "Cmp", "Operands": ["dword ptr [0x10]", "0x12345678"] }]
|
||||
8304251000000042;[{ "Type": "Cmp", "Operands": ["dword ptr [0x10]", "0x42"] }]
|
||||
3804251000000000;[{ "Type": "Cmp", "Operands": ["byte ptr [0x10]", "al"] }]
|
||||
3A04251000000000;[{ "Type": "Cmp", "Operands": ["al", "byte ptr [0x10]"] }]
|
||||
3904251000000000;[{ "Type": "Cmp", "Operands": ["dword ptr [0x10]", "eax"] }]
|
||||
3B04251000000000;[{ "Type": "Cmp", "Operands": ["eax", "dword ptr [0x10]"] }]
|
||||
# not recognized by ghidra or online disasms
|
||||
# 813C2578563412;[{ "Type": "Cmp", "Operands": ["dword ptr [eax]", "0x12345678"] }]
|
||||
|
||||
# not recognized by ghidra or online disasms
|
||||
# 3804251000000000;[{ "Type": "Cmp", "Operands": ["byte ptr [0x10]", "al"] }]
|
||||
# 3A04251000000000;[{ "Type": "Cmp", "Operands": ["al", "byte ptr [0x10]"] }]
|
||||
# 3904251000000000;[{ "Type": "Cmp", "Operands": ["dword ptr [0x10]", "eax"] }]
|
||||
# 3B04251000000000;[{ "Type": "Cmp", "Operands": ["eax", "dword ptr [0x10]"] }]
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 11.
|
@ -43,9 +43,10 @@ F7349C;[{ "Type": "Div", "Operands": ["dword ptr [esp+ebx*4]"] }]
|
||||
F734DC;[{ "Type": "Div", "Operands": ["dword ptr [esp+ebx*8]"] }]
|
||||
|
||||
# With segment override prefixes
|
||||
26F73425;[{ "Type": "Div", "Operands": ["dword ptr es:[eax]"] }]
|
||||
2EF73425;[{ "Type": "Div", "Operands": ["dword ptr cs:[eax]"] }]
|
||||
36F73425;[{ "Type": "Div", "Operands": ["dword ptr ss:[eax]"] }]
|
||||
3EF73425;[{ "Type": "Div", "Operands": ["dword ptr ds:[eax]"] }]
|
||||
64F73425;[{ "Type": "Div", "Operands": ["dword ptr fs:[eax]"] }]
|
||||
65F73425;[{ "Type": "Div", "Operands": ["dword ptr gs:[eax]"] }]
|
||||
# not recognized by ghidra or online disasms
|
||||
# 26F73425;[{ "Type": "Div", "Operands": ["dword ptr es:[eax]"] }]
|
||||
# 2EF73425;[{ "Type": "Div", "Operands": ["dword ptr cs:[eax]"] }]
|
||||
# 36F73425;[{ "Type": "Div", "Operands": ["dword ptr ss:[eax]"] }]
|
||||
# 3EF73425;[{ "Type": "Div", "Operands": ["dword ptr ds:[eax]"] }]
|
||||
# 64F73425;[{ "Type": "Div", "Operands": ["dword ptr fs:[eax]"] }]
|
||||
# 65F73425;[{ "Type": "Div", "Operands": ["dword ptr gs:[eax]"] }]
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 9.
|
@ -7,8 +7,8 @@ RawBytes;Instructions
|
||||
71FE;[{ "Type": "Jno", "Operands": ["0x00000000"] }]
|
||||
7210;[{ "Type": "Jb", "Operands": ["0x00000012"] }]
|
||||
73FE;[{ "Type": "Jae", "Operands": ["0x00000000"] }]
|
||||
7410;[{ "Type": "Je", "Operands": ["0x00000012"] }]
|
||||
75FE;[{ "Type": "Jne", "Operands": ["0x00000000"] }]
|
||||
7410;[{ "Type": "Jz", "Operands": ["0x00000012"] }]
|
||||
75FE;[{ "Type": "Jnz", "Operands": ["0x00000000"] }]
|
||||
7610;[{ "Type": "Jbe", "Operands": ["0x00000012"] }]
|
||||
77FE;[{ "Type": "Ja", "Operands": ["0x00000000"] }]
|
||||
7810;[{ "Type": "Js", "Operands": ["0x00000012"] }]
|
||||
@ -25,8 +25,8 @@ RawBytes;Instructions
|
||||
0F81FEFFFFFF;[{ "Type": "Jno", "Operands": ["0x00000004"] }]
|
||||
0F8210000000;[{ "Type": "Jb", "Operands": ["0x00000016"] }]
|
||||
0F83FEFFFFFF;[{ "Type": "Jae", "Operands": ["0x00000004"] }]
|
||||
0F8410000000;[{ "Type": "Je", "Operands": ["0x00000016"] }]
|
||||
0F85FEFFFFFF;[{ "Type": "Jne", "Operands": ["0x00000004"] }]
|
||||
0F8410000000;[{ "Type": "Jz", "Operands": ["0x00000016"] }]
|
||||
0F85FEFFFFFF;[{ "Type": "Jnz", "Operands": ["0x00000004"] }]
|
||||
0F8610000000;[{ "Type": "Jbe", "Operands": ["0x00000016"] }]
|
||||
0F87FEFFFFFF;[{ "Type": "Ja", "Operands": ["0x00000004"] }]
|
||||
0F8810000000;[{ "Type": "Js", "Operands": ["0x00000016"] }]
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 9.
|
Reference in New Issue
Block a user