“…Binary memory dependence analysis, which determines whether two machine instructions in an executable can access the same memory location, is critical for many security-sensitive tasks, including detecting vulnerabilities [18,37,86], analyzing malware [39,95], hardening binaries [4,29,45,92], and forensics [19,35,58,93]. The key challenge behind memory dependence analysis is that machine instructions often leverage indirect addressing or indirect controlflow transfer (i.e., involving dynamically computed targets) to access the memory.…”