{"name": "kernel_get_module_dso", "code": "__int64 __fastcall kernel_get_module_dso ( const char * @@a1@@ ) { __int64 @@result@@ ; __int64 @@i@@ ; __int64 @@v3@@ ; if ( @@a1@@ ) { for ( @@i@@ = qword_5898 ; ( __int64 * ) @@i@@ != & qword_5898 ; @@i@@ = * ( _QWORD * ) @@i@@ ) { if ( ! strncmp ( ( const char * ) ( * ( _QWORD * ) ( @@i@@ + Number ) + Number L ) , @@a1@@ , * ( unsigned __int16 * ) ( @@i@@ + Number ) - Number ) ) goto LABEL_12 ; } eprintf ( Number L , String , @@a1@@ ) ; @@result@@ = Number L ; } else { @@i@@ = * ( _QWORD * ) ( qword_58E0 + Number ) ; @@v3@@ = symbol_conf [ Number ] ; if ( @@v3@@ ) { if ( ( int ) dso__load_vmlinux ( @@i@@ , qword_58E0 , @@v3@@ , Number L ) <= Number ) return Number L ; } else if ( ( int ) dso__load_vmlinux_path ( @@i@@ , qword_58E0 , Number L ) <= Number ) { eprintf ( Number L , String ) ; return Number L ; } LABEL_12 : @@result@@ = @@i@@ ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "i", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}]}
{"name": "kernel_get_module_path", "code": "__int64 __fastcall kernel_get_module_path ( const char * @@a1@@ ) { __int64 @@result@@ ; __int64 @@v2@@ ; @@v2@@ = kernel_get_module_dso ( @@a1@@ ) ; if ( @@v2@@ ) @@result@@ = * ( _QWORD * ) ( @@v2@@ + Number ) ; else @@result@@ = Number L ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}]}