// File: Nallantli[P]Rossa/main/rossa/node_parser/node_parser.cpp
// Function: node_parser_t::parseSwitchNode(std::vector<node_scope_t, std::allocator<node_scope_t>>*)
ptr_node_t node_parser_t::parseSwitchNode(std::vector<node_scope_t> *scopes)
{
	nextToken();
	std::map<ptr_node_t, size_t> cases;
	std::vector<ptr_node_t> gotos;

	scopes->push_back({ROSSA_HASH("<SWI@" + std::to_string(scope_i++) + ">")});
	auto switchs = parseEquNode(scopes);
	if (!switchs)
		return logErrorN(util::format(_EXPECTED_AFTER_, {KEYWORD_SWITCH}), currentToken);
	if (currentToken.type != TOK_OF)
		return logErrorN(util::format(_EXPECTED_ERROR_, {KEYWORD_OF}), currentToken);
	nextToken();
	if (currentToken.type != '{')
		return logErrorN(util::format(_EXPECTED_ERROR_, {"{"}), currentToken);
	nextToken();

	while (currentToken.type != NULL_TOK && currentToken.type != '}')
	{
		if (currentToken.type != TOK_CASE)
			return logErrorN(util::format(_EXPECTED_ERROR_, {KEYWORD_CASE}), currentToken);
		nextToken();

		std::vector<ptr_node_t> keys;

		size_t i = 0;
		while (currentToken.type != NULL_TOK)
		{
			if (i++ > 0)
			{
				if (currentToken.type != ',')
					return logErrorN(util::format(_EXPECTED_ERROR_, {","}), currentToken);
				nextToken();
			}
			auto c = parseUnitNode(scopes);
			if (!c)
				return logErrorN(_FAILURE_PARSE_CODE_, currentToken);
			keys.push_back(c);
			if (currentToken.type == TOK_DO)
				break;
		}

		if (currentToken.type != TOK_DO)
			return logErrorN(util::format(_EXPECTED_ERROR_, {KEYWORD_DO}), currentToken);
		nextToken();

		if (currentToken.type != '{')
		{
			auto eq = parseEquNode(scopes);

			if (!eq)
				return logErrorN(_FAILURE_PARSE_CODE_, currentToken);

			if (currentToken.type != ';')
				return logErrorN(util::format(_EXPECTED_ERROR_, {";"}), currentToken);
			nextToken();

			gotos.push_back(eq);
		}
		else
		{
			nextToken();
			std::vector<ptr_node_t> body;
			while (currentToken.type != NULL_TOK)
			{
				if (currentToken.type == '}')
					break;
				if (auto e = parseExprNode(scopes))
					body.push_back(e);
				else
					return logErrorN(_FAILURE_PARSE_CODE_, currentToken);
			}
			if (currentToken.type != '}')
				return logErrorN(util::format(_EXPECTED_ERROR_, {"}"}), currentToken);
			nextToken();

			if (body.size() == 1)
				gotos.push_back(body[0]);
			else
				gotos.push_back(std::make_shared<VectorNode>(*scopes, body, true, currentToken));
		}

		for (auto &c : keys)
			cases[c] = gotos.size();

		if (currentToken.type == NULL_TOK)
			return logErrorN(util::format(_EXPECTED_ERROR_, {"}"}), currentToken);
	}
	nextToken();
	auto ret = std::make_shared<SwitchNode>(*scopes, switchs, cases, gotos, currentToken);

	if (currentToken.type == TOK_ELSE)
	{
		nextToken();
		if (currentToken.type != '{')
			return logErrorN(util::format(_EXPECTED_ERROR_, {"{"}), currentToken);
		nextToken();
		std::vector<ptr_node_t> elses;
		while (currentToken.type != NULL_TOK)
		{
			if (currentToken.type == '}')
				break;

			if (auto e = parseExprNode(scopes))
				elses.push_back(e);
			else
				return logErrorN(_FAILURE_PARSE_CODE_, currentToken);
		}
		if (currentToken.type != '}')
			return logErrorN(util::format(_EXPECTED_ERROR_, {"}"}), currentToken);
		nextToken();
		ret->setElse(std::make_shared<VectorNode>(*scopes, elses, true, currentToken));
	}

	scopes->pop_back();
	return ret;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xe40, %rsp            # imm = 0xE40
movq %rdi, -0x9b8(%rbp)
movq %rdi, %rax
movq %rax, -0x9b0(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rdi
movq %rdi, -0x9a8(%rbp)
callq 0x38fd0
leaq -0x48(%rbp), %rdi
callq 0x593a0
leaq -0x60(%rbp), %rdi
callq 0x57390
movq -0x9a8(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0x9a0(%rbp)
leaq -0x80(%rbp), %rcx
movq %rcx, -0x998(%rbp)
movq (%rax), %rsi
movq %rsi, %rcx
incq %rcx
movq %rcx, (%rax)
leaq -0xe0(%rbp), %rdi
callq 0x58780
jmp 0x4afd1
leaq 0x106343(%rip), %rsi    # 0x15131b
leaq -0xc0(%rbp), %rdi
leaq -0xe0(%rbp), %rdx
callq 0x24cb0
jmp 0x4afed
leaq 0x10536c(%rip), %rdx    # 0x150360
leaq -0xa0(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x24c60
jmp 0x4b009
leaq 0x19aa88(%rip), %rdi    # 0x1e5a98
leaq -0xa0(%rbp), %rsi
callq 0x2cb10
movq %rax, -0x9c0(%rbp)
jmp 0x4b025
movq -0x998(%rbp), %rax
movq -0x9c0(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x78(%rbp), %rdi
xorps %xmm0, %xmm0
movups %xmm0, -0x78(%rbp)
movq $0x0, -0x68(%rbp)
callq 0x2ccf0
movq -0x9a0(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x2ccc0
jmp 0x4b060
leaq -0x80(%rbp), %rdi
callq 0x2cd10
leaq -0xa0(%rbp), %rdi
callq 0x11360
leaq -0xc0(%rbp), %rdi
callq 0x11360
leaq -0xe0(%rbp), %rdi
callq 0x11360
movq -0x9a8(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x100(%rbp), %rdi
callq 0x3f500
jmp 0x4b0a6
leaq -0x100(%rbp), %rdi
callq 0x57630
testb $0x1, %al
jne 0x4b45a
leaq -0x141(%rbp), %rdi
movq %rdi, -0x9c8(%rbp)
callq 0x119d0
movq -0x9c8(%rbp), %rdx
leaq 0x106246(%rip), %rsi    # 0x151321
leaq -0x140(%rbp), %rdi
callq 0x24740
jmp 0x4b0e9
movb $0x1, -0x19a(%rbp)
leaq -0x190(%rbp), %rax
movq %rax, -0x9d8(%rbp)
movq %rax, -0x198(%rbp)
leaq -0x199(%rbp), %rdi
movq %rdi, -0x9d0(%rbp)
callq 0x119d0
movq -0x9d8(%rbp), %rdi
movq -0x9d0(%rbp), %rdx
leaq 0x1056dd(%rip), %rsi    # 0x15080a
callq 0x24740
jmp 0x4b134
movb $0x0, -0x19a(%rbp)
leaq -0x190(%rbp), %rax
movq %rax, -0x170(%rbp)
movq $0x1, -0x168(%rbp)
leaq -0x19b(%rbp), %rdi
movq %rdi, -0x9e0(%rbp)
callq 0x26e30
movq -0x9e0(%rbp), %rcx
movq -0x170(%rbp), %rsi
movq -0x168(%rbp), %rdx
leaq -0x160(%rbp), %rdi
callq 0x2d6a0
jmp 0x4b18a
leaq -0x120(%rbp), %rdi
leaq -0x140(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x9e250
jmp 0x4b1a6
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x120(%rbp), %rdx
callq 0x3f820
jmp 0x4b1c9
leaq -0x120(%rbp), %rdi
callq 0x11360
leaq -0x160(%rbp), %rdi
callq 0x25b00
leaq -0x19b(%rbp), %rdi
callq 0x279c0
leaq -0x190(%rbp), %rax
movq %rax, -0x9f0(%rbp)
addq $0x20, %rax
movq %rax, -0x9e8(%rbp)
movq -0x9e8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x9f8(%rbp)
callq 0x11360
movq -0x9f0(%rbp), %rcx
movq -0x9f8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x9e8(%rbp)
jne 0x4b206
leaq -0x199(%rbp), %rdi
callq 0x11600
leaq -0x140(%rbp), %rdi
callq 0x11360
leaq -0x141(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4de5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4de96
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b2f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b2e4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b2d8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x2cd10
leaq -0xa0(%rbp), %rdi
callq 0x11360
leaq -0xc0(%rbp), %rdi
callq 0x11360
leaq -0xe0(%rbp), %rdi
callq 0x11360
jmp 0x4de96
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b449
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b3d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b381
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b375
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x11360
leaq -0x160(%rbp), %rdi
callq 0x25b00
leaq -0x19b(%rbp), %rdi
callq 0x279c0
leaq -0x190(%rbp), %rax
movq %rax, -0xa08(%rbp)
addq $0x20, %rax
movq %rax, -0xa00(%rbp)
movq -0xa00(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xa10(%rbp)
callq 0x11360
movq -0xa08(%rbp), %rcx
movq -0xa10(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xa00(%rbp)
jne 0x4b3a6
jmp 0x4b3d9
leaq -0x199(%rbp), %rdi
callq 0x11600
testb $0x1, -0x19a(%rbp)
jne 0x4b3f0
jmp 0x4b43d
movq -0x198(%rbp), %rax
leaq -0x190(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xa18(%rbp)
je 0x4b43b
movq -0xa18(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xa20(%rbp)
callq 0x11360
movq -0xa20(%rbp), %rax
leaq -0x190(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xa18(%rbp)
jne 0x4b40a
jmp 0x4b43d
leaq -0x140(%rbp), %rdi
callq 0x11360
leaq -0x141(%rbp), %rdi
callq 0x11600
jmp 0x4de8a
movq -0x9a8(%rbp), %rax
cmpl $-0x24, 0xd0(%rax)
je 0x4b777
leaq -0x1e1(%rbp), %rdi
movq %rdi, -0xa28(%rbp)
callq 0x119d0
movq -0xa28(%rbp), %rdx
leaq 0x105d01(%rip), %rsi    # 0x151190
leaq -0x1e0(%rbp), %rdi
callq 0x24740
jmp 0x4b49d
movb $0x1, -0x23a(%rbp)
leaq -0x230(%rbp), %rax
movq %rax, -0xa38(%rbp)
movq %rax, -0x238(%rbp)
leaq -0x239(%rbp), %rdi
movq %rdi, -0xa30(%rbp)
callq 0x119d0
movq -0xa38(%rbp), %rdi
movq -0xa30(%rbp), %rdx
leaq 0x105293(%rip), %rsi    # 0x150774
callq 0x24740
jmp 0x4b4e8
movb $0x0, -0x23a(%rbp)
leaq -0x230(%rbp), %rax
movq %rax, -0x210(%rbp)
movq $0x1, -0x208(%rbp)
leaq -0x23b(%rbp), %rdi
movq %rdi, -0xa40(%rbp)
callq 0x26e30
movq -0xa40(%rbp), %rcx
movq -0x210(%rbp), %rsi
movq -0x208(%rbp), %rdx
leaq -0x200(%rbp), %rdi
callq 0x2d6a0
jmp 0x4b53e
leaq -0x1c0(%rbp), %rdi
leaq -0x1e0(%rbp), %rsi
leaq -0x200(%rbp), %rdx
callq 0x9e250
jmp 0x4b55a
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x1c0(%rbp), %rdx
callq 0x3f820
jmp 0x4b57d
leaq -0x1c0(%rbp), %rdi
callq 0x11360
leaq -0x200(%rbp), %rdi
callq 0x25b00
leaq -0x23b(%rbp), %rdi
callq 0x279c0
leaq -0x230(%rbp), %rax
movq %rax, -0xa50(%rbp)
addq $0x20, %rax
movq %rax, -0xa48(%rbp)
movq -0xa48(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xa58(%rbp)
callq 0x11360
movq -0xa50(%rbp), %rcx
movq -0xa58(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xa48(%rbp)
jne 0x4b5ba
leaq -0x239(%rbp), %rdi
callq 0x11600
leaq -0x1e0(%rbp), %rdi
callq 0x11360
leaq -0x1e1(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4de5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b766
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b6f6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b69e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b692
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x1c0(%rbp), %rdi
callq 0x11360
leaq -0x200(%rbp), %rdi
callq 0x25b00
leaq -0x23b(%rbp), %rdi
callq 0x279c0
leaq -0x230(%rbp), %rax
movq %rax, -0xa68(%rbp)
addq $0x20, %rax
movq %rax, -0xa60(%rbp)
movq -0xa60(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xa70(%rbp)
callq 0x11360
movq -0xa68(%rbp), %rcx
movq -0xa70(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xa60(%rbp)
jne 0x4b6c3
jmp 0x4b6f6
leaq -0x239(%rbp), %rdi
callq 0x11600
testb $0x1, -0x23a(%rbp)
jne 0x4b70d
jmp 0x4b75a
movq -0x238(%rbp), %rax
leaq -0x230(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xa78(%rbp)
je 0x4b758
movq -0xa78(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xa80(%rbp)
callq 0x11360
movq -0xa80(%rbp), %rax
leaq -0x230(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xa78(%rbp)
jne 0x4b727
jmp 0x4b75a
leaq -0x1e0(%rbp), %rdi
callq 0x11360
leaq -0x1e1(%rbp), %rdi
callq 0x11600
jmp 0x4de8a
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4b785
movq -0x9a8(%rbp), %rax
cmpl $0x7b, 0xd0(%rax)
je 0x4bab9
leaq -0x281(%rbp), %rdi
movq %rdi, -0xa88(%rbp)
callq 0x119d0
movq -0xa88(%rbp), %rdx
leaq 0x1059d6(%rip), %rsi    # 0x151190
leaq -0x280(%rbp), %rdi
callq 0x24740
jmp 0x4b7c8
movb $0x1, -0x2da(%rbp)
leaq -0x2d0(%rbp), %rax
movq %rax, -0xa98(%rbp)
movq %rax, -0x2d8(%rbp)
leaq -0x2d9(%rbp), %rdi
movq %rdi, -0xa90(%rbp)
callq 0x119d0
movq -0xa98(%rbp), %rdi
movq -0xa90(%rbp), %rdx
leaq 0x105b35(%rip), %rsi    # 0x151341
callq 0x24740
jmp 0x4b813
movb $0x0, -0x2da(%rbp)
leaq -0x2d0(%rbp), %rax
movq %rax, -0x2b0(%rbp)
movq $0x1, -0x2a8(%rbp)
leaq -0x2db(%rbp), %rdi
movq %rdi, -0xaa0(%rbp)
callq 0x26e30
movq -0xaa0(%rbp), %rcx
movq -0x2b0(%rbp), %rsi
movq -0x2a8(%rbp), %rdx
leaq -0x2a0(%rbp), %rdi
callq 0x2d6a0
jmp 0x4b869
leaq -0x260(%rbp), %rdi
leaq -0x280(%rbp), %rsi
leaq -0x2a0(%rbp), %rdx
callq 0x9e250
jmp 0x4b885
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x260(%rbp), %rdx
callq 0x3f820
jmp 0x4b8a8
leaq -0x260(%rbp), %rdi
callq 0x11360
leaq -0x2a0(%rbp), %rdi
callq 0x25b00
leaq -0x2db(%rbp), %rdi
callq 0x279c0
leaq -0x2d0(%rbp), %rax
movq %rax, -0xab0(%rbp)
addq $0x20, %rax
movq %rax, -0xaa8(%rbp)
movq -0xaa8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xab8(%rbp)
callq 0x11360
movq -0xab0(%rbp), %rcx
movq -0xab8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xaa8(%rbp)
jne 0x4b8e5
leaq -0x2d9(%rbp), %rdi
callq 0x11600
leaq -0x280(%rbp), %rdi
callq 0x11360
leaq -0x281(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4de5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4de8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4baa8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4ba38
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b9e0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4b9d4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x260(%rbp), %rdi
callq 0x11360
leaq -0x2a0(%rbp), %rdi
callq 0x25b00
leaq -0x2db(%rbp), %rdi
callq 0x279c0
leaq -0x2d0(%rbp), %rax
movq %rax, -0xac8(%rbp)
addq $0x20, %rax
movq %rax, -0xac0(%rbp)
movq -0xac0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xad0(%rbp)
callq 0x11360
movq -0xac8(%rbp), %rcx
movq -0xad0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xac0(%rbp)
jne 0x4ba05
jmp 0x4ba38
leaq -0x2d9(%rbp), %rdi
callq 0x11600
testb $0x1, -0x2da(%rbp)
jne 0x4ba4f
jmp 0x4ba9c
movq -0x2d8(%rbp), %rax
leaq -0x2d0(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xad8(%rbp)
je 0x4ba9a
movq -0xad8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xae0(%rbp)
callq 0x11360
movq -0xae0(%rbp), %rax
leaq -0x2d0(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xad8(%rbp)
jne 0x4ba69
jmp 0x4ba9c
leaq -0x280(%rbp), %rdi
callq 0x11360
leaq -0x281(%rbp), %rdi
callq 0x11600
jmp 0x4de8a
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4bac7
jmp 0x4bac9
movq -0x9a8(%rbp), %rcx
xorl %eax, %eax
cmpl $0x0, 0xd0(%rcx)
movb %al, -0xae1(%rbp)
je 0x4baf8
movq -0x9a8(%rbp), %rax
cmpl $0x7d, 0xd0(%rax)
setne %al
movb %al, -0xae1(%rbp)
movb -0xae1(%rbp), %al
testb $0x1, %al
jne 0x4bb07
jmp 0x4d4cf
movq -0x9a8(%rbp), %rax
cmpl $-0x29, 0xd0(%rax)
je 0x4be24
leaq -0x321(%rbp), %rdi
movq %rdi, -0xaf0(%rbp)
callq 0x119d0
movq -0xaf0(%rbp), %rdx
leaq 0x105654(%rip), %rsi    # 0x151190
leaq -0x320(%rbp), %rdi
callq 0x24740
jmp 0x4bb4a
movb $0x1, -0x37a(%rbp)
leaq -0x370(%rbp), %rax
movq %rax, -0xb00(%rbp)
movq %rax, -0x378(%rbp)
leaq -0x379(%rbp), %rdi
movq %rdi, -0xaf8(%rbp)
callq 0x119d0
movq -0xb00(%rbp), %rdi
movq -0xaf8(%rbp), %rdx
leaq 0x104c9f(%rip), %rsi    # 0x15082d
callq 0x24740
jmp 0x4bb95
movb $0x0, -0x37a(%rbp)
leaq -0x370(%rbp), %rax
movq %rax, -0x350(%rbp)
movq $0x1, -0x348(%rbp)
leaq -0x37b(%rbp), %rdi
movq %rdi, -0xb08(%rbp)
callq 0x26e30
movq -0xb08(%rbp), %rcx
movq -0x350(%rbp), %rsi
movq -0x348(%rbp), %rdx
leaq -0x340(%rbp), %rdi
callq 0x2d6a0
jmp 0x4bbeb
leaq -0x300(%rbp), %rdi
leaq -0x320(%rbp), %rsi
leaq -0x340(%rbp), %rdx
callq 0x9e250
jmp 0x4bc07
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x300(%rbp), %rdx
callq 0x3f820
jmp 0x4bc2a
leaq -0x300(%rbp), %rdi
callq 0x11360
leaq -0x340(%rbp), %rdi
callq 0x25b00
leaq -0x37b(%rbp), %rdi
callq 0x279c0
leaq -0x370(%rbp), %rax
movq %rax, -0xb18(%rbp)
addq $0x20, %rax
movq %rax, -0xb10(%rbp)
movq -0xb10(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb20(%rbp)
callq 0x11360
movq -0xb18(%rbp), %rcx
movq -0xb20(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xb10(%rbp)
jne 0x4bc67
leaq -0x379(%rbp), %rdi
callq 0x11600
leaq -0x320(%rbp), %rdi
callq 0x11360
leaq -0x321(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4de5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4be13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4bda3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4bd4b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4bd3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x300(%rbp), %rdi
callq 0x11360
leaq -0x340(%rbp), %rdi
callq 0x25b00
leaq -0x37b(%rbp), %rdi
callq 0x279c0
leaq -0x370(%rbp), %rax
movq %rax, -0xb30(%rbp)
addq $0x20, %rax
movq %rax, -0xb28(%rbp)
movq -0xb28(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb38(%rbp)
callq 0x11360
movq -0xb30(%rbp), %rcx
movq -0xb38(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xb28(%rbp)
jne 0x4bd70
jmp 0x4bda3
leaq -0x379(%rbp), %rdi
callq 0x11600
testb $0x1, -0x37a(%rbp)
jne 0x4bdba
jmp 0x4be07
movq -0x378(%rbp), %rax
leaq -0x370(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xb40(%rbp)
je 0x4be05
movq -0xb40(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb48(%rbp)
callq 0x11360
movq -0xb48(%rbp), %rax
leaq -0x370(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xb40(%rbp)
jne 0x4bdd4
jmp 0x4be07
leaq -0x320(%rbp), %rdi
callq 0x11360
leaq -0x321(%rbp), %rdi
callq 0x11600
jmp 0x4de8a
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4be32
leaq -0x398(%rbp), %rdi
callq 0x57390
movq $0x0, -0x3a0(%rbp)
movq -0x9a8(%rbp), %rax
cmpl $0x0, 0xd0(%rax)
je 0x4c33c
movq -0x3a0(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x3a0(%rbp)
cmpq $0x0, %rax
jbe 0x4c1c0
movq -0x9a8(%rbp), %rax
cmpl $0x2c, 0xd0(%rax)
je 0x4c199
leaq -0x3e1(%rbp), %rdi
movq %rdi, -0xb50(%rbp)
callq 0x119d0
movq -0xb50(%rbp), %rdx
leaq 0x1052df(%rip), %rsi    # 0x151190
leaq -0x3e0(%rbp), %rdi
callq 0x24740
jmp 0x4bebf
movb $0x1, -0x43a(%rbp)
leaq -0x430(%rbp), %rax
movq %rax, -0xb60(%rbp)
movq %rax, -0x438(%rbp)
leaq -0x439(%rbp), %rdi
movq %rdi, -0xb58(%rbp)
callq 0x119d0
movq -0xb60(%rbp), %rdi
movq -0xb58(%rbp), %rdx
leaq 0x1054ed(%rip), %rsi    # 0x1513f0
callq 0x24740
jmp 0x4bf0a
movb $0x0, -0x43a(%rbp)
leaq -0x430(%rbp), %rax
movq %rax, -0x410(%rbp)
movq $0x1, -0x408(%rbp)
leaq -0x43b(%rbp), %rdi
movq %rdi, -0xb68(%rbp)
callq 0x26e30
movq -0xb68(%rbp), %rcx
movq -0x410(%rbp), %rsi
movq -0x408(%rbp), %rdx
leaq -0x400(%rbp), %rdi
callq 0x2d6a0
jmp 0x4bf60
leaq -0x3c0(%rbp), %rdi
leaq -0x3e0(%rbp), %rsi
leaq -0x400(%rbp), %rdx
callq 0x9e250
jmp 0x4bf7c
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x3c0(%rbp), %rdx
callq 0x3f820
jmp 0x4bf9f
leaq -0x3c0(%rbp), %rdi
callq 0x11360
leaq -0x400(%rbp), %rdi
callq 0x25b00
leaq -0x43b(%rbp), %rdi
callq 0x279c0
leaq -0x430(%rbp), %rax
movq %rax, -0xb78(%rbp)
addq $0x20, %rax
movq %rax, -0xb70(%rbp)
movq -0xb70(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb80(%rbp)
callq 0x11360
movq -0xb78(%rbp), %rcx
movq -0xb80(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xb70(%rbp)
jne 0x4bfdc
leaq -0x439(%rbp), %rdi
callq 0x11600
leaq -0x3e0(%rbp), %rdi
callq 0x11360
leaq -0x3e1(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4d49d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c188
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c118
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c0c0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c0b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x3c0(%rbp), %rdi
callq 0x11360
leaq -0x400(%rbp), %rdi
callq 0x25b00
leaq -0x43b(%rbp), %rdi
callq 0x279c0
leaq -0x430(%rbp), %rax
movq %rax, -0xb90(%rbp)
addq $0x20, %rax
movq %rax, -0xb88(%rbp)
movq -0xb88(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb98(%rbp)
callq 0x11360
movq -0xb90(%rbp), %rcx
movq -0xb98(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xb88(%rbp)
jne 0x4c0e5
jmp 0x4c118
leaq -0x439(%rbp), %rdi
callq 0x11600
testb $0x1, -0x43a(%rbp)
jne 0x4c12f
jmp 0x4c17c
movq -0x438(%rbp), %rax
leaq -0x430(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xba0(%rbp)
je 0x4c17a
movq -0xba0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xba8(%rbp)
callq 0x11360
movq -0xba8(%rbp), %rax
leaq -0x430(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xba0(%rbp)
jne 0x4c149
jmp 0x4c17c
leaq -0x3e0(%rbp), %rdi
callq 0x11360
leaq -0x3e1(%rbp), %rdi
callq 0x11600
jmp 0x4d4be
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4c1a7
jmp 0x4c1c0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d4be
movq -0x9a8(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x450(%rbp), %rdi
callq 0x44bf0
jmp 0x4c1d9
leaq -0x450(%rbp), %rdi
callq 0x57630
testb $0x1, %al
jne 0x4c2a9
leaq -0x471(%rbp), %rdi
movq %rdi, -0xbb0(%rbp)
callq 0x119d0
movq -0xbb0(%rbp), %rdx
leaq 0x105018(%rip), %rsi    # 0x151226
leaq -0x470(%rbp), %rdi
callq 0x24740
jmp 0x4c21c
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x470(%rbp), %rdx
callq 0x3f820
jmp 0x4c23f
leaq -0x470(%rbp), %rdi
callq 0x11360
leaq -0x471(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4c2f8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c298
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x470(%rbp), %rdi
callq 0x11360
leaq -0x471(%rbp), %rdi
callq 0x11600
jmp 0x4c32b
leaq -0x398(%rbp), %rdi
leaq -0x450(%rbp), %rsi
callq 0x57650
jmp 0x4c2be
movq -0x9a8(%rbp), %rax
cmpl $-0xa, 0xd0(%rax)
jne 0x4c2ee
movl $0x5, -0x1a0(%rbp)
jmp 0x4c2f8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c32b
movl $0x0, -0x1a0(%rbp)
leaq -0x450(%rbp), %rdi
callq 0x24b20
movl -0x1a0(%rbp), %eax
movl %eax, -0xbb4(%rbp)
testl %eax, %eax
je 0x4c326
jmp 0x4c316
movl -0xbb4(%rbp), %eax
subl $0x5, %eax
je 0x4c33c
jmp 0x4d49d
jmp 0x4be49
leaq -0x450(%rbp), %rdi
callq 0x24b20
jmp 0x4d4be
movq -0x9a8(%rbp), %rax
cmpl $-0xa, 0xd0(%rax)
je 0x4c659
leaq -0x4b9(%rbp), %rdi
movq %rdi, -0xbc0(%rbp)
callq 0x119d0
movq -0xbc0(%rbp), %rdx
leaq 0x104e1f(%rip), %rsi    # 0x151190
leaq -0x4b8(%rbp), %rdi
callq 0x24740
jmp 0x4c37f
movb $0x1, -0x512(%rbp)
leaq -0x508(%rbp), %rax
movq %rax, -0xbd0(%rbp)
movq %rax, -0x510(%rbp)
leaq -0x511(%rbp), %rdi
movq %rdi, -0xbc8(%rbp)
callq 0x119d0
movq -0xbd0(%rbp), %rdi
movq -0xbc8(%rbp), %rdx
leaq 0x1043ab(%rip), %rsi    # 0x15076e
callq 0x24740
jmp 0x4c3ca
movb $0x0, -0x512(%rbp)
leaq -0x508(%rbp), %rax
movq %rax, -0x4e8(%rbp)
movq $0x1, -0x4e0(%rbp)
leaq -0x513(%rbp), %rdi
movq %rdi, -0xbd8(%rbp)
callq 0x26e30
movq -0xbd8(%rbp), %rcx
movq -0x4e8(%rbp), %rsi
movq -0x4e0(%rbp), %rdx
leaq -0x4d8(%rbp), %rdi
callq 0x2d6a0
jmp 0x4c420
leaq -0x498(%rbp), %rdi
leaq -0x4b8(%rbp), %rsi
leaq -0x4d8(%rbp), %rdx
callq 0x9e250
jmp 0x4c43c
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x498(%rbp), %rdx
callq 0x3f820
jmp 0x4c45f
leaq -0x498(%rbp), %rdi
callq 0x11360
leaq -0x4d8(%rbp), %rdi
callq 0x25b00
leaq -0x513(%rbp), %rdi
callq 0x279c0
leaq -0x508(%rbp), %rax
movq %rax, -0xbe8(%rbp)
addq $0x20, %rax
movq %rax, -0xbe0(%rbp)
movq -0xbe0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xbf0(%rbp)
callq 0x11360
movq -0xbe8(%rbp), %rcx
movq -0xbf0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xbe0(%rbp)
jne 0x4c49c
leaq -0x511(%rbp), %rdi
callq 0x11600
leaq -0x4b8(%rbp), %rdi
callq 0x11360
leaq -0x4b9(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4d49d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c648
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c5d8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c580
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c574
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x498(%rbp), %rdi
callq 0x11360
leaq -0x4d8(%rbp), %rdi
callq 0x25b00
leaq -0x513(%rbp), %rdi
callq 0x279c0
leaq -0x508(%rbp), %rax
movq %rax, -0xc00(%rbp)
addq $0x20, %rax
movq %rax, -0xbf8(%rbp)
movq -0xbf8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xc08(%rbp)
callq 0x11360
movq -0xc00(%rbp), %rcx
movq -0xc08(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xbf8(%rbp)
jne 0x4c5a5
jmp 0x4c5d8
leaq -0x511(%rbp), %rdi
callq 0x11600
testb $0x1, -0x512(%rbp)
jne 0x4c5ef
jmp 0x4c63c
movq -0x510(%rbp), %rax
leaq -0x508(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xc10(%rbp)
je 0x4c63a
movq -0xc10(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xc18(%rbp)
callq 0x11360
movq -0xc18(%rbp), %rax
leaq -0x508(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xc10(%rbp)
jne 0x4c609
jmp 0x4c63c
leaq -0x4b8(%rbp), %rdi
callq 0x11360
leaq -0x4b9(%rbp), %rdi
callq 0x11600
jmp 0x4d4be
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4c667
movq -0x9a8(%rbp), %rax
cmpl $0x7b, 0xd0(%rax)
je 0x4caec
movq -0x9a8(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x528(%rbp), %rdi
callq 0x3f500
jmp 0x4c694
leaq -0x528(%rbp), %rdi
callq 0x57630
testb $0x1, %al
jne 0x4c764
leaq -0x549(%rbp), %rdi
movq %rdi, -0xc20(%rbp)
callq 0x119d0
movq -0xc20(%rbp), %rdx
leaq 0x104b5d(%rip), %rsi    # 0x151226
leaq -0x548(%rbp), %rdi
callq 0x24740
jmp 0x4c6d7
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x548(%rbp), %rdx
callq 0x3f820
jmp 0x4c6fa
leaq -0x548(%rbp), %rdi
callq 0x11360
leaq -0x549(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4caa8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c753
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x548(%rbp), %rdi
callq 0x11360
leaq -0x549(%rbp), %rdi
callq 0x11600
jmp 0x4cadb
movq -0x9a8(%rbp), %rax
cmpl $0x3b, 0xd0(%rax)
je 0x4ca7e
leaq -0x591(%rbp), %rdi
movq %rdi, -0xc28(%rbp)
callq 0x119d0
movq -0xc28(%rbp), %rdx
leaq 0x1049f7(%rip), %rsi    # 0x151190
leaq -0x590(%rbp), %rdi
callq 0x24740
jmp 0x4c7a7
movb $0x1, -0x5ea(%rbp)
leaq -0x5e0(%rbp), %rax
movq %rax, -0xc38(%rbp)
movq %rax, -0x5e8(%rbp)
leaq -0x5e9(%rbp), %rdi
movq %rdi, -0xc30(%rbp)
callq 0x119d0
movq -0xc38(%rbp), %rdi
movq -0xc30(%rbp), %rdx
leaq 0x10392b(%rip), %rsi    # 0x150116
callq 0x24740
jmp 0x4c7f2
movb $0x0, -0x5ea(%rbp)
leaq -0x5e0(%rbp), %rax
movq %rax, -0x5c0(%rbp)
movq $0x1, -0x5b8(%rbp)
leaq -0x5eb(%rbp), %rdi
movq %rdi, -0xc40(%rbp)
callq 0x26e30
movq -0xc40(%rbp), %rcx
movq -0x5c0(%rbp), %rsi
movq -0x5b8(%rbp), %rdx
leaq -0x5b0(%rbp), %rdi
callq 0x2d6a0
jmp 0x4c848
leaq -0x570(%rbp), %rdi
leaq -0x590(%rbp), %rsi
leaq -0x5b0(%rbp), %rdx
callq 0x9e250
jmp 0x4c864
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x570(%rbp), %rdx
callq 0x3f820
jmp 0x4c887
leaq -0x570(%rbp), %rdi
callq 0x11360
leaq -0x5b0(%rbp), %rdi
callq 0x25b00
leaq -0x5eb(%rbp), %rdi
callq 0x279c0
leaq -0x5e0(%rbp), %rax
movq %rax, -0xc50(%rbp)
addq $0x20, %rax
movq %rax, -0xc48(%rbp)
movq -0xc48(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xc58(%rbp)
callq 0x11360
movq -0xc50(%rbp), %rcx
movq -0xc58(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xc48(%rbp)
jne 0x4c8c4
leaq -0x5e9(%rbp), %rdi
callq 0x11600
leaq -0x590(%rbp), %rdi
callq 0x11360
leaq -0x591(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4caa8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4ca70
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4ca00
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c9a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4c99c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x570(%rbp), %rdi
callq 0x11360
leaq -0x5b0(%rbp), %rdi
callq 0x25b00
leaq -0x5eb(%rbp), %rdi
callq 0x279c0
leaq -0x5e0(%rbp), %rax
movq %rax, -0xc68(%rbp)
addq $0x20, %rax
movq %rax, -0xc60(%rbp)
movq -0xc60(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xc70(%rbp)
callq 0x11360
movq -0xc68(%rbp), %rcx
movq -0xc70(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xc60(%rbp)
jne 0x4c9cd
jmp 0x4ca00
leaq -0x5e9(%rbp), %rdi
callq 0x11600
testb $0x1, -0x5ea(%rbp)
jne 0x4ca17
jmp 0x4ca64
movq -0x5e8(%rbp), %rax
leaq -0x5e0(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xc78(%rbp)
je 0x4ca62
movq -0xc78(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xc80(%rbp)
callq 0x11360
movq -0xc80(%rbp), %rax
leaq -0x5e0(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xc78(%rbp)
jne 0x4ca31
jmp 0x4ca64
leaq -0x590(%rbp), %rdi
callq 0x11360
leaq -0x591(%rbp), %rdi
callq 0x11600
jmp 0x4cadb
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4ca8c
leaq -0x60(%rbp), %rdi
leaq -0x528(%rbp), %rsi
callq 0x57650
jmp 0x4ca9e
movl $0x0, -0x1a0(%rbp)
leaq -0x528(%rbp), %rdi
callq 0x24b20
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4d49d
jmp 0x4cac4
jmp 0x4d0d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x528(%rbp), %rdi
callq 0x24b20
jmp 0x4d4be
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4cafa
leaq -0x608(%rbp), %rdi
callq 0x57390
movq -0x9a8(%rbp), %rax
cmpl $0x0, 0xd0(%rax)
je 0x4cc94
movq -0x9a8(%rbp), %rax
cmpl $0x7d, 0xd0(%rax)
jne 0x4cb2f
jmp 0x4cc94
movq -0x9a8(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x618(%rbp), %rdi
callq 0x39980
jmp 0x4cb48
leaq -0x618(%rbp), %rdi
callq 0x57630
testb $0x1, %al
jne 0x4cb5a
jmp 0x4cba2
leaq -0x608(%rbp), %rdi
leaq -0x618(%rbp), %rsi
callq 0x57650
jmp 0x4cb6f
jmp 0x4cc58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d0c0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4cc83
leaq -0x639(%rbp), %rdi
movq %rdi, -0xc88(%rbp)
callq 0x119d0
movq -0xc88(%rbp), %rdx
leaq 0x104663(%rip), %rsi    # 0x151226
leaq -0x638(%rbp), %rdi
callq 0x24740
jmp 0x4cbd1
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x638(%rbp), %rdx
callq 0x3f820
jmp 0x4cbf4
leaq -0x638(%rbp), %rdi
callq 0x11360
leaq -0x639(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4cc62
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4cc4a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x638(%rbp), %rdi
callq 0x11360
leaq -0x639(%rbp), %rdi
callq 0x11600
jmp 0x4cc83
movl $0x0, -0x1a0(%rbp)
leaq -0x618(%rbp), %rdi
callq 0x24b20
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4d0a2
jmp 0x4cc7e
jmp 0x4cb06
leaq -0x618(%rbp), %rdi
callq 0x24b20
jmp 0x4d0c0
movq -0x9a8(%rbp), %rax
cmpl $0x7d, 0xd0(%rax)
je 0x4cfb1
leaq -0x681(%rbp), %rdi
movq %rdi, -0xc90(%rbp)
callq 0x119d0
movq -0xc90(%rbp), %rdx
leaq 0x1044c7(%rip), %rsi    # 0x151190
leaq -0x680(%rbp), %rdi
callq 0x24740
jmp 0x4ccd7
movb $0x1, -0x6da(%rbp)
leaq -0x6d0(%rbp), %rax
movq %rax, -0xca0(%rbp)
movq %rax, -0x6d8(%rbp)
leaq -0x6d9(%rbp), %rdi
movq %rdi, -0xc98(%rbp)
callq 0x119d0
movq -0xca0(%rbp), %rdi
movq -0xc98(%rbp), %rdx
leaq 0x1085ee(%rip), %rsi    # 0x155309
callq 0x24740
jmp 0x4cd22
movb $0x0, -0x6da(%rbp)
leaq -0x6d0(%rbp), %rax
movq %rax, -0x6b0(%rbp)
movq $0x1, -0x6a8(%rbp)
leaq -0x6db(%rbp), %rdi
movq %rdi, -0xca8(%rbp)
callq 0x26e30
movq -0xca8(%rbp), %rcx
movq -0x6b0(%rbp), %rsi
movq -0x6a8(%rbp), %rdx
leaq -0x6a0(%rbp), %rdi
callq 0x2d6a0
jmp 0x4cd78
leaq -0x660(%rbp), %rdi
leaq -0x680(%rbp), %rsi
leaq -0x6a0(%rbp), %rdx
callq 0x9e250
jmp 0x4cd94
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x660(%rbp), %rdx
callq 0x3f820
jmp 0x4cdb7
leaq -0x660(%rbp), %rdi
callq 0x11360
leaq -0x6a0(%rbp), %rdi
callq 0x25b00
leaq -0x6db(%rbp), %rdi
callq 0x279c0
leaq -0x6d0(%rbp), %rax
movq %rax, -0xcb8(%rbp)
addq $0x20, %rax
movq %rax, -0xcb0(%rbp)
movq -0xcb0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xcc0(%rbp)
callq 0x11360
movq -0xcb8(%rbp), %rcx
movq -0xcc0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xcb0(%rbp)
jne 0x4cdf4
leaq -0x6d9(%rbp), %rdi
callq 0x11600
leaq -0x680(%rbp), %rdi
callq 0x11360
leaq -0x681(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4d0a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4cfa0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4cf30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4ced8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4cecc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x660(%rbp), %rdi
callq 0x11360
leaq -0x6a0(%rbp), %rdi
callq 0x25b00
leaq -0x6db(%rbp), %rdi
callq 0x279c0
leaq -0x6d0(%rbp), %rax
movq %rax, -0xcd0(%rbp)
addq $0x20, %rax
movq %rax, -0xcc8(%rbp)
movq -0xcc8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xcd8(%rbp)
callq 0x11360
movq -0xcd0(%rbp), %rcx
movq -0xcd8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xcc8(%rbp)
jne 0x4cefd
jmp 0x4cf30
leaq -0x6d9(%rbp), %rdi
callq 0x11600
testb $0x1, -0x6da(%rbp)
jne 0x4cf47
jmp 0x4cf94
movq -0x6d8(%rbp), %rax
leaq -0x6d0(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xce0(%rbp)
je 0x4cf92
movq -0xce0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xce8(%rbp)
callq 0x11360
movq -0xce8(%rbp), %rax
leaq -0x6d0(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xce0(%rbp)
jne 0x4cf61
jmp 0x4cf94
leaq -0x680(%rbp), %rdi
callq 0x11360
leaq -0x681(%rbp), %rdi
callq 0x11600
jmp 0x4d0c0
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4cfbf
leaq -0x608(%rbp), %rdi
callq 0x593c0
cmpq $0x1, %rax
jne 0x4cff4
xorl %eax, %eax
movl %eax, %esi
leaq -0x608(%rbp), %rdi
callq 0x593e0
movq %rax, %rsi
leaq -0x60(%rbp), %rdi
callq 0x57650
jmp 0x4cfef
jmp 0x4d098
movq -0x9a8(%rbp), %r8
movq -0x18(%rbp), %rsi
movb $0x1, -0x701(%rbp)
addq $0x58, %r8
leaq -0x700(%rbp), %rdi
leaq -0x608(%rbp), %rdx
leaq -0x701(%rbp), %rcx
callq 0x573e0
jmp 0x4d026
leaq -0x6f0(%rbp), %rdi
movq %rdi, -0xcf0(%rbp)
leaq -0x700(%rbp), %rsi
callq 0x57470
movq -0xcf0(%rbp), %rsi
leaq -0x60(%rbp), %rdi
callq 0x573b0
jmp 0x4d052
leaq -0x6f0(%rbp), %rdi
callq 0x24b20
leaq -0x700(%rbp), %rdi
callq 0x574a0
jmp 0x4d098
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x6f0(%rbp), %rdi
callq 0x24b20
leaq -0x700(%rbp), %rdi
callq 0x574a0
jmp 0x4d0c0
movl $0x0, -0x1a0(%rbp)
leaq -0x608(%rbp), %rdi
callq 0x574c0
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4d49d
jmp 0x4d0be
jmp 0x4d0d1
leaq -0x608(%rbp), %rdi
callq 0x574c0
jmp 0x4d4be
leaq -0x398(%rbp), %rax
movq %rax, -0x710(%rbp)
movq -0x710(%rbp), %rdi
callq 0x59400
movq %rax, -0x718(%rbp)
movq -0x710(%rbp), %rdi
callq 0x59430
movq %rax, -0x720(%rbp)
leaq -0x718(%rbp), %rdi
leaq -0x720(%rbp), %rsi
callq 0x59460
testb $0x1, %al
jne 0x4d11e
jmp 0x4d179
leaq -0x718(%rbp), %rdi
callq 0x594a0
movq %rax, -0x728(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x593c0
movq %rax, -0xd00(%rbp)
movq -0x728(%rbp), %rsi
leaq -0x48(%rbp), %rdi
callq 0x594c0
movq %rax, -0xcf8(%rbp)
jmp 0x4d15a
movq -0xcf8(%rbp), %rax
movq -0xd00(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x718(%rbp), %rdi
callq 0x595a0
jmp 0x4d105
movq -0x9a8(%rbp), %rax
cmpl $0x0, 0xd0(%rax)
jne 0x4d493
leaq -0x769(%rbp), %rdi
movq %rdi, -0xd08(%rbp)
callq 0x119d0
movq -0xd08(%rbp), %rdx
leaq 0x103fe2(%rip), %rsi    # 0x151190
leaq -0x768(%rbp), %rdi
callq 0x24740
jmp 0x4d1bc
movb $0x1, -0x7c2(%rbp)
leaq -0x7b8(%rbp), %rax
movq %rax, -0xd18(%rbp)
movq %rax, -0x7c0(%rbp)
leaq -0x7c1(%rbp), %rdi
movq %rdi, -0xd10(%rbp)
callq 0x119d0
movq -0xd18(%rbp), %rdi
movq -0xd10(%rbp), %rdx
leaq 0x108109(%rip), %rsi    # 0x155309
callq 0x24740
jmp 0x4d207
movb $0x0, -0x7c2(%rbp)
leaq -0x7b8(%rbp), %rax
movq %rax, -0x798(%rbp)
movq $0x1, -0x790(%rbp)
leaq -0x7c3(%rbp), %rdi
movq %rdi, -0xd20(%rbp)
callq 0x26e30
movq -0xd20(%rbp), %rcx
movq -0x798(%rbp), %rsi
movq -0x790(%rbp), %rdx
leaq -0x788(%rbp), %rdi
callq 0x2d6a0
jmp 0x4d25d
leaq -0x748(%rbp), %rdi
leaq -0x768(%rbp), %rsi
leaq -0x788(%rbp), %rdx
callq 0x9e250
jmp 0x4d279
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x748(%rbp), %rdx
callq 0x3f820
jmp 0x4d29c
leaq -0x748(%rbp), %rdi
callq 0x11360
leaq -0x788(%rbp), %rdi
callq 0x25b00
leaq -0x7c3(%rbp), %rdi
callq 0x279c0
leaq -0x7b8(%rbp), %rax
movq %rax, -0xd30(%rbp)
addq $0x20, %rax
movq %rax, -0xd28(%rbp)
movq -0xd28(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xd38(%rbp)
callq 0x11360
movq -0xd30(%rbp), %rcx
movq -0xd38(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xd28(%rbp)
jne 0x4d2d9
leaq -0x7c1(%rbp), %rdi
callq 0x11600
leaq -0x768(%rbp), %rdi
callq 0x11360
leaq -0x769(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4d49d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d485
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d415
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d3bd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d3b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x748(%rbp), %rdi
callq 0x11360
leaq -0x788(%rbp), %rdi
callq 0x25b00
leaq -0x7c3(%rbp), %rdi
callq 0x279c0
leaq -0x7b8(%rbp), %rax
movq %rax, -0xd48(%rbp)
addq $0x20, %rax
movq %rax, -0xd40(%rbp)
movq -0xd40(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xd50(%rbp)
callq 0x11360
movq -0xd48(%rbp), %rcx
movq -0xd50(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xd40(%rbp)
jne 0x4d3e2
jmp 0x4d415
leaq -0x7c1(%rbp), %rdi
callq 0x11600
testb $0x1, -0x7c2(%rbp)
jne 0x4d42c
jmp 0x4d479
movq -0x7c0(%rbp), %rax
leaq -0x7b8(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xd58(%rbp)
je 0x4d477
movq -0xd58(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xd60(%rbp)
callq 0x11360
movq -0xd60(%rbp), %rax
leaq -0x7b8(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xd58(%rbp)
jne 0x4d446
jmp 0x4d479
leaq -0x768(%rbp), %rdi
callq 0x11360
leaq -0x769(%rbp), %rdi
callq 0x11600
jmp 0x4d4be
movl $0x0, -0x1a0(%rbp)
leaq -0x398(%rbp), %rdi
callq 0x574c0
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4de5c
jmp 0x4d4b9
jmp 0x4bac9
leaq -0x398(%rbp), %rdi
callq 0x574c0
jmp 0x4de8a
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4d4dd
movq -0x9a8(%rbp), %r9
movq -0x18(%rbp), %rsi
addq $0x58, %r9
leaq -0x7d8(%rbp), %rdi
leaq -0x100(%rbp), %rdx
leaq -0x48(%rbp), %rcx
leaq -0x60(%rbp), %r8
callq 0x595c0
jmp 0x4d509
movq -0x9a8(%rbp), %rax
cmpl $-0x6, 0xd0(%rax)
jne 0x4de1a
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4d52b
movq -0x9a8(%rbp), %rax
cmpl $0x7b, 0xd0(%rax)
je 0x4d85f
leaq -0x819(%rbp), %rdi
movq %rdi, -0xd68(%rbp)
callq 0x119d0
movq -0xd68(%rbp), %rdx
leaq 0x103c30(%rip), %rsi    # 0x151190
leaq -0x818(%rbp), %rdi
callq 0x24740
jmp 0x4d56e
movb $0x1, -0x872(%rbp)
leaq -0x868(%rbp), %rax
movq %rax, -0xd78(%rbp)
movq %rax, -0x870(%rbp)
leaq -0x871(%rbp), %rdi
movq %rdi, -0xd70(%rbp)
callq 0x119d0
movq -0xd78(%rbp), %rdi
movq -0xd70(%rbp), %rdx
leaq 0x103d8f(%rip), %rsi    # 0x151341
callq 0x24740
jmp 0x4d5b9
movb $0x0, -0x872(%rbp)
leaq -0x868(%rbp), %rax
movq %rax, -0x848(%rbp)
movq $0x1, -0x840(%rbp)
leaq -0x873(%rbp), %rdi
movq %rdi, -0xd80(%rbp)
callq 0x26e30
movq -0xd80(%rbp), %rcx
movq -0x848(%rbp), %rsi
movq -0x840(%rbp), %rdx
leaq -0x838(%rbp), %rdi
callq 0x2d6a0
jmp 0x4d60f
leaq -0x7f8(%rbp), %rdi
leaq -0x818(%rbp), %rsi
leaq -0x838(%rbp), %rdx
callq 0x9e250
jmp 0x4d62b
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x7f8(%rbp), %rdx
callq 0x3f820
jmp 0x4d64e
leaq -0x7f8(%rbp), %rdi
callq 0x11360
leaq -0x838(%rbp), %rdi
callq 0x25b00
leaq -0x873(%rbp), %rdi
callq 0x279c0
leaq -0x868(%rbp), %rax
movq %rax, -0xd90(%rbp)
addq $0x20, %rax
movq %rax, -0xd88(%rbp)
movq -0xd88(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xd98(%rbp)
callq 0x11360
movq -0xd90(%rbp), %rcx
movq -0xd98(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xd88(%rbp)
jne 0x4d68b
leaq -0x871(%rbp), %rdi
callq 0x11600
leaq -0x818(%rbp), %rdi
callq 0x11360
leaq -0x819(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4de40
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4de4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d84e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d7de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d786
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d77a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x7f8(%rbp), %rdi
callq 0x11360
leaq -0x838(%rbp), %rdi
callq 0x25b00
leaq -0x873(%rbp), %rdi
callq 0x279c0
leaq -0x868(%rbp), %rax
movq %rax, -0xda8(%rbp)
addq $0x20, %rax
movq %rax, -0xda0(%rbp)
movq -0xda0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xdb0(%rbp)
callq 0x11360
movq -0xda8(%rbp), %rcx
movq -0xdb0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xda0(%rbp)
jne 0x4d7ab
jmp 0x4d7de
leaq -0x871(%rbp), %rdi
callq 0x11600
testb $0x1, -0x872(%rbp)
jne 0x4d7f5
jmp 0x4d842
movq -0x870(%rbp), %rax
leaq -0x868(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xdb8(%rbp)
je 0x4d840
movq -0xdb8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xdc0(%rbp)
callq 0x11360
movq -0xdc0(%rbp), %rax
leaq -0x868(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xdb8(%rbp)
jne 0x4d80f
jmp 0x4d842
leaq -0x818(%rbp), %rdi
callq 0x11360
leaq -0x819(%rbp), %rdi
callq 0x11600
jmp 0x4de4e
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4d86d
leaq -0x890(%rbp), %rdi
callq 0x57390
movq -0x9a8(%rbp), %rax
cmpl $0x0, 0xd0(%rax)
je 0x4da07
movq -0x9a8(%rbp), %rax
cmpl $0x7d, 0xd0(%rax)
jne 0x4d8a2
jmp 0x4da07
movq -0x9a8(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x8a0(%rbp), %rdi
callq 0x39980
jmp 0x4d8bb
leaq -0x8a0(%rbp), %rdi
callq 0x57630
testb $0x1, %al
jne 0x4d8cd
jmp 0x4d915
leaq -0x890(%rbp), %rdi
leaq -0x8a0(%rbp), %rsi
callq 0x57650
jmp 0x4d8e2
jmp 0x4d9cb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4de0c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d9f6
leaq -0x8c1(%rbp), %rdi
movq %rdi, -0xdc8(%rbp)
callq 0x119d0
movq -0xdc8(%rbp), %rdx
leaq 0x1038f0(%rip), %rsi    # 0x151226
leaq -0x8c0(%rbp), %rdi
callq 0x24740
jmp 0x4d944
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x8c0(%rbp), %rdx
callq 0x3f820
jmp 0x4d967
leaq -0x8c0(%rbp), %rdi
callq 0x11360
leaq -0x8c1(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4d9d5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4d9bd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x8c0(%rbp), %rdi
callq 0x11360
leaq -0x8c1(%rbp), %rdi
callq 0x11600
jmp 0x4d9f6
movl $0x0, -0x1a0(%rbp)
leaq -0x8a0(%rbp), %rdi
callq 0x24b20
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4ddc8
jmp 0x4d9f1
jmp 0x4d879
leaq -0x8a0(%rbp), %rdi
callq 0x24b20
jmp 0x4de0c
movq -0x9a8(%rbp), %rax
cmpl $0x7d, 0xd0(%rax)
je 0x4dd24
leaq -0x909(%rbp), %rdi
movq %rdi, -0xdd0(%rbp)
callq 0x119d0
movq -0xdd0(%rbp), %rdx
leaq 0x103754(%rip), %rsi    # 0x151190
leaq -0x908(%rbp), %rdi
callq 0x24740
jmp 0x4da4a
movb $0x1, -0x962(%rbp)
leaq -0x958(%rbp), %rax
movq %rax, -0xde0(%rbp)
movq %rax, -0x960(%rbp)
leaq -0x961(%rbp), %rdi
movq %rdi, -0xdd8(%rbp)
callq 0x119d0
movq -0xde0(%rbp), %rdi
movq -0xdd8(%rbp), %rdx
leaq 0x10787b(%rip), %rsi    # 0x155309
callq 0x24740
jmp 0x4da95
movb $0x0, -0x962(%rbp)
leaq -0x958(%rbp), %rax
movq %rax, -0x938(%rbp)
movq $0x1, -0x930(%rbp)
leaq -0x963(%rbp), %rdi
movq %rdi, -0xde8(%rbp)
callq 0x26e30
movq -0xde8(%rbp), %rcx
movq -0x938(%rbp), %rsi
movq -0x930(%rbp), %rdx
leaq -0x928(%rbp), %rdi
callq 0x2d6a0
jmp 0x4daeb
leaq -0x8e8(%rbp), %rdi
leaq -0x908(%rbp), %rsi
leaq -0x928(%rbp), %rdx
callq 0x9e250
jmp 0x4db07
movq -0x9a8(%rbp), %rsi
movq -0x9b8(%rbp), %rdi
movq %rsi, %rcx
addq $0x58, %rcx
leaq -0x8e8(%rbp), %rdx
callq 0x3f820
jmp 0x4db2a
leaq -0x8e8(%rbp), %rdi
callq 0x11360
leaq -0x928(%rbp), %rdi
callq 0x25b00
leaq -0x963(%rbp), %rdi
callq 0x279c0
leaq -0x958(%rbp), %rax
movq %rax, -0xdf8(%rbp)
addq $0x20, %rax
movq %rax, -0xdf0(%rbp)
movq -0xdf0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xe00(%rbp)
callq 0x11360
movq -0xdf8(%rbp), %rcx
movq -0xe00(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xdf0(%rbp)
jne 0x4db67
leaq -0x961(%rbp), %rdi
callq 0x11600
leaq -0x908(%rbp), %rdi
callq 0x11360
leaq -0x909(%rbp), %rdi
callq 0x11600
movl $0x1, -0x1a0(%rbp)
jmp 0x4ddc8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4dd13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4dca3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4dc4b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x4dc3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x8e8(%rbp), %rdi
callq 0x11360
leaq -0x928(%rbp), %rdi
callq 0x25b00
leaq -0x963(%rbp), %rdi
callq 0x279c0
leaq -0x958(%rbp), %rax
movq %rax, -0xe10(%rbp)
addq $0x20, %rax
movq %rax, -0xe08(%rbp)
movq -0xe08(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xe18(%rbp)
callq 0x11360
movq -0xe10(%rbp), %rcx
movq -0xe18(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xe08(%rbp)
jne 0x4dc70
jmp 0x4dca3
leaq -0x961(%rbp), %rdi
callq 0x11600
testb $0x1, -0x962(%rbp)
jne 0x4dcba
jmp 0x4dd07
movq -0x960(%rbp), %rax
leaq -0x958(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0xe20(%rbp)
je 0x4dd05
movq -0xe20(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xe28(%rbp)
callq 0x11360
movq -0xe28(%rbp), %rax
leaq -0x958(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0xe20(%rbp)
jne 0x4dcd4
jmp 0x4dd07
leaq -0x908(%rbp), %rdi
callq 0x11360
leaq -0x909(%rbp), %rdi
callq 0x11600
jmp 0x4de0c
movq -0x9a8(%rbp), %rdi
callq 0x38fd0
jmp 0x4dd32
leaq -0x7d8(%rbp), %rdi
callq 0x59660
movq -0x9a8(%rbp), %r8
movq %rax, -0xe30(%rbp)
movq -0x18(%rbp), %rsi
movb $0x1, -0x989(%rbp)
addq $0x58, %r8
leaq -0x988(%rbp), %rdi
leaq -0x890(%rbp), %rdx
leaq -0x989(%rbp), %rcx
callq 0x573e0
jmp 0x4dd77
leaq -0x978(%rbp), %rdi
movq %rdi, -0xe38(%rbp)
leaq -0x988(%rbp), %rsi
callq 0x57470
movq -0xe30(%rbp), %rdi
movq -0xe38(%rbp), %rsi
callq 0xe2d10
jmp 0x4dda6
leaq -0x978(%rbp), %rdi
callq 0x24b20
leaq -0x988(%rbp), %rdi
callq 0x574a0
movl $0x0, -0x1a0(%rbp)
leaq -0x890(%rbp), %rdi
callq 0x574c0
movl -0x1a0(%rbp), %eax
testl %eax, %eax
jne 0x4de40
jmp 0x4dde0
jmp 0x4de1a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0x978(%rbp), %rdi
callq 0x24b20
leaq -0x988(%rbp), %rdi
callq 0x574a0
leaq -0x890(%rbp), %rdi
callq 0x574c0
jmp 0x4de4e
movq -0x18(%rbp), %rdi
callq 0x58270
movq -0x9b8(%rbp), %rdi
leaq -0x7d8(%rbp), %rsi
callq 0x59680
movl $0x1, -0x1a0(%rbp)
leaq -0x7d8(%rbp), %rdi
callq 0x596b0
jmp 0x4de5c
leaq -0x7d8(%rbp), %rdi
callq 0x596b0
jmp 0x4de8a
leaq -0x100(%rbp), %rdi
callq 0x24b20
leaq -0x60(%rbp), %rdi
callq 0x574c0
leaq -0x48(%rbp), %rdi
callq 0x596d0
movq -0x9b0(%rbp), %rax
addq $0xe40, %rsp            # imm = 0xE40
popq %rbp
retq
leaq -0x100(%rbp), %rdi
callq 0x24b20
leaq -0x60(%rbp), %rdi
callq 0x574c0
leaq -0x48(%rbp), %rdi
callq 0x596d0
movq -0xe8(%rbp), %rdi
callq 0x119c0
nopw %cs:(%rax,%rax)