// File: YSRKEN[P]Shioi/I401/main.cpp
// Function: Board::CountRenB2(std::array<std::array<PackedStone, 5ul>, 2ul> const&, unsigned long, Direction, unsigned long&)
RenCount CountRenB2(const Pattern &pattern, const size_t position, const Direction dir, size_t &block_position) {
		/* Count "Straight Shi-Shi"
		* 1. BO|BBB|OB   "Ryoutou-no-ShiShi"
		* 2. BBO|BB|OBB  "Chouda-no-ShiShi"
		* 3. BBBO|B|OBBB "Souryu-no-ShiShi"
		* 一直線上に出来る四々で、両頭の四々・長蛇の四々・双龍の四々
		*/
		namespace p = packed_stone;
		{
			//BO|BBB|OB
			if (MatchPatternB(pattern, position, dir, {{ p::nb, p::bbnb }})) return RenCount(0, 2, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bnb, p::bnb }})) return RenCount(0, 2, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bbnb, p::nb }})) return RenCount(0, 2, 0);
			//BBO|BB|OBB
			if (MatchPatternB(pattern, position, dir, {{ p::nbb, p::bnbb }})) return RenCount(0, 2, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bnbb, p::nbb }})) return RenCount(0, 2, 0);
			//BBBO|B|OBBB
			if (MatchPatternB(pattern, position, dir, {{ p::nbbb, p::nbbb }})) return RenCount(0, 2, 0);
		}
		// Count Shi-ren
		{
			if (MatchPatternB(pattern, position, dir, {{ p::n, p::bbbn }})) return RenCount(1, 0, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bn, p::bbn }})) return RenCount(1, 0, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bbbn, p::n }})) return RenCount(1, 0, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bbn, p::bn }})) return RenCount(1, 0, 0);
		}
		// Count Katsu-Shi
		auto GetPosition = [&position, &dir](int count) -> int {return position + kPositionoffset[dir] * count; };
		{
			//11110
			if (MatchPatternB(pattern, position, dir, {{ p::bbb, p::n }})) {
				block_position = GetPosition(1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::bb, p::bn }})) {
				block_position = GetPosition(2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::b, p::bbn }})) {
				block_position = GetPosition(3) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bbbn }})) {
				block_position = GetPosition(4) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			//11101
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::nbbb }})) {
				block_position = GetPosition(-1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::bb, p::nb }})) {
				block_position = GetPosition(1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::b, p::bnb }})) {
				block_position = GetPosition(2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bbnb }})) {
				block_position = GetPosition(3) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			//11011
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bnbb }})) {
				block_position = GetPosition(2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, { { Stone::Black, p::nbb } })) {
				block_position = GetPosition(1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::nbb, p::b }})) {
				block_position = GetPosition(-1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bnbb }})) {
				block_position = GetPosition(-2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			//10111
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::nbbb }})) {
				block_position = GetPosition(1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::nb, p::bb }})) {
				block_position = GetPosition(-1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::bnb, p::b }})) {
				block_position = GetPosition(-2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bbnb }})) {
				block_position = GetPosition(-3) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			//01111
			if (MatchPatternB(pattern, position, dir, {{ p::n, p::bbb }})) {
				block_position = GetPosition(-1) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::bn, p::bb }})) {
				block_position = GetPosition(-2) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, {{ p::bbn, p::b }})) {
				block_position = GetPosition(-3) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bbbn }})) {
				block_position = GetPosition(-4) | limit2(0_sz, kBoardSize * kBoardSize);
				return RenCount(0, 1, 0);
			}
		}
		// Count Katsu-San
		{
			int offset1 = 0, offset2 = 0;
			while (true) {
				//011100
				if (MatchPatternB(pattern, position, dir, {{ p::bbn, p::nn }})) {
					offset1 = 1; offset2 = -3; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::bn, p::bnn }})) {
					offset1 = 2; offset2 = -2; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::n, p::bbnn }})) {
					offset1 = 3; offset2 = -1; break;
				}
				//011010
				if (MatchPatternB(pattern, position, dir, {{ p::nbbn, p::n }})) {
					offset1 = -1; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::bn, p::nbn }})) {
					offset1 = 1; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::n, p::bnbn }})) {
					offset1 = 2; break;
				}
				//010110
				if (MatchPatternB(pattern, position, dir, {{ p::n, p::nbbn }})) {
					offset1 = 1; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::nbn, p::bn }})) {
					offset1 = -1; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::bnbn, p::n }})) {
					offset1 = -2; break;
				}
				//001110
				if (MatchPatternB(pattern, position, dir, {{ p::nn, p::bbn }})) {
					offset1 = -1; offset2 = 3; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::bnn, p::bn }})) {
					offset1 = -2; offset2 = 2; break;
				}
				if (MatchPatternB(pattern, position, dir, {{ p::bbnn, p::n }})) {
					offset1 = -3; offset2 = 1; break;
				}
				break;
			}
			if (offset2 != 0) {
				int next_pos = GetPosition(offset2);
				if (next_pos >= 0 && static_cast<std::size_t>(next_pos) < kBoardSize * kBoardSize) {
					board_[position] = Stone::Black;
					auto valid_flg = IsValidMove(next_pos);
					board_[position] = Stone::None;
					if (valid_flg) return RenCount(0, 0, 1);
				}
			}
			if (offset1 != 0) {
				int next_pos = GetPosition(offset1);
				if (next_pos >= 0 && static_cast<std::size_t>(next_pos) < kBoardSize * kBoardSize) {
					board_[position] = Stone::Black;
					auto valid_flg = IsValidMove(next_pos);
					board_[position] = Stone::None;
					if (valid_flg) return RenCount(0, 0, 1);
				}
			}
		}
		return RenCount(0, 0, 0);
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf50, %rsp            # imm = 0xF50
movq %rdi, -0xa70(%rbp)
movb %r8b, %al
movq %rdi, %r8
movq %r8, -0xa68(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movb %al, -0x21(%rbp)
movq %r9, -0x30(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0xa58(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xa50(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa48(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa3d(%rbp)
leaq -0x50(%rbp), %rdi
movq %rdi, -0xa60(%rbp)
leaq 0xb8b6(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0xa60(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb8af(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xa50(%rbp), %rsi
movq -0xa48(%rbp), %rdx
movb -0xa3d(%rbp), %al
leaq -0x50(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12b5b
jmp 0x12b8d
movq -0xa70(%rbp), %rdi
movl $0x0, -0x54(%rbp)
movl $0x2, -0x58(%rbp)
movl $0x0, -0x5c(%rbp)
leaq -0x54(%rbp), %rsi
leaq -0x58(%rbp), %rdx
leaq -0x5c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xa88(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa80(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa71(%rbp)
leaq -0x80(%rbp), %rdi
movq %rdi, -0xa90(%rbp)
leaq 0xb82a(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0xa90(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb813(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xa88(%rbp), %rsi
movq -0xa80(%rbp), %rdx
movb -0xa71(%rbp), %al
leaq -0x80(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12c07
jmp 0x12c4b
movq -0xa70(%rbp), %rdi
movl $0x0, -0x84(%rbp)
movl $0x2, -0x88(%rbp)
movl $0x0, -0x8c(%rbp)
leaq -0x84(%rbp), %rsi
leaq -0x88(%rbp), %rdx
leaq -0x8c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xaa8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xaa0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa91(%rbp)
leaq -0xb0(%rbp), %rdi
movq %rdi, -0xab0(%rbp)
leaq 0xb759(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0xab0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb732(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xaa8(%rbp), %rsi
movq -0xaa0(%rbp), %rdx
movb -0xa91(%rbp), %al
leaq -0xb0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12ccb
jmp 0x12d0f
movq -0xa70(%rbp), %rdi
movl $0x0, -0xb4(%rbp)
movl $0x2, -0xb8(%rbp)
movl $0x0, -0xbc(%rbp)
leaq -0xb4(%rbp), %rsi
leaq -0xb8(%rbp), %rdx
leaq -0xbc(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xac8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xac0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xab1(%rbp)
leaq -0xe0(%rbp), %rdi
movq %rdi, -0xad0(%rbp)
leaq 0xb6b5(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0xad0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb6ae(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xac8(%rbp), %rsi
movq -0xac0(%rbp), %rdx
movb -0xab1(%rbp), %al
leaq -0xe0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12d8f
jmp 0x12dd3
movq -0xa70(%rbp), %rdi
movl $0x0, -0xe4(%rbp)
movl $0x2, -0xe8(%rbp)
movl $0x0, -0xec(%rbp)
leaq -0xe4(%rbp), %rsi
leaq -0xe8(%rbp), %rdx
leaq -0xec(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xae8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xae0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xad1(%rbp)
leaq -0x110(%rbp), %rdi
movq %rdi, -0xaf0(%rbp)
leaq 0xb601(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0xaf0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb5da(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xae8(%rbp), %rsi
movq -0xae0(%rbp), %rdx
movb -0xad1(%rbp), %al
leaq -0x110(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12e53
jmp 0x12e97
movq -0xa70(%rbp), %rdi
movl $0x0, -0x114(%rbp)
movl $0x2, -0x118(%rbp)
movl $0x0, -0x11c(%rbp)
leaq -0x114(%rbp), %rsi
leaq -0x118(%rbp), %rdx
leaq -0x11c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xb08(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb00(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xaf1(%rbp)
leaq -0x140(%rbp), %rdi
movq %rdi, -0xb10(%rbp)
leaq 0xb54d(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0xb10(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb536(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xb08(%rbp), %rsi
movq -0xb00(%rbp), %rdx
movb -0xaf1(%rbp), %al
leaq -0x140(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12f17
jmp 0x12f5b
movq -0xa70(%rbp), %rdi
movl $0x0, -0x144(%rbp)
movl $0x2, -0x148(%rbp)
movl $0x0, -0x14c(%rbp)
leaq -0x144(%rbp), %rsi
leaq -0x148(%rbp), %rdx
leaq -0x14c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xb28(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb20(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb11(%rbp)
leaq -0x170(%rbp), %rdi
movq %rdi, -0xb30(%rbp)
leaq 0xb499(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xb30(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb492(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xb28(%rbp), %rsi
movq -0xb20(%rbp), %rdx
movb -0xb11(%rbp), %al
leaq -0x170(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x12fdb
jmp 0x1301f
movq -0xa70(%rbp), %rdi
movl $0x1, -0x174(%rbp)
movl $0x0, -0x178(%rbp)
movl $0x0, -0x17c(%rbp)
leaq -0x174(%rbp), %rsi
leaq -0x178(%rbp), %rdx
leaq -0x17c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xb48(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb40(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb31(%rbp)
leaq -0x1a0(%rbp), %rdi
movq %rdi, -0xb50(%rbp)
leaq 0xb3f5(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xb50(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb3ee(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xb48(%rbp), %rsi
movq -0xb40(%rbp), %rdx
movb -0xb31(%rbp), %al
leaq -0x1a0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1309f
jmp 0x130e3
movq -0xa70(%rbp), %rdi
movl $0x1, -0x1a4(%rbp)
movl $0x0, -0x1a8(%rbp)
movl $0x0, -0x1ac(%rbp)
leaq -0x1a4(%rbp), %rsi
leaq -0x1a8(%rbp), %rdx
leaq -0x1ac(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xb68(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb60(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb51(%rbp)
leaq -0x1d0(%rbp), %rdi
movq %rdi, -0xb70(%rbp)
leaq 0xb321(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0xb70(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb2fa(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xb68(%rbp), %rsi
movq -0xb60(%rbp), %rdx
movb -0xb51(%rbp), %al
leaq -0x1d0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13163
jmp 0x131a7
movq -0xa70(%rbp), %rdi
movl $0x1, -0x1d4(%rbp)
movl $0x0, -0x1d8(%rbp)
movl $0x0, -0x1dc(%rbp)
leaq -0x1d4(%rbp), %rsi
leaq -0x1d8(%rbp), %rdx
leaq -0x1dc(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xb88(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb80(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb71(%rbp)
leaq -0x200(%rbp), %rdi
movq %rdi, -0xb90(%rbp)
leaq 0xb27d(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xb90(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb256(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xb88(%rbp), %rsi
movq -0xb80(%rbp), %rdx
movb -0xb71(%rbp), %al
leaq -0x200(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13227
jmp 0x1326b
movq -0xa70(%rbp), %rdi
movl $0x1, -0x204(%rbp)
movl $0x0, -0x208(%rbp)
movl $0x0, -0x20c(%rbp)
leaq -0x204(%rbp), %rsi
leaq -0x208(%rbp), %rdx
leaq -0x20c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
leaq -0x20(%rbp), %rax
movq %rax, -0x220(%rbp)
leaq -0x21(%rbp), %rax
movq %rax, -0x218(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xba8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xba0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb91(%rbp)
leaq -0x240(%rbp), %rdi
movq %rdi, -0xbb0(%rbp)
leaq 0xb1b3(%rip), %rsi      # 0x1e468
callq 0x117e0
movq -0xbb0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb15c(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xba8(%rbp), %rsi
movq -0xba0(%rbp), %rdx
movb -0xb91(%rbp), %al
leaq -0x240(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13304
jmp 0x133b8
leaq -0x220(%rbp), %rdi
movl $0x1, %esi
callq 0x17b50
movl %eax, -0x244(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x260(%rbp)
movq $0xe1, -0x268(%rbp)
leaq -0x260(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0x17b90
movq %rax, -0x258(%rbp)
movq %rdx, -0x250(%rbp)
leaq -0x244(%rbp), %rdi
leaq -0x258(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x26c(%rbp)
movl $0x1, -0x270(%rbp)
movl $0x0, -0x274(%rbp)
leaq -0x26c(%rbp), %rsi
leaq -0x270(%rbp), %rdx
leaq -0x274(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xbc8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xbc0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xbb1(%rbp)
leaq -0x298(%rbp), %rdi
movq %rdi, -0xbd0(%rbp)
leaq 0xb08c(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0xbd0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xb045(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xbc8(%rbp), %rsi
movq -0xbc0(%rbp), %rdx
movb -0xbb1(%rbp), %al
leaq -0x298(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1343b
jmp 0x134ef
leaq -0x220(%rbp), %rdi
movl $0x2, %esi
callq 0x17b50
movl %eax, -0x29c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x2b8(%rbp)
movq $0xe1, -0x2c0(%rbp)
leaq -0x2b8(%rbp), %rdi
leaq -0x2c0(%rbp), %rsi
callq 0x17b90
movq %rax, -0x2b0(%rbp)
movq %rdx, -0x2a8(%rbp)
leaq -0x29c(%rbp), %rdi
leaq -0x2b0(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x2c4(%rbp)
movl $0x1, -0x2c8(%rbp)
movl $0x0, -0x2cc(%rbp)
leaq -0x2c4(%rbp), %rsi
leaq -0x2c8(%rbp), %rdx
leaq -0x2cc(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xbe8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xbe0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xbd1(%rbp)
leaq -0x2f0(%rbp), %rdi
movq %rdi, -0xbf0(%rbp)
leaq 0xaf65(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0xbf0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xaf1e(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xbe8(%rbp), %rsi
movq -0xbe0(%rbp), %rdx
movb -0xbd1(%rbp), %al
leaq -0x2f0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13572
jmp 0x13626
leaq -0x220(%rbp), %rdi
movl $0x3, %esi
callq 0x17b50
movl %eax, -0x2f4(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x310(%rbp)
movq $0xe1, -0x318(%rbp)
leaq -0x310(%rbp), %rdi
leaq -0x318(%rbp), %rsi
callq 0x17b90
movq %rax, -0x308(%rbp)
movq %rdx, -0x300(%rbp)
leaq -0x2f4(%rbp), %rdi
leaq -0x308(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x31c(%rbp)
movl $0x1, -0x320(%rbp)
movl $0x0, -0x324(%rbp)
leaq -0x31c(%rbp), %rsi
leaq -0x320(%rbp), %rdx
leaq -0x324(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc08(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc00(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xbf1(%rbp)
leaq -0x338(%rbp), %rdi
leaq 0xade5(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc08(%rbp), %rsi
movq -0xc00(%rbp), %rdx
movb -0xbf1(%rbp), %al
movl $0x1, %r8d
leaq -0x338(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x13691
jmp 0x13745
leaq -0x220(%rbp), %rdi
movl $0x4, %esi
callq 0x17b50
movl %eax, -0x33c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x358(%rbp)
movq $0xe1, -0x360(%rbp)
leaq -0x358(%rbp), %rdi
leaq -0x360(%rbp), %rsi
callq 0x17b90
movq %rax, -0x350(%rbp)
movq %rdx, -0x348(%rbp)
leaq -0x33c(%rbp), %rdi
leaq -0x350(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x364(%rbp)
movl $0x1, -0x368(%rbp)
movl $0x0, -0x36c(%rbp)
leaq -0x364(%rbp), %rsi
leaq -0x368(%rbp), %rdx
leaq -0x36c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc20(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc18(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc09(%rbp)
leaq -0x380(%rbp), %rdi
leaq 0xaca6(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc20(%rbp), %rsi
movq -0xc18(%rbp), %rdx
movb -0xc09(%rbp), %al
xorl %r8d, %r8d
leaq -0x380(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x137ad
jmp 0x13861
leaq -0x220(%rbp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x17b50
movl %eax, -0x384(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x3a0(%rbp)
movq $0xe1, -0x3a8(%rbp)
leaq -0x3a0(%rbp), %rdi
leaq -0x3a8(%rbp), %rsi
callq 0x17b90
movq %rax, -0x398(%rbp)
movq %rdx, -0x390(%rbp)
leaq -0x384(%rbp), %rdi
leaq -0x398(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x3ac(%rbp)
movl $0x1, -0x3b0(%rbp)
movl $0x0, -0x3b4(%rbp)
leaq -0x3ac(%rbp), %rsi
leaq -0x3b0(%rbp), %rdx
leaq -0x3b4(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc38(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc30(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc21(%rbp)
leaq -0x3d8(%rbp), %rdi
movq %rdi, -0xc40(%rbp)
leaq 0xabe3(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0xc40(%rbp), %rdi
addq $0x10, %rdi
leaq 0xab1c(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc38(%rbp), %rsi
movq -0xc30(%rbp), %rdx
movb -0xc21(%rbp), %al
leaq -0x3d8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x138e4
jmp 0x13998
leaq -0x220(%rbp), %rdi
movl $0x1, %esi
callq 0x17b50
movl %eax, -0x3dc(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x3f8(%rbp)
movq $0xe1, -0x400(%rbp)
leaq -0x3f8(%rbp), %rdi
leaq -0x400(%rbp), %rsi
callq 0x17b90
movq %rax, -0x3f0(%rbp)
movq %rdx, -0x3e8(%rbp)
leaq -0x3dc(%rbp), %rdi
leaq -0x3f0(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x404(%rbp)
movl $0x1, -0x408(%rbp)
movl $0x0, -0x40c(%rbp)
leaq -0x404(%rbp), %rsi
leaq -0x408(%rbp), %rdx
leaq -0x40c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc58(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc50(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc41(%rbp)
leaq -0x430(%rbp), %rdi
movq %rdi, -0xc60(%rbp)
leaq 0xaabc(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0xc60(%rbp), %rdi
addq $0x10, %rdi
leaq 0xaa05(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc58(%rbp), %rsi
movq -0xc50(%rbp), %rdx
movb -0xc41(%rbp), %al
leaq -0x430(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13a1b
jmp 0x13acf
leaq -0x220(%rbp), %rdi
movl $0x2, %esi
callq 0x17b50
movl %eax, -0x434(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x450(%rbp)
movq $0xe1, -0x458(%rbp)
leaq -0x450(%rbp), %rdi
leaq -0x458(%rbp), %rsi
callq 0x17b90
movq %rax, -0x448(%rbp)
movq %rdx, -0x440(%rbp)
leaq -0x434(%rbp), %rdi
leaq -0x448(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x45c(%rbp)
movl $0x1, -0x460(%rbp)
movl $0x0, -0x464(%rbp)
leaq -0x45c(%rbp), %rsi
leaq -0x460(%rbp), %rdx
leaq -0x464(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc78(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc70(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc61(%rbp)
leaq -0x478(%rbp), %rdi
leaq 0xa8dc(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc78(%rbp), %rsi
movq -0xc70(%rbp), %rdx
movb -0xc61(%rbp), %al
movl $0x1, %r8d
leaq -0x478(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x13b3a
jmp 0x13bee
leaq -0x220(%rbp), %rdi
movl $0x3, %esi
callq 0x17b50
movl %eax, -0x47c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x498(%rbp)
movq $0xe1, -0x4a0(%rbp)
leaq -0x498(%rbp), %rdi
leaq -0x4a0(%rbp), %rsi
callq 0x17b90
movq %rax, -0x490(%rbp)
movq %rdx, -0x488(%rbp)
leaq -0x47c(%rbp), %rdi
leaq -0x490(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x4a4(%rbp)
movl $0x1, -0x4a8(%rbp)
movl $0x0, -0x4ac(%rbp)
leaq -0x4a4(%rbp), %rsi
leaq -0x4a8(%rbp), %rdx
leaq -0x4ac(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xc90(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xc88(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc79(%rbp)
leaq -0x4c0(%rbp), %rdi
leaq 0xa7ed(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xc90(%rbp), %rsi
movq -0xc88(%rbp), %rdx
movb -0xc79(%rbp), %al
movl $0x1, %r8d
leaq -0x4c0(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x13c59
jmp 0x13d0d
leaq -0x220(%rbp), %rdi
movl $0x2, %esi
callq 0x17b50
movl %eax, -0x4c4(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x4e0(%rbp)
movq $0xe1, -0x4e8(%rbp)
leaq -0x4e0(%rbp), %rdi
leaq -0x4e8(%rbp), %rsi
callq 0x17b90
movq %rax, -0x4d8(%rbp)
movq %rdx, -0x4d0(%rbp)
leaq -0x4c4(%rbp), %rdi
leaq -0x4d8(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x4ec(%rbp)
movl $0x1, -0x4f0(%rbp)
movl $0x0, -0x4f4(%rbp)
leaq -0x4ec(%rbp), %rsi
leaq -0x4f0(%rbp), %rdx
leaq -0x4f4(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xca8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xca0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xc91(%rbp)
leaq -0x518(%rbp), %rdi
movq %rdi, -0xcb0(%rbp)
movl $0x1, %esi
callq 0x115e0
movq -0xcb0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xa6a2(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xca8(%rbp), %rsi
movq -0xca0(%rbp), %rdx
movb -0xc91(%rbp), %al
leaq -0x518(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13d8e
jmp 0x13e42
leaq -0x220(%rbp), %rdi
movl $0x1, %esi
callq 0x17b50
movl %eax, -0x51c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x538(%rbp)
movq $0xe1, -0x540(%rbp)
leaq -0x538(%rbp), %rdi
leaq -0x540(%rbp), %rsi
callq 0x17b90
movq %rax, -0x530(%rbp)
movq %rdx, -0x528(%rbp)
leaq -0x51c(%rbp), %rdi
leaq -0x530(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x544(%rbp)
movl $0x1, -0x548(%rbp)
movl $0x0, -0x54c(%rbp)
leaq -0x544(%rbp), %rsi
leaq -0x548(%rbp), %rdx
leaq -0x54c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xcc8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xcc0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xcb1(%rbp)
leaq -0x570(%rbp), %rdi
movq %rdi, -0xcd0(%rbp)
leaq 0xa582(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0xcd0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xa5fb(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xcc8(%rbp), %rsi
movq -0xcc0(%rbp), %rdx
movb -0xcb1(%rbp), %al
leaq -0x570(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x13ec5
jmp 0x13f79
leaq -0x220(%rbp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x17b50
movl %eax, -0x574(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x590(%rbp)
movq $0xe1, -0x598(%rbp)
leaq -0x590(%rbp), %rdi
leaq -0x598(%rbp), %rsi
callq 0x17b90
movq %rax, -0x588(%rbp)
movq %rdx, -0x580(%rbp)
leaq -0x574(%rbp), %rdi
leaq -0x588(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x59c(%rbp)
movl $0x1, -0x5a0(%rbp)
movl $0x0, -0x5a4(%rbp)
leaq -0x59c(%rbp), %rsi
leaq -0x5a0(%rbp), %rdx
leaq -0x5a4(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xce8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xce0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xcd1(%rbp)
leaq -0x5b8(%rbp), %rdi
leaq 0xa462(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xce8(%rbp), %rsi
movq -0xce0(%rbp), %rdx
movb -0xcd1(%rbp), %al
xorl %r8d, %r8d
leaq -0x5b8(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x13fe1
jmp 0x14095
leaq -0x220(%rbp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x17b50
movl %eax, -0x5bc(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x5d8(%rbp)
movq $0xe1, -0x5e0(%rbp)
leaq -0x5d8(%rbp), %rdi
leaq -0x5e0(%rbp), %rsi
callq 0x17b90
movq %rax, -0x5d0(%rbp)
movq %rdx, -0x5c8(%rbp)
leaq -0x5bc(%rbp), %rdi
leaq -0x5d0(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x5e4(%rbp)
movl $0x1, -0x5e8(%rbp)
movl $0x0, -0x5ec(%rbp)
leaq -0x5e4(%rbp), %rsi
leaq -0x5e8(%rbp), %rdx
leaq -0x5ec(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd00(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xcf8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xce9(%rbp)
leaq -0x600(%rbp), %rdi
leaq 0xa356(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd00(%rbp), %rsi
movq -0xcf8(%rbp), %rdx
movb -0xce9(%rbp), %al
movl $0x1, %r8d
leaq -0x600(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x14100
jmp 0x141b4
leaq -0x220(%rbp), %rdi
movl $0x1, %esi
callq 0x17b50
movl %eax, -0x604(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x620(%rbp)
movq $0xe1, -0x628(%rbp)
leaq -0x620(%rbp), %rdi
leaq -0x628(%rbp), %rsi
callq 0x17b90
movq %rax, -0x618(%rbp)
movq %rdx, -0x610(%rbp)
leaq -0x604(%rbp), %rdi
leaq -0x618(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x62c(%rbp)
movl $0x1, -0x630(%rbp)
movl $0x0, -0x634(%rbp)
leaq -0x62c(%rbp), %rsi
leaq -0x630(%rbp), %rdx
leaq -0x634(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd18(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xd10(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd01(%rbp)
leaq -0x658(%rbp), %rdi
movq %rdi, -0xd20(%rbp)
leaq 0xa1e0(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0xd20(%rbp), %rdi
addq $0x10, %rdi
leaq 0xa279(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd18(%rbp), %rsi
movq -0xd10(%rbp), %rdx
movb -0xd01(%rbp), %al
leaq -0x658(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14237
jmp 0x142eb
leaq -0x220(%rbp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x17b50
movl %eax, -0x65c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x678(%rbp)
movq $0xe1, -0x680(%rbp)
leaq -0x678(%rbp), %rdi
leaq -0x680(%rbp), %rsi
callq 0x17b90
movq %rax, -0x670(%rbp)
movq %rdx, -0x668(%rbp)
leaq -0x65c(%rbp), %rdi
leaq -0x670(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x684(%rbp)
movl $0x1, -0x688(%rbp)
movl $0x0, -0x68c(%rbp)
leaq -0x684(%rbp), %rsi
leaq -0x688(%rbp), %rdx
leaq -0x68c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd38(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xd30(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd21(%rbp)
leaq -0x6b0(%rbp), %rdi
movq %rdi, -0xd40(%rbp)
leaq 0xa0c9(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0xd40(%rbp), %rdi
addq $0x10, %rdi
leaq 0xa152(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd38(%rbp), %rsi
movq -0xd30(%rbp), %rdx
movb -0xd21(%rbp), %al
leaq -0x6b0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1436e
jmp 0x14422
leaq -0x220(%rbp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x17b50
movl %eax, -0x6b4(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x6d0(%rbp)
movq $0xe1, -0x6d8(%rbp)
leaq -0x6d0(%rbp), %rdi
leaq -0x6d8(%rbp), %rsi
callq 0x17b90
movq %rax, -0x6c8(%rbp)
movq %rdx, -0x6c0(%rbp)
leaq -0x6b4(%rbp), %rdi
leaq -0x6c8(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x6dc(%rbp)
movl $0x1, -0x6e0(%rbp)
movl $0x0, -0x6e4(%rbp)
leaq -0x6dc(%rbp), %rsi
leaq -0x6e0(%rbp), %rdx
leaq -0x6e4(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd58(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xd50(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd41(%rbp)
leaq -0x6f8(%rbp), %rdi
leaq 0x9f89(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd58(%rbp), %rsi
movq -0xd50(%rbp), %rdx
movb -0xd41(%rbp), %al
xorl %r8d, %r8d
leaq -0x6f8(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x1448a
jmp 0x1453e
leaq -0x220(%rbp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x17b50
movl %eax, -0x6fc(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x718(%rbp)
movq $0xe1, -0x720(%rbp)
leaq -0x718(%rbp), %rdi
leaq -0x720(%rbp), %rsi
callq 0x17b90
movq %rax, -0x710(%rbp)
movq %rdx, -0x708(%rbp)
leaq -0x6fc(%rbp), %rdi
leaq -0x710(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x724(%rbp)
movl $0x1, -0x728(%rbp)
movl $0x0, -0x72c(%rbp)
leaq -0x724(%rbp), %rsi
leaq -0x728(%rbp), %rdx
leaq -0x72c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd70(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xd68(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd59(%rbp)
leaq -0x750(%rbp), %rdi
movq %rdi, -0xd78(%rbp)
leaq 0x9eb6(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xd78(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9edf(%rip), %rsi      # 0x1e468
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd70(%rbp), %rsi
movq -0xd68(%rbp), %rdx
movb -0xd59(%rbp), %al
leaq -0x750(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x145c1
jmp 0x14675
leaq -0x220(%rbp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x17b50
movl %eax, -0x754(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x770(%rbp)
movq $0xe1, -0x778(%rbp)
leaq -0x770(%rbp), %rdi
leaq -0x778(%rbp), %rsi
callq 0x17b90
movq %rax, -0x768(%rbp)
movq %rdx, -0x760(%rbp)
leaq -0x754(%rbp), %rdi
leaq -0x768(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x77c(%rbp)
movl $0x1, -0x780(%rbp)
movl $0x0, -0x784(%rbp)
leaq -0x77c(%rbp), %rsi
leaq -0x780(%rbp), %rdx
leaq -0x784(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xd90(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xd88(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd79(%rbp)
leaq -0x7a8(%rbp), %rdi
movq %rdi, -0xd98(%rbp)
leaq 0x9d9f(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xd98(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9db8(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xd90(%rbp), %rsi
movq -0xd88(%rbp), %rdx
movb -0xd79(%rbp), %al
leaq -0x7a8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x146f8
jmp 0x147ac
leaq -0x220(%rbp), %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x17b50
movl %eax, -0x7ac(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x7c8(%rbp)
movq $0xe1, -0x7d0(%rbp)
leaq -0x7c8(%rbp), %rdi
leaq -0x7d0(%rbp), %rsi
callq 0x17b90
movq %rax, -0x7c0(%rbp)
movq %rdx, -0x7b8(%rbp)
leaq -0x7ac(%rbp), %rdi
leaq -0x7c0(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x7d4(%rbp)
movl $0x1, -0x7d8(%rbp)
movl $0x0, -0x7dc(%rbp)
leaq -0x7d4(%rbp), %rsi
leaq -0x7d8(%rbp), %rdx
leaq -0x7dc(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xdb0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xda8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xd99(%rbp)
leaq -0x800(%rbp), %rdi
movq %rdi, -0xdb8(%rbp)
leaq 0x9c78(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xdb8(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9c91(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xdb0(%rbp), %rsi
movq -0xda8(%rbp), %rdx
movb -0xd99(%rbp), %al
leaq -0x800(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1482f
jmp 0x148e3
leaq -0x220(%rbp), %rdi
movl $0xfffffffd, %esi       # imm = 0xFFFFFFFD
callq 0x17b50
movl %eax, -0x804(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x820(%rbp)
movq $0xe1, -0x828(%rbp)
leaq -0x820(%rbp), %rdi
leaq -0x828(%rbp), %rsi
callq 0x17b90
movq %rax, -0x818(%rbp)
movq %rdx, -0x810(%rbp)
leaq -0x804(%rbp), %rdi
leaq -0x818(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x82c(%rbp)
movl $0x1, -0x830(%rbp)
movl $0x0, -0x834(%rbp)
leaq -0x82c(%rbp), %rsi
leaq -0x830(%rbp), %rdx
leaq -0x834(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movq -0x18(%rbp), %rax
movq %rax, -0xdd0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xdc8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xdb9(%rbp)
leaq -0x848(%rbp), %rdi
leaq 0x9b28(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xdd0(%rbp), %rsi
movq -0xdc8(%rbp), %rdx
movb -0xdb9(%rbp), %al
xorl %r8d, %r8d
leaq -0x848(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x1494b
jmp 0x149ff
leaq -0x220(%rbp), %rdi
movl $0xfffffffc, %esi       # imm = 0xFFFFFFFC
callq 0x17b50
movl %eax, -0x84c(%rbp)
xorl %eax, %eax
movl %eax, %edi
callq 0xecb0
movq %rax, -0x868(%rbp)
movq $0xe1, -0x870(%rbp)
leaq -0x868(%rbp), %rdi
leaq -0x870(%rbp), %rsi
callq 0x17b90
movq %rax, -0x860(%rbp)
movq %rdx, -0x858(%rbp)
leaq -0x84c(%rbp), %rdi
leaq -0x860(%rbp), %rsi
callq 0x17ac0
movq -0xa70(%rbp), %rdi
movq %rax, %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl $0x0, -0x874(%rbp)
movl $0x1, -0x878(%rbp)
movl $0x0, -0x87c(%rbp)
leaq -0x874(%rbp), %rsi
leaq -0x878(%rbp), %rdx
leaq -0x87c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
movl $0x0, -0x880(%rbp)
movl $0x0, -0x884(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xde8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xde0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xdd1(%rbp)
leaq -0x8a8(%rbp), %rdi
movq %rdi, -0xdf0(%rbp)
leaq 0x9a11(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xdf0(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9a3a(%rip), %rsi      # 0x1e498
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xde8(%rbp), %rsi
movq -0xde0(%rbp), %rdx
movb -0xdd1(%rbp), %al
leaq -0x8a8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14a93
jmp 0x14aac
movl $0x1, -0x880(%rbp)
movl $0xfffffffd, -0x884(%rbp) # imm = 0xFFFFFFFD
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xe08(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xe00(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xdf1(%rbp)
leaq -0x8c8(%rbp), %rdi
movq %rdi, -0xe10(%rbp)
leaq 0x9968(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xe10(%rbp), %rdi
addq $0x10, %rdi
leaq 0x99b1(%rip), %rsi      # 0x1e4a8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xe08(%rbp), %rsi
movq -0xe00(%rbp), %rdx
movb -0xdf1(%rbp), %al
leaq -0x8c8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14b2c
jmp 0x14b45
movl $0x2, -0x880(%rbp)
movl $0xfffffffe, -0x884(%rbp) # imm = 0xFFFFFFFE
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xe28(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xe20(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xe11(%rbp)
leaq -0x8e8(%rbp), %rdi
movq %rdi, -0xe30(%rbp)
leaq 0x98af(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xe30(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9928(%rip), %rsi      # 0x1e4b8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xe28(%rbp), %rsi
movq -0xe20(%rbp), %rdx
movb -0xe11(%rbp), %al
leaq -0x8e8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14bc5
jmp 0x14bde
movl $0x3, -0x880(%rbp)
movl $0xffffffff, -0x884(%rbp) # imm = 0xFFFFFFFF
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xe48(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xe40(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xe31(%rbp)
leaq -0x908(%rbp), %rdi
movq %rdi, -0xe50(%rbp)
leaq 0x98b6(%rip), %rsi      # 0x1e4c8
callq 0x117e0
movq -0xe50(%rbp), %rdi
addq $0x10, %rdi
leaq 0x97ff(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xe48(%rbp), %rsi
movq -0xe40(%rbp), %rdx
movb -0xe31(%rbp), %al
leaq -0x908(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14c5e
jmp 0x14c6d
movl $0xffffffff, -0x880(%rbp) # imm = 0xFFFFFFFF
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xe68(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xe60(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xe51(%rbp)
leaq -0x928(%rbp), %rdi
movq %rdi, -0xe70(%rbp)
leaq 0x97a7(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xe70(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9820(%rip), %rsi      # 0x1e4d8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xe68(%rbp), %rsi
movq -0xe60(%rbp), %rdx
movb -0xe51(%rbp), %al
leaq -0x928(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14ced
jmp 0x14cfc
movl $0x1, -0x880(%rbp)
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xe88(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xe80(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xe71(%rbp)
leaq -0x948(%rbp), %rdi
movq %rdi, -0xe90(%rbp)
leaq 0x96f8(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xe90(%rbp), %rdi
addq $0x10, %rdi
leaq 0x97a1(%rip), %rsi      # 0x1e4e8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xe88(%rbp), %rsi
movq -0xe80(%rbp), %rdx
movb -0xe71(%rbp), %al
leaq -0x948(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14d7c
jmp 0x14d8b
movl $0x2, -0x880(%rbp)
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xea8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xea0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xe91(%rbp)
leaq -0x968(%rbp), %rdi
movq %rdi, -0xeb0(%rbp)
leaq 0x9669(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xeb0(%rbp), %rdi
addq $0x10, %rdi
leaq 0x96f2(%rip), %rsi      # 0x1e4c8
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xea8(%rbp), %rsi
movq -0xea0(%rbp), %rdx
movb -0xe91(%rbp), %al
leaq -0x968(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14e0b
jmp 0x14e1a
movl $0x1, -0x880(%rbp)
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xec8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xec0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xeb1(%rbp)
leaq -0x988(%rbp), %rdi
movq %rdi, -0xed0(%rbp)
leaq 0x968a(%rip), %rsi      # 0x1e4d8
callq 0x117e0
movq -0xed0(%rbp), %rdi
addq $0x10, %rdi
leaq 0x95e3(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xec8(%rbp), %rsi
movq -0xec0(%rbp), %rdx
movb -0xeb1(%rbp), %al
leaq -0x988(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14e9a
jmp 0x14ea9
movl $0xffffffff, -0x880(%rbp) # imm = 0xFFFFFFFF
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xee8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xee0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xed1(%rbp)
leaq -0x9a8(%rbp), %rdi
movq %rdi, -0xef0(%rbp)
leaq 0x960b(%rip), %rsi      # 0x1e4e8
callq 0x117e0
movq -0xef0(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9534(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xee8(%rbp), %rsi
movq -0xee0(%rbp), %rdx
movb -0xed1(%rbp), %al
leaq -0x9a8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14f29
jmp 0x14f38
movl $0xfffffffe, -0x880(%rbp) # imm = 0xFFFFFFFE
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xf08(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xf00(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xef1(%rbp)
leaq -0x9c8(%rbp), %rdi
movq %rdi, -0xf10(%rbp)
leaq 0x952c(%rip), %rsi      # 0x1e498
callq 0x117e0
movq -0xf10(%rbp), %rdi
addq $0x10, %rdi
leaq 0x94d5(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xf08(%rbp), %rsi
movq -0xf00(%rbp), %rdx
movb -0xef1(%rbp), %al
leaq -0x9c8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x14fb8
jmp 0x14fd1
movl $0xffffffff, -0x880(%rbp) # imm = 0xFFFFFFFF
movl $0x3, -0x884(%rbp)
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xf28(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xf20(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xf11(%rbp)
leaq -0x9e8(%rbp), %rdi
movq %rdi, -0xf30(%rbp)
leaq 0x94a3(%rip), %rsi      # 0x1e4a8
callq 0x117e0
movq -0xf30(%rbp), %rdi
addq $0x10, %rdi
leaq 0x942c(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xf28(%rbp), %rsi
movq -0xf20(%rbp), %rdx
movb -0xf11(%rbp), %al
leaq -0x9e8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x15051
jmp 0x1506a
movl $0xfffffffe, -0x880(%rbp) # imm = 0xFFFFFFFE
movl $0x2, -0x884(%rbp)
jmp 0x15102
movq -0x18(%rbp), %rax
movq %rax, -0xf48(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xf40(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xf31(%rbp)
leaq -0xa08(%rbp), %rdi
movq %rdi, -0xf50(%rbp)
leaq 0x941a(%rip), %rsi      # 0x1e4b8
callq 0x117e0
movq -0xf50(%rbp), %rdi
addq $0x10, %rdi
leaq 0x9373(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa58(%rbp), %rdi
movq -0xf48(%rbp), %rsi
movq -0xf40(%rbp), %rdx
movb -0xf31(%rbp), %al
leaq -0xa08(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x150ea
jmp 0x15100
movl $0xfffffffd, -0x880(%rbp) # imm = 0xFFFFFFFD
movl $0x1, -0x884(%rbp)
jmp 0x15102
jmp 0x15102
cmpl $0x0, -0x884(%rbp)
je 0x151d9
movl -0x884(%rbp), %esi
leaq -0x220(%rbp), %rdi
callq 0x17b50
movl %eax, -0xa0c(%rbp)
cmpl $0x0, -0xa0c(%rbp)
jl 0x151d7
movslq -0xa0c(%rbp), %rax
cmpq $0xe1, %rax
jae 0x151d7
movq -0xa58(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x5590
movq -0xa58(%rbp), %rdi
movb $0x1, (%rax)
movslq -0xa0c(%rbp), %rsi
callq 0xaf70
movq -0xa58(%rbp), %rdi
andb $0x1, %al
movb %al, -0xa0d(%rbp)
movq -0x20(%rbp), %rsi
callq 0x5590
movb $0x0, (%rax)
testb $0x1, -0xa0d(%rbp)
je 0x151d5
movq -0xa70(%rbp), %rdi
movl $0x0, -0xa14(%rbp)
movl $0x0, -0xa18(%rbp)
movl $0x1, -0xa1c(%rbp)
leaq -0xa14(%rbp), %rsi
leaq -0xa18(%rbp), %rdx
leaq -0xa1c(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
jmp 0x151d7
jmp 0x151d9
cmpl $0x0, -0x880(%rbp)
je 0x152ad
movl -0x880(%rbp), %esi
leaq -0x220(%rbp), %rdi
callq 0x17b50
movl %eax, -0xa20(%rbp)
cmpl $0x0, -0xa20(%rbp)
jl 0x152ab
movslq -0xa20(%rbp), %rax
cmpq $0xe1, %rax
jae 0x152ab
movq -0xa58(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x5590
movq -0xa58(%rbp), %rdi
movb $0x1, (%rax)
movslq -0xa20(%rbp), %rsi
callq 0xaf70
movq -0xa58(%rbp), %rdi
andb $0x1, %al
movb %al, -0xa21(%rbp)
movq -0x20(%rbp), %rsi
callq 0x5590
movb $0x0, (%rax)
testb $0x1, -0xa21(%rbp)
je 0x152a9
movq -0xa70(%rbp), %rdi
movl $0x0, -0xa28(%rbp)
movl $0x0, -0xa2c(%rbp)
movl $0x1, -0xa30(%rbp)
leaq -0xa28(%rbp), %rsi
leaq -0xa2c(%rbp), %rdx
leaq -0xa30(%rbp), %rcx
callq 0x11e80
jmp 0x152ec
jmp 0x152ab
jmp 0x152ad
movq -0xa70(%rbp), %rdi
movl $0x0, -0xa34(%rbp)
movl $0x0, -0xa38(%rbp)
movl $0x0, -0xa3c(%rbp)
leaq -0xa34(%rbp), %rsi
leaq -0xa38(%rbp), %rdx
leaq -0xa3c(%rbp), %rcx
callq 0x11e80
movq -0xa68(%rbp), %rax
addq $0xf50, %rsp            # imm = 0xF50
popq %rbp
retq
nopl (%rax)