sha0coder/libscemu

neg rcx not calculating af flag

Closed this issue · 2 comments

image

{
    "i": 1252,
    "iHex": "4e4",
    "x64dbgLine": {
      "rawLine": {
        "Index": "004E4",
        "Address": "0000000144ECEC34",
        "Bytes": "9F",
        "Disassembly": "lahf ",
        "Registers": "rax: 448A7601-> 448A1301",
        "Memory": "",
        "Comments": ""
      },
      "rip": "144ecec34",
      "registerChanges": [
        {
          "registerName": "rax",
          "previousValue": "448a7601",
          "newValue": "448a1301"
        }
      ],
      "memoryChanges": []
    },
    "scemuLine": {
      "rawLine": "diff_reg: rip = 144ecec34 rax 448a7601 -> 448a0301;",
      "rip": "144ecec34",
      "registerChanges": [
        {
          "registerName": "rax",
          "previousValue": "448a7601",
          "newValue": "448a0301"
        }
      ],
      "memoryChanges": []
    },
    "instructionErrors": [
      {
        "index": 0,
        "message": "newValue mismatch",
        "x64dbg": "448a1301",
        "scemu": "448a0301"
      }
    ]
  },
1253 0x144ecec34: lahf
	diff_flags: rip = 144ecec34 
	diff_reg: rip = 144ecec34 rax 448a7601 -> 448a0301; 
	rax: 0x448a0301 rbx: 0x0 rcx: 0x74256658f92d6bae rdx: 0x100000000 rsi: 0x14f4a8 rdi: 0x144e471ef rbp: 0x144ecec02 rsp: 0x14f290
	r8: 0x0 r9: 0x1db36b3a r10: 0xfffffffffff445d5 r11: 0x144e94764 r12: 0x1448a76a4 r13: 0x0 r14: 0x140000000 r15: 0x0
	r8u: 0x0 r9u: 0x0 r10u: 0xffffffff r11u: 0x1 r12u: 0x1 r13u: 0x0 r14u: 0x1 r15u: 0x0
	r8d: 0x0 r9d: 0x1db36b3a r10d: 0xfff445d5 r11d: 0x44e94764 r12d: 0x448a76a4 r13d: 0x0 r14d: 0x40000000 r15d: 0x0
	r8w: 0x0 r9w: 0x6b3a r10w: 0x45d5 r11w: 0x4764 r12w: 0x76a4 r13w: 0x0 r14w: 0x0 r15w: 0x0
	r8l: 0x0 r9l: 0x3a r10l: 0xd5 r11l: 0x64 r12l: 0xa4 r13l: 0x0 r14l: 0x0 r15l: 0x0
	zf: false pf: false af: false of: false sf: false df: false cf: true tf: false if: false nt: false

af needs to be 1

fixed i believe?