// File: /workspace/github_c_makefile_star2_O0/zhou-yuxin[P]redis-aof-no-cow/deps/jemalloc/src/huge.c
// Function: je_huge_palloc
void *
huge_palloc(tsdn_t *tsdn, arena_t *arena, size_t usize, size_t alignment,
    bool zero)
{
	void *ret;
	size_t ausize;
	arena_t *iarena;
	extent_node_t *node;
	size_t sn;
	bool is_zeroed;

	/* Allocate one or more contiguous chunks for this request. */

	assert(!tsdn_null(tsdn) || arena != NULL);

	ausize = sa2u(usize, alignment);
	if (unlikely(ausize == 0 || ausize > HUGE_MAXCLASS))
		return (NULL);
	assert(ausize >= chunksize);

	/* Allocate an extent node with which to track the chunk. */
	iarena = (!tsdn_null(tsdn)) ? arena_ichoose(tsdn_tsd(tsdn), NULL) :
	    a0get();
	node = ipallocztm(tsdn, CACHELINE_CEILING(sizeof(extent_node_t)),
	    CACHELINE, false, NULL, true, iarena);
	if (node == NULL)
		return (NULL);

	/*
	 * Copy zero into is_zeroed and pass the copy to chunk_alloc(), so that
	 * it is possible to make correct junk/zero fill decisions below.
	 */
	is_zeroed = zero;
	if (likely(!tsdn_null(tsdn)))
		arena = arena_choose(tsdn_tsd(tsdn), arena);
	if (unlikely(arena == NULL) || (ret = arena_chunk_alloc_huge(tsdn,
	    arena, usize, alignment, &sn, &is_zeroed)) == NULL) {
		idalloctm(tsdn, node, NULL, true, true);
		return (NULL);
	}

	extent_node_init(node, arena, ret, usize, sn, is_zeroed, true);

	if (huge_node_set(tsdn, ret, node)) {
		arena_chunk_dalloc_huge(tsdn, arena, ret, usize, sn);
		idalloctm(tsdn, node, NULL, true, true);
		return (NULL);
	}

	/* Insert node into huge. */
	malloc_mutex_lock(tsdn, &arena->huge_mtx);
	ql_elm_new(node, ql_link);
	ql_tail_insert(&arena->huge, node, ql_link);
	malloc_mutex_unlock(tsdn, &arena->huge_mtx);

	if (zero || (config_fill && unlikely(opt_zero))) {
		if (!is_zeroed)
			memset(ret, 0, usize);
	} else if (config_fill && unlikely(opt_junk_alloc))
		memset(ret, JEMALLOC_ALLOC_JUNK, usize);

	arena_decay_tick(tsdn, arena);
	return (ret);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xaf0, %rsp            # imm = 0xAF0
movb %r8b, %al
movq %rdi, -0xa18(%rbp)
movq %rsi, -0xa20(%rbp)
movq %rdx, -0xa28(%rbp)
movq %rcx, -0xa30(%rbp)
andb $0x1, %al
movb %al, -0xa31(%rbp)
jmp 0x60ee4
movq -0xa28(%rbp), %rcx
movq -0xa30(%rbp), %rax
movq %rcx, -0x9f8(%rbp)
movq %rax, -0xa00(%rbp)
cmpq $0x3800, -0x9f8(%rbp) # imm = 0x3800
ja 0x61111
cmpq $0x1000, -0xa00(%rbp) # imm = 0x1000
jae 0x61111
movq -0x9f8(%rbp), %rax
movq -0xa00(%rbp), %rcx
subq $0x1, %rcx
addq %rcx, %rax
movq -0xa00(%rbp), %rcx
xorq $-0x1, %rcx
addq $0x1, %rcx
andq %rcx, %rax
movq %rax, -0x938(%rbp)
cmpq $0x1000, -0x938(%rbp) # imm = 0x1000
setbe %al
testb $0x1, %al
jne 0x60f67
jmp 0x60fea
movq -0x938(%rbp), %rax
movq %rax, -0x8e0(%rbp)
movq -0x8e0(%rbp), %rax
movq %rax, -0x800(%rbp)
movq -0x800(%rbp), %rcx
subq $0x1, %rcx
shrq $0x3, %rcx
leaq 0x2fae7(%rip), %rax     # 0x90a80
movzbl (%rax,%rcx), %eax
movl %eax, -0x804(%rbp)
movl -0x804(%rbp), %eax
movl %eax, -0x824(%rbp)
movl -0x824(%rbp), %eax
movl %eax, %ecx
leaq 0x2f342(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x830(%rbp)
movq -0x830(%rbp), %rax
movq %rax, -0x8e8(%rbp)
movq -0x8e8(%rbp), %rax
movq %rax, -0x930(%rbp)
jmp 0x610e1
movq -0x938(%rbp), %rax
movq %rax, -0x840(%rbp)
movabsq $0x7000000000000000, %rax # imm = 0x7000000000000000
cmpq %rax, -0x840(%rbp)
seta %al
testb $0x1, %al
jne 0x61012
jmp 0x61022
movq $0x0, -0x838(%rbp)
jmp 0x610d3
movq -0x840(%rbp), %rdi
shlq %rdi
subq $0x1, %rdi
callq 0x65dd0
movl %eax, %eax
movq %rax, -0x848(%rbp)
cmpq $0x6, -0x848(%rbp)
jae 0x61056
movl $0x3, %eax
movq %rax, -0xa70(%rbp)
jmp 0x6106c
movq -0x848(%rbp), %rax
subq $0x2, %rax
subq $0x1, %rax
movq %rax, -0xa70(%rbp)
movq -0xa70(%rbp), %rax
movq %rax, -0x850(%rbp)
movq -0x850(%rbp), %rcx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, -0x858(%rbp)
movq -0x858(%rbp), %rax
subq $0x1, %rax
movq %rax, -0x860(%rbp)
movq -0x840(%rbp), %rax
addq -0x860(%rbp), %rax
movq -0x860(%rbp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x868(%rbp)
movq -0x868(%rbp), %rax
movq %rax, -0x838(%rbp)
movq -0x838(%rbp), %rax
movq %rax, -0x930(%rbp)
movq -0x930(%rbp), %rax
movq %rax, -0xa08(%rbp)
cmpq $0x4000, -0xa08(%rbp) # imm = 0x4000
jae 0x6110f
movq -0xa08(%rbp), %rax
movq %rax, -0x9f0(%rbp)
jmp 0x615f9
jmp 0x61111
movq -0x9f8(%rbp), %rax
leaq 0x42e61(%rip), %rcx     # 0xa3f80
cmpq (%rcx), %rax
setbe %al
testb $0x1, %al
jne 0x6112e
jmp 0x61379
movq -0xa00(%rbp), %rax
leaq 0x42f6c(%rip), %rcx     # 0xa40a8
cmpq (%rcx), %rax
setb %al
testb $0x1, %al
jne 0x6114b
jmp 0x61379
movq -0xa00(%rbp), %rax
addq $0xfff, %rax            # imm = 0xFFF
andq $-0x1000, %rax          # imm = 0xF000
movq %rax, -0xa00(%rbp)
cmpq $0x4000, -0x9f8(%rbp) # imm = 0x4000
ja 0x61183
movl $0x4000, %eax           # imm = 0x4000
movq %rax, -0xa78(%rbp)
jmp 0x61330
movq -0x9f8(%rbp), %rax
movq %rax, -0x928(%rbp)
cmpq $0x1000, -0x928(%rbp) # imm = 0x1000
setbe %al
testb $0x1, %al
jne 0x611a8
jmp 0x6122b
movq -0x928(%rbp), %rax
movq %rax, -0x8f0(%rbp)
movq -0x8f0(%rbp), %rax
movq %rax, -0x7f0(%rbp)
movq -0x7f0(%rbp), %rcx
subq $0x1, %rcx
shrq $0x3, %rcx
leaq 0x2f8a6(%rip), %rax     # 0x90a80
movzbl (%rax,%rcx), %eax
movl %eax, -0x7f4(%rbp)
movl -0x7f4(%rbp), %eax
movl %eax, -0x814(%rbp)
movl -0x814(%rbp), %eax
movl %eax, %ecx
leaq 0x2f101(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x820(%rbp)
movq -0x820(%rbp), %rax
movq %rax, -0x8f8(%rbp)
movq -0x8f8(%rbp), %rax
movq %rax, -0x920(%rbp)
jmp 0x61322
movq -0x928(%rbp), %rax
movq %rax, -0x878(%rbp)
movabsq $0x7000000000000000, %rax # imm = 0x7000000000000000
cmpq %rax, -0x878(%rbp)
seta %al
testb $0x1, %al
jne 0x61253
jmp 0x61263
movq $0x0, -0x870(%rbp)
jmp 0x61314
movq -0x878(%rbp), %rdi
shlq %rdi
subq $0x1, %rdi
callq 0x65dd0
movl %eax, %eax
movq %rax, -0x880(%rbp)
cmpq $0x6, -0x880(%rbp)
jae 0x61297
movl $0x3, %eax
movq %rax, -0xa80(%rbp)
jmp 0x612ad
movq -0x880(%rbp), %rax
subq $0x2, %rax
subq $0x1, %rax
movq %rax, -0xa80(%rbp)
movq -0xa80(%rbp), %rax
movq %rax, -0x888(%rbp)
movq -0x888(%rbp), %rcx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, -0x890(%rbp)
movq -0x890(%rbp), %rax
subq $0x1, %rax
movq %rax, -0x898(%rbp)
movq -0x878(%rbp), %rax
addq -0x898(%rbp), %rax
movq -0x898(%rbp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x8a0(%rbp)
movq -0x8a0(%rbp), %rax
movq %rax, -0x870(%rbp)
movq -0x870(%rbp), %rax
movq %rax, -0x920(%rbp)
movq -0x920(%rbp), %rax
movq %rax, -0xa78(%rbp)
movq -0xa78(%rbp), %rax
movq %rax, -0xa08(%rbp)
movq -0xa08(%rbp), %rax
addq $0x1000, %rax           # imm = 0x1000
addq -0xa00(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
leaq 0x42c51(%rip), %rcx     # 0xa3fb0
cmpq (%rcx), %rax
ja 0x61377
movq -0xa08(%rbp), %rax
movq %rax, -0x9f0(%rbp)
jmp 0x615f9
jmp 0x61379
movabsq $0x7000000000000000, %rax # imm = 0x7000000000000000
cmpq %rax, -0xa00(%rbp)
seta %al
testb $0x1, %al
jne 0x61393
jmp 0x613a3
movq $0x0, -0x9f0(%rbp)
jmp 0x615f9
movq -0xa00(%rbp), %rax
leaq 0x42cff(%rip), %rcx     # 0xa40b0
addq (%rcx), %rax
leaq 0x42cf5(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0xa00(%rbp)
movq -0x9f8(%rbp), %rax
leaq 0x42cce(%rip), %rcx     # 0xa40a8
cmpq (%rcx), %rax
ja 0x613f5
leaq 0x42cc2(%rip), %rax     # 0xa40a8
movq (%rax), %rax
movq %rax, -0xa08(%rbp)
jmp 0x615c1
movq -0x9f8(%rbp), %rax
movq %rax, -0x918(%rbp)
cmpq $0x1000, -0x918(%rbp) # imm = 0x1000
setbe %al
testb $0x1, %al
jne 0x6141a
jmp 0x6149d
movq -0x918(%rbp), %rax
movq %rax, -0x900(%rbp)
movq -0x900(%rbp), %rax
movq %rax, -0x7e0(%rbp)
movq -0x7e0(%rbp), %rcx
subq $0x1, %rcx
shrq $0x3, %rcx
leaq 0x2f634(%rip), %rax     # 0x90a80
movzbl (%rax,%rcx), %eax
movl %eax, -0x7e4(%rbp)
movl -0x7e4(%rbp), %eax
movl %eax, -0x808(%rbp)
movl -0x808(%rbp), %eax
movl %eax, %ecx
leaq 0x2ee8f(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x810(%rbp)
movq -0x810(%rbp), %rax
movq %rax, -0x908(%rbp)
movq -0x908(%rbp), %rax
movq %rax, -0x910(%rbp)
jmp 0x61594
movq -0x918(%rbp), %rax
movq %rax, -0x8b0(%rbp)
movabsq $0x7000000000000000, %rax # imm = 0x7000000000000000
cmpq %rax, -0x8b0(%rbp)
seta %al
testb $0x1, %al
jne 0x614c5
jmp 0x614d5
movq $0x0, -0x8a8(%rbp)
jmp 0x61586
movq -0x8b0(%rbp), %rdi
shlq %rdi
subq $0x1, %rdi
callq 0x65dd0
movl %eax, %eax
movq %rax, -0x8b8(%rbp)
cmpq $0x6, -0x8b8(%rbp)
jae 0x61509
movl $0x3, %eax
movq %rax, -0xa88(%rbp)
jmp 0x6151f
movq -0x8b8(%rbp), %rax
subq $0x2, %rax
subq $0x1, %rax
movq %rax, -0xa88(%rbp)
movq -0xa88(%rbp), %rax
movq %rax, -0x8c0(%rbp)
movq -0x8c0(%rbp), %rcx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, -0x8c8(%rbp)
movq -0x8c8(%rbp), %rax
subq $0x1, %rax
movq %rax, -0x8d0(%rbp)
movq -0x8b0(%rbp), %rax
addq -0x8d0(%rbp), %rax
movq -0x8d0(%rbp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x8d8(%rbp)
movq -0x8d8(%rbp), %rax
movq %rax, -0x8a8(%rbp)
movq -0x8a8(%rbp), %rax
movq %rax, -0x910(%rbp)
movq -0x910(%rbp), %rax
movq %rax, -0xa08(%rbp)
movq -0xa08(%rbp), %rax
cmpq -0x9f8(%rbp), %rax
jae 0x615bf
movq $0x0, -0x9f0(%rbp)
jmp 0x615f9
jmp 0x615c1
movq -0xa08(%rbp), %rax
addq -0xa00(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
cmpq -0xa08(%rbp), %rax
jae 0x615eb
movq $0x0, -0x9f0(%rbp)
jmp 0x615f9
movq -0xa08(%rbp), %rax
movq %rax, -0x9f0(%rbp)
movq -0x9f0(%rbp), %rax
movq %rax, -0xa48(%rbp)
movb $0x1, %al
cmpq $0x0, -0xa48(%rbp)
movb %al, -0xa89(%rbp)
je 0x61633
movabsq $0x7000000000000000, %rax # imm = 0x7000000000000000
cmpq %rax, -0xa48(%rbp)
seta %al
movb %al, -0xa89(%rbp)
movb -0xa89(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x6165a
movq $0x0, -0xa10(%rbp)
jmp 0x6343b
jmp 0x6165c
jmp 0x6165e
movq -0xa18(%rbp), %rax
movq %rax, -0x9e0(%rbp)
cmpq $0x0, -0x9e0(%rbp)
je 0x6169d
movq -0xa18(%rbp), %rax
movq %rax, -0x9d0(%rbp)
movq -0x9d0(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x63450
movq %rax, -0xa98(%rbp)
jmp 0x616a9
callq 0x18510
movq %rax, -0xa98(%rbp)
movq -0xa98(%rbp), %rax
movq %rax, -0xa50(%rbp)
movq -0xa18(%rbp), %rcx
movq -0xa50(%rbp), %rax
movq %rcx, -0x990(%rbp)
movq $0x80, -0x998(%rbp)
movq $0x40, -0x9a0(%rbp)
movb $0x0, -0x9a1(%rbp)
movq $0x0, -0x9b0(%rbp)
movb $0x1, -0x9b1(%rbp)
movq %rax, -0x9c0(%rbp)
movq -0x990(%rbp), %rdi
movq -0x9c0(%rbp), %rsi
movq -0x998(%rbp), %rdx
movq -0x9a0(%rbp), %rcx
movb -0x9a1(%rbp), %al
movq -0x9b0(%rbp), %r9
andb $0x1, %al
movzbl %al, %r8d
callq 0x3d8a0
movq %rax, -0x9c8(%rbp)
testb $0x1, -0x9b1(%rbp)
je 0x61b15
cmpq $0x0, -0x9c8(%rbp)
setne %al
testb $0x1, %al
jne 0x6175e
jmp 0x61b15
movq -0x9c8(%rbp), %rax
movq %rax, -0x7c8(%rbp)
movq -0x7c8(%rbp), %rax
movq %rax, -0x770(%rbp)
movq -0x770(%rbp), %rax
leaq 0x42928(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x778(%rbp)
movq -0x778(%rbp), %rax
cmpq -0x770(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x617b0
jmp 0x617c5
movq -0x778(%rbp), %rdi
callq 0x65b10
movq %rax, -0x768(%rbp)
jmp 0x617d8
movq -0x770(%rbp), %rdi
callq 0x63ec0
movq %rax, -0x768(%rbp)
movq -0x768(%rbp), %rax
movq %rax, -0xaa0(%rbp)
movq -0x990(%rbp), %rcx
movq -0x9c8(%rbp), %rax
movq %rcx, -0x780(%rbp)
movq %rax, -0x788(%rbp)
movb $0x0, -0x789(%rbp)
movq -0x780(%rbp), %rdx
movq -0x788(%rbp), %rcx
movb -0x789(%rbp), %al
movq %rdx, -0x700(%rbp)
movq %rcx, -0x708(%rbp)
andb $0x1, %al
movb %al, -0x709(%rbp)
movq -0x708(%rbp), %rax
leaq 0x4286f(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x720(%rbp)
movq -0x720(%rbp), %rax
cmpq -0x708(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x6186c
jmp 0x61ae8
movq -0x708(%rbp), %rax
movq -0x720(%rbp), %rcx
subq %rcx, %rax
shrq $0xc, %rax
movq %rax, -0x728(%rbp)
movq -0x720(%rbp), %rcx
movq -0x728(%rbp), %rax
movq %rcx, -0x630(%rbp)
movq %rax, -0x638(%rbp)
movq -0x630(%rbp), %rcx
movq -0x638(%rbp), %rax
movq %rcx, -0x570(%rbp)
movq %rax, -0x578(%rbp)
movq -0x570(%rbp), %rcx
movq -0x578(%rbp), %rax
movq %rcx, -0x4f0(%rbp)
movq %rax, -0x4f8(%rbp)
movq -0x4f0(%rbp), %rcx
movq -0x4f8(%rbp), %rax
movq %rcx, -0x480(%rbp)
movq %rax, -0x488(%rbp)
movq -0x480(%rbp), %rcx
movq -0x488(%rbp), %rax
movq %rcx, -0x430(%rbp)
movq %rax, -0x438(%rbp)
movq -0x430(%rbp), %rax
addq $0x78, %rax
movq -0x438(%rbp), %rcx
leaq 0x42673(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x538(%rbp)
movq -0x538(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x640(%rbp)
movq -0x640(%rbp), %rax
andq $0x1fe0, %rax           # imm = 0x1FE0
shrq $0x5, %rax
movl %eax, -0x644(%rbp)
movl -0x644(%rbp), %eax
movl %eax, -0x72c(%rbp)
movl -0x72c(%rbp), %eax
movl %eax, %ecx
movb $0x1, %al
cmpq $0xff, %rcx
movb %al, -0xaa1(%rbp)
je 0x61995
xorl %eax, %eax
movb %al, -0xaa1(%rbp)
jmp 0x61995
movb -0xaa1(%rbp), %al
testb $0x1, %al
jne 0x619a4
jmp 0x61aa6
movq -0x720(%rbp), %rcx
movq -0x728(%rbp), %rax
movq %rcx, -0x5e8(%rbp)
movq %rax, -0x5f0(%rbp)
movq -0x5e8(%rbp), %rcx
movq -0x5f0(%rbp), %rax
movq %rcx, -0x5a0(%rbp)
movq %rax, -0x5a8(%rbp)
movq -0x5a0(%rbp), %rcx
movq -0x5a8(%rbp), %rax
movq %rcx, -0x4c0(%rbp)
movq %rax, -0x4c8(%rbp)
movq -0x4c0(%rbp), %rcx
movq -0x4c8(%rbp), %rax
movq %rcx, -0x4b0(%rbp)
movq %rax, -0x4b8(%rbp)
movq -0x4b0(%rbp), %rcx
movq -0x4b8(%rbp), %rax
movq %rcx, -0x400(%rbp)
movq %rax, -0x408(%rbp)
movq -0x400(%rbp), %rax
addq $0x78, %rax
movq -0x408(%rbp), %rcx
leaq 0x42557(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x520(%rbp)
movq -0x520(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x5f8(%rbp)
movq -0x5f8(%rbp), %rax
movq %rax, -0x3f0(%rbp)
movq -0x3f0(%rbp), %rax
andq $-0x2000, %rax          # imm = 0xE000
shrq %rax
movq %rax, -0x3f8(%rbp)
movq -0x3f8(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
movq %rax, -0x718(%rbp)
jmp 0x61ae6
movl -0x72c(%rbp), %eax
movl %eax, -0x5bc(%rbp)
movl -0x5bc(%rbp), %eax
movl %eax, -0x5ac(%rbp)
movl -0x5ac(%rbp), %eax
movl %eax, %ecx
leaq 0x2e833(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x5b8(%rbp)
movq -0x5b8(%rbp), %rax
movq %rax, -0x718(%rbp)
jmp 0x61b02
movq -0x700(%rbp), %rdi
movq -0x708(%rbp), %rsi
callq 0x65c10
movq %rax, -0x718(%rbp)
movq -0xaa0(%rbp), %rdi
movq -0x718(%rbp), %rsi
callq 0x65ea0
movq -0x9c8(%rbp), %rax
movq %rax, -0xa58(%rbp)
cmpq $0x0, -0xa58(%rbp)
jne 0x61b3d
movq $0x0, -0xa10(%rbp)
jmp 0x6343b
movb -0xa31(%rbp), %al
andb $0x1, %al
movb %al, -0xa61(%rbp)
movq -0xa18(%rbp), %rax
movq %rax, -0x9e8(%rbp)
cmpq $0x0, -0x9e8(%rbp)
sete %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x61b9f
movq -0xa18(%rbp), %rax
movq %rax, -0x9d8(%rbp)
movq -0x9d8(%rbp), %rdi
movq -0xa20(%rbp), %rsi
callq 0x63480
movq %rax, -0xa20(%rbp)
cmpq $0x0, -0xa20(%rbp)
sete %al
xorb $-0x1, %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x61bfb
movq -0xa18(%rbp), %rdi
movq -0xa20(%rbp), %rsi
movq -0xa28(%rbp), %rdx
movq -0xa30(%rbp), %rcx
leaq -0xa60(%rbp), %r8
leaq -0xa61(%rbp), %r9
callq 0x3a7b0
movq %rax, -0xa40(%rbp)
cmpq $0x0, %rax
jne 0x626d1
movq -0xa18(%rbp), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, -0x950(%rbp)
movq %rax, -0x958(%rbp)
movq $0x0, -0x960(%rbp)
movb $0x1, -0x961(%rbp)
movb $0x1, -0x962(%rbp)
testb $0x1, -0x961(%rbp)
je 0x61ff4
movq -0x958(%rbp), %rax
movq %rax, -0x7d8(%rbp)
movq -0x7d8(%rbp), %rax
movq %rax, -0x740(%rbp)
movq -0x740(%rbp), %rax
leaq 0x42449(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x748(%rbp)
movq -0x748(%rbp), %rax
cmpq -0x740(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x61c8f
jmp 0x61ca4
movq -0x748(%rbp), %rdi
callq 0x65b10
movq %rax, -0x738(%rbp)
jmp 0x61cb7
movq -0x740(%rbp), %rdi
callq 0x63ec0
movq %rax, -0x738(%rbp)
movq -0x738(%rbp), %rax
movq %rax, -0xab0(%rbp)
movq -0x950(%rbp), %rcx
movq -0x958(%rbp), %rax
movq %rcx, -0x7b0(%rbp)
movq %rax, -0x7b8(%rbp)
movb $0x0, -0x7b9(%rbp)
movq -0x7b0(%rbp), %rdx
movq -0x7b8(%rbp), %rcx
movb -0x7b9(%rbp), %al
movq %rdx, -0x690(%rbp)
movq %rcx, -0x698(%rbp)
andb $0x1, %al
movb %al, -0x699(%rbp)
movq -0x698(%rbp), %rax
leaq 0x42390(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x6b0(%rbp)
movq -0x6b0(%rbp), %rax
cmpq -0x698(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x61d4b
jmp 0x61fc7
movq -0x698(%rbp), %rax
movq -0x6b0(%rbp), %rcx
subq %rcx, %rax
shrq $0xc, %rax
movq %rax, -0x6b8(%rbp)
movq -0x6b0(%rbp), %rcx
movq -0x6b8(%rbp), %rax
movq %rcx, -0x670(%rbp)
movq %rax, -0x678(%rbp)
movq -0x670(%rbp), %rcx
movq -0x678(%rbp), %rax
movq %rcx, -0x550(%rbp)
movq %rax, -0x558(%rbp)
movq -0x550(%rbp), %rcx
movq -0x558(%rbp), %rax
movq %rcx, -0x510(%rbp)
movq %rax, -0x518(%rbp)
movq -0x510(%rbp), %rcx
movq -0x518(%rbp), %rax
movq %rcx, -0x460(%rbp)
movq %rax, -0x468(%rbp)
movq -0x460(%rbp), %rcx
movq -0x468(%rbp), %rax
movq %rcx, -0x450(%rbp)
movq %rax, -0x458(%rbp)
movq -0x450(%rbp), %rax
addq $0x78, %rax
movq -0x458(%rbp), %rcx
leaq 0x42194(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x548(%rbp)
movq -0x548(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x680(%rbp)
movq -0x680(%rbp), %rax
andq $0x1fe0, %rax           # imm = 0x1FE0
shrq $0x5, %rax
movl %eax, -0x684(%rbp)
movl -0x684(%rbp), %eax
movl %eax, -0x6bc(%rbp)
movl -0x6bc(%rbp), %eax
movl %eax, %ecx
movb $0x1, %al
cmpq $0xff, %rcx
movb %al, -0xab1(%rbp)
je 0x61e74
xorl %eax, %eax
movb %al, -0xab1(%rbp)
jmp 0x61e74
movb -0xab1(%rbp), %al
testb $0x1, %al
jne 0x61e83
jmp 0x61f85
movq -0x6b0(%rbp), %rcx
movq -0x6b8(%rbp), %rax
movq %rcx, -0x618(%rbp)
movq %rax, -0x620(%rbp)
movq -0x618(%rbp), %rcx
movq -0x620(%rbp), %rax
movq %rcx, -0x580(%rbp)
movq %rax, -0x588(%rbp)
movq -0x580(%rbp), %rcx
movq -0x588(%rbp), %rax
movq %rcx, -0x4e0(%rbp)
movq %rax, -0x4e8(%rbp)
movq -0x4e0(%rbp), %rcx
movq -0x4e8(%rbp), %rax
movq %rcx, -0x490(%rbp)
movq %rax, -0x498(%rbp)
movq -0x490(%rbp), %rcx
movq -0x498(%rbp), %rax
movq %rcx, -0x420(%rbp)
movq %rax, -0x428(%rbp)
movq -0x420(%rbp), %rax
addq $0x78, %rax
movq -0x428(%rbp), %rcx
leaq 0x42078(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x530(%rbp)
movq -0x530(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x628(%rbp)
movq -0x628(%rbp), %rax
movq %rax, -0x3d0(%rbp)
movq -0x3d0(%rbp), %rax
andq $-0x2000, %rax          # imm = 0xE000
shrq %rax
movq %rax, -0x3d8(%rbp)
movq -0x3d8(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
movq %rax, -0x6a8(%rbp)
jmp 0x61fc5
movl -0x6bc(%rbp), %eax
movl %eax, -0x5dc(%rbp)
movl -0x5dc(%rbp), %eax
movl %eax, -0x5d0(%rbp)
movl -0x5d0(%rbp), %eax
movl %eax, %ecx
leaq 0x2e354(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x5d8(%rbp)
movq -0x5d8(%rbp), %rax
movq %rax, -0x6a8(%rbp)
jmp 0x61fe1
movq -0x690(%rbp), %rdi
movq -0x698(%rbp), %rsi
callq 0x65c10
movq %rax, -0x6a8(%rbp)
movq -0xab0(%rbp), %rdi
movq -0x6a8(%rbp), %rsi
callq 0x65f40
movq -0x950(%rbp), %rsi
movq -0x958(%rbp), %rdx
movq -0x960(%rbp), %rcx
movb -0x962(%rbp), %al
movq %rsi, -0x388(%rbp)
movq %rdx, -0x390(%rbp)
movq %rcx, -0x398(%rbp)
andb $0x1, %al
movb %al, -0x399(%rbp)
movq -0x390(%rbp), %rax
leaq 0x42076(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x3a8(%rbp)
movq -0x3a8(%rbp), %rax
cmpq -0x390(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x62065
jmp 0x626ae
movq -0x390(%rbp), %rax
movq -0x3a8(%rbp), %rcx
subq %rcx, %rax
shrq $0xc, %rax
movq %rax, -0x3b0(%rbp)
movq -0x3a8(%rbp), %rcx
movq -0x3b0(%rbp), %rax
movq %rcx, -0x340(%rbp)
movq %rax, -0x348(%rbp)
movq -0x340(%rbp), %rcx
movq -0x348(%rbp), %rax
movq %rcx, -0x320(%rbp)
movq %rax, -0x328(%rbp)
movq -0x320(%rbp), %rcx
movq -0x328(%rbp), %rax
movq %rcx, -0x2f0(%rbp)
movq %rax, -0x2f8(%rbp)
movq -0x2f0(%rbp), %rcx
movq -0x2f8(%rbp), %rax
movq %rcx, -0x2e0(%rbp)
movq %rax, -0x2e8(%rbp)
movq -0x2e0(%rbp), %rax
addq $0x78, %rax
movq -0x2e8(%rbp), %rcx
leaq 0x41e96(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x338(%rbp)
movq -0x338(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x3b8(%rbp)
movq -0x3b8(%rbp), %rax
andq $0x2, %rax
cmpq $0x0, %rax
sete %al
testb $0x1, %al
jne 0x62147
jmp 0x62365
cmpq $0x0, -0x398(%rbp)
setne %al
testb $0x1, %al
jne 0x6215b
jmp 0x62322
movq -0x390(%rbp), %rcx
movq -0x3b8(%rbp), %rax
movq %rcx, -0x180(%rbp)
movq %rax, -0x188(%rbp)
movq -0x188(%rbp), %rax
andq $0x1fe0, %rax           # imm = 0x1FE0
shrq $0x5, %rax
movl %eax, -0x18c(%rbp)
movl -0x18c(%rbp), %eax
movl %eax, -0x3bc(%rbp)
movq -0x388(%rbp), %rax
movq %rax, -0x378(%rbp)
movq -0x378(%rbp), %rdi
movq -0x398(%rbp), %rsi
movq -0x390(%rbp), %rdx
movl -0x3bc(%rbp), %ecx
movb -0x399(%rbp), %al
movq %rdi, -0x120(%rbp)
movq %rsi, -0x128(%rbp)
movq %rdx, -0x130(%rbp)
movl %ecx, -0x134(%rbp)
andb $0x1, %al
movb %al, -0x135(%rbp)
testb $0x1, -0x135(%rbp)
je 0x62224
leaq 0x41306(%rip), %rax     # 0xa3502
movb (%rax), %al
testb $0x1, %al
jne 0x62204
jmp 0x62224
movq -0x130(%rbp), %rdi
movl -0x134(%rbp), %eax
leaq 0x413a8(%rip), %rsi     # 0xa35c0
shlq $0x6, %rax
addq %rax, %rsi
callq 0x3cbd0
movq -0x128(%rbp), %rax
addq $0x28, %rax
movl -0x134(%rbp), %ecx
shlq $0x5, %rcx
addq %rcx, %rax
movq %rax, -0x140(%rbp)
leaq 0x4228e(%rip), %rax     # 0xa44d8
movq (%rax), %rax
movl -0x134(%rbp), %ecx
shlq $0x2, %rcx
addq %rcx, %rax
movq %rax, -0x148(%rbp)
movq -0x140(%rbp), %rax
movl 0x10(%rax), %eax
movq -0x148(%rbp), %rcx
cmpl (%rcx), %eax
sete %al
testb $0x1, %al
jne 0x6227d
jmp 0x622aa
movq -0x120(%rbp), %rdi
movq -0x128(%rbp), %rsi
movq -0x140(%rbp), %rdx
movl -0x134(%rbp), %ecx
movq -0x148(%rbp), %rax
movl (%rax), %r8d
shrl %r8d
callq 0x7ecb0
movq -0x140(%rbp), %rax
movl 0x10(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x10(%rax)
movq -0x130(%rbp), %rdx
movq -0x140(%rbp), %rax
movq 0x18(%rax), %rax
movq -0x140(%rbp), %rcx
movl 0x10(%rcx), %ecx
movl %ecx, %esi
xorl %ecx, %ecx
subq %rsi, %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x120(%rbp), %rcx
movq -0x128(%rbp), %rax
movq %rcx, -0x80(%rbp)
movq %rax, -0x88(%rbp)
movq -0x88(%rbp), %rdi
addq $0x18, %rdi
callq 0x65fa0
testb $0x1, %al
jne 0x62310
jmp 0x62320
movq -0x80(%rbp), %rdi
movq -0x88(%rbp), %rsi
callq 0x7eb70
jmp 0x62360
movq -0x388(%rbp), %rax
movq %rax, -0xac0(%rbp)
movq -0x3a8(%rbp), %rdi
callq 0x65b10
movq -0xac0(%rbp), %rdi
movq %rax, %rsi
movq -0x3a8(%rbp), %rdx
movq -0x390(%rbp), %rcx
movq -0x3b0(%rbp), %r8
callq 0x3f9a0
jmp 0x626ac
movq -0x3a8(%rbp), %rcx
movq -0x3b0(%rbp), %rax
movq %rcx, -0x360(%rbp)
movq %rax, -0x368(%rbp)
movq -0x360(%rbp), %rcx
movq -0x368(%rbp), %rax
movq %rcx, -0x350(%rbp)
movq %rax, -0x358(%rbp)
movq -0x350(%rbp), %rcx
movq -0x358(%rbp), %rax
movq %rcx, -0x310(%rbp)
movq %rax, -0x318(%rbp)
movq -0x310(%rbp), %rcx
movq -0x318(%rbp), %rax
movq %rcx, -0x300(%rbp)
movq %rax, -0x308(%rbp)
movq -0x300(%rbp), %rcx
movq -0x308(%rbp), %rax
movq %rcx, -0x2d0(%rbp)
movq %rax, -0x2d8(%rbp)
movq -0x2d0(%rbp), %rax
addq $0x78, %rax
movq -0x2d8(%rbp), %rcx
leaq 0x41b96(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x330(%rbp)
movq -0x330(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x370(%rbp)
movq -0x370(%rbp), %rax
movq %rax, -0x2c0(%rbp)
movq -0x2c0(%rbp), %rax
andq $-0x2000, %rax          # imm = 0xE000
shrq %rax
movq %rax, -0x2c8(%rbp)
movq -0x2c8(%rbp), %rax
movq %rax, -0x3c8(%rbp)
cmpq $0x0, -0x398(%rbp)
setne %al
testb $0x1, %al
jne 0x62473
jmp 0x62673
movq -0x3c8(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
leaq 0x42079(%rip), %rcx     # 0xa4500
cmpq (%rcx), %rax
ja 0x62673
movq -0x388(%rbp), %rax
movq %rax, -0x380(%rbp)
movq -0x380(%rbp), %rdi
movq -0x398(%rbp), %rsi
movq -0x390(%rbp), %rdx
movq -0x3c8(%rbp), %rcx
subq $0x1000, %rcx           # imm = 0x1000
movb -0x399(%rbp), %al
movq %rdi, -0xb0(%rbp)
movq %rsi, -0xb8(%rbp)
movq %rdx, -0xc0(%rbp)
movq %rcx, -0xc8(%rbp)
andb $0x1, %al
movb %al, -0xc9(%rbp)
movq -0xc8(%rbp), %rax
movq %rax, -0x68(%rbp)
cmpq $0x1000, -0x68(%rbp)    # imm = 0x1000
setbe %al
testb $0x1, %al
jne 0x62507
jmp 0x62531
movq -0x68(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rcx
subq $0x1, %rcx
shrq $0x3, %rcx
leaq 0x2e55e(%rip), %rax     # 0x90a80
movzbl (%rax,%rcx), %eax
movl %eax, -0x5c(%rbp)
movl -0x5c(%rbp), %eax
movl %eax, -0x60(%rbp)
jmp 0x6253d
movq -0x68(%rbp), %rdi
callq 0x66030
movl %eax, -0x60(%rbp)
movl -0x60(%rbp), %eax
movl %eax, -0xd0(%rbp)
testb $0x1, -0xc9(%rbp)
je 0x62571
leaq 0x40fac(%rip), %rax     # 0xa3502
movb (%rax), %al
testb $0x1, %al
jne 0x6255e
jmp 0x62571
movq -0xc0(%rbp), %rdi
movq -0xc8(%rbp), %rsi
callq 0x3fab0
movq -0xb8(%rbp), %rax
addq $0x28, %rax
movl -0xd0(%rbp), %ecx
shlq $0x5, %rcx
addq %rcx, %rax
movq %rax, -0xd8(%rbp)
leaq 0x41f41(%rip), %rax     # 0xa44d8
movq (%rax), %rax
movl -0xd0(%rbp), %ecx
shlq $0x2, %rcx
addq %rcx, %rax
movq %rax, -0xe0(%rbp)
movq -0xd8(%rbp), %rax
movl 0x10(%rax), %eax
movq -0xe0(%rbp), %rcx
cmpl (%rcx), %eax
sete %al
testb $0x1, %al
jne 0x625ca
jmp 0x625f5
movq -0xb0(%rbp), %rdi
movq -0xd8(%rbp), %rsi
movl -0xd0(%rbp), %edx
movq -0xe0(%rbp), %rax
movl (%rax), %ecx
shrl %ecx
movq -0xb8(%rbp), %r8
callq 0x7f140
movq -0xd8(%rbp), %rax
movl 0x10(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x10(%rax)
movq -0xc0(%rbp), %rdx
movq -0xd8(%rbp), %rax
movq 0x18(%rax), %rax
movq -0xd8(%rbp), %rcx
movl 0x10(%rcx), %ecx
movl %ecx, %esi
xorl %ecx, %ecx
subq %rsi, %rcx
movq %rdx, (%rax,%rcx,8)
movq -0xb0(%rbp), %rcx
movq -0xb8(%rbp), %rax
movq %rcx, -0xa0(%rbp)
movq %rax, -0xa8(%rbp)
movq -0xa8(%rbp), %rdi
addq $0x18, %rdi
callq 0x65fa0
testb $0x1, %al
jne 0x6265e
jmp 0x62671
movq -0xa0(%rbp), %rdi
movq -0xa8(%rbp), %rsi
callq 0x7eb70
jmp 0x626aa
movq -0x388(%rbp), %rax
movq %rax, -0xac8(%rbp)
movq -0x3a8(%rbp), %rdi
callq 0x65b10
movq -0xac8(%rbp), %rdi
movq %rax, %rsi
movq -0x3a8(%rbp), %rdx
movq -0x390(%rbp), %rcx
callq 0x3fde0
jmp 0x626ac
jmp 0x626c1
movq -0x388(%rbp), %rdi
movq -0x390(%rbp), %rsi
callq 0x64db0
movq $0x0, -0xa10(%rbp)
jmp 0x6343b
movq -0xa58(%rbp), %rdi
movq -0xa20(%rbp), %rsi
movq -0xa40(%rbp), %rdx
movq -0xa28(%rbp), %rcx
movq -0xa60(%rbp), %r8
movb -0xa61(%rbp), %al
andb $0x1, %al
movzbl %al, %r9d
movl $0x1, (%rsp)
callq 0x634b0
movq -0xa18(%rbp), %rdi
movq -0xa40(%rbp), %rsi
movq -0xa58(%rbp), %rdx
callq 0x63570
testb $0x1, %al
jne 0x6272f
jmp 0x63224
movq -0xa18(%rbp), %rdi
movq -0xa20(%rbp), %rsi
movq -0xa40(%rbp), %rdx
movq -0xa28(%rbp), %rcx
movq -0xa60(%rbp), %r8
callq 0x3ab50
movq -0xa18(%rbp), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, -0x970(%rbp)
movq %rax, -0x978(%rbp)
movq $0x0, -0x980(%rbp)
movb $0x1, -0x981(%rbp)
movb $0x1, -0x982(%rbp)
testb $0x1, -0x981(%rbp)
je 0x62b50
movq -0x978(%rbp), %rax
movq %rax, -0x7d0(%rbp)
movq -0x7d0(%rbp), %rax
movq %rax, -0x758(%rbp)
movq -0x758(%rbp), %rax
leaq 0x418ed(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x760(%rbp)
movq -0x760(%rbp), %rax
cmpq -0x758(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x627eb
jmp 0x62800
movq -0x760(%rbp), %rdi
callq 0x65b10
movq %rax, -0x750(%rbp)
jmp 0x62813
movq -0x758(%rbp), %rdi
callq 0x63ec0
movq %rax, -0x750(%rbp)
movq -0x750(%rbp), %rax
movq %rax, -0xad0(%rbp)
movq -0x970(%rbp), %rcx
movq -0x978(%rbp), %rax
movq %rcx, -0x798(%rbp)
movq %rax, -0x7a0(%rbp)
movb $0x0, -0x7a1(%rbp)
movq -0x798(%rbp), %rdx
movq -0x7a0(%rbp), %rcx
movb -0x7a1(%rbp), %al
movq %rdx, -0x6c8(%rbp)
movq %rcx, -0x6d0(%rbp)
andb $0x1, %al
movb %al, -0x6d1(%rbp)
movq -0x6d0(%rbp), %rax
leaq 0x41834(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x6e8(%rbp)
movq -0x6e8(%rbp), %rax
cmpq -0x6d0(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x628a7
jmp 0x62b23
movq -0x6d0(%rbp), %rax
movq -0x6e8(%rbp), %rcx
subq %rcx, %rax
shrq $0xc, %rax
movq %rax, -0x6f0(%rbp)
movq -0x6e8(%rbp), %rcx
movq -0x6f0(%rbp), %rax
movq %rcx, -0x650(%rbp)
movq %rax, -0x658(%rbp)
movq -0x650(%rbp), %rcx
movq -0x658(%rbp), %rax
movq %rcx, -0x560(%rbp)
movq %rax, -0x568(%rbp)
movq -0x560(%rbp), %rcx
movq -0x568(%rbp), %rax
movq %rcx, -0x500(%rbp)
movq %rax, -0x508(%rbp)
movq -0x500(%rbp), %rcx
movq -0x508(%rbp), %rax
movq %rcx, -0x470(%rbp)
movq %rax, -0x478(%rbp)
movq -0x470(%rbp), %rcx
movq -0x478(%rbp), %rax
movq %rcx, -0x440(%rbp)
movq %rax, -0x448(%rbp)
movq -0x440(%rbp), %rax
addq $0x78, %rax
movq -0x448(%rbp), %rcx
leaq 0x41638(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x540(%rbp)
movq -0x540(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x660(%rbp)
movq -0x660(%rbp), %rax
andq $0x1fe0, %rax           # imm = 0x1FE0
shrq $0x5, %rax
movl %eax, -0x664(%rbp)
movl -0x664(%rbp), %eax
movl %eax, -0x6f4(%rbp)
movl -0x6f4(%rbp), %eax
movl %eax, %ecx
movb $0x1, %al
cmpq $0xff, %rcx
movb %al, -0xad1(%rbp)
je 0x629d0
xorl %eax, %eax
movb %al, -0xad1(%rbp)
jmp 0x629d0
movb -0xad1(%rbp), %al
testb $0x1, %al
jne 0x629df
jmp 0x62ae1
movq -0x6e8(%rbp), %rcx
movq -0x6f0(%rbp), %rax
movq %rcx, -0x600(%rbp)
movq %rax, -0x608(%rbp)
movq -0x600(%rbp), %rcx
movq -0x608(%rbp), %rax
movq %rcx, -0x590(%rbp)
movq %rax, -0x598(%rbp)
movq -0x590(%rbp), %rcx
movq -0x598(%rbp), %rax
movq %rcx, -0x4d0(%rbp)
movq %rax, -0x4d8(%rbp)
movq -0x4d0(%rbp), %rcx
movq -0x4d8(%rbp), %rax
movq %rcx, -0x4a0(%rbp)
movq %rax, -0x4a8(%rbp)
movq -0x4a0(%rbp), %rcx
movq -0x4a8(%rbp), %rax
movq %rcx, -0x410(%rbp)
movq %rax, -0x418(%rbp)
movq -0x410(%rbp), %rax
addq $0x78, %rax
movq -0x418(%rbp), %rcx
leaq 0x4151c(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x528(%rbp)
movq -0x528(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x610(%rbp)
movq -0x610(%rbp), %rax
movq %rax, -0x3e0(%rbp)
movq -0x3e0(%rbp), %rax
andq $-0x2000, %rax          # imm = 0xE000
shrq %rax
movq %rax, -0x3e8(%rbp)
movq -0x3e8(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
movq %rax, -0x6e0(%rbp)
jmp 0x62b21
movl -0x6f4(%rbp), %eax
movl %eax, -0x5cc(%rbp)
movl -0x5cc(%rbp), %eax
movl %eax, -0x5c0(%rbp)
movl -0x5c0(%rbp), %eax
movl %eax, %ecx
leaq 0x2d7f8(%rip), %rax     # 0x90300
movq (%rax,%rcx,8), %rax
movq %rax, -0x5c8(%rbp)
movq -0x5c8(%rbp), %rax
movq %rax, -0x6e0(%rbp)
jmp 0x62b3d
movq -0x6c8(%rbp), %rdi
movq -0x6d0(%rbp), %rsi
callq 0x65c10
movq %rax, -0x6e0(%rbp)
movq -0xad0(%rbp), %rdi
movq -0x6e0(%rbp), %rsi
callq 0x65f40
movq -0x970(%rbp), %rsi
movq -0x978(%rbp), %rdx
movq -0x980(%rbp), %rcx
movb -0x982(%rbp), %al
movq %rsi, -0x278(%rbp)
movq %rdx, -0x280(%rbp)
movq %rcx, -0x288(%rbp)
andb $0x1, %al
movb %al, -0x289(%rbp)
movq -0x280(%rbp), %rax
leaq 0x4151a(%rip), %rcx     # 0xa40b0
movq (%rcx), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, -0x298(%rbp)
movq -0x298(%rbp), %rax
cmpq -0x280(%rbp), %rax
setne %al
testb $0x1, %al
jne 0x62bc1
jmp 0x63201
movq -0x280(%rbp), %rax
movq -0x298(%rbp), %rcx
subq %rcx, %rax
shrq $0xc, %rax
movq %rax, -0x2a0(%rbp)
movq -0x298(%rbp), %rcx
movq -0x2a0(%rbp), %rax
movq %rcx, -0x230(%rbp)
movq %rax, -0x238(%rbp)
movq -0x230(%rbp), %rcx
movq -0x238(%rbp), %rax
movq %rcx, -0x210(%rbp)
movq %rax, -0x218(%rbp)
movq -0x210(%rbp), %rcx
movq -0x218(%rbp), %rax
movq %rcx, -0x1e0(%rbp)
movq %rax, -0x1e8(%rbp)
movq -0x1e0(%rbp), %rcx
movq -0x1e8(%rbp), %rax
movq %rcx, -0x1d0(%rbp)
movq %rax, -0x1d8(%rbp)
movq -0x1d0(%rbp), %rax
addq $0x78, %rax
movq -0x1d8(%rbp), %rcx
leaq 0x4133a(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x228(%rbp)
movq -0x228(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x2a8(%rbp)
movq -0x2a8(%rbp), %rax
andq $0x2, %rax
cmpq $0x0, %rax
sete %al
testb $0x1, %al
jne 0x62ca3
jmp 0x62eb8
cmpq $0x0, -0x288(%rbp)
setne %al
testb $0x1, %al
jne 0x62cb7
jmp 0x62e75
movq -0x280(%rbp), %rcx
movq -0x2a8(%rbp), %rax
movq %rcx, -0x198(%rbp)
movq %rax, -0x1a0(%rbp)
movq -0x1a0(%rbp), %rax
andq $0x1fe0, %rax           # imm = 0x1FE0
shrq $0x5, %rax
movl %eax, -0x1a4(%rbp)
movl -0x1a4(%rbp), %eax
movl %eax, -0x2ac(%rbp)
movq -0x278(%rbp), %rax
movq %rax, -0x268(%rbp)
movq -0x268(%rbp), %rdi
movq -0x288(%rbp), %rsi
movq -0x280(%rbp), %rdx
movl -0x2ac(%rbp), %ecx
movb -0x289(%rbp), %al
movq %rdi, -0x150(%rbp)
movq %rsi, -0x158(%rbp)
movq %rdx, -0x160(%rbp)
movl %ecx, -0x164(%rbp)
andb $0x1, %al
movb %al, -0x165(%rbp)
testb $0x1, -0x165(%rbp)
je 0x62d80
leaq 0x407aa(%rip), %rax     # 0xa3502
movb (%rax), %al
testb $0x1, %al
jne 0x62d60
jmp 0x62d80
movq -0x160(%rbp), %rdi
movl -0x164(%rbp), %eax
leaq 0x4084c(%rip), %rsi     # 0xa35c0
shlq $0x6, %rax
addq %rax, %rsi
callq 0x3cbd0
movq -0x158(%rbp), %rax
addq $0x28, %rax
movl -0x164(%rbp), %ecx
shlq $0x5, %rcx
addq %rcx, %rax
movq %rax, -0x170(%rbp)
leaq 0x41732(%rip), %rax     # 0xa44d8
movq (%rax), %rax
movl -0x164(%rbp), %ecx
shlq $0x2, %rcx
addq %rcx, %rax
movq %rax, -0x178(%rbp)
movq -0x170(%rbp), %rax
movl 0x10(%rax), %eax
movq -0x178(%rbp), %rcx
cmpl (%rcx), %eax
sete %al
testb $0x1, %al
jne 0x62dd9
jmp 0x62e06
movq -0x150(%rbp), %rdi
movq -0x158(%rbp), %rsi
movq -0x170(%rbp), %rdx
movl -0x164(%rbp), %ecx
movq -0x178(%rbp), %rax
movl (%rax), %r8d
shrl %r8d
callq 0x7ecb0
movq -0x170(%rbp), %rax
movl 0x10(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x10(%rax)
movq -0x160(%rbp), %rdx
movq -0x170(%rbp), %rax
movq 0x18(%rax), %rax
movq -0x170(%rbp), %rcx
movl 0x10(%rcx), %ecx
movl %ecx, %esi
xorl %ecx, %ecx
subq %rsi, %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x150(%rbp), %rcx
movq -0x158(%rbp), %rax
movq %rcx, -0x70(%rbp)
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rdi
addq $0x18, %rdi
callq 0x65fa0
testb $0x1, %al
jne 0x62e66
jmp 0x62e73
movq -0x70(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x7eb70
jmp 0x62eb3
movq -0x278(%rbp), %rax
movq %rax, -0xae0(%rbp)
movq -0x298(%rbp), %rdi
callq 0x65b10
movq -0xae0(%rbp), %rdi
movq %rax, %rsi
movq -0x298(%rbp), %rdx
movq -0x280(%rbp), %rcx
movq -0x2a0(%rbp), %r8
callq 0x3f9a0
jmp 0x631ff
movq -0x298(%rbp), %rcx
movq -0x2a0(%rbp), %rax
movq %rcx, -0x250(%rbp)
movq %rax, -0x258(%rbp)
movq -0x250(%rbp), %rcx
movq -0x258(%rbp), %rax
movq %rcx, -0x240(%rbp)
movq %rax, -0x248(%rbp)
movq -0x240(%rbp), %rcx
movq -0x248(%rbp), %rax
movq %rcx, -0x200(%rbp)
movq %rax, -0x208(%rbp)
movq -0x200(%rbp), %rcx
movq -0x208(%rbp), %rax
movq %rcx, -0x1f0(%rbp)
movq %rax, -0x1f8(%rbp)
movq -0x1f0(%rbp), %rcx
movq -0x1f8(%rbp), %rax
movq %rcx, -0x1c0(%rbp)
movq %rax, -0x1c8(%rbp)
movq -0x1c0(%rbp), %rax
addq $0x78, %rax
movq -0x1c8(%rbp), %rcx
leaq 0x41043(%rip), %rdx     # 0xa3fa0
subq (%rdx), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x220(%rbp)
movq -0x220(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x260(%rbp)
movq -0x260(%rbp), %rax
movq %rax, -0x1b0(%rbp)
movq -0x1b0(%rbp), %rax
andq $-0x2000, %rax          # imm = 0xE000
shrq %rax
movq %rax, -0x1b8(%rbp)
movq -0x1b8(%rbp), %rax
movq %rax, -0x2b8(%rbp)
cmpq $0x0, -0x288(%rbp)
setne %al
testb $0x1, %al
jne 0x62fc6
jmp 0x631c6
movq -0x2b8(%rbp), %rax
subq $0x1000, %rax           # imm = 0x1000
leaq 0x41526(%rip), %rcx     # 0xa4500
cmpq (%rcx), %rax
ja 0x631c6
movq -0x278(%rbp), %rax
movq %rax, -0x270(%rbp)
movq -0x270(%rbp), %rdi
movq -0x288(%rbp), %rsi
movq -0x280(%rbp), %rdx
movq -0x2b8(%rbp), %rcx
subq $0x1000, %rcx           # imm = 0x1000
movb -0x289(%rbp), %al
movq %rdi, -0xe8(%rbp)
movq %rsi, -0xf0(%rbp)
movq %rdx, -0xf8(%rbp)
movq %rcx, -0x100(%rbp)
andb $0x1, %al
movb %al, -0x101(%rbp)
movq -0x100(%rbp), %rax
movq %rax, -0x50(%rbp)
cmpq $0x1000, -0x50(%rbp)    # imm = 0x1000
setbe %al
testb $0x1, %al
jne 0x6305a
jmp 0x63084
movq -0x50(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rcx
subq $0x1, %rcx
shrq $0x3, %rcx
leaq 0x2da0b(%rip), %rax     # 0x90a80
movzbl (%rax,%rcx), %eax
movl %eax, -0x44(%rbp)
movl -0x44(%rbp), %eax
movl %eax, -0x48(%rbp)
jmp 0x63090
movq -0x50(%rbp), %rdi
callq 0x66030
movl %eax, -0x48(%rbp)
movl -0x48(%rbp), %eax
movl %eax, -0x108(%rbp)
testb $0x1, -0x101(%rbp)
je 0x630c4
leaq 0x40459(%rip), %rax     # 0xa3502
movb (%rax), %al
testb $0x1, %al
jne 0x630b1
jmp 0x630c4
movq -0xf8(%rbp), %rdi
movq -0x100(%rbp), %rsi
callq 0x3fab0
movq -0xf0(%rbp), %rax
addq $0x28, %rax
movl -0x108(%rbp), %ecx
shlq $0x5, %rcx
addq %rcx, %rax
movq %rax, -0x110(%rbp)
leaq 0x413ee(%rip), %rax     # 0xa44d8
movq (%rax), %rax
movl -0x108(%rbp), %ecx
shlq $0x2, %rcx
addq %rcx, %rax
movq %rax, -0x118(%rbp)
movq -0x110(%rbp), %rax
movl 0x10(%rax), %eax
movq -0x118(%rbp), %rcx
cmpl (%rcx), %eax
sete %al
testb $0x1, %al
jne 0x6311d
jmp 0x63148
movq -0xe8(%rbp), %rdi
movq -0x110(%rbp), %rsi
movl -0x108(%rbp), %edx
movq -0x118(%rbp), %rax
movl (%rax), %ecx
shrl %ecx
movq -0xf0(%rbp), %r8
callq 0x7f140
movq -0x110(%rbp), %rax
movl 0x10(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x10(%rax)
movq -0xf8(%rbp), %rdx
movq -0x110(%rbp), %rax
movq 0x18(%rax), %rax
movq -0x110(%rbp), %rcx
movl 0x10(%rcx), %ecx
movl %ecx, %esi
xorl %ecx, %ecx
subq %rsi, %rcx
movq %rdx, (%rax,%rcx,8)
movq -0xe8(%rbp), %rcx
movq -0xf0(%rbp), %rax
movq %rcx, -0x90(%rbp)
movq %rax, -0x98(%rbp)
movq -0x98(%rbp), %rdi
addq $0x18, %rdi
callq 0x65fa0
testb $0x1, %al
jne 0x631b1
jmp 0x631c4
movq -0x90(%rbp), %rdi
movq -0x98(%rbp), %rsi
callq 0x7eb70
jmp 0x631fd
movq -0x278(%rbp), %rax
movq %rax, -0xae8(%rbp)
movq -0x298(%rbp), %rdi
callq 0x65b10
movq -0xae8(%rbp), %rdi
movq %rax, %rsi
movq -0x298(%rbp), %rdx
movq -0x280(%rbp), %rcx
callq 0x3fde0
jmp 0x631ff
jmp 0x63214
movq -0x278(%rbp), %rdi
movq -0x280(%rbp), %rsi
callq 0x64db0
movq $0x0, -0xa10(%rbp)
jmp 0x6343b
movq -0xa18(%rbp), %rdi
movq -0xa20(%rbp), %rsi
addq $0x830, %rsi            # imm = 0x830
callq 0x635b0
movq -0xa58(%rbp), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, 0x50(%rax)
movq -0xa58(%rbp), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, 0x58(%rax)
jmp 0x63264
movq -0xa20(%rbp), %rax
cmpq $0x0, 0x828(%rax)
je 0x632de
jmp 0x63277
movq -0xa20(%rbp), %rax
movq 0x828(%rax), %rax
movq 0x58(%rax), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, 0x58(%rax)
movq -0xa20(%rbp), %rax
movq 0x828(%rax), %rcx
movq -0xa58(%rbp), %rax
movq %rcx, 0x50(%rax)
movq -0xa58(%rbp), %rcx
movq -0xa58(%rbp), %rax
movq 0x58(%rax), %rax
movq %rcx, 0x50(%rax)
movq -0xa58(%rbp), %rcx
movq -0xa20(%rbp), %rax
movq 0x828(%rax), %rax
movq %rcx, 0x58(%rax)
jmp 0x632de
movq -0xa58(%rbp), %rax
movq 0x50(%rax), %rcx
movq -0xa20(%rbp), %rax
movq %rcx, 0x828(%rax)
movq -0xa18(%rbp), %rdi
movq -0xa20(%rbp), %rsi
addq $0x830, %rsi            # imm = 0x830
callq 0x63600
testb $0x1, -0xa31(%rbp)
jne 0x63334
leaq 0x401f2(%rip), %rax     # 0xa3513
movb (%rax), %al
xorb $-0x1, %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x63354
testb $0x1, -0xa61(%rbp)
jne 0x63352
movq -0xa40(%rbp), %rdi
movq -0xa28(%rbp), %rdx
xorl %esi, %esi
callq 0xb210
jmp 0x63388
leaq 0x401a6(%rip), %rax     # 0xa3501
movb (%rax), %al
xorb $-0x1, %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x63386
movq -0xa40(%rbp), %rdi
movq -0xa28(%rbp), %rdx
movl $0xa5, %esi
callq 0xb210
jmp 0x63388
movq -0xa18(%rbp), %rcx
movq -0xa20(%rbp), %rax
movq %rcx, -0x940(%rbp)
movq %rax, -0x948(%rbp)
movq -0x940(%rbp), %rcx
movq -0x948(%rbp), %rax
movq %rcx, -0x18(%rbp)
movq %rax, -0x20(%rbp)
movl $0x1, -0x24(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
sete %al
testb $0x1, %al
jne 0x633d7
jmp 0x633d9
jmp 0x6342d
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
movq -0x20(%rbp), %rax
movl (%rax), %esi
callq 0x66220
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
sete %al
testb $0x1, %al
jne 0x6340a
jmp 0x6340c
jmp 0x6342d
movq -0x38(%rbp), %rdi
movl -0x24(%rbp), %esi
callq 0x65fd0
testb $0x1, %al
jne 0x6341e
jmp 0x6342d
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
xorl %edx, %edx
callq 0x3b8a0
movq -0xa40(%rbp), %rax
movq %rax, -0xa10(%rbp)
movq -0xa10(%rbp), %rax
addq $0xaf0, %rsp            # imm = 0xAF0
popq %rbp
retq
nopl (%rax,%rax)