// File: /workspace/github_c_makefile_star2_O0/OstCollector[P]config2c/config2c.c
// Function: parse_struct
static void parse_struct(string name, const struct node_member_list *list)
{
	const struct node_member_list *memb;
	const struct node_alter_list *alt;
	long cnt, idx;
	struct type_decl decl;
	struct parse_opts opts;

	cnt = len_member_list(list);
	opts.mode = PARSE_STRUCT;

	osi(0, "static int parse__struct_%s(struct pass_to_conv *ctx, struct %s *value, "
			"const struct node_value *input)\n", name, name);
	osi(0, "{\n");
	osi(1, "int inited[%ld] = {};\n", cnt);
	osi(1, "int ret;\n");
	osi(1, "long i, len;\n");
	osi(1, "struct node_members *memb, default_memb;\n");
	osi(1, "struct node_elems *elem;\n");
	osi(1, "struct pass_to_bison opaque;\n");
	for (memb = list, idx = 0; memb; memb = memb->next, ++idx) {
		if (memb->default_val) {
			osi(1, "const char *default_%ld = %s;\n",
					idx, memb->default_val);
		}
	}
	osi(1, "if (input->type != VAL_MEMBERS) {\n");
	osi(2, "ctx->node = input;\n");
	osi(2, "ctx->msg = \"invalid type, expecting list of members.\";\n");
	osi(2, "return -EINVAL;\n");
	osi(1, "}\n"); /* if */
	opts.is_default = 0;
	osi(1, "for (memb = input->members; memb; memb = memb->next) {\n");
	osi(2, "if (0) {\n");
	osi(3, ";\n");
	osi(2, "}\n");
	for (memb = list, idx = 0; memb; memb = memb->next, ++idx) {
		if (!memb->visible) {
			continue;
		}
		switch (memb->type) {
		case NODE_MEMBER_DEF_PRIM:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_PRIM;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_ENUM:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_ENUM;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_STRUCT:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_STRUCT;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_UNION:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_UNION;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_UNNAMED_UNION:
			opts.s.idx = idx;
			opts.s.opt_var = memb->alt_enum;
			for (alt = memb->alters; alt; alt = alt->next) {
				switch (alt->type) {
				case NODE_ALTER_DEF_PRIM:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_PRIM;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				case NODE_ALTER_DEF_ENUM:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_ENUM;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				case NODE_ALTER_DEF_STRUCT:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_STRUCT;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				default:
					fprintf(stderr, "error at %d (%s) : impossible err\n",
							__LINE__, __func__);
					exit(EXIT_FAILURE);
				}
			}
		}
	}
	osi(2, "ctx->node = memb->value;\n");
	osi(2, "ctx->msg = \"unknown member.\";\n");
	osi(2, "ret = -EINVAL;\n");
	osi(2, "goto error_all;\n");
	osi(1, "}\n"); /* for */
	opts.is_default = 1;
	for (memb = list, idx = 0; memb; memb = memb->next, ++idx) {
		if (memb->visible && !memb->default_val) {
			osi(1, "if (!inited[%ld]) {\n", idx);
			osi(2, "ctx->node = input;\n");
			osi(2, "ctx->msg = \"some field is not initialized.\";\n");
			osi(2, "ret = -EINVAL;\n");
			osi(2, "goto error_all;\n");
			osi(1, "}\n"); /* if */
			continue;
		}
		if (!memb->default_val) {
			continue;
		}
		osi(1, "if (!inited[%ld]) {\n", idx);
		osi(2, "init_pass_to_bison(&opaque, ctx->pool);\n");
		osi(2, "ret = yacc_parse_string(default_%ld, &ctx->msg, &opaque);\n", idx);
		osi(2, "if (ret) {\n");
		osi(3, "ctx->node = input;\n");
		osi(3, "goto error_all;\n");
		osi(2, "}\n"); /* if ret */
		if (memb->type != NODE_MEMBER_DEF_UNNAMED_UNION) {
			osi(2, "default_memb.next = NULL;\n");
			osi(2, "default_memb.name = \"%s\";\n", memb->in_name);
			osi(2, "default_memb.value = opaque.output;\n");
			osi(2, "default_memb.value->parent = input;\n");
			osi(2, "default_memb.value->name_copy = \"%s\";\n", memb->in_name);
			osi(2, "memb = &default_memb;\n");
		} else {
			osi(2, "if (opaque.output->type != VAL_MEMBERS) {\n");
			osi(3, "ctx->node = input;\n");
			osi(3, "ctx->msg = \"invalid initial value: "
					"value not selected\";\n");
			osi(2, "}\n"); /* if invalid type */
			
			osi(2, "if (len_node_members(opaque.output->members) != 1) {\n");
			osi(3, "ctx->node = input;\n");
			osi(3, "ctx->msg = \"invalid initial value: "
					"multiple value selected\";\n");
			osi(2, "}\n"); /* if invalid type */

			osi(2, "memb = opaque.output->members;\n");
			osi(2, "memb->value->parent = input;\n");
		}
		osi(2, "if (0) {\n");
		osi(3, ";\n");
		osi(2, "}\n");
		switch (memb->type) {
		case NODE_MEMBER_DEF_PRIM:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_PRIM;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_ENUM:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_ENUM;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_STRUCT:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_STRUCT;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_UNION:
			opts.s.idx = idx;
			opts.s.opt_var = NULL;
			opts.s.opt_val = NULL;
			decl.type = TYPE_DECL_UNION;
			decl.type_name = memb->type_name;
			helper_parse(&memb->vec, &decl, memb->in_name,
					memb->mapped, &opts, 2);
			break;
		case NODE_MEMBER_DEF_UNNAMED_UNION:
			opts.s.idx = idx;
			opts.s.opt_var = memb->alt_enum;
			for (alt = memb->alters; alt; alt = alt->next) {
				switch (alt->type) {
				case NODE_ALTER_DEF_PRIM:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_PRIM;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				case NODE_ALTER_DEF_ENUM:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_ENUM;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				case NODE_ALTER_DEF_STRUCT:
					opts.s.idx = idx;
					opts.s.opt_val = alt->enum_val;
					decl.type = TYPE_DECL_STRUCT;
					decl.type_name = alt->type_name;
					helper_parse(&alt->vec, &decl, alt->in_name,
							alt->mapped, &opts, 2);
					break;
				default:
					fprintf(stderr, "error at %d (%s) : impossible err\n",
							__LINE__, __func__);
					exit(EXIT_FAILURE);
				}
			}
		}
		osi(2, "else {\n");
		osi(3, "ctx->node = memb->value;\n");
		osi(3, "ctx->msg = \"unknown member.\";\n");
		osi(3, "ret = -EINVAL;\n");
		osi(3, "goto error_all;\n");
		osi(2, "}\n");
		osi(1, "}\n"); /* if !inited */
	}
	osi(1, "return 0;\n");
	osi(0, "error_all:\n");
	for (memb = list, idx = 0; memb; memb = memb->next, ++idx) {
		if (!memb->visible && !memb->default_val) {
			continue;
		}
		osi(1, "if (inited[%ld]) {\n", idx);
		switch (memb->type) {
		case NODE_MEMBER_DEF_PRIM:
			decl.type = TYPE_DECL_PRIM;
			decl.type_name = memb->type_name;
			helper_free(&memb->vec, &decl, memb->mapped, 2);
			break;
		case NODE_MEMBER_DEF_ENUM:
			decl.type = TYPE_DECL_ENUM;
			decl.type_name = memb->type_name;
			helper_free(&memb->vec, &decl, memb->mapped, 2);
			break;
		case NODE_MEMBER_DEF_STRUCT:
			decl.type = TYPE_DECL_STRUCT;
			decl.type_name = memb->type_name;
			helper_free(&memb->vec, &decl, memb->mapped, 2);
			break;
		case NODE_MEMBER_DEF_UNION:
			decl.type = TYPE_DECL_UNION;
			decl.type_name = memb->type_name;
			helper_free(&memb->vec, &decl, memb->mapped, 2);
			break;
		case NODE_MEMBER_DEF_UNNAMED_UNION:
			for (alt = memb->alters; alt; alt = alt->next) {
				osi(2, "if (value->%s == %s) {\n",
						memb->alt_enum, alt->enum_val);
				switch (alt->type) {
				case NODE_ALTER_DEF_PRIM:
					decl.type = TYPE_DECL_PRIM;
					decl.type_name = alt->type_name;
					helper_free(&alt->vec, &decl, 
							alt->mapped, 3);
					break;
				case NODE_ALTER_DEF_ENUM:
					decl.type = TYPE_DECL_ENUM;
					decl.type_name = alt->type_name;
					helper_free(&alt->vec, &decl, 
							alt->mapped, 3);
					break;
				case NODE_ALTER_DEF_STRUCT:
					decl.type = TYPE_DECL_STRUCT;
					decl.type_name = alt->type_name;
					helper_free(&alt->vec, &decl, 
							alt->mapped, 3);
					break;
				}
				osi(2, "}\n"); /* if */
			}
		}
		osi(1, "}\n"); /* if */
	}
	osi(1, "return ret;\n");
	osi(0, "}\n");
	osi(0, "\n");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
callq 0x8c90
movq %rax, -0x28(%rbp)
movl $0x0, -0x68(%rbp)
xorl %edi, %edi
callq 0x6fd0
movq 0x1701b(%rip), %rdi     # 0x1b2a0
movq -0x8(%rbp), %rdx
movq -0x8(%rbp), %rcx
leaq 0x123ed(%rip), %rsi     # 0x16681
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x42cc
movq 0x16d46(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x116a0(%rip), %rsi     # 0x15954
leaq 0x116b1(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x42ce
jmp 0x42d0
jmp 0x42d2
xorl %edi, %edi
callq 0x6fd0
movq 0x16fc0(%rip), %rdi     # 0x1b2a0
leaq 0x134ce(%rip), %rsi     # 0x177b5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x431f
movq 0x16cf3(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1164d(%rip), %rsi     # 0x15954
leaq 0x1165e(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4321
jmp 0x4323
jmp 0x4325
movl $0x1, %edi
callq 0x6fd0
movq 0x16f6a(%rip), %rdi     # 0x1b2a0
movq -0x28(%rbp), %rdx
leaq 0x123a9(%rip), %rsi     # 0x166ea
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4379
movq 0x16c99(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x115f3(%rip), %rsi     # 0x15954
leaq 0x11604(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x437b
jmp 0x437d
jmp 0x437f
movl $0x1, %edi
callq 0x6fd0
movq 0x16f10(%rip), %rdi     # 0x1b2a0
leaq 0x1236a(%rip), %rsi     # 0x16701
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x43cf
movq 0x16c43(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1159d(%rip), %rsi     # 0x15954
leaq 0x115ae(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x43d1
jmp 0x43d3
jmp 0x43d5
movl $0x1, %edi
callq 0x6fd0
movq 0x16eba(%rip), %rdi     # 0x1b2a0
leaq 0x1231e(%rip), %rsi     # 0x1670b
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4425
movq 0x16bed(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11547(%rip), %rsi     # 0x15954
leaq 0x11558(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4427
jmp 0x4429
jmp 0x442b
movl $0x1, %edi
callq 0x6fd0
movq 0x16e64(%rip), %rdi     # 0x1b2a0
leaq 0x122d6(%rip), %rsi     # 0x16719
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x447b
movq 0x16b97(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x114f1(%rip), %rsi     # 0x15954
leaq 0x11502(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x447d
jmp 0x447f
jmp 0x4481
movl $0x1, %edi
callq 0x6fd0
movq 0x16e0e(%rip), %rdi     # 0x1b2a0
leaq 0x122aa(%rip), %rsi     # 0x16743
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x44d1
movq 0x16b41(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1149b(%rip), %rsi     # 0x15954
leaq 0x114ac(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x44d3
jmp 0x44d5
jmp 0x44d7
movl $0x1, %edi
callq 0x6fd0
movq 0x16db8(%rip), %rdi     # 0x1b2a0
leaq 0x1226e(%rip), %rsi     # 0x1675d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4527
movq 0x16aeb(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11445(%rip), %rsi     # 0x15954
leaq 0x11456(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4529
jmp 0x452b
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq $0x0, -0x30(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x45d3
movq -0x18(%rbp), %rax
cmpq $0x0, 0x38(%rax)
je 0x45b5
jmp 0x4553
movl $0x1, %edi
callq 0x6fd0
movq 0x16d3c(%rip), %rdi     # 0x1b2a0
movq -0x30(%rbp), %rdx
movq -0x18(%rbp), %rax
movq 0x38(%rax), %rcx
leaq 0x12204(%rip), %rsi     # 0x1677b
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x45af
movq 0x16a63(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x113bd(%rip), %rsi     # 0x15954
leaq 0x113ce(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x45b1
jmp 0x45b3
jmp 0x45b5
jmp 0x45b7
movq -0x18(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x30(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x30(%rbp)
jmp 0x453b
jmp 0x45d5
movl $0x1, %edi
callq 0x6fd0
movq 0x16cba(%rip), %rdi     # 0x1b2a0
leaq 0x121ad(%rip), %rsi     # 0x1679a
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4625
movq 0x169ed(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11347(%rip), %rsi     # 0x15954
leaq 0x11358(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4627
jmp 0x4629
jmp 0x462b
movl $0x2, %edi
callq 0x6fd0
movq 0x16c64(%rip), %rdi     # 0x1b2a0
leaq 0x1217a(%rip), %rsi     # 0x167bd
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x467b
movq 0x16997(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x112f1(%rip), %rsi     # 0x15954
leaq 0x11302(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x467d
jmp 0x467f
jmp 0x4681
movl $0x2, %edi
callq 0x6fd0
movq 0x16c0e(%rip), %rdi     # 0x1b2a0
leaq 0x12138(%rip), %rsi     # 0x167d1
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x46d1
movq 0x16941(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1129b(%rip), %rsi     # 0x15954
leaq 0x112ac(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x46d3
jmp 0x46d5
jmp 0x46d7
movl $0x2, %edi
callq 0x6fd0
movq 0x16bb8(%rip), %rdi     # 0x1b2a0
leaq 0x1211a(%rip), %rsi     # 0x16809
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4727
movq 0x168eb(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11245(%rip), %rsi     # 0x15954
leaq 0x11256(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4729
jmp 0x472b
jmp 0x472d
movl $0x1, %edi
callq 0x6fd0
movq 0x16b62(%rip), %rdi     # 0x1b2a0
leaq 0x11718(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x477d
movq 0x16895(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x111ef(%rip), %rsi     # 0x15954
leaq 0x11200(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x477f
jmp 0x4781
movl $0x0, -0x48(%rbp)
movl $0x1, %edi
callq 0x6fd0
movq 0x16b07(%rip), %rdi     # 0x1b2a0
leaq 0x1207a(%rip), %rsi     # 0x1681a
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x47d8
movq 0x1683a(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11194(%rip), %rsi     # 0x15954
leaq 0x111a5(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x47da
jmp 0x47dc
jmp 0x47de
movl $0x2, %edi
callq 0x6fd0
movq 0x16ab1(%rip), %rdi     # 0x1b2a0
leaq 0x1205c(%rip), %rsi     # 0x16852
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x482e
movq 0x167e4(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1113e(%rip), %rsi     # 0x15954
leaq 0x1114f(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4830
jmp 0x4832
jmp 0x4834
movl $0x3, %edi
callq 0x6fd0
movq 0x16a5b(%rip), %rdi     # 0x1b2a0
leaq 0x12443(%rip), %rsi     # 0x16c8f
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4884
movq 0x1678e(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x110e8(%rip), %rsi     # 0x15954
leaq 0x110f9(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4886
jmp 0x4888
jmp 0x488a
movl $0x2, %edi
callq 0x6fd0
movq 0x16a05(%rip), %rdi     # 0x1b2a0
leaq 0x115bb(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x48da
movq 0x16738(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11092(%rip), %rsi     # 0x15954
leaq 0x110a3(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x48dc
jmp 0x48de
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq $0x0, -0x30(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x4c71
movq -0x18(%rbp), %rax
cmpl $0x0, 0x40(%rax)
jne 0x4908
jmp 0x4c55
movq -0x18(%rbp), %rax
movl 0x8(%rax), %eax
movq %rax, -0x70(%rbp)
subq $0x4, %rax
ja 0x4c53
movq -0x70(%rbp), %rax
leaq 0x10734(%rip), %rcx     # 0x1505c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x0, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c53
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x1, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c53
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x2, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c53
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x3, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c53
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x58(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x4c51
movq -0x20(%rbp), %rax
movl 0x8(%rax), %eax
movl %eax, -0x74(%rbp)
testl %eax, %eax
je 0x4b03
jmp 0x4ae8
movl -0x74(%rbp), %eax
subl $0x1, %eax
je 0x4b5e
jmp 0x4af2
movl -0x74(%rbp), %eax
subl $0x2, %eax
je 0x4bb9
jmp 0x4c11
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x0, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c3f
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x1, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c3f
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x2, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x4c3f
movq 0x163d8(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x11c3a(%rip), %rsi     # 0x1685c
movl $0x453, %edx            # imm = 0x453
leaq 0x11c51(%rip), %rcx     # 0x1687f
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4c41
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
jmp 0x4acd
jmp 0x4c53
jmp 0x4c55
movq -0x18(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x30(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x30(%rbp)
jmp 0x48ee
jmp 0x4c73
movl $0x2, %edi
callq 0x6fd0
movq 0x1661c(%rip), %rdi     # 0x1b2a0
leaq 0x11c01(%rip), %rsi     # 0x1688c
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4cc3
movq 0x1634f(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10ca9(%rip), %rsi     # 0x15954
leaq 0x10cba(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4cc5
jmp 0x4cc7
jmp 0x4cc9
movl $0x2, %edi
callq 0x6fd0
movq 0x165c6(%rip), %rdi     # 0x1b2a0
leaq 0x11bc5(%rip), %rsi     # 0x168a6
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4d19
movq 0x162f9(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10c53(%rip), %rsi     # 0x15954
leaq 0x10c64(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4d1b
jmp 0x4d1d
jmp 0x4d1f
movl $0x2, %edi
callq 0x6fd0
movq 0x16570(%rip), %rdi     # 0x1b2a0
leaq 0x11b8e(%rip), %rsi     # 0x168c5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4d6f
movq 0x162a3(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10bfd(%rip), %rsi     # 0x15954
leaq 0x10c0e(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4d71
jmp 0x4d73
jmp 0x4d75
movl $0x2, %edi
callq 0x6fd0
movq 0x1651a(%rip), %rdi     # 0x1b2a0
leaq 0x11b48(%rip), %rsi     # 0x168d5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4dc5
movq 0x1624d(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10ba7(%rip), %rsi     # 0x15954
leaq 0x10bb8(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4dc7
jmp 0x4dc9
jmp 0x4dcb
movl $0x1, %edi
callq 0x6fd0
movq 0x164c4(%rip), %rdi     # 0x1b2a0
leaq 0x1107a(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4e1b
movq 0x161f7(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10b51(%rip), %rsi     # 0x15954
leaq 0x10b62(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4e1d
jmp 0x4e1f
movl $0x1, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq $0x0, -0x30(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x5f30
movq -0x18(%rbp), %rax
cmpl $0x0, 0x40(%rax)
je 0x506b
movq -0x18(%rbp), %rax
cmpq $0x0, 0x38(%rax)
jne 0x506b
jmp 0x4e60
movl $0x1, %edi
callq 0x6fd0
movq 0x1642f(%rip), %rdi     # 0x1b2a0
movq -0x30(%rbp), %rdx
leaq 0x11a6a(%rip), %rsi     # 0x168e6
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4eb4
movq 0x1615e(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10ab8(%rip), %rsi     # 0x15954
leaq 0x10ac9(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4eb6
jmp 0x4eb8
jmp 0x4eba
movl $0x2, %edi
callq 0x6fd0
movq 0x163d5(%rip), %rdi     # 0x1b2a0
leaq 0x118eb(%rip), %rsi     # 0x167bd
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4f0a
movq 0x16108(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10a62(%rip), %rsi     # 0x15954
leaq 0x10a73(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4f0c
jmp 0x4f0e
jmp 0x4f10
movl $0x2, %edi
callq 0x6fd0
movq 0x1637f(%rip), %rdi     # 0x1b2a0
leaq 0x119d3(%rip), %rsi     # 0x168fb
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4f60
movq 0x160b2(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10a0c(%rip), %rsi     # 0x15954
leaq 0x10a1d(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4f62
jmp 0x4f64
jmp 0x4f66
movl $0x2, %edi
callq 0x6fd0
movq 0x16329(%rip), %rdi     # 0x1b2a0
leaq 0x11947(%rip), %rsi     # 0x168c5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x4fb6
movq 0x1605c(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x109b6(%rip), %rsi     # 0x15954
leaq 0x109c7(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x4fb8
jmp 0x4fba
jmp 0x4fbc
movl $0x2, %edi
callq 0x6fd0
movq 0x162d3(%rip), %rdi     # 0x1b2a0
leaq 0x11901(%rip), %rsi     # 0x168d5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x500c
movq 0x16006(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10960(%rip), %rsi     # 0x15954
leaq 0x10971(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x500e
jmp 0x5010
jmp 0x5012
movl $0x1, %edi
callq 0x6fd0
movq 0x1627d(%rip), %rdi     # 0x1b2a0
leaq 0x10e33(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5062
movq 0x15fb0(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1090a(%rip), %rsi     # 0x15954
leaq 0x1091b(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5064
jmp 0x5066
jmp 0x5f14
movq -0x18(%rbp), %rax
cmpq $0x0, 0x38(%rax)
jne 0x507b
jmp 0x5f14
jmp 0x507d
movl $0x1, %edi
callq 0x6fd0
movq 0x16212(%rip), %rdi     # 0x1b2a0
movq -0x30(%rbp), %rdx
leaq 0x1184d(%rip), %rsi     # 0x168e6
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x50d1
movq 0x15f41(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1089b(%rip), %rsi     # 0x15954
leaq 0x108ac(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x50d3
jmp 0x50d5
jmp 0x50d7
movl $0x2, %edi
callq 0x6fd0
movq 0x161b8(%rip), %rdi     # 0x1b2a0
leaq 0x1183a(%rip), %rsi     # 0x16929
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5127
movq 0x15eeb(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10845(%rip), %rsi     # 0x15954
leaq 0x10856(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5129
jmp 0x512b
jmp 0x512d
movl $0x2, %edi
callq 0x6fd0
movq 0x16162(%rip), %rdi     # 0x1b2a0
movq -0x30(%rbp), %rdx
leaq 0x11809(%rip), %rsi     # 0x16952
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5181
movq 0x15e91(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x107eb(%rip), %rsi     # 0x15954
leaq 0x107fc(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5183
jmp 0x5185
jmp 0x5187
movl $0x2, %edi
callq 0x6fd0
movq 0x16108(%rip), %rdi     # 0x1b2a0
leaq 0x1093d(%rip), %rsi     # 0x15adc
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x51d7
movq 0x15e3b(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10795(%rip), %rsi     # 0x15954
leaq 0x107a6(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x51d9
jmp 0x51db
jmp 0x51dd
movl $0x3, %edi
callq 0x6fd0
movq 0x160b2(%rip), %rdi     # 0x1b2a0
leaq 0x115c8(%rip), %rsi     # 0x167bd
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x522d
movq 0x15de5(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1073f(%rip), %rsi     # 0x15954
leaq 0x10750(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x522f
jmp 0x5231
jmp 0x5233
movl $0x3, %edi
callq 0x6fd0
movq 0x1605c(%rip), %rdi     # 0x1b2a0
leaq 0x1168a(%rip), %rsi     # 0x168d5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5283
movq 0x15d8f(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x106e9(%rip), %rsi     # 0x15954
leaq 0x106fa(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5285
jmp 0x5287
jmp 0x5289
movl $0x2, %edi
callq 0x6fd0
movq 0x16006(%rip), %rdi     # 0x1b2a0
leaq 0x10bbc(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x52d9
movq 0x15d39(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10693(%rip), %rsi     # 0x15954
leaq 0x106a4(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x52db
jmp 0x52dd
movq -0x18(%rbp), %rax
cmpl $0x4, 0x8(%rax)
je 0x5504
jmp 0x52ed
movl $0x2, %edi
callq 0x6fd0
movq 0x15fa2(%rip), %rdi     # 0x1b2a0
leaq 0x11688(%rip), %rsi     # 0x1698d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x533d
movq 0x15cd5(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1062f(%rip), %rsi     # 0x15954
leaq 0x10640(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x533f
jmp 0x5341
jmp 0x5343
movl $0x2, %edi
callq 0x6fd0
movq 0x15f4c(%rip), %rdi     # 0x1b2a0
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
leaq 0x11645(%rip), %rsi     # 0x169a8
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x539b
movq 0x15c77(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x105d1(%rip), %rsi     # 0x15954
leaq 0x105e2(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x539d
jmp 0x539f
jmp 0x53a1
movl $0x2, %edi
callq 0x6fd0
movq 0x15eee(%rip), %rdi     # 0x1b2a0
leaq 0x1160a(%rip), %rsi     # 0x169c3
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x53f1
movq 0x15c21(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1057b(%rip), %rsi     # 0x15954
leaq 0x1058c(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x53f3
jmp 0x53f5
jmp 0x53f7
movl $0x2, %edi
callq 0x6fd0
movq 0x15e98(%rip), %rdi     # 0x1b2a0
leaq 0x115d9(%rip), %rsi     # 0x169e8
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5447
movq 0x15bcb(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10525(%rip), %rsi     # 0x15954
leaq 0x10536(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5449
jmp 0x544b
jmp 0x544d
movl $0x2, %edi
callq 0x6fd0
movq 0x15e42(%rip), %rdi     # 0x1b2a0
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
leaq 0x115a0(%rip), %rsi     # 0x16a0d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x54a5
movq 0x15b6d(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x104c7(%rip), %rsi     # 0x15954
leaq 0x104d8(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x54a7
jmp 0x54a9
jmp 0x54ab
movl $0x2, %edi
callq 0x6fd0
movq 0x15de4(%rip), %rdi     # 0x1b2a0
leaq 0x11571(%rip), %rsi     # 0x16a34
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x54fb
movq 0x15b17(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10471(%rip), %rsi     # 0x15954
leaq 0x10482(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x54fd
jmp 0x54ff
jmp 0x5862
jmp 0x5506
movl $0x2, %edi
callq 0x6fd0
movq 0x15d89(%rip), %rdi     # 0x1b2a0
leaq 0x1152d(%rip), %rsi     # 0x16a4b
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5556
movq 0x15abc(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10416(%rip), %rsi     # 0x15954
leaq 0x10427(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5558
jmp 0x555a
jmp 0x555c
movl $0x3, %edi
callq 0x6fd0
movq 0x15d33(%rip), %rdi     # 0x1b2a0
leaq 0x11249(%rip), %rsi     # 0x167bd
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x55ac
movq 0x15a66(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x103c0(%rip), %rsi     # 0x15954
leaq 0x103d1(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x55ae
jmp 0x55b0
jmp 0x55b2
movl $0x3, %edi
callq 0x6fd0
movq 0x15cdd(%rip), %rdi     # 0x1b2a0
leaq 0x114ac(%rip), %rsi     # 0x16a76
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5602
movq 0x15a10(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1036a(%rip), %rsi     # 0x15954
leaq 0x1037b(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5604
jmp 0x5606
jmp 0x5608
movl $0x2, %edi
callq 0x6fd0
movq 0x15c87(%rip), %rdi     # 0x1b2a0
leaq 0x1083d(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5658
movq 0x159ba(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10314(%rip), %rsi     # 0x15954
leaq 0x10325(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x565a
jmp 0x565c
jmp 0x565e
movl $0x2, %edi
callq 0x6fd0
movq 0x15c31(%rip), %rdi     # 0x1b2a0
leaq 0x11439(%rip), %rsi     # 0x16aaf
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x56ae
movq 0x15964(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x102be(%rip), %rsi     # 0x15954
leaq 0x102cf(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x56b0
jmp 0x56b2
jmp 0x56b4
movl $0x3, %edi
callq 0x6fd0
movq 0x15bdb(%rip), %rdi     # 0x1b2a0
leaq 0x110f1(%rip), %rsi     # 0x167bd
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5704
movq 0x1590e(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10268(%rip), %rsi     # 0x15954
leaq 0x10279(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5706
jmp 0x5708
jmp 0x570a
movl $0x3, %edi
callq 0x6fd0
movq 0x15b85(%rip), %rdi     # 0x1b2a0
leaq 0x113c3(%rip), %rsi     # 0x16ae5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x575a
movq 0x158b8(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10212(%rip), %rsi     # 0x15954
leaq 0x10223(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x575c
jmp 0x575e
jmp 0x5760
movl $0x2, %edi
callq 0x6fd0
movq 0x15b2f(%rip), %rdi     # 0x1b2a0
leaq 0x106e5(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x57b0
movq 0x15862(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x101bc(%rip), %rsi     # 0x15954
leaq 0x101cd(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x57b2
jmp 0x57b4
jmp 0x57b6
movl $0x2, %edi
callq 0x6fd0
movq 0x15ad9(%rip), %rdi     # 0x1b2a0
leaq 0x11355(%rip), %rsi     # 0x16b23
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5806
movq 0x1580c(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10166(%rip), %rsi     # 0x15954
leaq 0x10177(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5808
jmp 0x580a
jmp 0x580c
movl $0x2, %edi
callq 0x6fd0
movq 0x15a83(%rip), %rdi     # 0x1b2a0
leaq 0x1131f(%rip), %rsi     # 0x16b43
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x585c
movq 0x157b6(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10110(%rip), %rsi     # 0x15954
leaq 0x10121(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x585e
jmp 0x5860
jmp 0x5862
jmp 0x5864
movl $0x2, %edi
callq 0x6fd0
movq 0x15a2b(%rip), %rdi     # 0x1b2a0
leaq 0x10fd6(%rip), %rsi     # 0x16852
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x58b4
movq 0x1575e(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x100b8(%rip), %rsi     # 0x15954
leaq 0x100c9(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x58b6
jmp 0x58b8
jmp 0x58ba
movl $0x3, %edi
callq 0x6fd0
movq 0x159d5(%rip), %rdi     # 0x1b2a0
leaq 0x113bd(%rip), %rsi     # 0x16c8f
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x590a
movq 0x15708(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10062(%rip), %rsi     # 0x15954
leaq 0x10073(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x590c
jmp 0x590e
jmp 0x5910
movl $0x2, %edi
callq 0x6fd0
movq 0x1597f(%rip), %rdi     # 0x1b2a0
leaq 0x10535(%rip), %rsi     # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5960
movq 0x156b2(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x1000c(%rip), %rsi     # 0x15954
leaq 0x1001d(%rip), %rdx     # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5962
jmp 0x5964
movq -0x18(%rbp), %rax
movl 0x8(%rax), %eax
movq %rax, -0x80(%rbp)
subq $0x4, %rax
ja 0x5cb8
movq -0x80(%rbp), %rax
leaq 0xf6c4(%rip), %rcx      # 0x15048
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x0, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5cb8
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x1, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5cb8
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x2, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5cb8
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x50(%rbp)
movl $0x3, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5cb8
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x58(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x5cb6
movq -0x20(%rbp), %rax
movl 0x8(%rax), %eax
movl %eax, -0x84(%rbp)
testl %eax, %eax
je 0x5b68
jmp 0x5b47
movl -0x84(%rbp), %eax
subl $0x1, %eax
je 0x5bc3
jmp 0x5b54
movl -0x84(%rbp), %eax
subl $0x2, %eax
je 0x5c1e
jmp 0x5c76
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x0, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5ca4
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x1, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5ca4
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rax
movq %rax, -0x50(%rbp)
movl $0x2, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rcx
leaq -0x40(%rbp), %rsi
leaq -0x68(%rbp), %r8
movl $0x2, %r9d
callq 0x8cd0
jmp 0x5ca4
movq 0x15373(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0x10bd5(%rip), %rsi     # 0x1685c
movl $0x4d1, %edx            # imm = 0x4D1
leaq 0x10bec(%rip), %rcx     # 0x1687f
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5ca6
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
jmp 0x5b29
jmp 0x5cb8
jmp 0x5cba
movl $0x2, %edi
callq 0x6fd0
movq 0x155d5(%rip), %rdi     # 0x1b2a0
leaq 0xfe60(%rip), %rsi      # 0x15b32
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5d0a
movq 0x15308(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfc62(%rip), %rsi      # 0x15954
leaq 0xfc73(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5d0c
jmp 0x5d0e
jmp 0x5d10
movl $0x3, %edi
callq 0x6fd0
movq 0x1557f(%rip), %rdi     # 0x1b2a0
leaq 0x10b64(%rip), %rsi     # 0x1688c
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5d60
movq 0x152b2(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfc0c(%rip), %rsi      # 0x15954
leaq 0xfc1d(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5d62
jmp 0x5d64
jmp 0x5d66
movl $0x3, %edi
callq 0x6fd0
movq 0x15529(%rip), %rdi     # 0x1b2a0
leaq 0x10b28(%rip), %rsi     # 0x168a6
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5db6
movq 0x1525c(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfbb6(%rip), %rsi      # 0x15954
leaq 0xfbc7(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5db8
jmp 0x5dba
jmp 0x5dbc
movl $0x3, %edi
callq 0x6fd0
movq 0x154d3(%rip), %rdi     # 0x1b2a0
leaq 0x10af1(%rip), %rsi     # 0x168c5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5e0c
movq 0x15206(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfb60(%rip), %rsi      # 0x15954
leaq 0xfb71(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5e0e
jmp 0x5e10
jmp 0x5e12
movl $0x3, %edi
callq 0x6fd0
movq 0x1547d(%rip), %rdi     # 0x1b2a0
leaq 0x10aab(%rip), %rsi     # 0x168d5
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5e62
movq 0x151b0(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfb0a(%rip), %rsi      # 0x15954
leaq 0xfb1b(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5e64
jmp 0x5e66
jmp 0x5e68
movl $0x2, %edi
callq 0x6fd0
movq 0x15427(%rip), %rdi     # 0x1b2a0
leaq 0xffdd(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5eb8
movq 0x1515a(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfab4(%rip), %rsi      # 0x15954
leaq 0xfac5(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5eba
jmp 0x5ebc
jmp 0x5ebe
movl $0x1, %edi
callq 0x6fd0
movq 0x153d1(%rip), %rdi     # 0x1b2a0
leaq 0xff87(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5f0e
movq 0x15104(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xfa5e(%rip), %rsi      # 0x15954
leaq 0xfa6f(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5f10
jmp 0x5f12
jmp 0x5f14
movq -0x18(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x30(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x30(%rbp)
jmp 0x4e36
jmp 0x5f32
movl $0x1, %edi
callq 0x6fd0
movq 0x1535d(%rip), %rdi     # 0x1b2a0
leaq 0xff3b(%rip), %rsi      # 0x15e85
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5f82
movq 0x15090(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf9ea(%rip), %rsi      # 0x15954
leaq 0xf9fb(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5f84
jmp 0x5f86
jmp 0x5f88
xorl %edi, %edi
callq 0x6fd0
movq 0x1530a(%rip), %rdi     # 0x1b2a0
leaq 0x10bc4(%rip), %rsi     # 0x16b61
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x5fd5
movq 0x1503d(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf997(%rip), %rsi      # 0x15954
leaq 0xf9a8(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x5fd7
jmp 0x5fd9
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq $0x0, -0x30(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x63ad
movq -0x18(%rbp), %rax
cmpl $0x0, 0x40(%rax)
jne 0x600e
movq -0x18(%rbp), %rax
cmpq $0x0, 0x38(%rax)
jne 0x600e
jmp 0x6391
jmp 0x6010
movl $0x1, %edi
callq 0x6fd0
movq 0x1527f(%rip), %rdi     # 0x1b2a0
movq -0x30(%rbp), %rdx
leaq 0x10b41(%rip), %rsi     # 0x16b6d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x6064
movq 0x14fae(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf908(%rip), %rsi      # 0x15954
leaq 0xf919(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x6066
jmp 0x6068
movq -0x18(%rbp), %rax
movl 0x8(%rax), %eax
movq %rax, -0x90(%rbp)
subq $0x4, %rax
ja 0x6339
movq -0x90(%rbp), %rax
leaq 0xefa6(%rip), %rcx      # 0x15034
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl $0x0, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x2, %ecx
callq 0x8d40
jmp 0x6339
movl $0x1, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x2, %ecx
callq 0x8d40
jmp 0x6339
movl $0x2, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x2, %ecx
callq 0x8d40
jmp 0x6339
movl $0x3, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x2, %ecx
callq 0x8d40
jmp 0x6339
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x6337
jmp 0x6198
movl $0x2, %edi
callq 0x6fd0
movq 0x150f7(%rip), %rdi     # 0x1b2a0
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rdx
movq -0x20(%rbp), %rax
movq 0x38(%rax), %rcx
leaq 0x109c1(%rip), %rsi     # 0x16b81
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x61f8
movq 0x14e1a(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf774(%rip), %rsi      # 0x15954
leaq 0xf785(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x61fa
jmp 0x61fc
movq -0x20(%rbp), %rax
movl 0x8(%rax), %eax
movl %eax, -0x94(%rbp)
testl %eax, %eax
je 0x622c
jmp 0x620f
movl -0x94(%rbp), %eax
subl $0x1, %eax
je 0x6263
jmp 0x621c
movl -0x94(%rbp), %eax
subl $0x2, %eax
je 0x629a
jmp 0x62cf
movl $0x0, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x3, %ecx
callq 0x8d40
jmp 0x62cf
movl $0x1, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x3, %ecx
callq 0x8d40
jmp 0x62cf
movl $0x2, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
addq $0x10, %rdi
addq $0x18, %rdi
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x40(%rbp), %rsi
movl $0x3, %ecx
callq 0x8d40
jmp 0x62d1
movl $0x2, %edi
callq 0x6fd0
movq 0x14fbe(%rip), %rdi     # 0x1b2a0
leaq 0xfb74(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x6321
movq 0x14cf1(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf64b(%rip), %rsi      # 0x15954
leaq 0xf65c(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x6323
jmp 0x6325
jmp 0x6327
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
jmp 0x618b
jmp 0x6339
jmp 0x633b
movl $0x1, %edi
callq 0x6fd0
movq 0x14f54(%rip), %rdi     # 0x1b2a0
leaq 0xfb0a(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x638b
movq 0x14c87(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf5e1(%rip), %rsi      # 0x15954
leaq 0xf5f2(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x638d
jmp 0x638f
jmp 0x6391
movq -0x18(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x30(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x30(%rbp)
jmp 0x5fe9
jmp 0x63af
movl $0x1, %edi
callq 0x6fd0
movq 0x14ee0(%rip), %rdi     # 0x1b2a0
leaq 0x107d2(%rip), %rsi     # 0x16b99
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x63ff
movq 0x14c13(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf56d(%rip), %rsi      # 0x15954
leaq 0xf57e(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x6401
jmp 0x6403
jmp 0x6405
xorl %edi, %edi
callq 0x6fd0
movq 0x14e8d(%rip), %rdi     # 0x1b2a0
leaq 0xfa43(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x6452
movq 0x14bc0(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf51a(%rip), %rsi      # 0x15954
leaq 0xf52b(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x6454
jmp 0x6456
jmp 0x6458
xorl %edi, %edi
callq 0x6fd0
movq 0x14e3a(%rip), %rdi     # 0x1b2a0
leaq 0xfd36(%rip), %rsi      # 0x161a3
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0x64a5
movq 0x14b6d(%rip), %rax     # 0x1aff0
movq (%rax), %rdi
leaq 0xf4c7(%rip), %rsi      # 0x15954
leaq 0xf4d8(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0x64a7
jmp 0x64a9
addq $0xa0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)