{"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": "packet_input_1", "code": "__int64 packet_input_1 ( ) { __int64 @@result@@ ; __int64 v1 ; __int64 v2 ; @@result@@ = parse ( ) ; if ( ( int ) @@result@@ >= Number ) { v1 = packetbuf_addr ( Number L ) ; if ( ( unsigned int ) rimeaddr_cmp ( v1 , ( __int64 ) & rimeaddr_node_addr ) || ( v2 = packetbuf_addr ( Number L ) , @@result@@ = rimeaddr_cmp ( v2 , ( __int64 ) & rimeaddr_null ) , ( _DWORD ) @@result@@ ) ) { @@result@@ = packet_input_0 ( ) ; } } return @@result@@ ; }", "source": [{"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "create", "code": "__int64 create ( ) { __int64 v0 ; unsigned __int8 v1 ; __int64 v2 ; __int64 v3 ; unsigned int @@v4@@ ; __int64 v5 ; char @@s@@ [ Number ] ; char @@v8@@ ; char @@v9@@ ; char @@v10@@ ; char @@v11@@ ; char @@v12@@ ; unsigned __int8 @@v13@@ ; __int16 @@v14@@ ; char @@v15@@ [ Number ] ; __int16 @@v16@@ ; _BYTE @@v17@@ [ Number ] ; unsigned __int8 @@v18@@ ; memset ( @@s@@ , Number , Number ) ; if ( ! initialized ) { initialized = Number ; mac_dsn = random_rand ( ) ; } @@s@@ [ Number ] = Number ; @@s@@ [ Number ] = Number ; @@s@@ [ Number ] = packetbuf_attr ( Number L ) ; v0 = packetbuf_addr ( Number L ) ; if ( ( unsigned int ) rimeaddr_cmp ( v0 , ( __int64 ) & rimeaddr_null ) ) @@v8@@ = Number ; else @@v8@@ = packetbuf_attr ( Number L ) ; @@v9@@ = Number ; @@v11@@ = Number ; if ( ( unsigned __int16 ) packetbuf_attr ( Number L ) ) { @@v13@@ = packetbuf_attr ( Number L ) ; } else { v1 = mac_dsn ++ ; @@v13@@ = v1 ; packetbuf_set_attr ( Number L , v1 ) ; } @@v12@@ = Number ; @@v14@@ = Number ; v2 = packetbuf_addr ( Number L ) ; if ( ( unsigned int ) rimeaddr_cmp ( v2 , ( __int64 ) & rimeaddr_null ) ) { @@v10@@ = Number ; @@v15@@ [ Number ] = Number ; @@v15@@ [ Number ] = Number ; } else { v3 = packetbuf_addr ( Number L ) ; rimeaddr_copy ( ( __int64 ) @@v15@@ , v3 ) ; @@v10@@ = Number ; } @@v16@@ = Number ; rimeaddr_copy ( ( __int64 ) @@v17@@ , ( __int64 ) & rimeaddr_node_addr ) ; * ( _QWORD * ) & @@v17@@ [ Number ] = packetbuf_dataptr ( ) ; @@v17@@ [ Number ] = packetbuf_datalen ( ) ; @@v18@@ = frame802154_hdrlen ( @@s@@ ) ; if ( ! ( unsigned int ) packetbuf_hdralloc ( @@v18@@ ) ) return Number ; @@v4@@ = @@v18@@ ; v5 = packetbuf_hdrptr ( ) ; frame802154_create ( @@s@@ , v5 , @@v4@@ ) ; return @@v18@@ ; }", "source": [{"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r32"}, {"n": "v18", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s17"}, {"n": "v17", "t": {"T": 2, "n": 57, "s": 1, "t": "_BYTE"}, "location": "s74"}, {"n": "v16", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s76"}, {"n": "v15", "t": {"T": 2, "n": 8, "s": 1, "t": "char"}, "location": "s84"}, {"n": "v14", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s86"}, {"n": "v13", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s88"}, {"n": "v12", "t": {"T": 1, "n": "char", "s": 1}, "location": "s89"}, {"n": "v11", "t": {"T": 1, "n": "char", "s": 1}, "location": "s90"}, {"n": "v10", "t": {"T": 1, "n": "char", "s": 1}, "location": "s91"}, {"n": "v9", "t": {"T": 1, "n": "char", "s": 1}, "location": "s92"}, {"n": "v8", "t": {"T": 1, "n": "char", "s": 1}, "location": "s93"}, {"n": "s", "t": {"T": 2, "n": 3, "s": 1, "t": "char"}, "location": "s96"}]} {"name": "input", "code": "__int64 input ( ) { int v0 ; int @@v1@@ ; __int64 result ; __int64 v3 ; __int64 v4 ; char v5 ; char @@v6@@ ; char @@v7@@ ; unsigned __int16 @@v8@@ ; unsigned __int8 @@v9@@ ; unsigned __int16 @@v10@@ ; @@v10@@ = Number ; @@v9@@ = Number ; @@v8@@ = Number ; @@v7@@ = Number ; @@v6@@ = Number ; uncomp_hdr_len = Number ; rime_hdr_len = Number ; rime_ptr = packetbuf_dataptr ( ) ; if ( timer_expired ( reass_timer ) ) { sicslowpan_len = Number ; processed_ip_in_len = Number ; } v0 = ( ( ( unsigned __int16 ) ( * ( unsigned __int8 * ) rime_ptr << Number ) | * ( ( unsigned __int8 * ) rime_ptr + Number ) ) >> Number ) & Number ; if ( v0 == Number ) { @@v9@@ = Number ; @@v10@@ = _byteswap_ushort ( * ( _WORD * ) rime_ptr ) & Number ; @@v8@@ = _byteswap_ushort ( * ( ( _WORD * ) rime_ptr + Number ) ) ; rime_hdr_len += Number ; @@v7@@ = Number ; } else if ( v0 == Number ) { @@v9@@ = * ( ( _BYTE * ) rime_ptr + Number ) ; @@v8@@ = _byteswap_ushort ( * ( ( _WORD * ) rime_ptr + Number ) ) ; @@v10@@ = _byteswap_ushort ( * ( _WORD * ) rime_ptr ) & Number ; rime_hdr_len += Number ; @@v1@@ = ( unsigned __int16 ) processed_ip_in_len ; if ( @@v1@@ + ( unsigned __int16 ) packetbuf_datalen ( ) - ( unsigned __int8 ) rime_hdr_len >= @@v10@@ ) @@v6@@ = Number ; } result = ( unsigned __int16 ) processed_ip_in_len ; if ( processed_ip_in_len ) { if ( @@v10@@ ) { result = ( unsigned __int16 ) sicslowpan_len ; if ( @@v10@@ != sicslowpan_len ) return result ; result = ( unsigned __int16 ) reass_tag ; if ( @@v8@@ != reass_tag ) return result ; v3 = packetbuf_addr ( Number ) ; result = rimeaddr_cmp ( ( __int64 ) & frag_sender , v3 ) ; if ( ! ( _DWORD ) result ) return result ; } if ( ! @@v10@@ ) return result ; } else if ( @@v10@@ && @@v10@@ <= Number ) { sicslowpan_len = @@v10@@ ; reass_tag = @@v8@@ ; timer_set ( reass_timer , Number L ) ; v4 = packetbuf_addr ( Number ) ; rimeaddr_copy ( ( __int64 ) & frag_sender , v4 ) ; } if ( rime_hdr_len != Number ) { if ( ( * ( ( _BYTE * ) rime_ptr + ( unsigned __int8 ) rime_hdr_len ) & Number ) == Number ) { uncompress_hdr_hc06 ( @@v10@@ ) ; } else { result = * ( ( unsigned __int8 * ) rime_ptr + ( unsigned __int8 ) rime_hdr_len ) ; if ( ( _DWORD ) result != Number ) return result ; memcpy ( & sicslowpan_aligned_buf , ( char * ) rime_ptr + ( unsigned __int8 ) ++ rime_hdr_len , Number ) ; rime_hdr_len += Number ; uncomp_hdr_len += Number ; } } result = packetbuf_datalen ( ) ; if ( ( unsigned __int16 ) result >= ( unsigned __int8 ) rime_hdr_len ) { v5 = packetbuf_datalen ( ) ; rime_payload_len = v5 - rime_hdr_len ; memcpy ( ( char * ) & sicslowpan_aligned_buf + ( unsigned __int8 ) uncomp_hdr_len + ( unsigned __int64 ) ( unsigned __int16 ) ( Number * @@v9@@ ) , ( char * ) rime_ptr + ( unsigned __int8 ) rime_hdr_len , ( unsigned __int8 ) ( v5 - rime_hdr_len ) ) ; if ( @@v10@@ ) { if ( @@v7@@ ) processed_ip_in_len += ( unsigned __int8 ) uncomp_hdr_len ; if ( @@v6@@ ) processed_ip_in_len = @@v10@@ ; else processed_ip_in_len += ( unsigned __int8 ) rime_payload_len ; } else { sicslowpan_len = ( unsigned __int8 ) rime_payload_len + ( unsigned __int8 ) uncomp_hdr_len ; } if ( ! processed_ip_in_len || ( result = ( unsigned __int16 ) sicslowpan_len , processed_ip_in_len == sicslowpan_len ) ) { memcpy ( & uip_aligned_buf , & sicslowpan_aligned_buf , ( unsigned __int16 ) sicslowpan_len ) ; uip_len = sicslowpan_len ; sicslowpan_len = Number ; processed_ip_in_len = Number ; neighbor_info_packet_received ( ) ; if ( callback ) { set_packet_attrs ( ) ; ( * ( void ( * * ) ( void ) ) ( callback + Number ) ) ( ) ; } result = tcpip_input ( ) ; } } return result ; }", "source": [{"n": "v1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r32"}, {"n": "v10", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "s18"}, {"n": "v9", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s19"}, {"n": "v8", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "s22"}, {"n": "v7", "t": {"T": 1, "n": "char", "s": 1}, "location": "s23"}, {"n": "v6", "t": {"T": 1, "n": "char", "s": 1}, "location": "s24"}]} {"name": "neighbor_info_packet_sent", "code": "__int64 __fastcall neighbor_info_packet_sent ( int @@a1@@ , unsigned int @@a2@@ ) { __int64 @@result@@ ; __int64 @@v3@@ ; unsigned __int8 @@v4@@ ; @@v3@@ = packetbuf_addr ( Number ) ; @@result@@ = rimeaddr_cmp ( @@v3@@ , ( __int64 ) & rimeaddr_null ) ; if ( ! ( _DWORD ) @@result@@ ) { @@result@@ = @@a2@@ ; @@v4@@ = @@a2@@ ; if ( @@a1@@ ) { if ( @@a1@@ != Number ) return @@result@@ ; @@v4@@ = Number ; } else { add_neighbor ( @@v3@@ ) ; } @@result@@ = update_metric ( @@v3@@ , @@v4@@ ) ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v4", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s1"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}]} {"name": "neighbor_info_packet_received", "code": "__int64 neighbor_info_packet_received ( ) { __int64 @@result@@ ; __int64 @@v1@@ ; @@v1@@ = packetbuf_addr ( Number ) ; @@result@@ = rimeaddr_cmp ( @@v1@@ , ( __int64 ) & rimeaddr_null ) ; if ( ! ( _DWORD ) @@result@@ ) @@result@@ = add_neighbor ( @@v1@@ ) ; return @@result@@ ; }", "source": [{"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]} {"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"}]}