{"name": "l2cap_frame_in", "code": "unsigned __int64 __fastcall l2cap_frame_in ( __int64 @@a1@@ , unsigned __int16 * @@a2@@ ) { unsigned __int16 @@v3@@ ; unsigned __int16 @@v4@@ ; unsigned __int64 @@v5@@ ; @@v5@@ = __readfsqword ( Number ) ; @@v3@@ = le16_to_cpu ( @@a2@@ [ Number ] ) ; @@v4@@ = le16_to_cpu ( * @@a2@@ ) ; if ( @@v3@@ <= Number && * ( _QWORD * ) ( @@a1@@ + Number * ( @@v3@@ + Number L ) ) ) ( * ( void ( __fastcall * * ) ( _QWORD , _QWORD , unsigned __int16 * , _QWORD ) ) ( * ( _QWORD * ) ( @@a1@@ + Number * ( @@v3@@ + Number L ) ) + Number L ) ) ( * ( _QWORD * ) ( @@a1@@ + Number * ( @@v3@@ + Number L ) ) , @@v3@@ , @@a2@@ , @@v4@@ ) ; else fprintf ( stderr , String , String , @@v3@@ ) ; return __readfsqword ( Number ) ^ @@v5@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "unsigned __int16"}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "s10"}, {"n": "v3", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "s12"}, {"n": "v5", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}
{"name": "le16_to_cpu", "code": "__int64 __fastcall le16_to_cpu ( unsigned __int16 @@a1@@ ) { return @@a1@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "r56"}]} {"name": "l2cap_pdu_in", "code": "unsigned __int64 __fastcall l2cap_pdu_in ( __int64 @@a1@@ , const void * @@a2@@ , int @@a3@@ ) { unsigned __int16 * @@v5@@ ; unsigned __int64 @@v6@@ ; @@v6@@ = __readfsqword ( Number ) ; @@v5@@ = ( unsigned __int16 * ) ( @@a1@@ + Number ) ; if ( ( unsigned int ) ( * ( _DWORD * ) ( @@a1@@ + Number ) + @@a3@@ ) <= Number ) { memcpy ( ( void * ) ( * ( int * ) ( @@a1@@ + Number ) + @@a1@@ + Number ) , @@a2@@ , @@a3@@ ) ; * ( _DWORD * ) ( @@a1@@ + Number ) += @@a3@@ ; if ( @@a3@@ > Number && @@a3@@ > ( unsigned __int16 ) le16_to_cpu ( * @@v5@@ ) + Number ) l2cap_frame_in ( @@a1@@ , @@v5@@ ) ; } else if ( * ( _DWORD * ) ( @@a1@@ + Number ) <= Number ) { memcpy ( ( void * ) ( * ( int * ) ( @@a1@@ + Number ) + @@a1@@ + Number ) , @@a2@@ , Number L - * ( int * ) ( @@a1@@ + Number ) ) ; * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; l2cap_frame_in ( @@a1@@ , @@v5@@ ) ; } return __readfsqword ( Number ) ^ @@v6@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const void"}, "location": "r64"}, {"n": "v5", "t": {"T": 3, "t": "unsigned __int16"}, "location": "s16"}, {"n": "v6", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}