// File: YSRKEN[P]Shioi/I401/main.cpp
// Function: Board::CountRenB(std::array<std::array<PackedStone, 5ul>, 2ul> const&, unsigned long, Direction)
RenCount CountRenB(const Pattern &pattern, const size_t position, const Direction dir) {
		/* 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
		{
			//11110
			if (MatchPatternB(pattern, position, dir, {{ p::bbb, p::n }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bb, p::bn }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::b, p::bbn }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bbbn }})) return RenCount(0, 1, 0);
			//11101
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::nbbb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bb, p::nb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::b, p::bnb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bbnb }})) return RenCount(0, 1, 0);
			//11011
			if (MatchPatternB(pattern, position, dir, Side::Right, {{ p::bnbb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::nbb, p::b }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bnbb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::b, p::nbb }})) return RenCount(0, 1, 0);
			//10111
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::nbbb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::nb, p::bb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bnb, p::b }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bbnb }})) return RenCount(0, 1, 0);
			//01111
			if (MatchPatternB(pattern, position, dir, {{ p::n, p::bbb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bn, p::bb }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, {{ p::bbn, p::b }})) return RenCount(0, 1, 0);
			if (MatchPatternB(pattern, position, dir, Side::Left, {{ p::bbbn }})) 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;
			}
			auto GetPosition = [&position, &dir](int count) -> int {return position + kPositionoffset[dir] * count; };
			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 $0xc30, %rsp            # imm = 0xC30
movq %rdi, -0x748(%rbp)
movb %r8b, %al
movq %rdi, %r8
movq %r8, -0x740(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movb %al, -0x21(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x730(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x728(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x720(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x715(%rbp)
leaq -0x48(%rbp), %rdi
movq %rdi, -0x738(%rbp)
leaq 0xef2a(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0x738(%rbp), %rdi
addq $0x10, %rdi
leaq 0xef23(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x728(%rbp), %rsi
movq -0x720(%rbp), %rdx
movb -0x715(%rbp), %al
leaq -0x48(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf4e7
jmp 0xf519
movq -0x748(%rbp), %rdi
movl $0x0, -0x4c(%rbp)
movl $0x2, -0x50(%rbp)
movl $0x0, -0x54(%rbp)
leaq -0x4c(%rbp), %rsi
leaq -0x50(%rbp), %rdx
leaq -0x54(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x760(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x758(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x749(%rbp)
leaq -0x78(%rbp), %rdi
movq %rdi, -0x768(%rbp)
leaq 0xee9e(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0x768(%rbp), %rdi
addq $0x10, %rdi
leaq 0xee87(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x760(%rbp), %rsi
movq -0x758(%rbp), %rdx
movb -0x749(%rbp), %al
leaq -0x78(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf593
jmp 0xf5cb
movq -0x748(%rbp), %rdi
movl $0x0, -0x7c(%rbp)
movl $0x2, -0x80(%rbp)
movl $0x0, -0x84(%rbp)
leaq -0x7c(%rbp), %rsi
leaq -0x80(%rbp), %rdx
leaq -0x84(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x780(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x778(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x769(%rbp)
leaq -0xa8(%rbp), %rdi
movq %rdi, -0x788(%rbp)
leaq 0xedd9(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0x788(%rbp), %rdi
addq $0x10, %rdi
leaq 0xedb2(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x780(%rbp), %rsi
movq -0x778(%rbp), %rdx
movb -0x769(%rbp), %al
leaq -0xa8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf64b
jmp 0xf68f
movq -0x748(%rbp), %rdi
movl $0x0, -0xac(%rbp)
movl $0x2, -0xb0(%rbp)
movl $0x0, -0xb4(%rbp)
leaq -0xac(%rbp), %rsi
leaq -0xb0(%rbp), %rdx
leaq -0xb4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x7a0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x798(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x789(%rbp)
leaq -0xd8(%rbp), %rdi
movq %rdi, -0x7a8(%rbp)
leaq 0xed35(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0x7a8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xed2e(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x7a0(%rbp), %rsi
movq -0x798(%rbp), %rdx
movb -0x789(%rbp), %al
leaq -0xd8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf70f
jmp 0xf753
movq -0x748(%rbp), %rdi
movl $0x0, -0xdc(%rbp)
movl $0x2, -0xe0(%rbp)
movl $0x0, -0xe4(%rbp)
leaq -0xdc(%rbp), %rsi
leaq -0xe0(%rbp), %rdx
leaq -0xe4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x7c0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x7b8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x7a9(%rbp)
leaq -0x108(%rbp), %rdi
movq %rdi, -0x7c8(%rbp)
leaq 0xec81(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0x7c8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xec5a(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x7c0(%rbp), %rsi
movq -0x7b8(%rbp), %rdx
movb -0x7a9(%rbp), %al
leaq -0x108(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf7d3
jmp 0xf817
movq -0x748(%rbp), %rdi
movl $0x0, -0x10c(%rbp)
movl $0x2, -0x110(%rbp)
movl $0x0, -0x114(%rbp)
leaq -0x10c(%rbp), %rsi
leaq -0x110(%rbp), %rdx
leaq -0x114(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x7e0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x7d8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x7c9(%rbp)
leaq -0x138(%rbp), %rdi
movq %rdi, -0x7e8(%rbp)
leaq 0xebcd(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0x7e8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xebb6(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x7e0(%rbp), %rsi
movq -0x7d8(%rbp), %rdx
movb -0x7c9(%rbp), %al
leaq -0x138(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf897
jmp 0xf8db
movq -0x748(%rbp), %rdi
movl $0x0, -0x13c(%rbp)
movl $0x2, -0x140(%rbp)
movl $0x0, -0x144(%rbp)
leaq -0x13c(%rbp), %rsi
leaq -0x140(%rbp), %rdx
leaq -0x144(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x800(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x7f8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x7e9(%rbp)
leaq -0x168(%rbp), %rdi
movq %rdi, -0x808(%rbp)
leaq 0xeb19(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x808(%rbp), %rdi
addq $0x10, %rdi
leaq 0xeb12(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x800(%rbp), %rsi
movq -0x7f8(%rbp), %rdx
movb -0x7e9(%rbp), %al
leaq -0x168(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xf95b
jmp 0xf99f
movq -0x748(%rbp), %rdi
movl $0x1, -0x16c(%rbp)
movl $0x0, -0x170(%rbp)
movl $0x0, -0x174(%rbp)
leaq -0x16c(%rbp), %rsi
leaq -0x170(%rbp), %rdx
leaq -0x174(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x820(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x818(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x809(%rbp)
leaq -0x198(%rbp), %rdi
movq %rdi, -0x828(%rbp)
leaq 0xea75(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0x828(%rbp), %rdi
addq $0x10, %rdi
leaq 0xea6e(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x820(%rbp), %rsi
movq -0x818(%rbp), %rdx
movb -0x809(%rbp), %al
leaq -0x198(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfa1f
jmp 0xfa63
movq -0x748(%rbp), %rdi
movl $0x1, -0x19c(%rbp)
movl $0x0, -0x1a0(%rbp)
movl $0x0, -0x1a4(%rbp)
leaq -0x19c(%rbp), %rsi
leaq -0x1a0(%rbp), %rdx
leaq -0x1a4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x840(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x838(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x829(%rbp)
leaq -0x1c8(%rbp), %rdi
movq %rdi, -0x848(%rbp)
leaq 0xe9a1(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0x848(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe97a(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x840(%rbp), %rsi
movq -0x838(%rbp), %rdx
movb -0x829(%rbp), %al
leaq -0x1c8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfae3
jmp 0xfb27
movq -0x748(%rbp), %rdi
movl $0x1, -0x1cc(%rbp)
movl $0x0, -0x1d0(%rbp)
movl $0x0, -0x1d4(%rbp)
leaq -0x1cc(%rbp), %rsi
leaq -0x1d0(%rbp), %rdx
leaq -0x1d4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x860(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x858(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x849(%rbp)
leaq -0x1f8(%rbp), %rdi
movq %rdi, -0x868(%rbp)
leaq 0xe8fd(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0x868(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe8d6(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x860(%rbp), %rsi
movq -0x858(%rbp), %rdx
movb -0x849(%rbp), %al
leaq -0x1f8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfba7
jmp 0xfbeb
movq -0x748(%rbp), %rdi
movl $0x1, -0x1fc(%rbp)
movl $0x0, -0x200(%rbp)
movl $0x0, -0x204(%rbp)
leaq -0x1fc(%rbp), %rsi
leaq -0x200(%rbp), %rdx
leaq -0x204(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x880(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x878(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x869(%rbp)
leaq -0x228(%rbp), %rdi
movq %rdi, -0x888(%rbp)
leaq 0xe849(%rip), %rsi      # 0x1e468
callq 0x117e0
movq -0x888(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe7f2(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x880(%rbp), %rsi
movq -0x878(%rbp), %rdx
movb -0x869(%rbp), %al
leaq -0x228(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfc6b
jmp 0xfcaf
movq -0x748(%rbp), %rdi
movl $0x0, -0x22c(%rbp)
movl $0x1, -0x230(%rbp)
movl $0x0, -0x234(%rbp)
leaq -0x22c(%rbp), %rsi
leaq -0x230(%rbp), %rdx
leaq -0x234(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x8a0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x898(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x889(%rbp)
leaq -0x258(%rbp), %rdi
movq %rdi, -0x8a8(%rbp)
leaq 0xe795(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0x8a8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe74e(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x8a0(%rbp), %rsi
movq -0x898(%rbp), %rdx
movb -0x889(%rbp), %al
leaq -0x258(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfd2f
jmp 0xfd73
movq -0x748(%rbp), %rdi
movl $0x0, -0x25c(%rbp)
movl $0x1, -0x260(%rbp)
movl $0x0, -0x264(%rbp)
leaq -0x25c(%rbp), %rsi
leaq -0x260(%rbp), %rdx
leaq -0x264(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x8c0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8b8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x8a9(%rbp)
leaq -0x288(%rbp), %rdi
movq %rdi, -0x8c8(%rbp)
leaq 0xe6e1(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x8c8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe69a(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x8c0(%rbp), %rsi
movq -0x8b8(%rbp), %rdx
movb -0x8a9(%rbp), %al
leaq -0x288(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0xfdf3
jmp 0xfe37
movq -0x748(%rbp), %rdi
movl $0x0, -0x28c(%rbp)
movl $0x1, -0x290(%rbp)
movl $0x0, -0x294(%rbp)
leaq -0x28c(%rbp), %rsi
leaq -0x290(%rbp), %rdx
leaq -0x294(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x8e0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8d8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x8c9(%rbp)
leaq -0x2a8(%rbp), %rdi
leaq 0xe5d4(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x8e0(%rbp), %rsi
movq -0x8d8(%rbp), %rdx
movb -0x8c9(%rbp), %al
movl $0x1, %r8d
leaq -0x2a8(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0xfe9f
jmp 0xfee3
movq -0x748(%rbp), %rdi
movl $0x0, -0x2ac(%rbp)
movl $0x1, -0x2b0(%rbp)
movl $0x0, -0x2b4(%rbp)
leaq -0x2ac(%rbp), %rsi
leaq -0x2b0(%rbp), %rdx
leaq -0x2b4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x8f8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8f0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x8e1(%rbp)
leaq -0x2c8(%rbp), %rdi
leaq 0xe508(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x8f8(%rbp), %rsi
movq -0x8f0(%rbp), %rdx
movb -0x8e1(%rbp), %al
movl $0x1, %r8d
leaq -0x2c8(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0xff4b
jmp 0xff8f
movq -0x748(%rbp), %rdi
movl $0x0, -0x2cc(%rbp)
movl $0x1, -0x2d0(%rbp)
movl $0x0, -0x2d4(%rbp)
leaq -0x2cc(%rbp), %rsi
leaq -0x2d0(%rbp), %rdx
leaq -0x2d4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x910(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x908(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x8f9(%rbp)
leaq -0x2f8(%rbp), %rdi
movq %rdi, -0x918(%rbp)
leaq 0xe4b5(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0x918(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe3ee(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x910(%rbp), %rsi
movq -0x908(%rbp), %rdx
movb -0x8f9(%rbp), %al
leaq -0x2f8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1000f
jmp 0x10053
movq -0x748(%rbp), %rdi
movl $0x0, -0x2fc(%rbp)
movl $0x1, -0x300(%rbp)
movl $0x0, -0x304(%rbp)
leaq -0x2fc(%rbp), %rsi
leaq -0x300(%rbp), %rdx
leaq -0x304(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x930(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x928(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x919(%rbp)
leaq -0x328(%rbp), %rdi
movq %rdi, -0x938(%rbp)
leaq 0xe401(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x938(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe34a(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x930(%rbp), %rsi
movq -0x928(%rbp), %rdx
movb -0x919(%rbp), %al
leaq -0x328(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x100d3
jmp 0x10117
movq -0x748(%rbp), %rdi
movl $0x0, -0x32c(%rbp)
movl $0x1, -0x330(%rbp)
movl $0x0, -0x334(%rbp)
leaq -0x32c(%rbp), %rsi
leaq -0x330(%rbp), %rdx
leaq -0x334(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x950(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x948(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x939(%rbp)
leaq -0x348(%rbp), %rdi
leaq 0xe294(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x950(%rbp), %rsi
movq -0x948(%rbp), %rdx
movb -0x939(%rbp), %al
movl $0x1, %r8d
leaq -0x348(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x1017f
jmp 0x101c3
movq -0x748(%rbp), %rdi
movl $0x0, -0x34c(%rbp)
movl $0x1, -0x350(%rbp)
movl $0x0, -0x354(%rbp)
leaq -0x34c(%rbp), %rsi
leaq -0x350(%rbp), %rdx
leaq -0x354(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x968(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x960(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x951(%rbp)
leaq -0x368(%rbp), %rdi
leaq 0xe218(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x968(%rbp), %rsi
movq -0x960(%rbp), %rdx
movb -0x951(%rbp), %al
movl $0x1, %r8d
leaq -0x368(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x1022b
jmp 0x1026f
movq -0x748(%rbp), %rdi
movl $0x0, -0x36c(%rbp)
movl $0x1, -0x370(%rbp)
movl $0x0, -0x374(%rbp)
leaq -0x36c(%rbp), %rsi
leaq -0x370(%rbp), %rdx
leaq -0x374(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x980(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x978(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x969(%rbp)
leaq -0x398(%rbp), %rdi
movq %rdi, -0x988(%rbp)
leaq 0xe155(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0x988(%rbp), %rdi
addq $0x10, %rdi
leaq 0xe1ce(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x980(%rbp), %rsi
movq -0x978(%rbp), %rdx
movb -0x969(%rbp), %al
leaq -0x398(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x102ef
jmp 0x10333
movq -0x748(%rbp), %rdi
movl $0x0, -0x39c(%rbp)
movl $0x1, -0x3a0(%rbp)
movl $0x0, -0x3a4(%rbp)
leaq -0x39c(%rbp), %rsi
leaq -0x3a0(%rbp), %rdx
leaq -0x3a4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x9a0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x998(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x989(%rbp)
leaq -0x3b8(%rbp), %rdi
leaq 0xe0a8(%rip), %rsi      # 0x1e408
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x9a0(%rbp), %rsi
movq -0x998(%rbp), %rdx
movb -0x989(%rbp), %al
xorl %r8d, %r8d
leaq -0x3b8(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x10398
jmp 0x103dc
movq -0x748(%rbp), %rdi
movl $0x0, -0x3bc(%rbp)
movl $0x1, -0x3c0(%rbp)
movl $0x0, -0x3c4(%rbp)
leaq -0x3bc(%rbp), %rsi
leaq -0x3c0(%rbp), %rdx
leaq -0x3c4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x9b8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x9b0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x9a1(%rbp)
leaq -0x3e8(%rbp), %rdi
movq %rdi, -0x9c0(%rbp)
leaq 0xe078(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x9c0(%rbp), %rdi
addq $0x10, %rdi
leaq 0xdfd1(%rip), %rsi      # 0x1e3f8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x9b8(%rbp), %rsi
movq -0x9b0(%rbp), %rdx
movb -0x9a1(%rbp), %al
leaq -0x3e8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1045c
jmp 0x104a0
movq -0x748(%rbp), %rdi
movl $0x0, -0x3ec(%rbp)
movl $0x1, -0x3f0(%rbp)
movl $0x0, -0x3f4(%rbp)
leaq -0x3ec(%rbp), %rsi
leaq -0x3f0(%rbp), %rdx
leaq -0x3f4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x9d8(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x9d0(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x9c1(%rbp)
leaq -0x408(%rbp), %rdi
leaq 0xdf4b(%rip), %rsi      # 0x1e418
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x9d8(%rbp), %rsi
movq -0x9d0(%rbp), %rdx
movb -0x9c1(%rbp), %al
xorl %r8d, %r8d
leaq -0x408(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x10505
jmp 0x10549
movq -0x748(%rbp), %rdi
movl $0x0, -0x40c(%rbp)
movl $0x1, -0x410(%rbp)
movl $0x0, -0x414(%rbp)
leaq -0x40c(%rbp), %rsi
leaq -0x410(%rbp), %rdx
leaq -0x414(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0x9f0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x9e8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x9d9(%rbp)
leaq -0x438(%rbp), %rdi
movq %rdi, -0x9f8(%rbp)
leaq 0xde4b(%rip), %rsi      # 0x1e3c8
callq 0x117e0
movq -0x9f8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xdee4(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0x9f0(%rbp), %rsi
movq -0x9e8(%rbp), %rdx
movb -0x9d9(%rbp), %al
leaq -0x438(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x105c9
jmp 0x1060d
movq -0x748(%rbp), %rdi
movl $0x0, -0x43c(%rbp)
movl $0x1, -0x440(%rbp)
movl $0x0, -0x444(%rbp)
leaq -0x43c(%rbp), %rsi
leaq -0x440(%rbp), %rdx
leaq -0x444(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0xa10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa08(%rbp)
movb -0x21(%rbp), %al
movb %al, -0x9f9(%rbp)
leaq -0x468(%rbp), %rdi
movq %rdi, -0xa18(%rbp)
leaq 0xdda7(%rip), %rsi      # 0x1e3e8
callq 0x117e0
movq -0xa18(%rbp), %rdi
addq $0x10, %rdi
leaq 0xde30(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xa10(%rbp), %rsi
movq -0xa08(%rbp), %rdx
movb -0x9f9(%rbp), %al
leaq -0x468(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1068d
jmp 0x106d1
movq -0x748(%rbp), %rdi
movl $0x0, -0x46c(%rbp)
movl $0x1, -0x470(%rbp)
movl $0x0, -0x474(%rbp)
leaq -0x46c(%rbp), %rsi
leaq -0x470(%rbp), %rdx
leaq -0x474(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0xa30(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa28(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa19(%rbp)
leaq -0x488(%rbp), %rdi
leaq 0xdcda(%rip), %rsi      # 0x1e3d8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xa30(%rbp), %rsi
movq -0xa28(%rbp), %rdx
movb -0xa19(%rbp), %al
xorl %r8d, %r8d
leaq -0x488(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x10736
jmp 0x1077a
movq -0x748(%rbp), %rdi
movl $0x0, -0x48c(%rbp)
movl $0x1, -0x490(%rbp)
movl $0x0, -0x494(%rbp)
leaq -0x48c(%rbp), %rsi
leaq -0x490(%rbp), %rdx
leaq -0x494(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0xa48(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa40(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa31(%rbp)
leaq -0x4b8(%rbp), %rdi
movq %rdi, -0xa50(%rbp)
leaq 0xdc7a(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xa50(%rbp), %rdi
addq $0x10, %rdi
leaq 0xdca3(%rip), %rsi      # 0x1e468
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xa48(%rbp), %rsi
movq -0xa40(%rbp), %rdx
movb -0xa31(%rbp), %al
leaq -0x4b8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x107fa
jmp 0x1083e
movq -0x748(%rbp), %rdi
movl $0x0, -0x4bc(%rbp)
movl $0x1, -0x4c0(%rbp)
movl $0x0, -0x4c4(%rbp)
leaq -0x4bc(%rbp), %rsi
leaq -0x4c0(%rbp), %rdx
leaq -0x4c4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movq -0x18(%rbp), %rax
movq %rax, -0xa68(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xa60(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xa51(%rbp)
leaq -0x4e8(%rbp), %rdi
movq %rdi, -0xa70(%rbp)
leaq 0xdbd6(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xa70(%rbp), %rdi
addq $0x10, %rdi
leaq 0xdbef(%rip), %rsi      # 0x1e478
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xa68(%rbp), %rsi
movq -0xa60(%rbp), %rdx
movb -0xa51(%rbp), %al
leaq -0x4e8(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x108be
jmp 0x10902
movq -0x748(%rbp), %rdi
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 0x11372
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 -0x518(%rbp), %rdi
movq %rdi, -0xa90(%rbp)
leaq 0xdb22(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xa90(%rbp), %rdi
addq $0x10, %rdi
leaq 0xdb3b(%rip), %rsi      # 0x1e488
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xa88(%rbp), %rsi
movq -0xa80(%rbp), %rdx
movb -0xa71(%rbp), %al
leaq -0x518(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10982
jmp 0x109c6
movq -0x748(%rbp), %rdi
movl $0x0, -0x51c(%rbp)
movl $0x1, -0x520(%rbp)
movl $0x0, -0x524(%rbp)
leaq -0x51c(%rbp), %rsi
leaq -0x520(%rbp), %rdx
leaq -0x524(%rbp), %rcx
callq 0x11e80
jmp 0x11372
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 -0x538(%rbp), %rdi
leaq 0xda45(%rip), %rsi      # 0x1e438
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xaa8(%rbp), %rsi
movq -0xaa0(%rbp), %rdx
movb -0xa91(%rbp), %al
xorl %r8d, %r8d
leaq -0x538(%rbp), %r9
movzbl %al, %ecx
callq 0x11ec0
testb $0x1, %al
jne 0x10a2b
jmp 0x10a6f
movq -0x748(%rbp), %rdi
movl $0x0, -0x53c(%rbp)
movl $0x1, -0x540(%rbp)
movl $0x0, -0x544(%rbp)
leaq -0x53c(%rbp), %rsi
leaq -0x540(%rbp), %rdx
leaq -0x544(%rbp), %rcx
callq 0x11e80
jmp 0x11372
movl $0x0, -0x548(%rbp)
movl $0x0, -0x54c(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xac0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xab8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xaa9(%rbp)
leaq -0x570(%rbp), %rdi
movq %rdi, -0xac8(%rbp)
leaq 0xd9a1(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0xac8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd9ca(%rip), %rsi      # 0x1e498
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xac0(%rbp), %rsi
movq -0xab8(%rbp), %rdx
movb -0xaa9(%rbp), %al
leaq -0x570(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10b03
jmp 0x10b1c
movl $0x1, -0x548(%rbp)
movl $0xfffffffd, -0x54c(%rbp) # imm = 0xFFFFFFFD
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xae0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xad8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xac9(%rbp)
leaq -0x590(%rbp), %rdi
movq %rdi, -0xae8(%rbp)
leaq 0xd8f8(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xae8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd941(%rip), %rsi      # 0x1e4a8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xae0(%rbp), %rsi
movq -0xad8(%rbp), %rdx
movb -0xac9(%rbp), %al
leaq -0x590(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10b9c
jmp 0x10bb5
movl $0x2, -0x548(%rbp)
movl $0xfffffffe, -0x54c(%rbp) # imm = 0xFFFFFFFE
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xb00(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xaf8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xae9(%rbp)
leaq -0x5b0(%rbp), %rdi
movq %rdi, -0xb08(%rbp)
leaq 0xd83f(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xb08(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd8b8(%rip), %rsi      # 0x1e4b8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xb00(%rbp), %rsi
movq -0xaf8(%rbp), %rdx
movb -0xae9(%rbp), %al
leaq -0x5b0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10c35
jmp 0x10c4e
movl $0x3, -0x548(%rbp)
movl $0xffffffff, -0x54c(%rbp) # imm = 0xFFFFFFFF
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xb20(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb18(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb09(%rbp)
leaq -0x5d0(%rbp), %rdi
movq %rdi, -0xb28(%rbp)
leaq 0xd846(%rip), %rsi      # 0x1e4c8
callq 0x117e0
movq -0xb28(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd78f(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xb20(%rbp), %rsi
movq -0xb18(%rbp), %rdx
movb -0xb09(%rbp), %al
leaq -0x5d0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10cce
jmp 0x10cdd
movl $0xffffffff, -0x548(%rbp) # imm = 0xFFFFFFFF
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xb40(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb38(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb29(%rbp)
leaq -0x5f0(%rbp), %rdi
movq %rdi, -0xb48(%rbp)
leaq 0xd737(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0xb48(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd7b0(%rip), %rsi      # 0x1e4d8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xb40(%rbp), %rsi
movq -0xb38(%rbp), %rdx
movb -0xb29(%rbp), %al
leaq -0x5f0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10d5d
jmp 0x10d6c
movl $0x1, -0x548(%rbp)
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xb60(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb58(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb49(%rbp)
leaq -0x610(%rbp), %rdi
movq %rdi, -0xb68(%rbp)
leaq 0xd688(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xb68(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd731(%rip), %rsi      # 0x1e4e8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xb60(%rbp), %rsi
movq -0xb58(%rbp), %rdx
movb -0xb49(%rbp), %al
leaq -0x610(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10dec
jmp 0x10dfb
movl $0x2, -0x548(%rbp)
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xb80(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb78(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb69(%rbp)
leaq -0x630(%rbp), %rdi
movq %rdi, -0xb88(%rbp)
leaq 0xd5f9(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0xb88(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd682(%rip), %rsi      # 0x1e4c8
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xb80(%rbp), %rsi
movq -0xb78(%rbp), %rdx
movb -0xb69(%rbp), %al
leaq -0x630(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10e7b
jmp 0x10e8a
movl $0x1, -0x548(%rbp)
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xba0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xb98(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xb89(%rbp)
leaq -0x650(%rbp), %rdi
movq %rdi, -0xba8(%rbp)
leaq 0xd61a(%rip), %rsi      # 0x1e4d8
callq 0x117e0
movq -0xba8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd573(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xba0(%rbp), %rsi
movq -0xb98(%rbp), %rdx
movb -0xb89(%rbp), %al
leaq -0x650(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10f0a
jmp 0x10f19
movl $0xffffffff, -0x548(%rbp) # imm = 0xFFFFFFFF
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xbc0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xbb8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xba9(%rbp)
leaq -0x670(%rbp), %rdi
movq %rdi, -0xbc8(%rbp)
leaq 0xd59b(%rip), %rsi      # 0x1e4e8
callq 0x117e0
movq -0xbc8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd4c4(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xbc0(%rbp), %rsi
movq -0xbb8(%rbp), %rdx
movb -0xba9(%rbp), %al
leaq -0x670(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x10f99
jmp 0x10fa8
movl $0xfffffffe, -0x548(%rbp) # imm = 0xFFFFFFFE
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xbe0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xbd8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xbc9(%rbp)
leaq -0x690(%rbp), %rdi
movq %rdi, -0xbe8(%rbp)
leaq 0xd4bc(%rip), %rsi      # 0x1e498
callq 0x117e0
movq -0xbe8(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd465(%rip), %rsi      # 0x1e458
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xbe0(%rbp), %rsi
movq -0xbd8(%rbp), %rdx
movb -0xbc9(%rbp), %al
leaq -0x690(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x11028
jmp 0x11041
movl $0xffffffff, -0x548(%rbp) # imm = 0xFFFFFFFF
movl $0x3, -0x54c(%rbp)
jmp 0x11172
movq -0x18(%rbp), %rax
movq %rax, -0xc00(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0xbf8(%rbp)
movb -0x21(%rbp), %al
movb %al, -0xbe9(%rbp)
leaq -0x6b0(%rbp), %rdi
movq %rdi, -0xc08(%rbp)
leaq 0xd433(%rip), %rsi      # 0x1e4a8
callq 0x117e0
movq -0xc08(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd3bc(%rip), %rsi      # 0x1e448
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xc00(%rbp), %rsi
movq -0xbf8(%rbp), %rdx
movb -0xbe9(%rbp), %al
leaq -0x6b0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x110c1
jmp 0x110da
movl $0xfffffffe, -0x548(%rbp) # imm = 0xFFFFFFFE
movl $0x2, -0x54c(%rbp)
jmp 0x11172
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 -0x6d0(%rbp), %rdi
movq %rdi, -0xc28(%rbp)
leaq 0xd3aa(%rip), %rsi      # 0x1e4b8
callq 0x117e0
movq -0xc28(%rbp), %rdi
addq $0x10, %rdi
leaq 0xd303(%rip), %rsi      # 0x1e428
callq 0x117e0
movq -0x730(%rbp), %rdi
movq -0xc20(%rbp), %rsi
movq -0xc18(%rbp), %rdx
movb -0xc09(%rbp), %al
leaq -0x6d0(%rbp), %r8
movzbl %al, %ecx
callq 0x11c90
testb $0x1, %al
jne 0x1115a
jmp 0x11170
movl $0xfffffffd, -0x548(%rbp) # imm = 0xFFFFFFFD
movl $0x1, -0x54c(%rbp)
jmp 0x11172
jmp 0x11172
leaq -0x20(%rbp), %rax
movq %rax, -0x6e0(%rbp)
leaq -0x21(%rbp), %rax
movq %rax, -0x6d8(%rbp)
cmpl $0x0, -0x54c(%rbp)
je 0x1125f
movl -0x54c(%rbp), %esi
leaq -0x6e0(%rbp), %rdi
callq 0x12020
movl %eax, -0x6e4(%rbp)
cmpl $0x0, -0x6e4(%rbp)
jl 0x1125d
movslq -0x6e4(%rbp), %rax
cmpq $0xe1, %rax
jae 0x1125d
movq -0x730(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x5590
movq -0x730(%rbp), %rdi
movb $0x1, (%rax)
movslq -0x6e4(%rbp), %rsi
callq 0xaf70
movq -0x730(%rbp), %rdi
andb $0x1, %al
movb %al, -0x6e5(%rbp)
movq -0x20(%rbp), %rsi
callq 0x5590
movb $0x0, (%rax)
testb $0x1, -0x6e5(%rbp)
je 0x1125b
movq -0x748(%rbp), %rdi
movl $0x0, -0x6ec(%rbp)
movl $0x0, -0x6f0(%rbp)
movl $0x1, -0x6f4(%rbp)
leaq -0x6ec(%rbp), %rsi
leaq -0x6f0(%rbp), %rdx
leaq -0x6f4(%rbp), %rcx
callq 0x11e80
jmp 0x11372
jmp 0x1125d
jmp 0x1125f
cmpl $0x0, -0x548(%rbp)
je 0x11333
movl -0x548(%rbp), %esi
leaq -0x6e0(%rbp), %rdi
callq 0x12020
movl %eax, -0x6f8(%rbp)
cmpl $0x0, -0x6f8(%rbp)
jl 0x11331
movslq -0x6f8(%rbp), %rax
cmpq $0xe1, %rax
jae 0x11331
movq -0x730(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x5590
movq -0x730(%rbp), %rdi
movb $0x1, (%rax)
movslq -0x6f8(%rbp), %rsi
callq 0xaf70
movq -0x730(%rbp), %rdi
andb $0x1, %al
movb %al, -0x6f9(%rbp)
movq -0x20(%rbp), %rsi
callq 0x5590
movb $0x0, (%rax)
testb $0x1, -0x6f9(%rbp)
je 0x1132f
movq -0x748(%rbp), %rdi
movl $0x0, -0x700(%rbp)
movl $0x0, -0x704(%rbp)
movl $0x1, -0x708(%rbp)
leaq -0x700(%rbp), %rsi
leaq -0x704(%rbp), %rdx
leaq -0x708(%rbp), %rcx
callq 0x11e80
jmp 0x11372
jmp 0x11331
jmp 0x11333
movq -0x748(%rbp), %rdi
movl $0x0, -0x70c(%rbp)
movl $0x0, -0x710(%rbp)
movl $0x0, -0x714(%rbp)
leaq -0x70c(%rbp), %rsi
leaq -0x710(%rbp), %rdx
leaq -0x714(%rbp), %rcx
callq 0x11e80
movq -0x740(%rbp), %rax
addq $0xc30, %rsp            # imm = 0xC30
popq %rbp
retq
nopw %cs:(%rax,%rax)
nopl (%rax)