[asan] Additionnal prologue decoding for WinSDK 10.0.22000
authorAlexandre Ganea <alexandre.ganea@legionlabs.com>
Thu, 30 Dec 2021 15:33:25 +0000 (10:33 -0500)
committerAlexandre Ganea <alexandre.ganea@legionlabs.com>
Fri, 31 Dec 2021 01:11:45 +0000 (20:11 -0500)
Fixes interception of atoi() entry point.

compiler-rt/lib/interception/interception_win.cpp

index 38b8c05..9289e06 100644 (file)
@@ -602,6 +602,7 @@ static size_t GetInstructionSize(uptr address, size_t* rel_offset = nullptr) {
     case 0x246c8948:  // 48 89 6C 24 XX : mov QWORD ptr [rsp + XX], rbp
     case 0x245c8948:  // 48 89 5c 24 XX : mov QWORD PTR [rsp + XX], rbx
     case 0x24748948:  // 48 89 74 24 XX : mov QWORD PTR [rsp + XX], rsi
+    case 0x247c8948:  // 48 89 7c 24 XX : mov QWORD PTR [rsp + XX], rdi
     case 0x244C8948:  // 48 89 4C 24 XX : mov QWORD PTR [rsp + XX], rcx
     case 0x24548948:  // 48 89 54 24 XX : mov QWORD PTR [rsp + XX], rdx
     case 0x244c894c:  // 4c 89 4c 24 XX : mov QWORD PTR [rsp + XX], r9