{"name": "uip_icmp6_echo_request_input", "code": "__int64 uip_icmp6_echo_request_input ( ) { __int64 v0 ; __int64 v1 ; __int64 v2 ; __int64 @@result@@ ; unsigned __int8 @@v4@@ ; puts ( String ) ; uip_aligned_buf [ Number ] = uip_ds6_if [ Number ] ; v0 = * ( _QWORD * ) ( ( char * ) & loc_8 + ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) ; if ( * ( _BYTE * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) == Number ) { * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) = * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ; * ( _QWORD * ) ( ( char * ) & loc_8 + ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) = v0 ; uip_ds6_select_src ( ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) , ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) ; } else { tmp_ipaddr = * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ; qword_748 = v0 ; v1 = * ( _QWORD * ) ( ( char * ) & loc_8 + ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) ; * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) = * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ; * ( _QWORD * ) ( ( char * ) & loc_8 + ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) = v1 ; v2 = qword_748 ; * ( _QWORD * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) = tmp_ipaddr ; * ( _QWORD * ) ( ( char * ) & loc_8 + ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) ) = v2 ; } if ( uip_ext_len ) { @@v4@@ = rpl_invert_header ( ) ; if ( @@v4@@ ) { * ( _BYTE * ) ( unsigned int ) ( ( _DWORD ) uip_aligned_buf + Number ) = Number ; if ( @@v4@@ != uip_ext_len ) { uip_len += @@v4@@ - uip_ext_len ; uip_aligned_buf [ Number ] = ( unsigned __int16 ) ( uip_len - Number ) >> Number ; uip_aligned_buf [ Number ] = uip_len - Number ; memmove ( & uip_aligned_buf [ uip_ext_len + Number + Number L - ( uip_ext_len - @@v4@@ ) ] , & uip_aligned_buf [ uip_ext_len + Number ] , uip_len - Number - @@v4@@ - Number ) ; } uip_ext_len = @@v4@@ ; } else { uip_aligned_buf [ Number ] = Number ; uip_len -= uip_ext_len ; uip_aligned_buf [ Number ] = ( unsigned __int16 ) ( uip_len - Number ) >> Number ; uip_aligned_buf [ Number ] = uip_len - Number ; memmove ( & uip_aligned_buf [ uip_ext_len + Number + Number L - uip_ext_len ] , & uip_aligned_buf [ uip_ext_len + Number ] , uip_len - Number ) ; uip_ext_len = Number ; } } uip_aligned_buf [ uip_ext_len + Number ] = Number ; uip_aligned_buf [ uip_ext_len + Number ] = Number ; * ( _WORD * ) & uip_aligned_buf [ uip_ext_len + Number ] = Number ; @@result@@ = ( unsigned int ) ~ uip_icmp6chksum ( ) ; * ( _WORD * ) & uip_aligned_buf [ uip_ext_len + Number ] = @@result@@ ; return @@result@@ ; }", "source": [{"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v4", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s1"}]}