Skip to content

Commit 7e3d406

Browse files
authored
adds patterns to recognize certain x86 endbr as function starts (#1531)
Not an exhaustive list but it will be easy to add more, once they are discovered.
1 parent 411c733 commit 7e3d406

File tree

3 files changed

+23
-1
lines changed

3 files changed

+23
-1
lines changed

oasis/x86

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@ Library x86_plugin
7474
X86_legacy_fp_lifter,
7575
X86_legacy_bil_register,
7676
X86_legacy_operands
77-
DataFiles: semantics/*.lisp ($datadir/bap/primus/semantics)
77+
DataFiles: semantics/*.lisp ($datadir/bap/primus/semantics),
78+
patterns/*.xml ($datadir/bap/signatures/x86)
7879
XMETAExtraLines: tags="disassembler, lifter, x86, abi"
7980

8081
Library x86_test

plugins/x86/patterns/cet.xml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<patternlist>
2+
<pattern>
3+
<data>0xf30f1efa 0x55</data> <!--endbr64; push rbp-->
4+
<funcstart/>
5+
</pattern>
6+
7+
<pattern>
8+
<data>0xf30f1efa 0x53</data> <!--endbr64; push rbx-->
9+
<funcstart/>
10+
</pattern>
11+
12+
<pattern>
13+
<data>0xf30f1efa 0x415.</data> <!--endbr64; push rbx-->
14+
<funcstart/>
15+
</pattern>
16+
</patternlist>
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<patternconstraints>
2+
<language id="x86_64">
3+
<patternfile>cet.xml</patternfile>
4+
</language>
5+
</patternconstraints>

0 commit comments

Comments
 (0)