{"name": "packetbuf_reference", "code": "__int64 __fastcall packetbuf_reference ( void * @@a1@@ , unsigned __int16 @@a2@@ ) { __int64 @@result@@ ; packetbuf_clear ( ) ; packetbufptr = @@a1@@ ; @@result@@ = @@a2@@ ; buflen = @@a2@@ ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "void"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "packetbuf_compact", "code": "unsigned __int64 packetbuf_compact ( ) { size_t @@v0@@ ; const void * v1 ; unsigned __int64 result ; int @@v3@@ ; int @@i@@ ; if ( ( unsigned int ) packetbuf_is_reference ( ) ) { @@v0@@ = ( unsigned __int16 ) packetbuf_datalen ( ) ; v1 = ( const void * ) packetbuf_reference_ptr ( ) ; result = ( unsigned __int64 ) memcpy ( ( char * ) packetbuf + Number , v1 , @@v0@@ ) ; } else { result = ( unsigned __int16 ) bufptr ; if ( bufptr ) { @@v3@@ = ( unsigned __int16 ) packetbuf_datalen ( ) + Number ; for ( @@i@@ = Number ; ; ++ @@i@@ ) { result = ( unsigned int ) @@i@@ ; if ( @@i@@ >= @@v3@@ ) break ; * ( ( _BYTE * ) packetbuf + @@i@@ ) = * ( ( _BYTE * ) packetbuf + ( unsigned __int16 ) bufptr + @@i@@ ) ; } bufptr = Number ; } } return result ; }", "source": [{"n": "v0", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r32"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v3", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}]}