// File: cjc12[P]ezSTL/src/../include/test.h
// Function: ezSTL::test::test_algorithm_efficiency()
void test::test_algorithm_efficiency() {
		const int max_number = 20000000;
		std::string cmpstl = "SGI STL";
		//std::string cmpstl = "PJ STL";
		std::uniform_real_distribution<double> u(0.0, 1.0);
		std::normal_distribution<double> n(0.0, 1.0);
		std::default_random_engine e((unsigned)time(0));
		start_info("efficiency of algorithm sort and stable_sort");
		test_info("uniform distribution of unsigned int:");
		{
			ezSTL::vector<unsigned> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(e());
			begin_timer();
			sort(ezSTL_v.begin(), ezSTL_v.end(), less<unsigned>());
			end_timer("ezSTL::sort", max_number);
		}
		{
			std::vector<unsigned> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(e());
			begin_timer();
			std::sort(std_v.begin(), std_v.end(), std::less<unsigned>());
			end_timer(cmpstl + "::sort", max_number);
		}
		test_info("uniform distribution of double(0, 1):");
		{
			ezSTL::vector<double> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(u(e));
			begin_timer();
			sort(ezSTL_v.begin(), ezSTL_v.end(), less<double>());
			end_timer("ezSTL::sort", max_number);
		}
		{
			std::vector<double> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(u(e));
			begin_timer();
			std::sort(std_v.begin(), std_v.end(), std::less<double>());
			end_timer(cmpstl + "::sort", max_number);
		}
		test_info("normal distribution double(mean value 0, standard deviation 1):");
		{
			ezSTL::vector<double> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(n(e));
			begin_timer();
			sort(ezSTL_v.begin(), ezSTL_v.end(), less<double>());
			end_timer("ezSTL::sort", max_number);
		}
		{
			std::vector<double> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(n(e));
			begin_timer();
			std::sort(std_v.begin(), std_v.end(), std::less<double>());
			end_timer(cmpstl + "::sort", max_number);
		}
		start_info("efficiency of algorithm stable_sort");
		test_info("uniform distribution of unsigned int:");
		{
			ezSTL::vector<unsigned> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(e());
			begin_timer();
			stable_sort(ezSTL_v.begin(), ezSTL_v.end(), less<unsigned>());
			end_timer("ezSTL::stable_sort", max_number);
		}
		{
			std::vector<unsigned> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(e());
			begin_timer();
			std::stable_sort(std_v.begin(), std_v.end(), std::less<unsigned>());
			end_timer(cmpstl + "::stable_sort", max_number);
		}
		test_info("uniform distribution of double(0, 1):");
		{
			ezSTL::vector<double> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(u(e));
			begin_timer();
			stable_sort(ezSTL_v.begin(), ezSTL_v.end(), less<double>());
			end_timer("ezSTL::stable_sort", max_number);
		}
		{
			std::vector<double> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(u(e));
			begin_timer();
			std::stable_sort(std_v.begin(), std_v.end(), std::less<double>());
			end_timer(cmpstl + "::stable_sort", max_number);
		}
		test_info("normal distribution double(mean value 0, standard deviation 1):");
		{
			ezSTL::vector<double> ezSTL_v;
			for (int i = 0; i < max_number; i++)
				ezSTL_v.push_back(n(e));
			begin_timer();
			stable_sort(ezSTL_v.begin(), ezSTL_v.end(), less<double>());
			end_timer("ezSTL::stable_sort", max_number);
		}
		{
			std::vector<double> std_v;
			for (int i = 0; i < max_number; i++)
				std_v.push_back(n(e));
			begin_timer();
			std::stable_sort(std_v.begin(), std_v.end(), std::less<double>());
			end_timer(cmpstl + "::stable_sort", max_number);
		}
		finish_info("efficiency of algorithm sort and stable_sort");
		continue_next_test();
	}

// Assembly:
subq $0x788, %rsp            # imm = 0x788
movl $0x1312d00, 0x784(%rsp) # imm = 0x1312D00
leaq 0x75f(%rsp), %rdi
movq %rdi, 0x170(%rsp)
callq 0x2330
movq 0x170(%rsp), %rdx
leaq 0x1d10b(%rip), %rsi     # 0x26671
leaq 0x760(%rsp), %rdi
callq 0x2290
jmp 0x9575
leaq 0x75f(%rsp), %rdi
callq 0x2260
leaq 0x738(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x1ca83(%rip), %xmm1    # 0x26018
callq 0xfec0
jmp 0x959c
leaq 0x718(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x1ca69(%rip), %xmm1    # 0x26018
callq 0xfef0
jmp 0x95b6
xorl %eax, %eax
movl %eax, %edi
callq 0x21f0
movl %eax, %eax
movl %eax, %esi
leaq 0x710(%rsp), %rdi
callq 0xefe0
jmp 0x95d2
leaq 0x6ef(%rsp), %rdi
movq %rdi, 0x168(%rsp)
callq 0x2330
movq 0x168(%rsp), %rdx
leaq 0x1d165(%rip), %rsi     # 0x2675b
leaq 0x6f0(%rsp), %rdi
callq 0x2290
jmp 0x9605
leaq 0x6f0(%rsp), %rdi
callq 0x24e0
jmp 0x9614
leaq 0x6f0(%rsp), %rdi
callq 0x2130
leaq 0x6ef(%rsp), %rdi
callq 0x2260
leaq 0x6c7(%rsp), %rdi
movq %rdi, 0x160(%rsp)
callq 0x2330
movq 0x160(%rsp), %rdx
leaq 0x1d136(%rip), %rsi     # 0x26788
leaq 0x6c8(%rsp), %rdi
callq 0x2290
jmp 0x9661
leaq 0x6c8(%rsp), %rdi
callq 0x2730
jmp 0x9670
leaq 0x6c8(%rsp), %rdi
callq 0x2130
leaq 0x6c7(%rsp), %rdi
callq 0x2260
leaq 0x6a8(%rsp), %rdi
callq 0xf8f0
jmp 0x9699
movl $0x0, 0x6a4(%rsp)
cmpl $0x1312d00, 0x6a4(%rsp) # imm = 0x1312D00
jge 0x97f1
leaq 0x710(%rsp), %rdi
callq 0xff40
movq %rax, 0x158(%rsp)
jmp 0x96cc
movq 0x158(%rsp), %rax
movl %eax, 0x6a0(%rsp)
leaq 0x6a8(%rsp), %rdi
leaq 0x6a0(%rsp), %rsi
callq 0xf920
jmp 0x96f2
jmp 0x96f4
movl 0x6a4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x6a4(%rsp)
jmp 0x96a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x75f(%rsp), %rdi
callq 0x2260
jmp 0xae23
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x977d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x6f0(%rsp), %rdi
callq 0x2130
leaq 0x6ef(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x97c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x6c8(%rsp), %rdi
callq 0x2130
leaq 0x6c7(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9968
callq 0x27b0
leaq 0x6a8(%rsp), %rdi
callq 0xfc50
movq %rax, 0x150(%rsp)
jmp 0x980d
leaq 0x6a8(%rsp), %rdi
callq 0xfc60
movq %rax, 0x148(%rsp)
jmp 0x9824
movq 0x148(%rsp), %rsi
movq 0x150(%rsp), %rdi
callq 0xff70
jmp 0x983b
leaq 0x677(%rsp), %rdi
movq %rdi, 0x140(%rsp)
callq 0x2330
movq 0x140(%rsp), %rdx
leaq 0x1cf4f(%rip), %rsi     # 0x267ae
leaq 0x678(%rsp), %rdi
callq 0x2290
jmp 0x986e
leaq 0x678(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0x9882
leaq 0x678(%rsp), %rdi
callq 0x2130
leaq 0x677(%rsp), %rdi
callq 0x2260
leaq 0x6a8(%rsp), %rdi
callq 0xfc70
leaq 0x658(%rsp), %rdi
callq 0xffd0
movl $0x0, 0x654(%rsp)
cmpl $0x1312d00, 0x654(%rsp) # imm = 0x1312D00
jge 0x9993
leaq 0x710(%rsp), %rdi
callq 0xff40
movq %rax, 0x138(%rsp)
jmp 0x98e9
movq 0x138(%rsp), %rax
movl %eax, 0x650(%rsp)
leaq 0x658(%rsp), %rdi
leaq 0x650(%rsp), %rsi
callq 0xffe0
jmp 0x990f
jmp 0x9911
movl 0x654(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x654(%rsp)
jmp 0x98c1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x995b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x678(%rsp), %rdi
callq 0x2130
leaq 0x677(%rsp), %rdi
callq 0x2260
leaq 0x6a8(%rsp), %rdi
callq 0xfc70
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9b33
callq 0x27b0
leaq 0x658(%rsp), %rdi
movq %rdi, 0x130(%rsp)
callq 0x10050
movq 0x130(%rsp), %rdi
movq %rax, 0x648(%rsp)
callq 0x10080
movq %rax, 0x640(%rsp)
movq 0x648(%rsp), %rdi
movq 0x640(%rsp), %rsi
callq 0x10010
jmp 0x99e1
leaq 0x1cdcb(%rip), %rdx     # 0x267b3
leaq 0x618(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0x99ff
leaq 0x618(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0x9a13
leaq 0x618(%rsp), %rdi
callq 0x2130
leaq 0x658(%rsp), %rdi
callq 0x100b0
leaq 0x5f7(%rsp), %rdi
movq %rdi, 0x128(%rsp)
callq 0x2330
movq 0x128(%rsp), %rdx
leaq 0x1cd69(%rip), %rsi     # 0x267ba
leaq 0x5f8(%rsp), %rdi
callq 0x2290
jmp 0x9a60
leaq 0x5f8(%rsp), %rdi
callq 0x2730
jmp 0x9a6f
leaq 0x5f8(%rsp), %rdi
callq 0x2130
leaq 0x5f7(%rsp), %rdi
callq 0x2260
leaq 0x5d8(%rsp), %rdi
callq 0x10110
jmp 0x9a98
movl $0x0, 0x5d4(%rsp)
cmpl $0x1312d00, 0x5d4(%rsp) # imm = 0x1312D00
jge 0x9ba7
leaq 0x738(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x10290
movsd %xmm0, 0x120(%rsp)
jmp 0x9ad4
movsd 0x120(%rsp), %xmm0
movsd %xmm0, 0x5c8(%rsp)
leaq 0x5d8(%rsp), %rdi
leaq 0x5c8(%rsp), %rsi
callq 0x10140
jmp 0x9afd
jmp 0x9aff
movl 0x5d4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x5d4(%rsp)
jmp 0x9aa3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x618(%rsp), %rdi
callq 0x2130
leaq 0x658(%rsp), %rdi
callq 0x100b0
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9b7c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x5f8(%rsp), %rdi
callq 0x2130
leaq 0x5f7(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9d2a
callq 0x27b0
leaq 0x5d8(%rsp), %rdi
callq 0x10320
movq %rax, 0x118(%rsp)
jmp 0x9bc3
leaq 0x5d8(%rsp), %rdi
callq 0x10330
movq %rax, 0x110(%rsp)
jmp 0x9bda
movq 0x110(%rsp), %rsi
movq 0x118(%rsp), %rdi
callq 0x102c0
jmp 0x9bf1
leaq 0x59f(%rsp), %rdi
movq %rdi, 0x108(%rsp)
callq 0x2330
movq 0x108(%rsp), %rdx
leaq 0x1cb99(%rip), %rsi     # 0x267ae
leaq 0x5a0(%rsp), %rdi
callq 0x2290
jmp 0x9c24
leaq 0x5a0(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0x9c38
leaq 0x5a0(%rsp), %rdi
callq 0x2130
leaq 0x59f(%rsp), %rdi
callq 0x2260
leaq 0x5d8(%rsp), %rdi
callq 0x10340
leaq 0x580(%rsp), %rdi
callq 0x10380
movl $0x0, 0x57c(%rsp)
cmpl $0x1312d00, 0x57c(%rsp) # imm = 0x1312D00
jge 0x9d55
leaq 0x738(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x10290
movsd %xmm0, 0x100(%rsp)
jmp 0x9ca8
movsd 0x100(%rsp), %xmm0
movsd %xmm0, 0x570(%rsp)
leaq 0x580(%rsp), %rdi
leaq 0x570(%rsp), %rsi
callq 0x10390
jmp 0x9cd1
jmp 0x9cd3
movl 0x57c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x57c(%rsp)
jmp 0x9c77
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9d1d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x5a0(%rsp), %rdi
callq 0x2130
leaq 0x59f(%rsp), %rdi
callq 0x2260
leaq 0x5d8(%rsp), %rdi
callq 0x10340
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9ef5
callq 0x27b0
leaq 0x580(%rsp), %rdi
movq %rdi, 0xf8(%rsp)
callq 0x10400
movq 0xf8(%rsp), %rdi
movq %rax, 0x568(%rsp)
callq 0x10430
movq %rax, 0x560(%rsp)
movq 0x568(%rsp), %rdi
movq 0x560(%rsp), %rsi
callq 0x103c0
jmp 0x9da3
leaq 0x1ca09(%rip), %rdx     # 0x267b3
leaq 0x538(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0x9dc1
leaq 0x538(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0x9dd5
leaq 0x538(%rsp), %rdi
callq 0x2130
leaq 0x580(%rsp), %rdi
callq 0x10460
leaq 0x517(%rsp), %rdi
movq %rdi, 0xf0(%rsp)
callq 0x2330
movq 0xf0(%rsp), %rdx
leaq 0x1c9cd(%rip), %rsi     # 0x267e0
leaq 0x518(%rsp), %rdi
callq 0x2290
jmp 0x9e22
leaq 0x518(%rsp), %rdi
callq 0x2730
jmp 0x9e31
leaq 0x518(%rsp), %rdi
callq 0x2130
leaq 0x517(%rsp), %rdi
callq 0x2260
leaq 0x4f8(%rsp), %rdi
callq 0x10110
jmp 0x9e5a
movl $0x0, 0x4f4(%rsp)
cmpl $0x1312d00, 0x4f4(%rsp) # imm = 0x1312D00
jge 0x9f69
leaq 0x718(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x104c0
movsd %xmm0, 0xe8(%rsp)
jmp 0x9e96
movsd 0xe8(%rsp), %xmm0
movsd %xmm0, 0x4e8(%rsp)
leaq 0x4f8(%rsp), %rdi
leaq 0x4e8(%rsp), %rsi
callq 0x10140
jmp 0x9ebf
jmp 0x9ec1
movl 0x4f4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x4f4(%rsp)
jmp 0x9e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x538(%rsp), %rdi
callq 0x2130
leaq 0x580(%rsp), %rdi
callq 0x10460
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0x9f3e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x518(%rsp), %rdi
callq 0x2130
leaq 0x517(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa0ec
callq 0x27b0
leaq 0x4f8(%rsp), %rdi
callq 0x10320
movq %rax, 0xe0(%rsp)
jmp 0x9f85
leaq 0x4f8(%rsp), %rdi
callq 0x10330
movq %rax, 0xd8(%rsp)
jmp 0x9f9c
movq 0xd8(%rsp), %rsi
movq 0xe0(%rsp), %rdi
callq 0x102c0
jmp 0x9fb3
leaq 0x4bf(%rsp), %rdi
movq %rdi, 0xd0(%rsp)
callq 0x2330
movq 0xd0(%rsp), %rdx
leaq 0x1c7d7(%rip), %rsi     # 0x267ae
leaq 0x4c0(%rsp), %rdi
callq 0x2290
jmp 0x9fe6
leaq 0x4c0(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0x9ffa
leaq 0x4c0(%rsp), %rdi
callq 0x2130
leaq 0x4bf(%rsp), %rdi
callq 0x2260
leaq 0x4f8(%rsp), %rdi
callq 0x10340
leaq 0x4a0(%rsp), %rdi
callq 0x10380
movl $0x0, 0x49c(%rsp)
cmpl $0x1312d00, 0x49c(%rsp) # imm = 0x1312D00
jge 0xa117
leaq 0x718(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x104c0
movsd %xmm0, 0xc8(%rsp)
jmp 0xa06a
movsd 0xc8(%rsp), %xmm0
movsd %xmm0, 0x490(%rsp)
leaq 0x4a0(%rsp), %rdi
leaq 0x490(%rsp), %rsi
callq 0x10390
jmp 0xa093
jmp 0xa095
movl 0x49c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x49c(%rsp)
jmp 0xa039
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa0df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x4c0(%rsp), %rdi
callq 0x2130
leaq 0x4bf(%rsp), %rdi
callq 0x2260
leaq 0x4f8(%rsp), %rdi
callq 0x10340
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa307
callq 0x27b0
leaq 0x4a0(%rsp), %rdi
movq %rdi, 0xc0(%rsp)
callq 0x10400
movq 0xc0(%rsp), %rdi
movq %rax, 0x488(%rsp)
callq 0x10430
movq %rax, 0x480(%rsp)
movq 0x488(%rsp), %rdi
movq 0x480(%rsp), %rsi
callq 0x103c0
jmp 0xa165
leaq 0x1c647(%rip), %rdx     # 0x267b3
leaq 0x458(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0xa183
leaq 0x458(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xa197
leaq 0x458(%rsp), %rdi
callq 0x2130
leaq 0x4a0(%rsp), %rdi
callq 0x10460
leaq 0x437(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0x2330
movq 0xb8(%rsp), %rdx
leaq 0x1c64b(%rip), %rsi     # 0x26820
leaq 0x438(%rsp), %rdi
callq 0x2290
jmp 0xa1e4
leaq 0x438(%rsp), %rdi
callq 0x24e0
jmp 0xa1f3
leaq 0x438(%rsp), %rdi
callq 0x2130
leaq 0x437(%rsp), %rdi
callq 0x2260
leaq 0x40f(%rsp), %rdi
movq %rdi, 0xb0(%rsp)
callq 0x2330
movq 0xb0(%rsp), %rdx
leaq 0x1c557(%rip), %rsi     # 0x26788
leaq 0x410(%rsp), %rdi
callq 0x2290
jmp 0xa240
leaq 0x410(%rsp), %rdi
callq 0x2730
jmp 0xa24f
leaq 0x410(%rsp), %rdi
callq 0x2130
leaq 0x40f(%rsp), %rdi
callq 0x2260
leaq 0x3f0(%rsp), %rdi
callq 0xf8f0
jmp 0xa278
movl $0x0, 0x3ec(%rsp)
cmpl $0x1312d00, 0x3ec(%rsp) # imm = 0x1312D00
jge 0xa3c4
leaq 0x710(%rsp), %rdi
callq 0xff40
movq %rax, 0xa8(%rsp)
jmp 0xa2ab
movq 0xa8(%rsp), %rax
movl %eax, 0x3e8(%rsp)
leaq 0x3f0(%rsp), %rdi
leaq 0x3e8(%rsp), %rsi
callq 0xf920
jmp 0xa2d1
jmp 0xa2d3
movl 0x3ec(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3ec(%rsp)
jmp 0xa283
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x458(%rsp), %rdi
callq 0x2130
leaq 0x4a0(%rsp), %rdi
callq 0x10460
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa350
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x438(%rsp), %rdi
callq 0x2130
leaq 0x437(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa399
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x410(%rsp), %rdi
callq 0x2130
leaq 0x40f(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa53b
callq 0x27b0
leaq 0x3f0(%rsp), %rdi
callq 0xfc50
movq %rax, 0xa0(%rsp)
jmp 0xa3e0
leaq 0x3f0(%rsp), %rdi
callq 0xfc60
movq %rax, 0x98(%rsp)
jmp 0xa3f7
movq 0x98(%rsp), %rsi
movq 0xa0(%rsp), %rdi
callq 0x104f0
jmp 0xa40e
leaq 0x3bf(%rsp), %rdi
movq %rdi, 0x90(%rsp)
callq 0x2330
movq 0x90(%rsp), %rdx
leaq 0x1c412(%rip), %rsi     # 0x26844
leaq 0x3c0(%rsp), %rdi
callq 0x2290
jmp 0xa441
leaq 0x3c0(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xa455
leaq 0x3c0(%rsp), %rdi
callq 0x2130
leaq 0x3bf(%rsp), %rdi
callq 0x2260
leaq 0x3f0(%rsp), %rdi
callq 0xfc70
leaq 0x3a0(%rsp), %rdi
callq 0xffd0
movl $0x0, 0x39c(%rsp)
cmpl $0x1312d00, 0x39c(%rsp) # imm = 0x1312D00
jge 0xa566
leaq 0x710(%rsp), %rdi
callq 0xff40
movq %rax, 0x88(%rsp)
jmp 0xa4bc
movq 0x88(%rsp), %rax
movl %eax, 0x398(%rsp)
leaq 0x3a0(%rsp), %rdi
leaq 0x398(%rsp), %rsi
callq 0xffe0
jmp 0xa4e2
jmp 0xa4e4
movl 0x39c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x39c(%rsp)
jmp 0xa494
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa52e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x3c0(%rsp), %rdi
callq 0x2130
leaq 0x3bf(%rsp), %rdi
callq 0x2260
leaq 0x3f0(%rsp), %rdi
callq 0xfc70
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa6fa
callq 0x27b0
leaq 0x3a0(%rsp), %rdi
movq %rdi, 0x80(%rsp)
callq 0x10050
movq 0x80(%rsp), %rdi
movq %rax, 0x390(%rsp)
callq 0x10080
movq %rax, 0x388(%rsp)
movq 0x390(%rsp), %rdi
movq 0x388(%rsp), %rsi
callq 0x10520
jmp 0xa5b4
leaq 0x1c28e(%rip), %rdx     # 0x26849
leaq 0x360(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0xa5d2
leaq 0x360(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xa5e6
leaq 0x360(%rsp), %rdi
callq 0x2130
leaq 0x3a0(%rsp), %rdi
callq 0x100b0
leaq 0x33f(%rsp), %rdi
movq %rdi, 0x78(%rsp)
callq 0x2330
movq 0x78(%rsp), %rdx
leaq 0x1c19c(%rip), %rsi     # 0x267ba
leaq 0x340(%rsp), %rdi
callq 0x2290
jmp 0xa62d
leaq 0x340(%rsp), %rdi
callq 0x2730
jmp 0xa63c
leaq 0x340(%rsp), %rdi
callq 0x2130
leaq 0x33f(%rsp), %rdi
callq 0x2260
leaq 0x320(%rsp), %rdi
callq 0x10110
jmp 0xa665
movl $0x0, 0x31c(%rsp)
cmpl $0x1312d00, 0x31c(%rsp) # imm = 0x1312D00
jge 0xa76e
leaq 0x738(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x10290
movsd %xmm0, 0x70(%rsp)
jmp 0xa69e
movsd 0x70(%rsp), %xmm0
movsd %xmm0, 0x310(%rsp)
leaq 0x320(%rsp), %rdi
leaq 0x310(%rsp), %rsi
callq 0x10140
jmp 0xa6c4
jmp 0xa6c6
movl 0x31c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x31c(%rsp)
jmp 0xa670
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x360(%rsp), %rdi
callq 0x2130
leaq 0x3a0(%rsp), %rdi
callq 0x100b0
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa743
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x340(%rsp), %rdi
callq 0x2130
leaq 0x33f(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa8d9
callq 0x27b0
leaq 0x320(%rsp), %rdi
callq 0x10320
movq %rax, 0x68(%rsp)
jmp 0xa787
leaq 0x320(%rsp), %rdi
callq 0x10330
movq %rax, 0x60(%rsp)
jmp 0xa79b
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdi
callq 0x10560
jmp 0xa7ac
leaq 0x2e7(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x2330
movq 0x58(%rsp), %rdx
leaq 0x1c07a(%rip), %rsi     # 0x26844
leaq 0x2e8(%rsp), %rdi
callq 0x2290
jmp 0xa7d9
leaq 0x2e8(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xa7ed
leaq 0x2e8(%rsp), %rdi
callq 0x2130
leaq 0x2e7(%rsp), %rdi
callq 0x2260
leaq 0x320(%rsp), %rdi
callq 0x10340
leaq 0x2c8(%rsp), %rdi
callq 0x10380
movl $0x0, 0x2c4(%rsp)
cmpl $0x1312d00, 0x2c4(%rsp) # imm = 0x1312D00
jge 0xa904
leaq 0x738(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x10290
movsd %xmm0, 0x50(%rsp)
jmp 0xa85a
movsd 0x50(%rsp), %xmm0
movsd %xmm0, 0x2b8(%rsp)
leaq 0x2c8(%rsp), %rdi
leaq 0x2b8(%rsp), %rsi
callq 0x10390
jmp 0xa880
jmp 0xa882
movl 0x2c4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x2c4(%rsp)
jmp 0xa82c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xa8cc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x2e8(%rsp), %rdi
callq 0x2130
leaq 0x2e7(%rsp), %rdi
callq 0x2260
leaq 0x320(%rsp), %rdi
callq 0x10340
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xaa92
callq 0x27b0
leaq 0x2c8(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x10400
movq 0x48(%rsp), %rdi
movq %rax, 0x2b0(%rsp)
callq 0x10430
movq %rax, 0x2a8(%rsp)
movq 0x2b0(%rsp), %rdi
movq 0x2a8(%rsp), %rsi
callq 0x10590
jmp 0xa94c
leaq 0x1bef6(%rip), %rdx     # 0x26849
leaq 0x280(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0xa96a
leaq 0x280(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xa97e
leaq 0x280(%rsp), %rdi
callq 0x2130
leaq 0x2c8(%rsp), %rdi
callq 0x10460
leaq 0x25f(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x2330
movq 0x40(%rsp), %rdx
leaq 0x1be2a(%rip), %rsi     # 0x267e0
leaq 0x260(%rsp), %rdi
callq 0x2290
jmp 0xa9c5
leaq 0x260(%rsp), %rdi
callq 0x2730
jmp 0xa9d4
leaq 0x260(%rsp), %rdi
callq 0x2130
leaq 0x25f(%rsp), %rdi
callq 0x2260
leaq 0x240(%rsp), %rdi
callq 0x10110
jmp 0xa9fd
movl $0x0, 0x23c(%rsp)
cmpl $0x1312d00, 0x23c(%rsp) # imm = 0x1312D00
jge 0xab06
leaq 0x718(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x104c0
movsd %xmm0, 0x38(%rsp)
jmp 0xaa36
movsd 0x38(%rsp), %xmm0
movsd %xmm0, 0x230(%rsp)
leaq 0x240(%rsp), %rdi
leaq 0x230(%rsp), %rsi
callq 0x10140
jmp 0xaa5c
jmp 0xaa5e
movl 0x23c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x23c(%rsp)
jmp 0xaa08
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x280(%rsp), %rdi
callq 0x2130
leaq 0x2c8(%rsp), %rdi
callq 0x10460
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xaadb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x260(%rsp), %rdi
callq 0x2130
leaq 0x25f(%rsp), %rdi
callq 0x2260
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xac71
callq 0x27b0
leaq 0x240(%rsp), %rdi
callq 0x10320
movq %rax, 0x30(%rsp)
jmp 0xab1f
leaq 0x240(%rsp), %rdi
callq 0x10330
movq %rax, 0x28(%rsp)
jmp 0xab33
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdi
callq 0x10560
jmp 0xab44
leaq 0x207(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x2330
movq 0x20(%rsp), %rdx
leaq 0x1bce2(%rip), %rsi     # 0x26844
leaq 0x208(%rsp), %rdi
callq 0x2290
jmp 0xab71
leaq 0x208(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xab85
leaq 0x208(%rsp), %rdi
callq 0x2130
leaq 0x207(%rsp), %rdi
callq 0x2260
leaq 0x240(%rsp), %rdi
callq 0x10340
leaq 0x1e8(%rsp), %rdi
callq 0x10380
movl $0x0, 0x1e4(%rsp)
cmpl $0x1312d00, 0x1e4(%rsp) # imm = 0x1312D00
jge 0xac9c
leaq 0x718(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x104c0
movsd %xmm0, 0x18(%rsp)
jmp 0xabf2
movsd 0x18(%rsp), %xmm0
movsd %xmm0, 0x1d8(%rsp)
leaq 0x1e8(%rsp), %rdi
leaq 0x1d8(%rsp), %rsi
callq 0x10390
jmp 0xac18
jmp 0xac1a
movl 0x1e4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1e4(%rsp)
jmp 0xabc4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xac64
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x208(%rsp), %rdi
callq 0x2130
leaq 0x207(%rsp), %rdi
callq 0x2260
leaq 0x240(%rsp), %rdi
callq 0x10340
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xadc3
callq 0x27b0
leaq 0x1e8(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x10400
movq 0x10(%rsp), %rdi
movq %rax, 0x1d0(%rsp)
callq 0x10430
movq %rax, 0x1c8(%rsp)
movq 0x1d0(%rsp), %rdi
movq 0x1c8(%rsp), %rsi
callq 0x10590
jmp 0xace4
leaq 0x1bb5e(%rip), %rdx     # 0x26849
leaq 0x1a0(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0xf120
jmp 0xad02
leaq 0x1a0(%rsp), %rdi
movl $0x1312d00, %esi        # imm = 0x1312D00
callq 0x27c0
jmp 0xad16
leaq 0x1a0(%rsp), %rdi
callq 0x2130
leaq 0x1e8(%rsp), %rdi
callq 0x10460
leaq 0x17f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x2330
movq 0x8(%rsp), %rdx
leaq 0x1ba0d(%rip), %rsi     # 0x2675b
leaq 0x180(%rsp), %rdi
callq 0x2290
jmp 0xad5d
leaq 0x180(%rsp), %rdi
callq 0x26d0
jmp 0xad6c
leaq 0x180(%rsp), %rdi
callq 0x2130
leaq 0x17f(%rsp), %rdi
callq 0x2260
callq 0x2780
jmp 0xad8d
leaq 0x760(%rsp), %rdi
callq 0x2130
addq $0x788, %rsp            # imm = 0x788
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x1a0(%rsp), %rdi
callq 0x2130
leaq 0x1e8(%rsp), %rdi
callq 0x10460
jmp 0xae16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
jmp 0xae09
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x750(%rsp)
movl %eax, 0x74c(%rsp)
leaq 0x180(%rsp), %rdi
callq 0x2130
leaq 0x17f(%rsp), %rdi
callq 0x2260
leaq 0x760(%rsp), %rdi
callq 0x2130
movq 0x750(%rsp), %rdi
callq 0x2320