// File: dsharlet[P]array/test/array_lifetime.cpp
// Function: void nda::test_move_assign_lifetime<std::allocator<nda::lifetime_counter>>(bool)
void test_move_assign_lifetime(bool alloc_movable = true) {
  {
    lifetime_array<Alloc> source(lifetime_shape);
    lifetime_counter::reset();
    lifetime_array<Alloc> assign;
    assign = std::move(source);
  }
  // This should have moved the whole array if the allocator is movable.
  if (alloc_movable) {
    ASSERT_EQ(lifetime_counter::constructs(), 0);
    ASSERT_EQ(lifetime_counter::moves(), 0);
    ASSERT_EQ(lifetime_counter::destructs, lifetime_shape.size());
  } else {
    ASSERT_EQ(lifetime_counter::constructs(), lifetime_shape.size());
    ASSERT_EQ(lifetime_counter::moves(), lifetime_shape.size());
    ASSERT_EQ(lifetime_counter::destructs, lifetime_shape.size() * 2);
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd80, %rsp            # imm = 0xD80
movb %dil, %al
andb $0x1, %al
movb %al, -0x1(%rbp)
leaq 0x2262ce(%rip), %rsi    # 0x292258
leaq -0x58(%rbp), %rdi
callq 0x7f7e0
callq 0x7f630
leaq -0xa8(%rbp), %rdi
callq 0x89f10
jmp 0x6bfa6
leaq -0xa8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x8a510
jmp 0x6bfb8
leaq -0xa8(%rbp), %rdi
callq 0x7f870
leaq -0x58(%rbp), %rdi
callq 0x7f870
testb $0x1, -0x1(%rbp)
je 0x6c636
callq 0x7f730
testq %rax, %rax
sete %al
movb %al, -0xb61(%rbp)
leaq -0x269(%rbp), %rdi
movq %rdi, -0xb60(%rbp)
callq 0x33b0
movq -0xb60(%rbp), %rdx
leaq 0x175819(%rip), %rsi    # 0x1e1822
leaq -0x268(%rbp), %rdi
callq 0x10a90
jmp 0x6c017
movb -0xb61(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x248(%rbp), %rdi
leaq -0x268(%rbp), %rdx
callq 0x10f80
jmp 0x6c038
leaq 0x1707a6(%rip), %rsi    # 0x1dc7e5
leaq -0x248(%rbp), %rdi
callq 0x34320
movq %rax, -0xb70(%rbp)
jmp 0x6c054
movq -0xb70(%rbp), %rdi
leaq 0x17b219(%rip), %rsi    # 0x1e727b
callq 0x7f760
movq %rax, -0xb78(%rbp)
jmp 0x6c070
movq -0xb78(%rbp), %rdi
leaq 0x17472e(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xb80(%rbp)
jmp 0x6c08c
callq 0x7f730
movq -0xb80(%rbp), %rdi
movq %rax, -0x278(%rbp)
leaq -0x278(%rbp), %rsi
callq 0x355c0
movq %rax, -0xb88(%rbp)
jmp 0x6c0b4
movq -0xb88(%rbp), %rdi
leaq 0x170723(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xb90(%rbp)
jmp 0x6c0d0
movq -0xb90(%rbp), %rdi
leaq 0x172356(%rip), %rsi    # 0x1de434
callq 0x34320
movq %rax, -0xb98(%rbp)
jmp 0x6c0ec
movq -0xb98(%rbp), %rdi
leaq 0x1746b2(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xba0(%rbp)
jmp 0x6c108
movq -0xba0(%rbp), %rdi
movl $0x0, -0x27c(%rbp)
leaq -0x27c(%rbp), %rsi
callq 0x343a0
movq %rax, -0xba8(%rbp)
jmp 0x6c12e
movq -0xba8(%rbp), %rdi
leaq 0x18a33f(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6c143
leaq -0x248(%rbp), %rdi
callq 0x10ff0
jmp 0x6c151
leaq -0x268(%rbp), %rdi
callq 0x3100
leaq -0x269(%rbp), %rdi
callq 0x3290
callq 0x880e0
testq %rax, %rax
sete %al
movb %al, -0xbb1(%rbp)
leaq -0x431(%rbp), %rdi
movq %rdi, -0xbb0(%rbp)
callq 0x33b0
movq -0xbb0(%rbp), %rdx
leaq 0x17947b(%rip), %rsi    # 0x1e5616
leaq -0x430(%rbp), %rdi
callq 0x10a90
jmp 0x6c1a9
movb -0xbb1(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x410(%rbp), %rdi
leaq -0x430(%rbp), %rdx
callq 0x10f80
jmp 0x6c1ca
leaq 0x170614(%rip), %rsi    # 0x1dc7e5
leaq -0x410(%rbp), %rdi
callq 0x34320
movq %rax, -0xbc0(%rbp)
jmp 0x6c1e6
movq -0xbc0(%rbp), %rdi
leaq 0x179441(%rip), %rsi    # 0x1e5635
callq 0x85670
movq %rax, -0xbc8(%rbp)
jmp 0x6c202
movq -0xbc8(%rbp), %rdi
leaq 0x17459c(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xbd0(%rbp)
jmp 0x6c21e
callq 0x880e0
movq -0xbd0(%rbp), %rdi
movq %rax, -0x440(%rbp)
leaq -0x440(%rbp), %rsi
callq 0x355c0
movq %rax, -0xbd8(%rbp)
jmp 0x6c246
movq -0xbd8(%rbp), %rdi
leaq 0x170591(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xbe0(%rbp)
jmp 0x6c262
movq -0xbe0(%rbp), %rdi
leaq 0x1721c4(%rip), %rsi    # 0x1de434
callq 0x34320
movq %rax, -0xbe8(%rbp)
jmp 0x6c27e
movq -0xbe8(%rbp), %rdi
leaq 0x174520(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xbf0(%rbp)
jmp 0x6c29a
movq -0xbf0(%rbp), %rdi
movl $0x0, -0x444(%rbp)
leaq -0x444(%rbp), %rsi
callq 0x343a0
movq %rax, -0xbf8(%rbp)
jmp 0x6c2c0
movq -0xbf8(%rbp), %rdi
leaq 0x18a1ad(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6c2d5
leaq -0x410(%rbp), %rdi
callq 0x10ff0
jmp 0x6c2e3
leaq -0x430(%rbp), %rdi
callq 0x3100
leaq -0x431(%rbp), %rdi
callq 0x3290
leaq 0x226056(%rip), %rax    # 0x292358
movq (%rax), %rax
movq %rax, -0xc10(%rbp)
leaq 0x225f45(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, %rcx
movq -0xc10(%rbp), %rax
subq %rcx, %rax
sete %al
movb %al, -0xc01(%rbp)
leaq -0x5f9(%rbp), %rdi
movq %rdi, -0xc00(%rbp)
callq 0x33b0
movq -0xc00(%rbp), %rdx
leaq 0x17555a(%rip), %rsi    # 0x1e18a9
leaq -0x5f8(%rbp), %rdi
callq 0x10a90
jmp 0x6c35d
movb -0xc01(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x5d8(%rbp), %rdi
leaq -0x5f8(%rbp), %rdx
callq 0x10f80
jmp 0x6c37e
leaq 0x170460(%rip), %rsi    # 0x1dc7e5
leaq -0x5d8(%rbp), %rdi
callq 0x34320
movq %rax, -0xc18(%rbp)
jmp 0x6c39a
movq -0xc18(%rbp), %rdi
leaq 0x175536(%rip), %rsi    # 0x1e18de
callq 0x7f8f0
movq %rax, -0xc20(%rbp)
jmp 0x6c3b6
movq -0xc20(%rbp), %rdi
leaq 0x1743e8(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xc28(%rbp)
jmp 0x6c3d2
movq -0xc28(%rbp), %rdi
leaq 0x225f78(%rip), %rsi    # 0x292358
callq 0x355c0
movq %rax, -0xc30(%rbp)
jmp 0x6c3ee
movq -0xc30(%rbp), %rdi
leaq 0x1703e9(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xc38(%rbp)
jmp 0x6c40a
movq -0xc38(%rbp), %rdi
leaq 0x17928c(%rip), %rsi    # 0x1e56a4
callq 0x34ba0
movq %rax, -0xc40(%rbp)
jmp 0x6c426
movq -0xc40(%rbp), %rdi
leaq 0x174378(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xc48(%rbp)
jmp 0x6c442
leaq 0x225e0f(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, -0xc50(%rbp)
jmp 0x6c457
movq -0xc48(%rbp), %rdi
movq -0xc50(%rbp), %rax
movq %rax, -0x608(%rbp)
leaq -0x608(%rbp), %rsi
callq 0x355c0
movq %rax, -0xc58(%rbp)
jmp 0x6c481
movq -0xc58(%rbp), %rdi
leaq 0x189fec(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6c496
leaq -0x5d8(%rbp), %rdi
callq 0x10ff0
jmp 0x6c4a4
leaq -0x5f8(%rbp), %rdi
callq 0x3100
leaq -0x5f9(%rbp), %rdi
callq 0x3290
jmp 0x6ccc1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c4f3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0x7f870
leaq -0x58(%rbp), %rdi
callq 0x7f870
jmp 0x6ccca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c557
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c54b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0x248(%rbp), %rdi
callq 0x10ff0
jmp 0x6c549
jmp 0x6c54b
leaq -0x268(%rbp), %rdi
callq 0x3100
leaq -0x269(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c5be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c5b2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x10ff0
jmp 0x6c5b0
jmp 0x6c5b2
leaq -0x430(%rbp), %rdi
callq 0x3100
leaq -0x431(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c625
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6c619
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0x5d8(%rbp), %rdi
callq 0x10ff0
jmp 0x6c617
jmp 0x6c619
leaq -0x5f8(%rbp), %rdi
callq 0x3100
leaq -0x5f9(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
callq 0x7f730
movq %rax, -0xc70(%rbp)
leaq 0x225c0f(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, %rcx
movq -0xc70(%rbp), %rax
subq %rcx, %rax
sete %al
movb %al, -0xc61(%rbp)
leaq -0x7b9(%rbp), %rdi
movq %rdi, -0xc60(%rbp)
callq 0x33b0
movq -0xc60(%rbp), %rdx
leaq 0x178fca(%rip), %rsi    # 0x1e564f
leaq -0x7b8(%rbp), %rdi
callq 0x10a90
jmp 0x6c693
movb -0xc61(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x798(%rbp), %rdi
leaq -0x7b8(%rbp), %rdx
callq 0x10f80
jmp 0x6c6b4
leaq 0x17012a(%rip), %rsi    # 0x1dc7e5
leaq -0x798(%rbp), %rdi
callq 0x34320
movq %rax, -0xc78(%rbp)
jmp 0x6c6d0
movq -0xc78(%rbp), %rdi
leaq 0x17ab9d(%rip), %rsi    # 0x1e727b
callq 0x7f760
movq %rax, -0xc80(%rbp)
jmp 0x6c6ec
movq -0xc80(%rbp), %rdi
leaq 0x1740b2(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xc88(%rbp)
jmp 0x6c708
callq 0x7f730
movq -0xc88(%rbp), %rdi
movq %rax, -0x7c8(%rbp)
leaq -0x7c8(%rbp), %rsi
callq 0x355c0
movq %rax, -0xc90(%rbp)
jmp 0x6c730
movq -0xc90(%rbp), %rdi
leaq 0x1700a7(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xc98(%rbp)
jmp 0x6c74c
movq -0xc98(%rbp), %rdi
leaq 0x178f4a(%rip), %rsi    # 0x1e56a4
callq 0x34ba0
movq %rax, -0xca0(%rbp)
jmp 0x6c768
movq -0xca0(%rbp), %rdi
leaq 0x174036(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xca8(%rbp)
jmp 0x6c784
leaq 0x225acd(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, -0xcb0(%rbp)
jmp 0x6c799
movq -0xca8(%rbp), %rdi
movq -0xcb0(%rbp), %rax
movq %rax, -0x7d0(%rbp)
leaq -0x7d0(%rbp), %rsi
callq 0x355c0
movq %rax, -0xcb8(%rbp)
jmp 0x6c7c3
movq -0xcb8(%rbp), %rdi
leaq 0x189caa(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6c7d8
leaq -0x798(%rbp), %rdi
callq 0x10ff0
jmp 0x6c7e6
leaq -0x7b8(%rbp), %rdi
callq 0x3100
leaq -0x7b9(%rbp), %rdi
callq 0x3290
callq 0x880e0
movq %rax, -0xcd0(%rbp)
leaq 0x225a47(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, %rcx
movq -0xcd0(%rbp), %rax
subq %rcx, %rax
sete %al
movb %al, -0xcc1(%rbp)
leaq -0x981(%rbp), %rdi
movq %rdi, -0xcc0(%rbp)
callq 0x33b0
movq -0xcc0(%rbp), %rdx
leaq 0x178e3a(%rip), %rsi    # 0x1e5687
leaq -0x980(%rbp), %rdi
callq 0x10a90
jmp 0x6c85b
movb -0xcc1(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x960(%rbp), %rdi
leaq -0x980(%rbp), %rdx
callq 0x10f80
jmp 0x6c87c
leaq 0x16ff62(%rip), %rsi    # 0x1dc7e5
leaq -0x960(%rbp), %rdi
callq 0x34320
movq %rax, -0xcd8(%rbp)
jmp 0x6c898
movq -0xcd8(%rbp), %rdi
leaq 0x178d8f(%rip), %rsi    # 0x1e5635
callq 0x85670
movq %rax, -0xce0(%rbp)
jmp 0x6c8b4
movq -0xce0(%rbp), %rdi
leaq 0x173eea(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xce8(%rbp)
jmp 0x6c8d0
callq 0x880e0
movq -0xce8(%rbp), %rdi
movq %rax, -0x990(%rbp)
leaq -0x990(%rbp), %rsi
callq 0x355c0
movq %rax, -0xcf0(%rbp)
jmp 0x6c8f8
movq -0xcf0(%rbp), %rdi
leaq 0x16fedf(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xcf8(%rbp)
jmp 0x6c914
movq -0xcf8(%rbp), %rdi
leaq 0x178d82(%rip), %rsi    # 0x1e56a4
callq 0x34ba0
movq %rax, -0xd00(%rbp)
jmp 0x6c930
movq -0xd00(%rbp), %rdi
leaq 0x173e6e(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xd08(%rbp)
jmp 0x6c94c
leaq 0x225905(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, -0xd10(%rbp)
jmp 0x6c961
movq -0xd08(%rbp), %rdi
movq -0xd10(%rbp), %rax
movq %rax, -0x998(%rbp)
leaq -0x998(%rbp), %rsi
callq 0x355c0
movq %rax, -0xd18(%rbp)
jmp 0x6c98b
movq -0xd18(%rbp), %rdi
leaq 0x189ae2(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6c9a0
leaq -0x960(%rbp), %rdi
callq 0x10ff0
jmp 0x6c9ae
leaq -0x980(%rbp), %rdi
callq 0x3100
leaq -0x981(%rbp), %rdi
callq 0x3290
leaq 0x22598b(%rip), %rax    # 0x292358
movq (%rax), %rax
movq %rax, -0xd30(%rbp)
leaq 0x22587a(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, %rcx
movq -0xd30(%rbp), %rax
addq %rcx, %rcx
subq %rcx, %rax
sete %al
movb %al, -0xd21(%rbp)
leaq -0xb49(%rbp), %rdi
movq %rdi, -0xd20(%rbp)
callq 0x33b0
movq -0xd20(%rbp), %rdx
leaq 0x178c9d(%rip), %rsi    # 0x1e56ba
leaq -0xb48(%rbp), %rdi
callq 0x10a90
jmp 0x6ca2b
movb -0xd21(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0xb28(%rbp), %rdi
leaq -0xb48(%rbp), %rdx
callq 0x10f80
jmp 0x6ca4c
leaq 0x16fd92(%rip), %rsi    # 0x1dc7e5
leaq -0xb28(%rbp), %rdi
callq 0x34320
movq %rax, -0xd38(%rbp)
jmp 0x6ca68
movq -0xd38(%rbp), %rdi
leaq 0x174e68(%rip), %rsi    # 0x1e18de
callq 0x7f8f0
movq %rax, -0xd40(%rbp)
jmp 0x6ca84
movq -0xd40(%rbp), %rdi
leaq 0x173d1a(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xd48(%rbp)
jmp 0x6caa0
movq -0xd48(%rbp), %rdi
leaq 0x2258aa(%rip), %rsi    # 0x292358
callq 0x355c0
movq %rax, -0xd50(%rbp)
jmp 0x6cabc
movq -0xd50(%rbp), %rdi
leaq 0x16fd1b(%rip), %rsi    # 0x1dc7e5
callq 0x34320
movq %rax, -0xd58(%rbp)
jmp 0x6cad8
movq -0xd58(%rbp), %rdi
leaq 0x178bf3(%rip), %rsi    # 0x1e56d9
callq 0x85670
movq %rax, -0xd60(%rbp)
jmp 0x6caf4
movq -0xd60(%rbp), %rdi
leaq 0x173caa(%rip), %rsi    # 0x1e07ac
callq 0x34320
movq %rax, -0xd68(%rbp)
jmp 0x6cb10
leaq 0x225741(%rip), %rdi    # 0x292258
callq 0x1a900
movq %rax, -0xd70(%rbp)
jmp 0x6cb25
movq -0xd68(%rbp), %rdi
movq -0xd70(%rbp), %rax
addq %rax, %rax
movq %rax, -0xb58(%rbp)
leaq -0xb58(%rbp), %rsi
callq 0x355c0
movq %rax, -0xd78(%rbp)
jmp 0x6cb52
movq -0xd78(%rbp), %rdi
leaq 0x18991b(%rip), %rsi    # 0x1f647b
callq 0x34320
jmp 0x6cb67
leaq -0xb28(%rbp), %rdi
callq 0x10ff0
jmp 0x6cb75
leaq -0xb48(%rbp), %rdi
callq 0x3100
leaq -0xb49(%rbp), %rdi
callq 0x3290
jmp 0x6ccc1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6cbe8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6cbdc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0x798(%rbp), %rdi
callq 0x10ff0
jmp 0x6cbda
jmp 0x6cbdc
leaq -0x7b8(%rbp), %rdi
callq 0x3100
leaq -0x7b9(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6cc4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6cc43
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0x960(%rbp), %rdi
callq 0x10ff0
jmp 0x6cc41
jmp 0x6cc43
leaq -0x980(%rbp), %rdi
callq 0x3100
leaq -0x981(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6ccb3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
jmp 0x6cca7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xb0(%rbp)
movl %eax, -0xb4(%rbp)
leaq -0xb28(%rbp), %rdi
callq 0x10ff0
jmp 0x6cca5
jmp 0x6cca7
leaq -0xb48(%rbp), %rdi
callq 0x3100
leaq -0xb49(%rbp), %rdi
callq 0x3290
jmp 0x6ccca
addq $0xd80, %rsp            # imm = 0xD80
popq %rbp
retq
movq -0xb0(%rbp), %rdi
callq 0x33a0
movq %rax, %rdi
callq 0x116d0
nop