{"name": "_ZN15SEGMENTED_ARRAYI5INITVLj128EE8AllocateEv", "code": "__int64 __fastcall SEGMENTED_ARRAY < INITV , Number > Allocate ( __int64 @@a1@@ ) { int v1 ; unsigned int v2 ; __int64 v3 ; __int64 v4 ; __int64 @@v5@@ ; __int64 result ; __int64 v7 ; __int64 @@v8@@ ; int @@v9@@ ; v1 = * ( _DWORD * ) ( @@a1@@ + Number ) ; if ( v1 ) { * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; v2 = ( v1 + Number ) & Number ; v3 = Number L * v2 ; } else { v3 = Number L ; v2 = Number ; } v4 = MEM_POOL_Alloc_P ( * ( _QWORD * ) ( @@a1@@ + Number ) , v3 , Number L , Number L ) ; * ( _DWORD * ) ( @@a1@@ + Number ) += v2 ; * ( _QWORD * ) ( @@a1@@ + Number ) = v4 ; @@v5@@ = v4 ; result = * ( unsigned int * ) ( @@a1@@ + Number ) ; * ( _DWORD * ) ( @@a1@@ + Number ) = result ; do { while ( Number ) { @@v8@@ = @@v5@@ ; v7 = * ( _QWORD * ) ( @@a1@@ + Number ) ; @@v9@@ = Number ; if ( v7 == * ( _QWORD * ) ( @@a1@@ + Number ) ) break ; * ( _QWORD * ) v7 = @@v5@@ ; @@v5@@ += Number L ; * ( _DWORD * ) ( v7 + Number ) = Number ; * ( _QWORD * ) ( @@a1@@ + Number ) += Number L ; v2 -= Number ; if ( ! v2 ) return result ; } @@v5@@ += Number L ; result = std vector < std pair < INITV * , int > , mempool_allocator < std pair < INITV * , int >> > _M_realloc_insert < std pair < INITV * , int >> ( ( _QWORD * ) @@a1@@ , ( char * ) v7 , ( __int64 ) & @@v8@@ ) ; v2 -= Number ; } while ( v2 ) ; return result ; }", "source": [{"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r48"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s40"}]}