// File: /workspace/github_cpp_makefile_star2_O1/yanlinlin82[P]jsonxx/demo.new.cpp
// Function: test_assignments()
void test_assignments()
{
	json j;

	// null json
	j = json(); std::cout << "[TEST:57] j = " << j << " // expected: null" << std::endl;

	// boolean json
	j = false; std::cout << "[TEST:60] j = " << j << " // expected: false" << std::endl;
	j = true;  std::cout << "[TEST:61] j = " << j << " // expected: true" << std::endl;

	// number json
	j = 0;               std::cout << "[TEST:64] j = " << j << " // expected: 0" << std::endl;
	j = 123;             std::cout << "[TEST:65] j = " << j << " // expected: 123" << std::endl;
	j = -45;             std::cout << "[TEST:66] j = " << j << " // expected: -45" << std::endl;
	j = 1234567890123LL; std::cout << "[TEST:67] j = " << j << " // expected: 1234567890123" << std::endl;
	j = 0.1f;            std::cout << "[TEST:68] j = " << j << " // expected: 0.1" << std::endl;
	j = 3.14159;         std::cout << "[TEST:69] j = " << j << " // expected: 3.14159" << std::endl;

	// string json
	j = "C-style string";         std::cout << "[TEST:72] j = " << j << " // expected: \"C-style string\"" << std::endl;
	j = std::string("C++ style"); std::cout << "[TEST:73] j = " << j << " // expected: \"C++ style\"" << std::endl;

	// array json
	j = {"a", "b"};         std::cout << "[TEST:76] j = " << j << " // expected: [\"a\",\"b\"]" << std::endl;
	j = {123, 456, 78, 90}; std::cout << "[TEST:77] j = " << j << " // expected: [123,456,78,90]" << std::endl;
	j = {"123", "xyz"};     std::cout << "[TEST:78] j = " << j << " // expected: [\"123\",\"xyz\"]" << std::endl;
	j = {1.23, 45.6, .78};  std::cout << "[TEST:79] j = " << j << " // expected: [1.23,45.6,0.78]" << std::endl;

	// object json
	j = json("key", "value"); std::cout << "[TEST:82] j = " << j << " // expected: {\"key\":\"value\"}" << std::endl;
	j = json("pi", 3.14159);  std::cout << "[TEST:83] j = " << j << " // expected: {\"pi\":3.14159}" << std::endl;

	// more complex json
	j = json("array", {1, 2, 3}); std::cout << "[TEST:86] j = " << j << " // expected: {\"array\":[1,2,3]}" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x948, %rsp            # imm = 0x948
xorl %eax, %eax
leaq -0xf8(%rbp), %rcx
movl %eax, -0x18(%rcx)
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%rcx)
movq %rax, 0x20(%rcx)
leaq -0xc8(%rbp), %rcx
movl %eax, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x338(%rbp), %r12
movaps %xmm0, -0x18(%r12)
movaps %xmm0, -0x8(%r12)
movaps %xmm0, 0x8(%r12)
movaps %xmm0, 0x18(%r12)
movaps %xmm0, 0x28(%r12)
movaps %xmm0, 0x38(%r12)
movaps %xmm0, 0x48(%r12)
leaq -0x310(%rbp), %rbx
movq %r12, -0x38(%rbx)
movq %rax, -0x30(%rbx)
movb %al, -0x28(%rbx)
leaq -0x328(%rbp), %r14
movups %xmm0, (%r14)
movq %rax, 0x10(%r14)
leaq -0x308(%rbp), %rcx
movl %eax, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x110(%rbp), %rdi
leaq -0x350(%rbp), %r15
movq %r15, %rsi
callq 0xbba6
movq %rbx, %rdi
callq 0xb90e
movq %r14, %rdi
callq 0xabf8
movq 0x8(%r15), %rdi
cmpq %r12, %rdi
je 0x48ce
movq -0x338(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf703(%rip), %rdi      # 0x13fd8
leaq 0xabd9(%rip), %rsi      # 0xf4b5
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf6ca(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
leaq -0x90(%rbp), %r15
movq -0x10(%r15), %rdi
cmpq %r15, %rdi
je 0x4935
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa763(%rip), %rsi      # 0xf09f
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x958(%rbp), %r12
movl $0x1, -0x18(%r12)
movq %r12, -0x10(%r12)
xorl %eax, %eax
movq %rax, -0x8(%r12)
movb $0x0, (%r12)
leaq -0x948(%rbp), %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
movq %rax, 0x10(%rbx)
leaq -0x928(%rbp), %rcx
movl $0x0, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x110(%rbp), %rdi
leaq -0x970(%rbp), %rsi
callq 0xbba6
leaq -0x930(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
cmpq %r12, %rdi
je 0x4a01
movq -0x958(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf5d0(%rip), %rdi      # 0x13fd8
leaq 0xaab5(%rip), %rsi      # 0xf4c4
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf597(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4a64
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa657(%rip), %rsi      # 0xf0c2
movl $0x13, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x2d8(%rbp), %rdi
movl $0x1, -0x8(%rdi)
leaq -0x2c8(%rbp), %r12
movq %r12, -0x10(%r12)
movq 0xf768(%rip), %rsi      # 0x14228
movq 0xf769(%rip), %rdx      # 0x14230
addq %rsi, %rdx
callq 0xaa1e
leaq -0x2b8(%rbp), %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
xorl %eax, %eax
movq %rax, 0x10(%rbx)
leaq -0x298(%rbp), %rcx
movl $0x0, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x110(%rbp), %rdi
leaq -0x2e0(%rbp), %rsi
callq 0xbba6
leaq -0x2a0(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
cmpq %r12, %rdi
je 0x4b41
movq -0x2c8(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf490(%rip), %rdi      # 0x13fd8
leaq 0xa984(%rip), %rsi      # 0xf4d3
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf457(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4ba4
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa53b(%rip), %rsi      # 0xf0e6
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x900(%rbp), %rdi
xorl %esi, %esi
callq 0x88d0
leaq -0x110(%rbp), %rdi
leaq -0x900(%rbp), %rsi
callq 0xbba6
leaq -0x8c0(%rbp), %rdi
callq 0xb90e
leaq -0x8d8(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x8e8(%rbp), %rax
cmpq %rax, %rdi
je 0x4c3a
movq -0x8e8(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf397(%rip), %rdi      # 0x13fd8
leaq 0xa89a(%rip), %rsi      # 0xf4e2
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf35e(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4c9d
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa465(%rip), %rsi      # 0xf109
movl $0xf, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x890(%rbp), %rdi
movl $0x7b, %esi
callq 0x88d0
leaq -0x110(%rbp), %rdi
leaq -0x890(%rbp), %rsi
callq 0xbba6
leaq -0x850(%rbp), %rdi
callq 0xb90e
leaq -0x868(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x878(%rbp), %rax
cmpq %rax, %rdi
je 0x4d36
movq -0x878(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf29b(%rip), %rdi      # 0x13fd8
leaq 0xa7ad(%rip), %rsi      # 0xf4f1
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf262(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4d99
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa389(%rip), %rsi      # 0xf129
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x820(%rbp), %rdi
movl $0xffffffd3, %esi       # imm = 0xFFFFFFD3
callq 0x88d0
leaq -0x110(%rbp), %rdi
leaq -0x820(%rbp), %rsi
callq 0xbba6
leaq -0x7e0(%rbp), %rdi
callq 0xb90e
leaq -0x7f8(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x808(%rbp), %rax
cmpq %rax, %rdi
je 0x4e32
movq -0x808(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf19f(%rip), %rdi      # 0x13fd8
leaq 0xa6c0(%rip), %rsi      # 0xf500
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf166(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4e95
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa2af(%rip), %rsi      # 0xf14b
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x7b0(%rbp), %rdi
movabsq $0x11f71fb04cb, %rsi    # imm = 0x11F71FB04CB
callq 0x89a8
leaq -0x110(%rbp), %rdi
leaq -0x7b0(%rbp), %rsi
callq 0xbba6
leaq -0x770(%rbp), %rdi
callq 0xb90e
leaq -0x788(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x798(%rbp), %rax
cmpq %rax, %rdi
je 0x4f33
movq -0x798(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xf09e(%rip), %rdi      # 0x13fd8
leaq 0xa5ce(%rip), %rsi      # 0xf50f
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xf065(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x4f96
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa1d0(%rip), %rsi      # 0xf16d
movl $0x1b, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x740(%rbp), %rdi
movss 0xa024(%rip), %xmm0     # 0xf004
callq 0x8a8a
leaq -0x110(%rbp), %rdi
leaq -0x740(%rbp), %rsi
callq 0xbba6
leaq -0x700(%rbp), %rdi
callq 0xb90e
leaq -0x718(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x728(%rbp), %rax
cmpq %rax, %rdi
je 0x5032
movq -0x728(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xef9f(%rip), %rdi      # 0x13fd8
leaq 0xa4de(%rip), %rsi      # 0xf51e
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xef66(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5095
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa0fd(%rip), %rsi      # 0xf199
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x6d0(%rbp), %rdi
movsd 0x9f29(%rip), %xmm0     # 0xf008
callq 0x8b44
leaq -0x110(%rbp), %rdi
leaq -0x6d0(%rbp), %rsi
callq 0xbba6
leaq -0x690(%rbp), %rdi
callq 0xb90e
leaq -0x6a8(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x6b8(%rbp), %rax
cmpq %rax, %rdi
je 0x5131
movq -0x6b8(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xeea0(%rip), %rdi      # 0x13fd8
leaq 0xa3ee(%rip), %rsi      # 0xf52d
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xee67(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5194
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0xa020(%rip), %rsi      # 0xf1bb
movl $0x15, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x268(%rbp), %rdi
movl $0x3, -0x8(%rdi)
leaq -0x258(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x9fe1(%rip), %rsi      # 0xf1d1
leaq 0x9fe8(%rip), %rdx      # 0xf1df
callq 0xe00e
leaq -0x248(%rbp), %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
xorl %eax, %eax
movq %rax, 0x10(%rbx)
leaq -0x228(%rbp), %rcx
movl $0x0, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x110(%rbp), %rdi
leaq -0x270(%rbp), %rsi
callq 0xbba6
leaq -0x230(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
cmpq %r12, %rdi
je 0x526e
movq -0x258(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xed63(%rip), %rdi      # 0x13fd8
leaq 0xa2c0(%rip), %rsi      # 0xf53c
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xed2a(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x52d1
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9f18(%rip), %rsi      # 0xf1f0
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0xa0(%rbp), %rdi
movq %r15, (%rdi)
leaq 0x9ef2(%rip), %rsi      # 0xf20f
leaq 0x9ef4(%rip), %rdx      # 0xf218
callq 0xe00e
leaq -0x1f8(%rbp), %rdi
movl $0x3, -0x8(%rdi)
leaq -0x1e8(%rbp), %r12
movq %r12, -0x10(%r12)
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
addq %rsi, %rdx
callq 0xaa1e
leaq -0x1d8(%rbp), %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
xorl %eax, %eax
movq %rax, 0x10(%rbx)
leaq -0x1b8(%rbp), %rcx
movl $0x0, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq -0x110(%rbp), %rdi
leaq -0x200(%rbp), %rsi
callq 0xbba6
leaq -0x1c0(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
cmpq %r12, %rdi
je 0x53cb
movq -0x1e8(%rbp), %rsi
incq %rsi
callq 0x2220
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x53e6
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xebeb(%rip), %rdi      # 0x13fd8
leaq 0xa157(%rip), %rsi      # 0xf54b
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xebb2(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5449
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9dda(%rip), %rsi      # 0xf22a
movl $0x19, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq 0x9e02(%rip), %rax      # 0xf28d
leaq -0x120(%rbp), %r14
movq %rax, (%r14)
leaq 0xa652(%rip), %rax      # 0xfaee
movq %rax, 0x8(%r14)
leaq -0xa0(%rbp), %rsi
movq %r14, (%rsi)
movq $0x2, 0x8(%rsi)
leaq -0x660(%rbp), %rdi
callq 0x8bfa
leaq -0x110(%rbp), %rdi
leaq -0x660(%rbp), %rsi
callq 0xbba6
leaq -0x620(%rbp), %rdi
callq 0xb90e
leaq -0x638(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x648(%rbp), %rax
cmpq %rax, %rdi
je 0x550b
movq -0x648(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xeac6(%rip), %rdi      # 0x13fd8
leaq 0xa041(%rip), %rsi      # 0xf55a
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xea8d(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x556e
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9d2b(%rip), %rsi      # 0xf2a0
movl $0x17, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movaps 0x9a70(%rip), %xmm0     # 0xf020
movups %xmm0, -0x120(%rbp)
leaq -0xa0(%rbp), %rsi
movq %r14, (%rsi)
movq $0x4, 0x8(%rsi)
leaq -0x5f0(%rbp), %rdi
callq 0x8c84
leaq -0x110(%rbp), %rdi
leaq -0x5f0(%rbp), %rsi
callq 0xbba6
leaq -0x5b0(%rbp), %rdi
callq 0xb90e
leaq -0x5c8(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x5d8(%rbp), %rax
cmpq %rax, %rdi
je 0x5622
movq -0x5d8(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe9af(%rip), %rdi      # 0x13fd8
leaq 0x9f39(%rip), %rsi      # 0xf569
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe976(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5685
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9c3d(%rip), %rsi      # 0xf2c9
movl $0x1d, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq 0x9a70(%rip), %rax      # 0xf137
movq %rax, -0x120(%rbp)
leaq 0x9c12(%rip), %rax      # 0xf2e7
movq %rax, -0x118(%rbp)
leaq -0xa0(%rbp), %rsi
movq %r14, (%rsi)
movq $0x2, 0x8(%rsi)
leaq -0x580(%rbp), %rdi
callq 0x8bfa
leaq -0x110(%rbp), %rdi
leaq -0x580(%rbp), %rsi
callq 0xbba6
leaq -0x540(%rbp), %rdi
callq 0xb90e
leaq -0x558(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x568(%rbp), %rax
cmpq %rax, %rdi
je 0x5747
movq -0x568(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe88a(%rip), %rdi      # 0x13fd8
leaq 0x9e23(%rip), %rsi      # 0xf578
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rbx
leaq -0x110(%rbp), %rsi
movq %rbx, %rdi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe84e(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %r14
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x57ad
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9b48(%rip), %rsi      # 0xf2fc
movl $0x1b, %edx
movq %r14, %rdi
callq 0x2270
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movups 0xa4c1(%rip), %xmm0     # 0xfcb0
movaps %xmm0, -0xa0(%rbp)
movabsq $0x3fe8f5c28f5c28f6, %rax # imm = 0x3FE8F5C28F5C28F6
movq %rax, -0x90(%rbp)
leaq -0x120(%rbp), %rsi
movq %rbx, (%rsi)
movq $0x3, 0x8(%rsi)
leaq -0x510(%rbp), %rdi
callq 0x8d0e
leaq -0x110(%rbp), %rdi
leaq -0x510(%rbp), %rsi
callq 0xbba6
leaq -0x4d0(%rbp), %rdi
callq 0xb90e
leaq -0x4e8(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x4f8(%rbp), %rax
cmpq %rax, %rdi
je 0x5872
movq -0x4f8(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe75f(%rip), %rdi      # 0x13fd8
leaq 0x9d07(%rip), %rsi      # 0xf587
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe726(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x58d5
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x9a4d(%rip), %rsi      # 0xf329
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x170(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x9a25(%rip), %rsi      # 0xf348
leaq 0x9a21(%rip), %rdx      # 0xf34b
leaq -0x180(%rbp), %rdi
callq 0xe00e
leaq -0x98(%rbp), %rdi
movl $0x3, -0x8(%rdi)
leaq -0x88(%rbp), %r13
movq %r13, -0x10(%r13)
leaq 0x99f6(%rip), %rsi      # 0xf34c
leaq 0x99f4(%rip), %rdx      # 0xf351
callq 0xe00e
xorps %xmm0, %xmm0
leaq -0x58(%rbp), %rax
movups %xmm0, -0x20(%rax)
xorl %ecx, %ecx
movq %rcx, -0x10(%rax)
movl $0x0, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq -0x4a0(%rbp), %rdi
leaq -0x180(%rbp), %rsi
leaq -0xa0(%rbp), %rdx
callq 0x8d98
leaq -0x78(%rbp), %rbx
leaq -0x110(%rbp), %rdi
leaq -0x4a0(%rbp), %rsi
callq 0xbba6
leaq -0x460(%rbp), %rdi
callq 0xb90e
leaq -0x478(%rbp), %r14
movq %r14, %rdi
callq 0xabf8
movq -0x20(%r14), %rdi
leaq -0x488(%rbp), %rax
cmpq %rax, %rdi
je 0x59f4
movq -0x488(%rbp), %rsi
incq %rsi
callq 0x2220
leaq -0x60(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
cmpq %r13, %rdi
je 0x5a20
movq -0x88(%rbp), %rsi
incq %rsi
callq 0x2220
movq -0x180(%rbp), %rdi
cmpq %r12, %rdi
je 0x5a3b
movq -0x170(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe596(%rip), %rdi      # 0x13fd8
leaq 0x9b4d(%rip), %rsi      # 0xf596
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe55d(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5a9e
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x98be(%rip), %rsi      # 0xf363
movl $0x1d, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x150(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x9896(%rip), %rsi      # 0xf381
leaq 0x9891(%rip), %rdx      # 0xf383
leaq -0x160(%rbp), %rdi
callq 0xe00e
leaq -0xa0(%rbp), %rdi
movsd 0x94fb(%rip), %xmm0     # 0xf008
callq 0x8b44
leaq -0x430(%rbp), %rdi
leaq -0x160(%rbp), %rsi
leaq -0xa0(%rbp), %rdx
callq 0x8d98
leaq -0x110(%rbp), %rdi
leaq -0x430(%rbp), %rsi
callq 0xbba6
leaq -0x3f0(%rbp), %rdi
callq 0xb90e
leaq -0x408(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x418(%rbp), %rax
cmpq %rax, %rdi
je 0x5b79
movq -0x418(%rbp), %rsi
incq %rsi
callq 0x2220
leaq -0x60(%rbp), %rdi
callq 0xb90e
leaq -0x78(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
cmpq %r13, %rdi
je 0x5ba6
movq -0x88(%rbp), %rsi
incq %rsi
callq 0x2220
movq -0x160(%rbp), %rdi
cmpq %r14, %rdi
je 0x5bc1
movq -0x150(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe410(%rip), %rdi      # 0x13fd8
leaq 0x99d6(%rip), %rsi      # 0xf5a5
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe3d7(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5c24
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x976a(%rip), %rsi      # 0xf395
movl $0x1c, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x130(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x9741(%rip), %rsi      # 0xf3b2
leaq 0x973f(%rip), %rdx      # 0xf3b7
leaq -0x140(%rbp), %rdi
callq 0xe00e
movabsq $0x200000001, %rax      # imm = 0x200000001
leaq -0x18c(%rbp), %rcx
movq %rax, (%rcx)
movl $0x3, 0x8(%rcx)
leaq -0x120(%rbp), %rsi
movq %rcx, (%rsi)
movq $0x3, 0x8(%rsi)
leaq -0xa0(%rbp), %rdi
callq 0x8c84
leaq -0x3c0(%rbp), %rdi
leaq -0x140(%rbp), %rsi
leaq -0xa0(%rbp), %rdx
callq 0x8d98
leaq -0x110(%rbp), %rdi
leaq -0x3c0(%rbp), %rsi
callq 0xbba6
leaq -0x380(%rbp), %rdi
callq 0xb90e
leaq -0x398(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
leaq -0x3a8(%rbp), %rax
cmpq %rax, %rdi
je 0x5d24
movq -0x3a8(%rbp), %rsi
incq %rsi
callq 0x2220
leaq -0x60(%rbp), %rdi
callq 0xb90e
leaq -0x78(%rbp), %rbx
movq %rbx, %rdi
callq 0xabf8
movq -0x20(%rbx), %rdi
cmpq %r13, %rdi
je 0x5d51
movq -0x88(%rbp), %rsi
incq %rsi
callq 0x2220
movq -0x140(%rbp), %rdi
cmpq %r14, %rdi
je 0x5d6c
movq -0x130(%rbp), %rsi
incq %rsi
callq 0x2220
movq 0xe265(%rip), %rdi      # 0x13fd8
leaq 0x983a(%rip), %rsi      # 0xf5b4
movl $0xe, %edx
callq 0x2270
leaq -0xa0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x9e1e
movq -0xa0(%rbp), %rsi
movq -0x98(%rbp), %rdx
movq 0xe22c(%rip), %rdi      # 0x13fd8
callq 0x2270
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5dcf
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
leaq 0x95f3(%rip), %rsi      # 0xf3c9
movl $0x1f, %edx
movq %rbx, %rdi
callq 0x2270
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2200
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0xe8(%rbp), %rbx
leaq -0xd0(%rbp), %r14
movq %r14, %rdi
callq 0xb90e
movq %rbx, %rdi
callq 0xabf8
movq -0x38(%r14), %rdi
leaq -0xf8(%rbp), %rax
cmpq %rax, %rdi
je 0x5e47
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x2220
addq $0x948, %rsp            # imm = 0x948
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x5f1d
movq %rax, %rbx
leaq -0xa0(%rbp), %rdi
callq 0x8fe2
jmp 0x5e72
movq %rax, %rbx
movq -0x140(%rbp), %rdi
cmpq %r14, %rdi
je 0x5f55
movq -0x130(%rbp), %rsi
jmp 0x5f33
jmp 0x5f52
jmp 0x5f1d
movq %rax, %rbx
leaq -0xa0(%rbp), %rdi
callq 0x8fe2
jmp 0x5eac
movq %rax, %rbx
movq -0x160(%rbp), %rdi
cmpq %r14, %rdi
je 0x5f55
movq -0x150(%rbp), %rsi
jmp 0x5f33
jmp 0x5f52
jmp 0x5f1d
movq %rax, %rbx
leaq -0xa0(%rbp), %rdi
callq 0x8fe2
jmp 0x5ee0
movq %rax, %rbx
movq -0x180(%rbp), %rdi
cmpq %r12, %rdi
je 0x5f55
movq -0x170(%rbp), %rsi
jmp 0x5f33
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f52
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
jmp 0x5f1d
movq %rax, %rbx
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x5f55
movq -0x90(%rbp), %rsi
incq %rsi
callq 0x2220
jmp 0x5f55
movq %rax, %rbx
leaq -0x90(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x5f2c
jmp 0x5f55
movq %rax, %rbx
leaq -0x110(%rbp), %rdi
callq 0x8fe2
movq %rbx, %rdi
callq 0x2370