{"name": "_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_M_realloc_insertIJRKS5_EEEvN9__gnu_cxx17__normal_iteratorIPS5_S7_EEDpOT_", "code": "__int8 * __fastcall std vector < std __cxx11 basic_string < char , std char_traits < char > , std allocator < char >> > _M_realloc_insert < std __cxx11 basic_string < char , std char_traits < char > , std allocator < char >> const & > ( __int64 @@a1@@ , const __m128i * @@a2@@ , __int64 @@a3@@ ) { __int64 v4 ; const __m128i * @@v5@@ ; __m128i * @@v6@@ ; unsigned __int64 v7 ; __m128i * v9 ; __int64 * v10 ; _BYTE * v11 ; size_t @@v12@@ ; __m128i * v13 ; const __m128i * v14 ; __int64 v15 ; __m128i * v16 ; __m128i * v17 ; __m128i * v18 ; const __m128i * v19 ; __int64 v20 ; __int8 * result ; __m128i @@v22@@ ; __int64 v23 ; void * v24 ; __int64 v25 ; __m128i * @@v26@@ ; unsigned __int64 @@v27@@ ; _QWORD * @@v28@@ ; void * @@src@@ ; size_t @@v30@@ [ Number ] ; v4 = Number ; @@v5@@ = * ( const __m128i * * ) ( @@a1@@ + Number ) ; @@v6@@ = * ( __m128i * * ) @@a1@@ ; v7 = ( ( __int64 ) @@v5@@ -> m128i_i64 - * ( _QWORD * ) @@a1@@ ) >> Number ; if ( v7 == Number ) std __throw_length_error ( String ) ; if ( v7 ) { @@v27@@ = Number * v7 ; if ( v7 <= Number * v7 ) { if ( ! ( Number * v7 ) ) { @@v26@@ = Number L ; goto LABEL_6 ; } if ( @@v27@@ <= Number ) v4 = Number * v7 ; @@v27@@ = Number * v4 ; v9 = ( __m128i * ) operator new ( Number * v4 ) ; } else { @@v27@@ = Number ; v9 = ( __m128i * ) operator new ( Number ) ; } } else { @@v27@@ = Number L ; v9 = ( __m128i * ) operator new ( Number ) ; } @@v26@@ = v9 ; LABEL_6 : v10 = ( __int64 * ) ( ( char * ) @@v26@@ -> m128i_i64 + ( char * ) @@a2@@ - ( char * ) @@v6@@ ) ; @@v28@@ = v10 + Number ; * v10 = ( __int64 ) ( v10 + Number ) ; v11 = * ( _BYTE * * ) @@a3@@ ; @@v12@@ = * ( _QWORD * ) ( @@a3@@ + Number ) ; @@src@@ = v11 ; if ( & v11 [ @@v12@@ ] && ! v11 ) std __throw_logic_error ( String ) ; @@v30@@ [ Number ] = @@v12@@ ; if ( @@v12@@ > Number ) { v25 = std __cxx11 basic_string < char , std char_traits < char > , std allocator < char >> _M_create ( v10 , @@v30@@ , Number L ) ; * v10 = v25 ; v24 = ( void * ) v25 ; v10 [ Number ] = @@v30@@ [ Number ] ; goto LABEL_34 ; } if ( @@v12@@ == Number ) { * ( ( _BYTE * ) v10 + Number ) = * v11 ; goto LABEL_11 ; } if ( @@v12@@ ) { v24 = v10 + Number ; LABEL_34 : memcpy ( v24 , @@src@@ , @@v12@@ ) ; @@v12@@ = @@v30@@ [ Number ] ; @@v28@@ = ( _QWORD * ) * v10 ; } LABEL_11 : v10 [ Number ] = @@v12@@ ; * ( ( _BYTE * ) @@v28@@ + @@v12@@ ) = Number ; if ( @@a2@@ == @@v6@@ ) { v16 = @@v26@@ ; } else { v13 = @@v26@@ ; v14 = @@v6@@ ; do { v13 -> m128i_i64 [ Number ] = ( __int64 ) v13 [ Number ] . m128i_i64 ; if ( ( const __m128i * ) v14 -> m128i_i64 [ Number ] == & v14 [ Number ] ) { v13 [ Number ] = _mm_loadu_si128 ( v14 + Number ) ; } else { v13 -> m128i_i64 [ Number ] = v14 -> m128i_i64 [ Number ] ; v13 [ Number ] . m128i_i64 [ Number ] = v14 [ Number ] . m128i_i64 [ Number ] ; } v15 = v14 -> m128i_i64 [ Number ] ; v14 += Number ; v13 += Number ; v13 [ Number ] . m128i_i64 [ Number ] = v15 ; } while ( @@a2@@ != v14 ) ; v16 = ( __m128i * ) ( ( char * ) @@v26@@ + ( char * ) @@a2@@ - ( char * ) @@v6@@ ) ; } v17 = v16 + Number ; if ( @@a2@@ != @@v5@@ ) { v18 = v17 ; v19 = @@a2@@ ; do { while ( Number ) { v18 -> m128i_i64 [ Number ] = ( __int64 ) v18 [ Number ] . m128i_i64 ; if ( ( const __m128i * ) v19 -> m128i_i64 [ Number ] == & v19 [ Number ] ) break ; v18 -> m128i_i64 [ Number ] = v19 -> m128i_i64 [ Number ] ; v20 = v19 [ Number ] . m128i_i64 [ Number ] ; v19 += Number ; v18 += Number ; v18 [ Number ] . m128i_i64 [ Number ] = v20 ; v18 [ Number ] . m128i_i64 [ Number ] = v19 [ Number ] . m128i_i64 [ Number ] ; if ( v19 == @@v5@@ ) goto LABEL_24 ; } @@v22@@ = _mm_loadu_si128 ( v19 + Number ) ; v23 = v19 -> m128i_i64 [ Number ] ; v19 += Number ; v18 += Number ; v18 [ Number ] = @@v22@@ ; v18 [ Number ] . m128i_i64 [ Number ] = v23 ; } while ( @@v5@@ != v19 ) ; LABEL_24 : v17 = ( __m128i * ) ( ( char * ) v17 + ( char * ) @@v5@@ - ( char * ) @@a2@@ ) ; } if ( @@v6@@ ) operator delete ( @@v6@@ ) ; result = & @@v26@@ -> m128i_i8 [ @@v27@@ ] ; * ( _QWORD * ) ( @@a1@@ + Number ) = ( char * ) @@v26@@ + @@v27@@ ; * ( __m128i * ) @@a1@@ = _mm_unpacklo_epi64 ( ( __m128i ) ( unsigned __int64 ) @@v26@@ , ( __m128i ) ( unsigned __int64 ) v17 ) ; return result ; }", "source": [{"n": "v12", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r112"}, {"n": "v6", "t": {"T": 3, "t": "__m128i"}, "location": "r120"}, {"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "v5", "t": {"T": 3, "t": "const __m128i"}, "location": "r48"}, {"n": "v22", "t": {"T": 8}, "location": "r528"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const __m128i"}, "location": "r64"}, {"n": "v26", "t": {"T": 3, "t": "__m128i"}, "location": "s104"}, {"n": "v30", "t": {"T": 2, "n": 8, "s": 8, "t": "size_t"}, "location": "s64"}, {"n": "src", "t": {"T": 3, "t": "void"}, "location": "s80"}, {"n": "v28", "t": {"T": 3, "t": "_QWORD"}, "location": "s88"}, {"n": "v27", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s96"}]}