000000000041dce0 <BloombergLP::bdlbb::Blob::slowSetLength(int)>:
M0000000000000000: pushq %rbp ; 1 bytes
M0000000000000001: pushq %r15 ; 2 bytes
M0000000000000003: pushq %r14 ; 2 bytes
M0000000000000005: pushq %rbx ; 1 bytes
M0000000000000006: subq $24, %rsp ; 4 bytes
M000000000000000a: movq %rdi, %r15 ; 3 bytes
M000000000000000d: testl %esi, %esi ; 2 bytes
M000000000000000f: je 0x41dd8e <BloombergLP::bdlbb::Blob::slowSetLength(int)+0xae> ; 6 bytes
M0000000000000015: movl %esi, %ebx ; 2 bytes
M0000000000000017: cmpl %esi, 32(%r15) ; 4 bytes
M000000000000001b: jge 0x41dd5c <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x7c> ; 2 bytes
M000000000000001d: movq %rsp, %r14 ; 3 bytes
M0000000000000020: jmp 0x41dd14 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x34> ; 2 bytes
M0000000000000022: nopw %cs:(%rax,%rax) ; 10 bytes
M000000000000002c: nopl (%rax) ; 4 bytes
M0000000000000030: cmpl %ebx, %eax ; 2 bytes
M0000000000000032: jge 0x41dd5c <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x7c> ; 2 bytes
M0000000000000034: xorps %xmm0, %xmm0 ; 3 bytes
M0000000000000037: movaps %xmm0, (%rsp) ; 4 bytes
M000000000000003b: movl $0, 16(%rsp) ; 8 bytes
M0000000000000043: movq 48(%r15), %rdi ; 4 bytes
M0000000000000047: movq (%rdi), %rax ; 3 bytes
M000000000000004a: movq %r14, %rsi ; 3 bytes
M000000000000004d: callq *16(%rax) ; 3 bytes
M0000000000000050: movq %r15, %rdi ; 3 bytes
M0000000000000053: movq %r14, %rsi ; 3 bytes
M0000000000000056: callq 0x41fa50 <bsl::vector<BloombergLP::bdlbb::BlobBuffer, bsl::allocator<BloombergLP::bdlbb::BlobBuffer> >::push_back(BloombergLP::bdlbb::BlobBuffer const&)> ; 5 bytes
M000000000000005b: movl 32(%r15), %eax ; 4 bytes
M000000000000005f: addl 16(%rsp), %eax ; 4 bytes
M0000000000000063: movl %eax, 32(%r15) ; 4 bytes
M0000000000000067: movq 8(%rsp), %rdi ; 5 bytes
M000000000000006c: testq %rdi, %rdi ; 3 bytes
M000000000000006f: je 0x41dd10 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x30> ; 2 bytes
M0000000000000071: callq 0x4255b0 <BloombergLP::bslma::SharedPtrRep::releaseRef()> ; 5 bytes
M0000000000000076: movl 32(%r15), %eax ; 4 bytes
M000000000000007a: jmp 0x41dd10 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x30> ; 2 bytes
M000000000000007c: movl 36(%r15), %eax ; 4 bytes
M0000000000000080: cmpl %ebx, %eax ; 2 bytes
M0000000000000082: jge 0x41dda9 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0xc9> ; 2 bytes
M0000000000000084: movslq 40(%r15), %rdi ; 4 bytes
M0000000000000088: cmpq $-1, %rdi ; 4 bytes
M000000000000008c: je 0x41de08 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x128> ; 6 bytes
M0000000000000092: movq (%r15), %r8 ; 3 bytes
M0000000000000095: leaq (%rdi,%rdi,2), %rax ; 4 bytes
M0000000000000099: movl 16(%r8,%rax,8), %edx ; 5 bytes
M000000000000009e: movl 44(%r15), %ecx ; 4 bytes
M00000000000000a2: leal (%rcx,%rdx), %eax ; 3 bytes
M00000000000000a5: movl %eax, 36(%r15) ; 4 bytes
M00000000000000a9: jmp 0x41de11 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x131> ; 5 bytes
M00000000000000ae: movabsq $-4294967296, %rax ; 10 bytes
M00000000000000b8: movq %rax, 36(%r15) ; 4 bytes
M00000000000000bc: movl $0, 44(%r15) ; 8 bytes
M00000000000000c4: jmp 0x41debb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1db> ; 5 bytes
M00000000000000c9: movl 44(%r15), %r10d ; 4 bytes
M00000000000000cd: movslq 40(%r15), %rdx ; 4 bytes
M00000000000000d1: leaq -1(%rdx), %rsi ; 4 bytes
M00000000000000d5: movl %r10d, %ecx ; 3 bytes
M00000000000000d8: subl %ebx, %ecx ; 2 bytes
M00000000000000da: testl %ecx, %ecx ; 2 bytes
M00000000000000dc: setg %r9b ; 4 bytes
M00000000000000e0: movl %r10d, %eax ; 3 bytes
M00000000000000e3: movl %r10d, 36(%r15) ; 4 bytes
M00000000000000e7: movl %esi, 40(%r15) ; 4 bytes
M00000000000000eb: subl %ebx, %eax ; 2 bytes
M00000000000000ed: jle 0x41ddeb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x10b> ; 2 bytes
M00000000000000ef: testl %edx, %edx ; 2 bytes
M00000000000000f1: jle 0x41ddeb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x10b> ; 2 bytes
M00000000000000f3: movq (%r15), %r8 ; 3 bytes
M00000000000000f6: leaq (%rsi,%rsi,2), %rdi ; 4 bytes
M00000000000000fa: movl 16(%r8,%rdi,8), %ebp ; 5 bytes
M00000000000000ff: cmpl %ebp, %eax ; 2 bytes
M0000000000000101: jge 0x41de45 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x165> ; 2 bytes
M0000000000000103: movl %r10d, %edi ; 3 bytes
M0000000000000106: jmp 0x41de9d <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1bd> ; 5 bytes
M000000000000010b: movl %r10d, %edi ; 3 bytes
M000000000000010e: movl %edx, %ebp ; 2 bytes
M0000000000000110: movl %ebp, %edx ; 2 bytes
M0000000000000112: testb %r9b, %r9b ; 3 bytes
M0000000000000115: jne 0x41de9d <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1bd> ; 6 bytes
M000000000000011b: testl %ebp, %ebp ; 2 bytes
M000000000000011d: jg 0x41dea9 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1c9> ; 6 bytes
M0000000000000123: jmp 0x41debb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1db> ; 5 bytes
M0000000000000128: movq (%r15), %r8 ; 3 bytes
M000000000000012b: movl 44(%r15), %ecx ; 4 bytes
M000000000000012f: xorl %edx, %edx ; 2 bytes
M0000000000000131: subl %eax, %ebx ; 2 bytes
M0000000000000133: leaq (%rdi,%rdi,2), %rsi ; 4 bytes
M0000000000000137: leaq 40(%r8,%rsi,8), %rsi ; 5 bytes
M000000000000013c: incl %edi ; 2 bytes
M000000000000013e: nop ; 2 bytes
M0000000000000140: addl %edx, %ecx ; 2 bytes
M0000000000000142: movl %ecx, 44(%r15) ; 4 bytes
M0000000000000146: movl %edi, 40(%r15) ; 4 bytes
M000000000000014a: movl (%rsi), %edx ; 2 bytes
M000000000000014c: cmpl %edx, %ebx ; 2 bytes
M000000000000014e: movl %ebx, %ebp ; 2 bytes
M0000000000000150: cmovgl %edx, %ebp ; 3 bytes
M0000000000000153: addl %ebp, %eax ; 2 bytes
M0000000000000155: addq $24, %rsi ; 4 bytes
M0000000000000159: incl %edi ; 2 bytes
M000000000000015b: movl %eax, 36(%r15) ; 4 bytes
M000000000000015f: subl %edx, %ebx ; 2 bytes
M0000000000000161: jg 0x41de20 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x140> ; 2 bytes
M0000000000000163: jmp 0x41debb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1db> ; 2 bytes
M0000000000000165: leaq 16(%r8,%rdi,8), %rsi ; 5 bytes
M000000000000016a: movl %r10d, %edi ; 3 bytes
M000000000000016d: nopl (%rax) ; 3 bytes
M0000000000000170: subl %ebp, %r10d ; 3 bytes
M0000000000000173: leal -1(%rdx), %ebp ; 3 bytes
M0000000000000176: movl %r10d, 44(%r15) ; 4 bytes
M000000000000017a: movl (%rsi), %ebx ; 2 bytes
M000000000000017c: subl %ebx, %edi ; 2 bytes
M000000000000017e: leal -2(%rdx), %esi ; 3 bytes
M0000000000000181: movl %eax, %ecx ; 2 bytes
M0000000000000183: subl %ebx, %ecx ; 2 bytes
M0000000000000185: testl %ecx, %ecx ; 2 bytes
M0000000000000187: setg %r9b ; 4 bytes
M000000000000018b: movl %edi, 36(%r15) ; 4 bytes
M000000000000018f: movl %esi, 40(%r15) ; 4 bytes
M0000000000000193: subl %ebx, %eax ; 2 bytes
M0000000000000195: jle 0x41ddf0 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x110> ; 6 bytes
M000000000000019b: testl %ebp, %ebp ; 2 bytes
M000000000000019d: jle 0x41ddf0 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x110> ; 6 bytes
M00000000000001a3: movslq %esi, %rsi ; 3 bytes
M00000000000001a6: leaq (%rsi,%rsi,2), %rbp ; 4 bytes
M00000000000001aa: leaq 16(%r8,%rbp,8), %rsi ; 5 bytes
M00000000000001af: movl 16(%r8,%rbp,8), %ebp ; 5 bytes
M00000000000001b4: decl %edx ; 2 bytes
M00000000000001b6: cmpl %ebp, %eax ; 2 bytes
M00000000000001b8: jge 0x41de50 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x170> ; 2 bytes
M00000000000001ba: leal -1(%rdx), %esi ; 3 bytes
M00000000000001bd: subl %eax, %edi ; 2 bytes
M00000000000001bf: movl %edi, 36(%r15) ; 4 bytes
M00000000000001c3: movl %edx, %ebp ; 2 bytes
M00000000000001c5: testl %ebp, %ebp ; 2 bytes
M00000000000001c7: jle 0x41debb <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x1db> ; 2 bytes
M00000000000001c9: movl %esi, %eax ; 2 bytes
M00000000000001cb: movq (%r15), %rcx ; 3 bytes
M00000000000001ce: leaq (%rax,%rax,2), %rax ; 4 bytes
M00000000000001d2: subl 16(%rcx,%rax,8), %r10d ; 5 bytes
M00000000000001d7: movl %r10d, 44(%r15) ; 4 bytes
M00000000000001db: addq $24, %rsp ; 4 bytes
M00000000000001df: popq %rbx ; 1 bytes
M00000000000001e0: popq %r14 ; 2 bytes
M00000000000001e2: popq %r15 ; 2 bytes
M00000000000001e4: popq %rbp ; 1 bytes
M00000000000001e5: retq ; 1 bytes
M00000000000001e6: movq %rax, %rdi ; 3 bytes
M00000000000001e9: callq 0x41d220 <__clang_call_terminate> ; 5 bytes
M00000000000001ee: movq %rax, %rbx ; 3 bytes
M00000000000001f1: movq 8(%rsp), %rdi ; 5 bytes
M00000000000001f6: testq %rdi, %rdi ; 3 bytes
M00000000000001f9: je 0x41dee0 <BloombergLP::bdlbb::Blob::slowSetLength(int)+0x200> ; 2 bytes
M00000000000001fb: callq 0x4255b0 <BloombergLP::bslma::SharedPtrRep::releaseRef()> ; 5 bytes
M0000000000000200: movq %rbx, %rdi ; 3 bytes
M0000000000000203: callq 0x403780 <_Unwind_Resume@plt> ; 5 bytes
M0000000000000208: movq %rax, %rdi ; 3 bytes
M000000000000020b: callq 0x41d220 <__clang_call_terminate> ; 5 bytes