{"name": "strfilter__compare", "code": "__int64 __fastcall strfilter__compare ( _QWORD * * @@a1@@ , __int64 @@a2@@ ) { __int64 @@result@@ ; if ( @@a1@@ ) @@result@@ = strfilter_node__compare ( * @@a1@@ , @@a2@@ ) ; else @@result@@ = Number L ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_QWORD *"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "strfilter_node__compare", "code": "__int64 __fastcall strfilter_node__compare ( _QWORD * @@a1@@ , __int64 @@a2@@ ) { __int64 result ; int v3 ; bool v4 ; bool v5 ; if ( ! @@a1@@ || ! @@a1@@ [ Number ] ) return Number L ; v3 = * ( char * ) @@a1@@ [ Number ] ; if ( v3 == Number ) { v4 = ( unsigned __int8 ) strfilter_node__compare ( * @@a1@@ , @@a2@@ ) || ( unsigned __int8 ) strfilter_node__compare ( @@a1@@ [ Number ] , @@a2@@ ) ; result = v4 ; } else { if ( v3 > Number ) goto LABEL_20 ; if ( v3 == Number ) return ( unsigned __int8 ) strfilter_node__compare ( @@a1@@ [ Number ] , @@a2@@ ) == Number ; if ( v3 == Number ) { v5 = ( unsigned __int8 ) strfilter_node__compare ( * @@a1@@ , @@a2@@ ) && ( unsigned __int8 ) strfilter_node__compare ( @@a1@@ [ Number ] , @@a2@@ ) ; result = v5 ; } else { LABEL_20 : result = strglobmatch ( @@a2@@ , @@a1@@ [ Number ] ) ; } } return result ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}]}