{"name": "neighbor_addr_get", "code": "_QWORD * __fastcall neighbor_addr_get ( unsigned __int64 @@a1@@ ) { _QWORD * @@i@@ ; if ( memb_inmemb ( & neighbor_addr_mem , @@a1@@ ) ) return ( _QWORD * ) ( @@a1@@ - Number ) ; for ( @@i@@ = ( _QWORD * ) list_head ( ( __int64 ) neighbor_addrs ) ; @@i@@ ; @@i@@ = ( _QWORD * ) * @@i@@ ) { if ( ( unsigned int ) rimeaddr_cmp ( @@a1@@ , ( __int64 ) ( @@i@@ + Number ) ) ) return @@i@@ ; } return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r56"}, {"n": "i", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]}
{"name": "rimeaddr_cmp", "code": "__int64 __fastcall rimeaddr_cmp ( __int64 @@a1@@ , __int64 @@a2@@ ) { unsigned __int8 @@i@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { if ( * ( _BYTE * ) ( @@a1@@ + @@i@@ ) != * ( _BYTE * ) ( @@a2@@ + @@i@@ ) ) return Number L ; } return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "i", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s1"}]} {"name": "memb_inmemb", "code": "_BOOL8 __fastcall memb_inmemb ( unsigned __int16 * @@a1@@ , unsigned __int64 @@a2@@ ) { return @@a2@@ >= * ( ( _QWORD * ) @@a1@@ + Number ) && @@a2@@ < * ( ( _QWORD * ) @@a1@@ + Number ) + @@a1@@ [ Number ] * * @@a1@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "unsigned __int16"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r64"}]} {"name": "list_head", "code": "__int64 __fastcall list_head ( __int64 @@a1@@ ) { return * ( _QWORD * ) @@a1@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}]} {"name": "neighbor_attr_has_neighbor", "code": "_BOOL8 __fastcall neighbor_attr_has_neighbor ( unsigned __int64 @@a1@@ ) { return neighbor_addr_get ( @@a1@@ ) != Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r56"}]} {"name": "neighbor_attr_remove_neighbor", "code": "__int64 __fastcall neighbor_attr_remove_neighbor ( unsigned __int64 @@a1@@ ) { _QWORD * @@v2@@ ; @@v2@@ = neighbor_addr_get ( @@a1@@ ) ; if ( ! @@v2@@ ) return Number ; list_remove ( neighbor_addrs , @@v2@@ ) ; memb_free ( & neighbor_addr_mem , ( __int64 ) @@v2@@ ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r56"}, {"n": "v2", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "neighbor_attr_get_data", "code": "__int64 __fastcall neighbor_attr_get_data ( __int64 @@a1@@ , unsigned __int64 @@a2@@ ) { __int64 @@result@@ ; _QWORD * @@v3@@ ; @@v3@@ = neighbor_addr_get ( @@a2@@ ) ; if ( @@v3@@ ) @@result@@ = * ( _QWORD * ) ( @@a1@@ + Number ) + * ( ( unsigned __int16 * ) @@v3@@ + Number ) * * ( unsigned __int16 * ) ( @@a1@@ + Number ) ; else @@result@@ = Number L ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v3", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "neighbor_attr_set_data", "code": "__int64 __fastcall neighbor_attr_set_data ( __int64 @@a1@@ , unsigned __int64 @@a2@@ , const void * @@a3@@ ) { _QWORD * @@v5@@ ; @@v5@@ = neighbor_addr_get ( @@a2@@ ) ; if ( ! @@v5@@ && ( unsigned int ) neighbor_attr_add_neighbor ( @@a2@@ ) ) @@v5@@ = neighbor_addr_get ( @@a2@@ ) ; if ( ! @@v5@@ ) return Number L ; * ( ( _WORD * ) @@v5@@ + Number ) = Number ; memcpy ( ( void * ) ( * ( ( unsigned __int16 * ) @@v5@@ + Number ) * * ( unsigned __int16 * ) ( @@a1@@ + Number ) + * ( _QWORD * ) ( @@a1@@ + Number ) ) , @@a3@@ , * ( unsigned __int16 * ) ( @@a1@@ + Number ) ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "const void"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r64"}, {"n": "v5", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "neighbor_attr_tick", "code": "_QWORD * __fastcall neighbor_attr_tick ( unsigned __int64 @@a1@@ ) { _QWORD * @@result@@ ; @@result@@ = neighbor_addr_get ( @@a1@@ ) ; if ( @@result@@ ) * ( ( _WORD * ) @@result@@ + Number ) = Number ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r56"}, {"n": "result", "t": {"T": 3, "t": "_QWORD"}, "location": "r8"}]}