LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_middle_wo_realloc()
void
test_vector_modifiers_insert_fill_middle_wo_realloc()
{
	ft::vector<std::string> vec(100, "test");

	vec.reserve(105);

	print_vec_info(vec);
	vec.insert(vec.begin() + 50, 5, "42");
	print_vec_info(vec);

	{
		ft::vector<std::string> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x3370
movq -0xb8(%rbp), %rdx
leaq 0x10a46(%rip), %rsi     # 0x5710f
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x466d4
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x15360
movq -0xc0(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x466ff
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
movl $0x69, %esi
callq 0x4b750
jmp 0x4672a
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46735
leaq -0x18(%rbp), %rdi
callq 0x3f050
movq %rax, -0x68(%rbp)
leaq -0x68(%rbp), %rdi
movl $0x32, %esi
callq 0x4b850
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x4b6d0
leaq -0x89(%rbp), %rdi
movq %rdi, -0xc8(%rbp)
callq 0x3370
movq -0xc8(%rbp), %rdx
leaq 0x11315(%rip), %rsi     # 0x57a97
leaq -0x88(%rbp), %rdi
callq 0x3290
jmp 0x46790
movq -0x58(%rbp), %rsi
leaq -0x18(%rbp), %rdi
movl $0x5, %edx
leaq -0x88(%rbp), %rcx
callq 0x4b890
movq %rax, -0xd0(%rbp)
jmp 0x467b2
movq -0xd0(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq -0x88(%rbp), %rdi
callq 0x3160
leaq -0x89(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x467e3
leaq -0xb0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x3e0c0
jmp 0x467f5
leaq -0xb0(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xd0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x4683f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x46893
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x4688a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x4687e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x88(%rbp), %rdi
callq 0x3160
leaq -0x89(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x152b0
movq -0x48(%rbp), %rdi
callq 0x3360
nopl (%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_end_w_realloc()
void
test_vector_modifiers_insert_fill_end_w_realloc()
{
	ft::vector<std::string> vec(100, "test");

	print_vec_info(vec);
	vec.insert(vec.end(), 5, "42");
	print_vec_info(vec);

	{
		ft::vector<std::string> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x3370
movq -0xb0(%rbp), %rdx
leaq 0x10846(%rip), %rsi     # 0x5710f
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x468d4
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x15360
movq -0xb8(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x468ff
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46925
leaq -0x18(%rbp), %rdi
callq 0x3ed10
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x4b6d0
leaq -0x81(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x3370
movq -0xc0(%rbp), %rdx
leaq 0x11137(%rip), %rsi     # 0x57a97
leaq -0x80(%rbp), %rdi
callq 0x3290
jmp 0x4696b
movq -0x58(%rbp), %rsi
leaq -0x18(%rbp), %rdi
movl $0x5, %edx
leaq -0x80(%rbp), %rcx
callq 0x4b890
movq %rax, -0xc8(%rbp)
jmp 0x4698a
movq -0xc8(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x469b8
leaq -0xa8(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x3e0c0
jmp 0x469ca
leaq -0xa8(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xd0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46a14
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x46a65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46a5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46a50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x152b0
movq -0x48(%rbp), %rdi
callq 0x3360
nop
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_end_wo_realloc()
void
test_vector_modifiers_insert_fill_end_wo_realloc()
{
	ft::vector<std::string> vec(100, "test");

	vec.reserve(105);

	print_vec_info(vec);
	vec.insert(vec.end(), 5, "42");
	print_vec_info(vec);

	{
		ft::vector<std::string> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x3370
movq -0xb0(%rbp), %rdx
leaq 0x10676(%rip), %rsi     # 0x5710f
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x46aa4
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x15360
movq -0xb8(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x46acf
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
movl $0x69, %esi
callq 0x4b750
jmp 0x46afa
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46b05
leaq -0x18(%rbp), %rdi
callq 0x3ed10
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x4b6d0
leaq -0x81(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x3370
movq -0xc0(%rbp), %rdx
leaq 0x10f57(%rip), %rsi     # 0x57a97
leaq -0x80(%rbp), %rdi
callq 0x3290
jmp 0x46b4b
movq -0x58(%rbp), %rsi
leaq -0x18(%rbp), %rdi
movl $0x5, %edx
leaq -0x80(%rbp), %rcx
callq 0x4b890
movq %rax, -0xc8(%rbp)
jmp 0x46b6a
movq -0xc8(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46b98
leaq -0xa8(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x3e0c0
jmp 0x46baa
leaq -0xa8(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xd0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46bf4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x46c45
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46c3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46c30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x152b0
movq -0x48(%rbp), %rdi
callq 0x3360
nop
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_extra()
void
test_vector_modifiers_insert_fill_extra()
{
	ft::vector<std::string> vec(1, "test");

	vec.reserve(6);

	print_vec_info(vec);
	vec.insert(vec.end(), 5, "42");
	print_vec_info(vec);

	{
		ft::vector<std::string> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x3370
movq -0xb0(%rbp), %rdx
leaq 0x10496(%rip), %rsi     # 0x5710f
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x46c84
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x15360
movq -0xb8(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x1, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x46caf
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
movl $0x6, %esi
callq 0x4b750
jmp 0x46cda
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46ce5
leaq -0x18(%rbp), %rdi
callq 0x3ed10
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x4b6d0
leaq -0x81(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x3370
movq -0xc0(%rbp), %rdx
leaq 0x10d77(%rip), %rsi     # 0x57a97
leaq -0x80(%rbp), %rdi
callq 0x3290
jmp 0x46d2b
movq -0x58(%rbp), %rsi
leaq -0x18(%rbp), %rdi
movl $0x5, %edx
leaq -0x80(%rbp), %rcx
callq 0x4b890
movq %rax, -0xc8(%rbp)
jmp 0x46d4a
movq -0xc8(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x46d78
leaq -0xa8(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x3e0c0
jmp 0x46d8a
leaq -0xa8(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xd0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46dd4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x46e25
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46e1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x46e10
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x3160
leaq -0x81(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x152b0
movq -0x48(%rbp), %rdi
callq 0x3360
nop
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_middle_w_realloc_rand()
void
test_vector_modifiers_insert_fill_middle_w_realloc_rand()
{
	ft::vector<int> vec;
	for (int i = 1; i <= 50; i++)
		vec.push_back(i);

	print_vec_info(vec);
	vec.insert(vec.begin() + 25, 5, 42);
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jg 0x46e87
leaq -0x18(%rbp), %rdi
leaq -0x1c(%rbp), %rsi
callq 0x35610
jmp 0x46e60
jmp 0x46e62
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x46e4b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x46f22
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x46e92
leaq -0x18(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x380c0
movq %rax, -0x48(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x19, %esi
callq 0x3afe0
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x3b350
movq -0x80(%rbp), %rdi
movl $0x2a, -0x4c(%rbp)
movq -0x38(%rbp), %rsi
movl $0x5, %edx
leaq -0x4c(%rbp), %rcx
callq 0x4b930
movq %rax, -0x78(%rbp)
jmp 0x46ee5
movq -0x78(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x46ef8
leaq -0x70(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x375b0
jmp 0x46f07
leaq -0x70(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x80, %rsp
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_fill_middle_wo_realloc_rand()
void
test_vector_modifiers_insert_fill_middle_wo_realloc_rand()
{
	ft::vector<int> vec;
	for (int i = 1; i <= 50; i++)
		vec.push_back(i);

	vec.reserve(55);

	print_vec_info(vec);
	vec.insert(vec.begin() + 25, 5, 42);
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jg 0x46f87
leaq -0x18(%rbp), %rdi
leaq -0x1c(%rbp), %rsi
callq 0x35610
jmp 0x46f60
jmp 0x46f62
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x46f4b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x47032
leaq -0x18(%rbp), %rdi
movl $0x37, %esi
callq 0x3e260
jmp 0x46f97
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x46fa2
leaq -0x18(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x380c0
movq %rax, -0x48(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x19, %esi
callq 0x3afe0
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x3b350
movq -0x80(%rbp), %rdi
movl $0x2a, -0x4c(%rbp)
movq -0x38(%rbp), %rsi
movl $0x5, %edx
leaq -0x4c(%rbp), %rcx
callq 0x4b930
movq %rax, -0x78(%rbp)
jmp 0x46ff5
movq -0x78(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x47008
leaq -0x70(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x375b0
jmp 0x47017
leaq -0x70(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x80, %rsp
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_range_middle_w_realloc()
void
test_vector_modifiers_insert_range_middle_w_realloc()
{
	ft::vector<int> vec_random;

	srand(g_seed);

	for (int i = 0; i < 50; i++)
		vec_random.push_back(rand() % 100 - 100 / 2);

	ft::vector<int> vec;
	for (int i = 1; i <= 50; i++)
		vec.push_back(i);

	print_vec_info(vec);
	vec.insert(vec.begin() + 25, vec_random.begin(), vec_random.end());
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq 0x33bbd(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
movl $0x0, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jge 0x476ba
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x3ae40
jmp 0x4769c
jmp 0x4769e
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x47659
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x477d8
leaq -0x48(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x4c(%rbp)
cmpl $0x32, -0x4c(%rbp)
jg 0x47706
leaq -0x48(%rbp), %rdi
leaq -0x4c(%rbp), %rsi
callq 0x35610
jmp 0x476df
jmp 0x476e1
movl -0x4c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4c(%rbp)
jmp 0x476ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
jmp 0x477d8
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x47711
leaq -0x48(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x380c0
movq %rax, -0x68(%rbp)
leaq -0x68(%rbp), %rdi
movl $0x19, %esi
callq 0x3afe0
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3b350
leaq -0x18(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x380c0
movq -0xb0(%rbp), %rdi
movq %rax, -0x70(%rbp)
callq 0x37f50
movq -0xa8(%rbp), %rdi
movq %rax, -0x78(%rbp)
movq -0x58(%rbp), %rsi
movq -0x70(%rbp), %rdx
movq -0x78(%rbp), %rcx
callq 0x4b9d0
movq %rax, -0xa0(%rbp)
jmp 0x47789
movq -0xa0(%rbp), %rax
movq %rax, -0x80(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x4779f
leaq -0x98(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x375b0
jmp 0x477b1
leaq -0x98(%rbp), %rdi
callq 0x15250
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xb0, %rsp
popq %rbp
retq
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopw (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_range_middle_wo_realloc()
void
test_vector_modifiers_insert_range_middle_wo_realloc()
{
	ft::vector<int> vec_random;

	srand(g_seed);

	for (int i = 0; i < 50; i++)
		vec_random.push_back(rand() % 100 - 100 / 2);

	ft::vector<int> vec;
	for (int i = 1; i <= 50; i++)
		vec.push_back(i);

	vec.reserve(100);

	print_vec_info(vec);
	vec.insert(vec.begin() + 25, vec_random.begin(), vec_random.end());
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq 0x339fd(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
movl $0x0, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jge 0x4787a
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x3ae40
jmp 0x4785c
jmp 0x4785e
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x47819
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x479a8
leaq -0x48(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x4c(%rbp)
cmpl $0x32, -0x4c(%rbp)
jg 0x478c6
leaq -0x48(%rbp), %rdi
leaq -0x4c(%rbp), %rsi
callq 0x35610
jmp 0x4789f
jmp 0x478a1
movl -0x4c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4c(%rbp)
jmp 0x4788a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
jmp 0x479a8
leaq -0x48(%rbp), %rdi
movl $0x64, %esi
callq 0x3e260
jmp 0x478d6
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x478e1
leaq -0x48(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x380c0
movq %rax, -0x68(%rbp)
leaq -0x68(%rbp), %rdi
movl $0x19, %esi
callq 0x3afe0
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3b350
leaq -0x18(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x380c0
movq -0xb0(%rbp), %rdi
movq %rax, -0x70(%rbp)
callq 0x37f50
movq -0xa8(%rbp), %rdi
movq %rax, -0x78(%rbp)
movq -0x58(%rbp), %rsi
movq -0x70(%rbp), %rdx
movq -0x78(%rbp), %rcx
callq 0x4b9d0
movq %rax, -0xa0(%rbp)
jmp 0x47959
movq -0xa0(%rbp), %rax
movq %rax, -0x80(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x4796f
leaq -0x98(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x375b0
jmp 0x47981
leaq -0x98(%rbp), %rdi
callq 0x15250
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xb0, %rsp
popq %rbp
retq
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopw (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_range_end_w_realloc()
void
test_vector_modifiers_insert_range_end_w_realloc()
{
	ft::vector<int> vec_random;

	srand(g_seed);

	for (int i = 0; i < 50; i++)
		vec_random.push_back(rand() % 100 - 100 / 2);

	ft::vector<int> vec;
	for (int i = 1; i <= 50; i++)
		vec.push_back(i);

	print_vec_info(vec);
	vec.insert(vec.end(), vec_random.begin(), vec_random.end());
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq 0x3382d(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
movl $0x0, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jge 0x47a4a
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x3ae40
jmp 0x47a2c
jmp 0x47a2e
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x479e9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x47b56
leaq -0x48(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x4c(%rbp)
cmpl $0x32, -0x4c(%rbp)
jg 0x47a96
leaq -0x48(%rbp), %rdi
leaq -0x4c(%rbp), %rsi
callq 0x35610
jmp 0x47a6f
jmp 0x47a71
movl -0x4c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4c(%rbp)
jmp 0x47a5a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
jmp 0x47b56
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x47aa1
leaq -0x48(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x37f50
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3b350
leaq -0x18(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x380c0
movq -0xa8(%rbp), %rdi
movq %rax, -0x68(%rbp)
callq 0x37f50
movq -0xa0(%rbp), %rdi
movq %rax, -0x70(%rbp)
movq -0x58(%rbp), %rsi
movq -0x68(%rbp), %rdx
movq -0x70(%rbp), %rcx
callq 0x4b9d0
movq %rax, -0x98(%rbp)
jmp 0x47b07
movq -0x98(%rbp), %rax
movq %rax, -0x78(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x47b1d
leaq -0x90(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x375b0
jmp 0x47b2f
leaq -0x90(%rbp), %rdi
callq 0x15250
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xb0, %rsp
popq %rbp
retq
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_range_end_wo_realloc()
void
test_vector_modifiers_insert_range_end_wo_realloc()
{
	ft::vector<int> vec_random;

	srand(g_seed);

	for (int i = 0; i < 50; i++)
		vec_random.push_back(rand() % 100 - 100 / 2);

	ft::vector<int> vec(50, 42);

	vec.reserve(100);

	print_vec_info(vec);
	vec.insert(vec.end(), vec_random.begin(), vec_random.end());
	print_vec_info(vec);

	{
		ft::vector<int> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq 0x3367d(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
movl $0x0, -0x1c(%rbp)
cmpl $0x32, -0x1c(%rbp)
jge 0x47bfa
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x3ae40
jmp 0x47bdc
jmp 0x47bde
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x47b99
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x47d31
movl $0x2a, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x15410
movq -0x98(%rbp), %rcx
leaq -0x48(%rbp), %rdi
movl $0x32, %esi
leaq -0x4c(%rbp), %rdx
callq 0x35420
jmp 0x47c2c
leaq -0x4d(%rbp), %rdi
callq 0x48e0
leaq -0x48(%rbp), %rdi
movl $0x64, %esi
callq 0x3e260
jmp 0x47c45
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x47c50
leaq -0x48(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x37f50
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3b350
leaq -0x18(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x380c0
movq -0xb0(%rbp), %rdi
movq %rax, -0x68(%rbp)
callq 0x37f50
movq -0xa8(%rbp), %rdi
movq %rax, -0x70(%rbp)
movq -0x58(%rbp), %rsi
movq -0x68(%rbp), %rdx
movq -0x70(%rbp), %rcx
callq 0x4b9d0
movq %rax, -0xa0(%rbp)
jmp 0x47cb6
movq -0xa0(%rbp), %rax
movq %rax, -0x78(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x47ccc
leaq -0x90(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x375b0
jmp 0x47cde
leaq -0x90(%rbp), %rdi
callq 0x15250
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xb0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x48e0
jmp 0x47d31
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopw %cs:(%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_single_begin()
void
test_vector_modifiers_erase_single_begin()
{
	srand(g_seed);

	ft::vector<int> vec;
	ft::vector<int>::iterator it;

	for (int i = 0; i < 100; i++)
		vec.push_back(rand() % 100 - 100 / 2);

	print_vec_info(vec);
	it = vec.erase(vec.begin());
	print_vec_info(vec);

	if (it == vec.begin())
		std::cout << "valid" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
leaq 0x33109(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq -0x20(%rbp), %rdi
callq 0x3afc0
movl $0x0, -0x24(%rbp)
cmpl $0x64, -0x24(%rbp)
jge 0x48189
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x28(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x3ae40
jmp 0x48162
jmp 0x48164
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x4811f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x4823c
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x48194
leaq -0x18(%rbp), %rdi
movq %rdi, -0x68(%rbp)
callq 0x380c0
movq %rax, -0x50(%rbp)
leaq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3b350
movq -0x68(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0x4bbe0
movq %rax, -0x60(%rbp)
jmp 0x481c5
movq -0x60(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x481e0
leaq -0x18(%rbp), %rdi
callq 0x380c0
movq %rax, -0x58(%rbp)
leaq -0x20(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x3a930
testb $0x1, %al
jne 0x48200
jmp 0x4822d
movq 0x32db1(%rip), %rdi     # 0x7afb8
leaq 0x102cf(%rip), %rsi     # 0x584dd
callq 0x31e0
movq %rax, -0x70(%rbp)
jmp 0x48219
movq -0x70(%rbp), %rdi
movq 0x32d74(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x4822b
jmp 0x4822d
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x70, %rsp
popq %rbp
retq
movq -0x30(%rbp), %rdi
callq 0x3360
nopw %cs:(%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_single_end()
void
test_vector_modifiers_erase_single_end()
{
	srand(g_seed);

	ft::vector<int> vec;
	ft::vector<int>::iterator it;

	for (int i = 0; i < 100; i++)
		vec.push_back(rand() % 100 - 100 / 2);

	print_vec_info(vec);
	it = vec.erase(vec.end() - 1);
	print_vec_info(vec);

	if (it == vec.end())
		std::cout << "valid" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
leaq 0x32e26(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq -0x20(%rbp), %rdi
callq 0x3afc0
movl $0x0, -0x24(%rbp)
cmpl $0x64, -0x24(%rbp)
jge 0x4846c
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x28(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x3ae40
jmp 0x48445
jmp 0x48447
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x48402
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x48534
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x48477
leaq -0x18(%rbp), %rdi
movq %rdi, -0x70(%rbp)
callq 0x37f50
movq %rax, -0x58(%rbp)
leaq -0x58(%rbp), %rdi
movl $0x1, %esi
callq 0x382d0
movq %rax, -0x50(%rbp)
leaq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3b350
movq -0x70(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0x4bbe0
movq %rax, -0x68(%rbp)
jmp 0x484ba
movq -0x68(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x484d5
leaq -0x18(%rbp), %rdi
callq 0x37f50
movq %rax, -0x60(%rbp)
leaq -0x20(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3a930
testb $0x1, %al
jne 0x484f5
jmp 0x48522
movq 0x32abc(%rip), %rdi     # 0x7afb8
leaq 0xffda(%rip), %rsi      # 0x584dd
callq 0x31e0
movq %rax, -0x78(%rbp)
jmp 0x4850e
movq -0x78(%rbp), %rdi
movq 0x32a7f(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x48520
jmp 0x48522
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x80, %rsp
popq %rbp
retq
movq -0x30(%rbp), %rdi
callq 0x3360
nopl (%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_single_string()
void
test_vector_modifiers_erase_single_string()
{
	ft::vector<std::string> vec(100, "42");
	ft::vector<std::string>::iterator it;


	print_vec_info(vec);
	it = vec.erase(vec.begin() + 50);
	print_vec_info(vec);

	if (it == vec.begin() + 50)
		std::cout << "valid" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0x90(%rbp)
callq 0x3370
movq -0x90(%rbp), %rdx
leaq 0xf52e(%rip), %rsi      # 0x57a97
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x48574
leaq -0x4d(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x15360
movq -0x98(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x4859f
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x58(%rbp), %rdi
callq 0x4b670
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x485ce
leaq -0x18(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x3f050
movq %rax, -0x78(%rbp)
leaq -0x78(%rbp), %rdi
movl $0x32, %esi
callq 0x4b850
movq %rax, -0x70(%rbp)
leaq -0x68(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x4b6d0
movq -0xa8(%rbp), %rdi
movq -0x68(%rbp), %rsi
callq 0x4bc50
movq %rax, -0xa0(%rbp)
jmp 0x4861a
movq -0xa0(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x48638
leaq -0x18(%rbp), %rdi
callq 0x3f050
movq %rax, -0x88(%rbp)
leaq -0x88(%rbp), %rdi
movl $0x32, %esi
callq 0x4b850
movq %rax, -0x80(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x4b710
testb $0x1, %al
jne 0x48673
jmp 0x486f4
movq 0x3293e(%rip), %rdi     # 0x7afb8
leaq 0xfe5c(%rip), %rsi      # 0x584dd
callq 0x31e0
movq %rax, -0xb0(%rbp)
jmp 0x4868f
movq -0xb0(%rbp), %rdi
movq 0x328fb(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x486a4
jmp 0x486f4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x486d2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x48706
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x152b0
jmp 0x48706
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xb0, %rsp
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0x3360
nop
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_range_end()
void
test_vector_modifiers_erase_range_end()
{
	srand(g_seed);

	ft::vector<int> vec;
	ft::vector<int>::iterator it;

	for (int i = 0; i < 100; i++)
		vec.push_back(rand() % 100 - 100 / 2);

	print_vec_info(vec);
	it = vec.erase(vec.begin() + 50, vec.end());
	print_vec_info(vec);

	if (it == vec.end())
		std::cout << "valid" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
leaq 0x32776(%rip), %rax     # 0x7b208
movl (%rax), %edi
callq 0x31d0
leaq -0x18(%rbp), %rdi
callq 0x14d00
leaq -0x20(%rbp), %rdi
callq 0x3afc0
movl $0x0, -0x24(%rbp)
cmpl $0x64, -0x24(%rbp)
jge 0x48b1c
callq 0x30a0
movl %eax, %ecx
movslq %ecx, %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rax
addl %edx, %eax
imull $0x64, %eax, %edx
movl %ecx, %eax
negl %edx
movl %edx, %ecx
leal -0x32(%rax,%rcx), %eax
movl %eax, -0x28(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x3ae40
jmp 0x48af5
jmp 0x48af7
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x48ab2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x48c08
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x48b27
leaq -0x18(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x380c0
movq %rax, -0x58(%rbp)
leaq -0x58(%rbp), %rdi
movl $0x32, %esi
callq 0x3afe0
movq %rax, -0x50(%rbp)
leaq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3b350
movq -0x80(%rbp), %rdi
callq 0x37f50
movq %rax, -0x68(%rbp)
leaq -0x60(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x3b350
movq -0x80(%rbp), %rdi
movq -0x48(%rbp), %rsi
movq -0x60(%rbp), %rdx
callq 0x4bcc0
movq %rax, -0x78(%rbp)
jmp 0x48b88
movq -0x78(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x48ba3
leaq -0x18(%rbp), %rdi
callq 0x37f50
movq %rax, -0x70(%rbp)
leaq -0x20(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x3a930
testb $0x1, %al
jne 0x48bc3
jmp 0x48bf6
movq 0x323ee(%rip), %rdi     # 0x7afb8
leaq 0xf90c(%rip), %rsi      # 0x584dd
callq 0x31e0
movq %rax, -0x88(%rbp)
jmp 0x48bdf
movq -0x88(%rbp), %rdi
movq 0x323ab(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x48bf4
jmp 0x48bf6
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x90, %rsp
popq %rbp
retq
movq -0x30(%rbp), %rdi
callq 0x3360
nopw %cs:(%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_range_string()
void
test_vector_modifiers_erase_range_string()
{
	ft::vector<std::string> vec(100, "42");
	ft::vector<std::string>::iterator it;

	print_vec_info(vec);
	it = vec.erase(vec.begin() + 25, vec.begin() + 75);
	print_vec_info(vec);

	if (it == vec.begin() + 25)
		std::cout << "valid" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x3370
movq -0xa8(%rbp), %rdx
leaq 0xee4e(%rip), %rsi      # 0x57a97
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x48c54
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x15360
movq -0xb0(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x48c7f
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x58(%rbp), %rdi
callq 0x4b670
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x48cae
leaq -0x18(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x3f050
movq %rax, -0x78(%rbp)
leaq -0x78(%rbp), %rdi
movl $0x19, %esi
callq 0x4b850
movq %rax, -0x70(%rbp)
leaq -0x68(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x4b6d0
movq -0xc0(%rbp), %rdi
callq 0x3f050
movq %rax, -0x90(%rbp)
leaq -0x90(%rbp), %rdi
movl $0x4b, %esi
callq 0x4b850
movq %rax, -0x88(%rbp)
leaq -0x80(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x4b6d0
movq -0xc0(%rbp), %rdi
movq -0x68(%rbp), %rsi
movq -0x80(%rbp), %rdx
callq 0x4bd50
movq %rax, -0xb8(%rbp)
jmp 0x48d39
movq -0xb8(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x48d57
leaq -0x18(%rbp), %rdi
callq 0x3f050
movq %rax, -0xa0(%rbp)
leaq -0xa0(%rbp), %rdi
movl $0x19, %esi
callq 0x4b850
movq %rax, -0x98(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x4b710
testb $0x1, %al
jne 0x48d98
jmp 0x48e19
movq 0x32219(%rip), %rdi     # 0x7afb8
leaq 0xf737(%rip), %rsi      # 0x584dd
callq 0x31e0
movq %rax, -0xc8(%rbp)
jmp 0x48db4
movq -0xc8(%rbp), %rdi
movq 0x321d6(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x48dc9
jmp 0x48e19
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x48df7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x48e2b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x152b0
jmp 0x48e2b
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xd0, %rsp
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0x3360
nopw %cs:(%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_erase_cplusplus()
void
test_vector_modifiers_erase_cplusplus()
{
	ft::vector<int> myvector;

	// set some values (from 1 to 10)
	for (int i = 1; i <= 10; i++)
		myvector.push_back(i);

	// erase the 6th element
	myvector.erase(myvector.begin() + 5);

	// erase the first 3 elements:
	myvector.erase(myvector.begin(), myvector.begin() + 3);

	std::cout << "myvector contains:";
	for (unsigned i = 0; i < myvector.size(); ++i)
		std::cout << ' ' << myvector[i];
	std::cout << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
leaq -0x18(%rbp), %rdi
callq 0x14d00
movl $0x1, -0x1c(%rbp)
cmpl $0xa, -0x1c(%rbp)
jg 0x48e97
leaq -0x18(%rbp), %rdi
leaq -0x1c(%rbp), %rsi
callq 0x35610
jmp 0x48e70
jmp 0x48e72
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x48e5b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
jmp 0x4901f
leaq -0x18(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x380c0
movq %rax, -0x48(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x5, %esi
callq 0x3afe0
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x3b350
movq -0x98(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0x4bbe0
movq %rax, -0x90(%rbp)
jmp 0x48ee3
movq -0x90(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq -0x18(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x380c0
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x3b350
movq -0xa8(%rbp), %rdi
callq 0x380c0
movq %rax, -0x78(%rbp)
leaq -0x78(%rbp), %rdi
movl $0x3, %esi
callq 0x3afe0
movq %rax, -0x70(%rbp)
leaq -0x68(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x3b350
movq -0xa8(%rbp), %rdi
movq -0x58(%rbp), %rsi
movq -0x68(%rbp), %rdx
callq 0x4bcc0
movq %rax, -0xa0(%rbp)
jmp 0x48f5b
movq -0xa0(%rbp), %rax
movq %rax, -0x80(%rbp)
movq 0x3204b(%rip), %rdi     # 0x7afb8
leaq 0xed18(%rip), %rsi      # 0x57c8c
callq 0x31e0
jmp 0x48f7b
movl $0x0, -0x84(%rbp)
movl -0x84(%rbp), %eax
movq %rax, -0xb0(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x376a0
movq %rax, %rcx
movq -0xb0(%rbp), %rax
cmpq %rcx, %rax
jae 0x48ff8
movq 0x32007(%rip), %rdi     # 0x7afb8
movl $0x20, %esi
callq 0x3250
movq %rax, -0xb8(%rbp)
jmp 0x48fc4
movl -0x84(%rbp), %eax
movl %eax, %esi
leaq -0x18(%rbp), %rdi
callq 0x4bde0
movq -0xb8(%rbp), %rdi
movl (%rax), %esi
callq 0x3350
jmp 0x48fe5
jmp 0x48fe7
movl -0x84(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x84(%rbp)
jmp 0x48f85
movq 0x31fb9(%rip), %rdi     # 0x7afb8
movq 0x31f92(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x4900d
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xc0, %rsp
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_swap_ints()
void
test_vector_modifiers_swap_ints()
{
	ft::vector<int> v1(5, 42), v2(100, -42);

	print_vec_info(v1);
	print_vec_info(v2);

	v1.swap(v2);

	print_vec_info(v1);
	print_vec_info(v2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movl $0x2a, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x58(%rbp)
callq 0x15410
movq -0x58(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x5, %esi
leaq -0x1c(%rbp), %rdx
callq 0x35420
jmp 0x49064
leaq -0x1d(%rbp), %rdi
callq 0x48e0
movl $0xffffffd6, -0x4c(%rbp) # imm = 0xFFFFFFD6
leaq -0x4d(%rbp), %rdi
movq %rdi, -0x60(%rbp)
callq 0x15410
movq -0x60(%rbp), %rcx
leaq -0x48(%rbp), %rdi
movl $0x64, %esi
leaq -0x4c(%rbp), %rdx
callq 0x35420
jmp 0x49099
leaq -0x4d(%rbp), %rdi
callq 0x48e0
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x490ad
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x490b8
leaq -0x18(%rbp), %rdi
movq %rdi, -0x68(%rbp)
leaq -0x48(%rbp), %rsi
callq 0x3c4f0
movq -0x68(%rbp), %rdi
callq 0x3c0a0
jmp 0x490d4
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x490df
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x70, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x48e0
jmp 0x49143
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x48e0
jmp 0x4913a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_swap_strings()
void
test_vector_modifiers_swap_strings()
{
	ft::vector<std::string> v1(5, "42"), v2(100, "-42");

	print_vec_info(v1);
	print_vec_info(v2);

	v1.swap(v2);

	print_vec_info(v1);
	print_vec_info(v2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
leaq -0x39(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x3370
movq -0x98(%rbp), %rdx
leaq 0xe91e(%rip), %rsi      # 0x57a97
leaq -0x38(%rbp), %rdi
callq 0x3290
jmp 0x49184
leaq -0x4d(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x15360
movq -0xa0(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x5, %esi
leaq -0x38(%rbp), %rdx
callq 0x3c220
jmp 0x491af
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
leaq -0x89(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x3370
movq -0xa8(%rbp), %rdx
leaq 0xe8ab(%rip), %rsi      # 0x57a96
leaq -0x88(%rbp), %rdi
callq 0x3290
jmp 0x491f9
leaq -0x8a(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x15360
movq -0xb0(%rbp), %rcx
leaq -0x68(%rbp), %rdi
movl $0x64, %esi
leaq -0x88(%rbp), %rdx
callq 0x3c220
jmp 0x4922a
leaq -0x8a(%rbp), %rdi
callq 0x16ae0
leaq -0x88(%rbp), %rdi
callq 0x3160
leaq -0x89(%rbp), %rdi
callq 0x3230
leaq -0x18(%rbp), %rdi
callq 0x3c2a0
jmp 0x49259
leaq -0x68(%rbp), %rdi
callq 0x3c2a0
jmp 0x49264
leaq -0x18(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
leaq -0x68(%rbp), %rsi
callq 0x3c3f0
movq -0xb8(%rbp), %rdi
callq 0x3c2a0
jmp 0x49286
leaq -0x68(%rbp), %rdi
callq 0x3c2a0
jmp 0x49291
leaq -0x68(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
addq $0xc0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x492d8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x16ae0
leaq -0x38(%rbp), %rdi
callq 0x3160
leaq -0x39(%rbp), %rdi
callq 0x3230
jmp 0x49341
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x49315
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x8a(%rbp), %rdi
callq 0x16ae0
leaq -0x88(%rbp), %rdi
callq 0x3160
leaq -0x89(%rbp), %rdi
callq 0x3230
jmp 0x49338
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x152b0
leaq -0x18(%rbp), %rdi
callq 0x152b0
movq -0x48(%rbp), %rdi
callq 0x3360
nopw (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_swap_iterator_validity()
void
test_vector_modifiers_swap_iterator_validity()
{
	ft::vector<int> v1(5, 42), v2(100, -42);

	ft::vector<int>::iterator it_v1, it_v2;

	print_vec_info(v1);
	print_vec_info(v2);

	it_v1 = v1.begin();
	it_v2 = v2.begin();

	std::cout << *it_v1 << std::endl;
	std::cout << *it_v2 << std::endl;

	v1.swap(v2);

	print_vec_info(v1);
	print_vec_info(v2);

	std::cout << *it_v1 << std::endl;
	std::cout << *it_v2 << std::endl;

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl $0x2a, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x78(%rbp)
callq 0x15410
movq -0x78(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x5, %esi
leaq -0x1c(%rbp), %rdx
callq 0x35420
jmp 0x49387
leaq -0x1d(%rbp), %rdi
callq 0x48e0
movl $0xffffffd6, -0x4c(%rbp) # imm = 0xFFFFFFD6
leaq -0x4d(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x15410
movq -0x80(%rbp), %rcx
leaq -0x48(%rbp), %rdi
movl $0x64, %esi
leaq -0x4c(%rbp), %rdx
callq 0x35420
jmp 0x493bc
leaq -0x4d(%rbp), %rdi
callq 0x48e0
leaq -0x58(%rbp), %rdi
callq 0x3afc0
leaq -0x60(%rbp), %rdi
callq 0x3afc0
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x493e2
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x493ed
leaq -0x18(%rbp), %rdi
callq 0x380c0
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x380c0
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq -0x58(%rbp), %rdi
callq 0x38310
movl (%rax), %esi
movq 0x31b8f(%rip), %rdi     # 0x7afb8
callq 0x3350
movq %rax, -0x88(%rbp)
jmp 0x49437
movq -0x88(%rbp), %rdi
movq 0x31b53(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x4944c
leaq -0x60(%rbp), %rdi
callq 0x38310
movl (%rax), %esi
movq 0x31b5a(%rip), %rdi     # 0x7afb8
callq 0x3350
movq %rax, -0x90(%rbp)
jmp 0x4946c
movq -0x90(%rbp), %rdi
movq 0x31b1e(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x49481
leaq -0x18(%rbp), %rdi
movq %rdi, -0x98(%rbp)
leaq -0x48(%rbp), %rsi
callq 0x3c4f0
movq -0x98(%rbp), %rdi
callq 0x3c0a0
jmp 0x494a3
leaq -0x48(%rbp), %rdi
callq 0x3c0a0
jmp 0x494ae
leaq -0x58(%rbp), %rdi
callq 0x38310
movl (%rax), %esi
movq 0x31af8(%rip), %rdi     # 0x7afb8
callq 0x3350
movq %rax, -0xa0(%rbp)
jmp 0x494ce
movq -0xa0(%rbp), %rdi
movq 0x31abc(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x494e3
leaq -0x60(%rbp), %rdi
callq 0x38310
movl (%rax), %esi
movq 0x31ac3(%rip), %rdi     # 0x7afb8
callq 0x3350
movq %rax, -0xa8(%rbp)
jmp 0x49503
movq -0xa8(%rbp), %rdi
movq 0x31a87(%rip), %rsi     # 0x7af98
callq 0x3220
jmp 0x49518
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0xb0, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x48e0
jmp 0x4957f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x4d(%rbp), %rdi
callq 0x48e0
jmp 0x49576
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x15250
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360
nopl (%rax,%rax)
// File: DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_clear_ints()
void
test_vector_modifiers_clear_ints()
{
	ft::vector<int> vec(100, 42);

	print_vec_info(vec);

	vec.clear();

	vec.push_back(1101);
	vec.push_back(2202);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movl $0x2a, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x40(%rbp)
callq 0x15410
movq -0x40(%rbp), %rcx
leaq -0x18(%rbp), %rdi
movl $0x64, %esi
leaq -0x1c(%rbp), %rdx
callq 0x35420
jmp 0x495c4
leaq -0x1d(%rbp), %rdi
callq 0x48e0
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x495d8
leaq -0x18(%rbp), %rdi
movq %rdi, -0x48(%rbp)
callq 0x4be00
movq -0x48(%rbp), %rdi
movl $0x44d, -0x30(%rbp)     # imm = 0x44D
leaq -0x30(%rbp), %rsi
callq 0x3ae40
jmp 0x495fb
movl $0x89a, -0x34(%rbp)     # imm = 0x89A
leaq -0x18(%rbp), %rdi
leaq -0x34(%rbp), %rsi
callq 0x3ae40
jmp 0x49611
leaq -0x18(%rbp), %rdi
callq 0x3c0a0
jmp 0x4961c
leaq -0x18(%rbp), %rdi
callq 0x15250
addq $0x50, %rsp
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x48e0
jmp 0x49657
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x15250
movq -0x28(%rbp), %rdi
callq 0x3360