// File: /workspace/github_c_makefile_star2_O2/jsummers[P]deark/modules/ilbm.c
// Function: my_iff_chunk_handler
static int my_iff_chunk_handler(struct de_iffctx *ictx)
{
	deark *c = ictx->c;
	int quitflag = 0;
	lctx *d = (lctx*)ictx->userdata;

	if(d->num_frames_finished >= ANIM_MAX_FRAMES) {
		quitflag = 1;
		goto done;
	}

	// Chunks that we support even if they are not in FORM:ILBM, FORM:PBM, etc. chunk.

	switch(ictx->chunkctx->chunk4cc.id) {
	case CODE_FORM:
		if(ictx->level==0) {
			// Remember this for later
			d->main_chunk_endpos = ictx->chunkctx->dpos + ictx->chunkctx->dlen;
		}
		if(ictx->level>d->FORM_level) break;
		ictx->is_std_container = 1;
		goto done;
	}

	// Chunks that we process only inside a FORM:ILBM, etc. chunk.

	if(!d->frctx) goto done;

	switch(ictx->chunkctx->chunk4cc.id) {
	case CODE_BMHD:
		ictx->handled = 1;
		if(!do_bmhd(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen)) {
			d->errflag = 1;
			goto done;
		}
		break;

	case CODE_ANHD:
		do_anim_anhd(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;

	case CODE_CMAP:
		do_cmap(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;

	case CODE_CAMG:
		do_camg(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;

	case CODE_BODY:
	case CODE_ABIT:
		ictx->handled = 1;
		do_body_or_abit(c, d, ictx, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		break;

	case CODE_DLTA:
		ictx->handled = 1;
		if(ictx->curr_container_contentstype4cc.id != CODE_ILBM) {
			d->errflag = 1;
			goto done;
		}
		do_dlta(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		break;

	case CODE_TINY:
		do_tiny(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_XS24:
		do_xs24(c, ictx->f, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;

	case CODE_DPI:
		do_dpi(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_GRAB:
		do_grab(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_DPAN:
		do_dpan(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_CRNG:
		do_crng(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_DRNG:
		do_drng(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_CCRT:
		do_ccrt(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_SHAM:
		d->is_sham = 1;
		on_multipalette_enabled(c, d);
		break;
	case CODE_PCHG:
		d->is_pchg = 1;
		on_multipalette_enabled(c, d);
		break;
	case CODE_CTBL:
		d->is_ctbl = 1;
		on_multipalette_enabled(c, d);
		break;
	case CODE_BEAM:
		d->is_beam = 1;
		on_multipalette_enabled(c, d);
		break;
	case CODE_CLUT:
		d->found_clut = 1;
		break;
	case CODE_ANSQ:
		do_ansq(c, d, ictx->chunkctx->dpos, ictx->chunkctx->dlen);
		ictx->handled = 1;
		break;
	case CODE_SBDY:
		if(d->is_anim && !d->found_audio) {
			de_info(c, "Note: This file includes AnimFX-style audio, which is "
				"not supported.");
			d->found_audio = 1;
		}
		break;
	}

done:
	return (quitflag) ? 0 : 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x108, %rsp            # imm = 0x108
movq 0x10(%rdi), %rbp
movl 0x24(%rbp), %ebx
cmpl $0x270f, %ebx           # imm = 0x270F
jg 0x75ba9
movq %rdi, %r12
movq (%rdi), %rdi
movq 0x128(%r12), %rax
movl 0x4(%rax), %ecx
cmpl $0x464f524d, %ecx       # imm = 0x464F524D
jne 0x74c08
movl 0x64(%r12), %edx
testl %edx, %edx
jne 0x74bff
movq 0x48(%rax), %rsi
addq 0x40(%rax), %rsi
movq %rsi, 0x10(%rbp)
cmpl 0x18(%rbp), %edx
jle 0x74d5f
movq 0xb0(%rbp), %rdx
testq %rdx, %rdx
je 0x75ba9
cmpl $0x41424954, %ecx       # imm = 0x41424954
movq %rdi, 0x8(%rsp)
je 0x74d70
cmpl $0x414e4844, %ecx       # imm = 0x414E4844
je 0x750cc
cmpl $0x414e5351, %ecx       # imm = 0x414E5351
je 0x75026
cmpl $0x4245414d, %ecx       # imm = 0x4245414D
je 0x752ec
cmpl $0x58533234, %ecx       # imm = 0x58533234
je 0x751f9
cmpl $0x424f4459, %ecx       # imm = 0x424F4459
je 0x74d70
cmpl $0x43414d47, %ecx       # imm = 0x43414D47
je 0x74dc8
cmpl $0x43435254, %ecx       # imm = 0x43435254
je 0x74f9f
cmpl $0x434c5554, %ecx       # imm = 0x434C5554
je 0x74e7b
cmpl $0x434d4150, %ecx       # imm = 0x434D4150
je 0x7512d
cmpl $0x43524e47, %ecx       # imm = 0x43524E47
je 0x74eb8
cmpl $0x4354424c, %ecx       # imm = 0x4354424C
je 0x74e84
cmpl $0x444c5441, %ecx       # imm = 0x444C5441
je 0x75210
cmpl $0x4450414e, %ecx       # imm = 0x4450414E
je 0x74f3f
cmpl $0x44504920, %ecx       # imm = 0x44504920
je 0x75292
cmpl $0x44524e47, %ecx       # imm = 0x44524E47
je 0x74fe1
cmpl $0x47524142, %ecx       # imm = 0x47524142
je 0x751a6
cmpl $0x50434847, %ecx       # imm = 0x50434847
je 0x750c3
cmpl $0x53424459, %ecx       # imm = 0x53424459
je 0x74e8d
cmpl $0x5348414d, %ecx       # imm = 0x5348414D
je 0x74fd8
cmpl $0x54494e59, %ecx       # imm = 0x54494E59
je 0x74f80
cmpl $0x424d4844, %ecx       # imm = 0x424D4844
jne 0x75ba9
movl $0x1, 0x130(%r12)
movq 0x40(%rax), %rcx
movq 0x48(%rax), %rax
movq %rcx, 0x60(%rsp)
movb $0x1, 0x35(%rbp)
cmpq $0x14, %rax
jge 0x7539c
leaq 0xa6c79(%rip), %rsi     # 0x11b9cc
xorl %eax, %eax
callq 0xdf2a5
jmp 0x75286
movl $0x1, 0x134(%r12)
jmp 0x75ba9
movl $0x1, 0x130(%r12)
movq 0x40(%rax), %r15
movq 0x48(%rax), %r12
movq 0x50(%rbp), %rsi
movq 0x58(%rbp), %rdx
movq 0x8(%rsp), %rdi
callq 0xe6be1
movq 0x8(%rsp), %rdi
testl %eax, %eax
je 0x75286
movq 0xb0(%rbp), %rdx
movq %rbp, %rsi
movq %r15, %rcx
movq %r12, %r8
xorl %r9d, %r9d
callq 0x76a77
testl %eax, %eax
jne 0x75ba9
jmp 0x75286
cmpq $0x4, 0x48(%rax)
jl 0x75b9d
movq 0x40(%rax), %rsi
movw $0x101, 0x36(%rbp)      # imm = 0x101
andl $0x0, 0x38(%rbp)
movq %rdi, %r14
movq 0x18(%rdi), %rdi
callq 0xe404f
movl %eax, 0x4c(%rbp)
leaq 0xa6dd4(%rip), %rsi     # 0x11bbcb
movq %r14, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
movl 0x4c(%rbp), %eax
btl $0xb, %eax
jae 0x74e10
movb $0x1, 0x38(%rbp)
testb %al, %al
jns 0x74e18
movb $0x1, 0x3b(%rbp)
movl 0x4(%rbp), %eax
cmpl $0x5247424e, %eax       # imm = 0x5247424E
movq 0x8(%rsp), %r14
je 0x74e2e
cmpl $0x52474238, %eax       # imm = 0x52474238
jne 0x74e36
xorl %eax, %eax
movb %al, 0x38(%rbp)
movb %al, 0x3b(%rbp)
pushq $0x1
popq %rsi
movq %r14, %rdi
callq 0xdeba7
movzbl 0x38(%rbp), %edx
leaq 0xa6d8f(%rip), %rsi     # 0x11bbdb
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
movzbl 0x3b(%rbp), %edx
leaq 0xa6d82(%rip), %rsi     # 0x11bbe3
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
pushq $-0x1
popq %rsi
movq %r14, %rdi
callq 0xdeba7
jmp 0x75b9d
movb $0x1, 0x42(%rbp)
jmp 0x75ba9
movb $0x1, 0x3f(%rbp)
jmp 0x752f0
cmpl $0x0, (%rbp)
je 0x75ba9
cmpb $0x0, 0x44(%rbp)
jne 0x75ba9
leaq 0xa6adf(%rip), %rsi     # 0x11b987
xorl %eax, %eax
callq 0xdf37f
movb $0x1, 0x44(%rbp)
jmp 0x75ba9
cmpq $0x8, 0x48(%rax)
jl 0x75b9d
movq 0x40(%rax), %r13
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x2(%r13), %rsi
callq 0xe3f46
movq %rax, %r15
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
addq $0x4, %r13
movq %r13, %rsi
callq 0xe3f46
movq %rax, %r13
leaq 0xa71ed(%rip), %rsi     # 0x11c0e8
movq 0x8(%rsp), %rdi
movl %r13d, %edx
xorl %eax, %eax
callq 0xde896
movq 0x8(%rsp), %r14
testb $0x1, %r13b
je 0x75b9d
movl %r15d, %eax
cvtsi2sd %rax, %xmm0
mulsd 0xa68b7(%rip), %xmm0    # 0x11b7e0
leaq 0xa71cb(%rip), %rsi     # 0x11c0fb
movq %r14, %rdi
movb $0x1, %al
callq 0xde896
jmp 0x75016
cmpq $0x4, 0x48(%rax)
jl 0x75b9d
cmpl $0x0, (%rbp)
je 0x75b9d
movq 0x40(%rax), %rsi
movq %rdi, %r14
movq 0x18(%rdi), %rdi
addq $0x2, %rsi
callq 0xe3f46
leaq 0x91b71(%rip), %rsi     # 0x106ae0
movq %r14, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
jmp 0x75b9d
movq 0x40(%rax), %rcx
movq 0x48(%rax), %r15
movq %rcx, 0x60(%rsp)
cmpq $0x5, %r15
jge 0x752fd
xorl %r13d, %r13d
jmp 0x754de
movq 0x40(%rax), %rsi
movq %rdi, %r14
movq 0x18(%rdi), %rdi
callq 0xe3fee
movq %rax, %r15
leaq 0xa71a5(%rip), %rsi     # 0x11c15e
movq %r14, %rdi
movl %r15d, %edx
xorl %eax, %eax
callq 0xde896
testq %r15, %r15
je 0x75b9d
movb $0x1, 0x3c(%rbp)
jmp 0x75b9d
movb $0x1, 0x3e(%rbp)
jmp 0x752f0
movq 0x40(%rax), %rsi
movq %rdi, %r14
movq 0x18(%rdi), %rdi
addq $0x4, %rsi
callq 0xe3f46
movq %rax, %r15
leaq 0xa714c(%rip), %rsi     # 0x11c14b
movq %r14, %rdi
movl %r15d, %edx
xorl %eax, %eax
callq 0xde896
testb $0x1, %r15b
je 0x75b9d
movq %r14, %rdi
movq %rbp, %rsi
callq 0x785bc
jmp 0x75b9d
movl %ebx, 0x24(%rsp)
movq 0x40(%rax), %r14
movq 0x48(%rax), %rax
pushq $0x4
popq %rcx
cqto
idivq %rcx
leaq 0xa71cd(%rip), %rsi     # 0x11c20e
movq 0x8(%rsp), %rdi
movq %rax, %rbx
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
movq 0x8(%rsp), %rdi
cmpl $0x2, (%rdi)
jl 0x75432
pushq $0x1
popq %rsi
callq 0xdeba7
xorl %ebp, %ebp
movq 0x8(%rsp), %r15
cmpq %rbx, %rbp
jge 0x75425
cmpq $0x7cf, %rbp            # imm = 0x7CF
ja 0x75425
movq 0x18(%r15), %rdi
movq %r14, %rsi
callq 0xe3f46
movq %rax, %r13
movq 0x18(%r15), %rdi
leaq 0x2(%r14), %rsi
callq 0xe3f46
movq %r15, %rdi
leaq 0xa7184(%rip), %rsi     # 0x11c22f
movl %ebp, %edx
movl %r13d, %ecx
movl %eax, %r8d
xorl %eax, %eax
callq 0xde9f1
incq %rbp
addq $0x4, %r14
jmp 0x7506f
movb $0x1, 0x40(%rbp)
jmp 0x752f0
cmpq $0x18, 0x48(%rax)
jl 0x75b9d
movq 0x40(%rax), %r13
movq 0x18(%rdi), %rdi
movq %r13, %rsi
movq %rdx, 0x10(%rsp)
callq 0xe3eb4
movq 0x10(%rsp), %rcx
movb %al, 0x10(%rcx)
movzbl %al, %edx
leaq 0xa9de3(%rip), %rcx     # 0x11eee1
cmpb $0x8, %dl
movq %rbp, 0x38(%rsp)
ja 0x7550e
leaq 0xa66f5(%rip), %rax     # 0x11b808
movslq (%rax,%rdx,4), %rsi
addq %rax, %rsi
movq 0x8(%rsp), %r14
jmpq *%rsi
leaq 0xa69b6(%rip), %rcx     # 0x11bade
jmp 0x759a8
movq 0x40(%rax), %r13
movq 0x48(%rax), %rax
movw $0x101, 0x33(%rbp)      # imm = 0x101
pushq $0x3
popq %rcx
cqto
idivq %rcx
movq %rax, %r15
leaq 0x8f253(%rip), %rsi     # 0x1043a0
movq %rdi, %r14
movl %r15d, %edx
xorl %eax, %eax
callq 0xde896
movl $0x100, %eax            # imm = 0x100
cmpq %rax, %r15
cmovgeq %rax, %r15
movq 0x18(%r14), %rdi
leaq 0xd4(%rbp), %r8
subq $0x8, %rsp
movl $0x100, %r9d            # imm = 0x100
movq %r13, %rsi
movq %r15, %rdx
pushq $0x3
popq %rcx
pushq $0x0
callq 0xe7963
popq %rax
popq %rcx
cmpq 0xc8(%rbp), %r15
jle 0x75b9d
movq %r15, 0xc8(%rbp)
jmp 0x75b9d
cmpq $0x4, 0x48(%rax)
jl 0x75b9d
movq 0x40(%rax), %r15
movb $0x1, 0xa0(%rbp)
movq %rdi, %r14
movq 0x18(%rdi), %rdi
movq %r15, %rsi
callq 0xe3f46
movl %eax, 0xa4(%rbp)
movq 0x18(%r14), %rdi
addq $0x2, %r15
movq %r15, %rsi
callq 0xe3f46
movl %eax, 0xa8(%rbp)
movl 0xa4(%rbp), %edx
leaq 0xa6ee2(%rip), %rsi     # 0x11c0d6
jmp 0x752db
movq 0x18(%r12), %rsi
movq 0x40(%rax), %rdx
movq 0x48(%rax), %rcx
callq 0x76955
jmp 0x75b9d
movl $0x1, 0x130(%r12)
cmpl $0x494c424d, 0xfc(%r12) # imm = 0x494C424D
jne 0x75286
movq %rdx, 0x10(%rsp)
movq 0x40(%rax), %r15
movq 0x48(%rax), %r14
leaq 0xb0(%rsp), %rsi
callq 0xdebae
cmpl $0x0, 0x1c(%rbp)
je 0x754eb
xorl %r13d, %r13d
movq 0x8(%rsp), %rdi
movq 0x10(%rsp), %rcx
movzbl 0x10(%rcx), %eax
movb $0x1, 0x8d4(%rbp,%rax)
movq %rdi, %r14
movq %r13, %rsi
callq 0xded32
movl 0xb0(%rsp), %esi
movq %r14, %rdi
callq 0xdebb7
jmp 0x75ba9
movl $0x1, 0x1c(%rbp)
jmp 0x75ba9
cmpq $0x4, 0x48(%rax)
jl 0x75b9d
movq 0x40(%rax), %r15
movq %rdi, %r14
movq 0x18(%rdi), %rdi
movq %r15, %rsi
callq 0xe3f46
movq %rax, 0x80(%rbp)
movq 0x18(%r14), %rdi
addq $0x2, %r15
movq %r15, %rsi
callq 0xe3f46
movq %rax, 0x88(%rbp)
movl 0x80(%rbp), %edx
leaq 0xa6def(%rip), %rsi     # 0x11c0ca
movq %r14, %rdi
movl %eax, %ecx
xorl %eax, %eax
callq 0xde896
jmp 0x75b9d
movb $0x1, 0x41(%rbp)
movq %rbp, %rsi
callq 0x76a41
jmp 0x75ba9
movq %rcx, 0x8(%rsp)
movq %rdi, %r14
movq 0x18(%rdi), %rdi
leaq 0x60(%rsp), %r13
movq %r13, %rsi
callq 0xe3f6e
movq %rax, 0x90(%rbp)
movq 0x18(%r14), %rdi
movq %r13, %rsi
callq 0xe3f6e
movq %rax, 0x98(%rbp)
movl 0x90(%rbp), %edx
leaq 0xa6d1f(%rip), %rsi     # 0x11c05c
movq %r14, %rdi
movl %eax, %ecx
xorl %eax, %eax
callq 0xde896
movq 0x90(%rbp), %rsi
movq 0x98(%rbp), %rdx
movq %r14, %rdi
callq 0xe6bb4
testl %eax, %eax
je 0x754c7
pushq $0x28
popq %rsi
movq %r14, %rdi
callq 0xdecaf
movq %rax, %r13
movq 0x60(%rsp), %rcx
addq 0x8(%rsp), %r15
subq %rcx, %r15
pushq $0x1
popq %r9
movq %r14, %rdi
movq %rbp, %rsi
movq %rax, %rdx
movq %r15, %r8
callq 0x76a77
jmp 0x754db
movb $0x1, 0x32(%rbp)
movq %rdi, %r14
movq 0x18(%rdi), %rdi
leaq 0x60(%rsp), %r15
movq %r15, %rsi
callq 0xe3f6e
movq %rax, 0x50(%rbp)
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe3f6e
movq %rax, 0x58(%rbp)
movq 0x50(%rbp), %rsi
movq %r14, %rdi
movq %rax, %rdx
callq 0xdf038
addq $0x4, (%r15)
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe3f2a
movzbl %al, %edx
movq %rdx, 0x60(%rbp)
leaq 0xb8dca(%rip), %rsi     # 0x12e1bf
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe3f2a
movb %al, 0x69(%rbp)
cmpb $0x3, %al
ja 0x75447
movzbl %al, %eax
leaq 0xa6484(%rip), %rcx     # 0x11b8a0
movslq (%rcx,%rax,4), %r15
addq %rcx, %r15
jmp 0x7544e
pushq $-0x1
popq %rsi
movq 0x8(%rsp), %rdi
callq 0xdeba7
movl $0x1, 0x130(%r12)
movl 0x24(%rsp), %ebx
jmp 0x75ba9
leaq 0xa9a93(%rip), %r15     # 0x11eee1
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x60(%rsp), %rsi
callq 0xe3f2a
movb %al, 0x68(%rbp)
movzbl %al, %edx
movl 0x4(%rbp), %eax
cmpl $0x4143424d, %eax       # imm = 0x4143424D
jne 0x75482
leaq 0x97773(%rip), %rcx     # 0x10cbeb
movq 0x8(%rsp), %r14
jmp 0x7589c
cmpl $0x4, %edx
movq 0x8(%rsp), %r14
ja 0x75895
movl %edx, %ecx
leaq 0xa6393(%rip), %rsi     # 0x11b82c
movslq (%rsi,%rcx,4), %rcx
addq %rsi, %rcx
jmpq *%rcx
cmpl $0x52474238, %eax       # imm = 0x52474238
leaq 0xa65c9(%rip), %rsi     # 0x11ba77
leaq 0xa9a2c(%rip), %rcx     # 0x11eee1
cmoveq %rsi, %rcx
cmpl $0x5247424e, %eax       # imm = 0x5247424E
cmoveq %rsi, %rcx
jmp 0x7589c
leaq 0xa6bb2(%rip), %rsi     # 0x11c080
xorl %r13d, %r13d
movq %r14, %rdi
xorl %eax, %eax
callq 0xdf05a
movq %r14, %rdi
movq %r13, %rsi
callq 0x7692a
jmp 0x75b9d
movq %r15, 0x30(%rsp)
cmpb $0x0, 0x32(%rbp)
movq 0x10(%rsp), %rcx
je 0x75543
cmpl $0x0, 0x8(%rcx)
movq 0x8(%rsp), %rdi
je 0x75550
xorl %r13d, %r13d
jmp 0x7525b
cmpl $0x4a, %edx
movq 0x8(%rsp), %r14
je 0x7598f
cmpl $0x64, %edx
je 0x75998
cmpl $0x65, %edx
je 0x759a1
cmpl $0x6c, %edx
jne 0x759a8
leaq 0xa6641(%rip), %rcx     # 0x11bb7f
jmp 0x759a8
xorl %r13d, %r13d
movq 0x8(%rsp), %rdi
jmp 0x7525b
movq %r14, 0x28(%rsp)
movl $0x1, 0x8(%rcx)
pushq $0x68
popq %rsi
movq %rdi, %r14
movq %rcx, %r15
callq 0xdecaf
movq %rax, %r13
movq %r14, %rdi
movq %rbp, %rsi
callq 0x770e3
movq %r14, %rdi
movq %rbp, %rsi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x77306
testl %eax, %eax
je 0x75bc6
movl %ebx, 0x24(%rsp)
cmpl $0x2, 0x14(%r15)
movq %r15, %rsi
jb 0x755aa
movq 0xc0(%rbp), %rbx
testq %rbx, %rbx
jne 0x755b1
movq 0xb8(%rbp), %rbx
movq 0x20(%rsi), %rcx
testq %rcx, %rcx
jne 0x755d7
movq 0x50(%r13), %rsi
pushq $0x1
popq %rdx
movq 0x8(%rsp), %rdi
callq 0xe59cd
movq 0x10(%rsp), %rsi
movq %rax, %rcx
movq %rax, 0x20(%rsi)
testq %rbx, %rbx
je 0x755f5
movq 0x20(%rbx), %rdi
testq %rdi, %rdi
je 0x755f5
movq 0x18(%rdi), %rdx
xorl %esi, %esi
callq 0xe45f4
movq 0x10(%rsp), %rsi
movzbl 0x10(%rsi), %edx
leal -0x3(%rdx), %eax
cmpl $0x5, %eax
movq %r13, 0x18(%rsp)
ja 0x75bda
leaq 0xa61df(%rip), %rcx     # 0x11b7f0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
movq 0x8(%rsp), %rdi
jmpq *%rax
movq %rbp, 0x38(%rsp)
leaq 0xc0(%rsp), %r14
movq 0x30(%rsp), %r15
movq %r15, (%r14)
leaq 0xa6857(%rip), %rsi     # 0x11be92
xorl %eax, %eax
callq 0xde896
movq 0x28(%rsp), %rbx
leaq (%rbx,%r15), %rax
movq %rax, 0xa0(%rsp)
xorl %r15d, %r15d
cmpq $0x8, %r15
movq 0x8(%rsp), %rdi
je 0x75e2e
movq 0x18(%rdi), %rdi
movq %r14, %rsi
callq 0xe4071
cmpq 0x18(%r13), %r15
jge 0x75872
movq %rax, %r12
movq 0x8(%rsp), %rdi
leaq 0xa6816(%rip), %rsi     # 0x11bea0
movl %r15d, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0xde9f1
testq %r12, %r12
jle 0x75872
movq %r15, 0xb8(%rsp)
movq %rbx, %rcx
subq %r12, %rcx
addq 0x30(%rsp), %r12
movq %r12, 0x60(%rsp)
movq 0x8(%rsp), %rdi
leaq 0xa67f0(%rip), %rsi     # 0x11beb4
movq %r12, %rdx
xorl %eax, %eax
callq 0xde9f1
movq 0x40(%r13), %r15
leaq 0x1(%r15), %rax
cqto
pushq $0x2
popq %rcx
idivq %rcx
movq %rax, 0x40(%rsp)
testq %r15, %r15
jle 0x75858
movq 0x18(%rsp), %rax
movq 0x8(%rax), %rax
imulq 0x40(%rsp), %rax
movq %rax, 0x58(%rsp)
imulq 0xb8(%rsp), %r15
xorl %ebp, %ebp
cmpq 0x58(%rsp), %rbp
jge 0x75858
movq 0x60(%rsp), %rax
addq $0x2, %rax
cmpq 0xa0(%rsp), %rax
jge 0x75858
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x60(%rsp), %rsi
callq 0xe4026
cmpq $-0x1, %rax
je 0x75858
movq %rax, %r13
testq %rax, %rax
js 0x757b8
movq 0x10(%rsp), %rbx
movl $0x1, 0xc(%rbx)
addq %r13, %rbp
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
movq 0x60(%rsp), %rdx
leaq 0x50(%rsp), %r13
movq %r13, %rsi
pushq $0x2
popq %r12
movq %r12, %rcx
callq 0xe3cb7
addq $0x2, 0x60(%rsp)
movq %rbp, %rax
xorl %edx, %edx
divq 0x40(%rsp)
movq 0x18(%rsp), %rcx
imulq 0x48(%rcx), %rax
addq %r15, %rax
leaq (%rax,%rdx,2), %rsi
movq 0x20(%rbx), %rdi
movq %r13, %rdx
movq %r12, %rcx
callq 0xe5bfe
jmp 0x7570b
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x60(%rsp), %rsi
callq 0xe3f6e
movq %rax, %r12
testq %rax, %rax
jle 0x757df
movq 0x10(%rsp), %rax
movl $0x1, 0xc(%rax)
subq %r13, %rbp
addq $-0x2, %rbp
testq %r12, %r12
movl $0x0, %eax
cmovleq %rax, %r12
movq 0x18(%rsp), %rbx
pushq $0x2
popq %r13
subq $0x1, %r12
movq 0x8(%rsp), %rax
jb 0x7570b
movq 0x18(%rax), %rdi
movq 0x60(%rsp), %rdx
leaq 0x50(%rsp), %r14
movq %r14, %rsi
movq %r13, %rcx
callq 0xe3cb7
addq $0x2, 0x60(%rsp)
incq %rbp
movq %rbp, %rax
xorl %edx, %edx
divq 0x40(%rsp)
imulq 0x48(%rbx), %rax
addq %r15, %rax
leaq (%rax,%rdx,2), %rsi
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rdi
movq %r14, %rdx
movq %r13, %rcx
callq 0xe5bfe
jmp 0x757fb
movq 0x18(%rsp), %r13
movq 0x28(%rsp), %rbx
leaq 0xc0(%rsp), %r14
movq 0xb8(%rsp), %r15
incq %r15
jmp 0x75656
leaq 0xa61f1(%rip), %rcx     # 0x11ba72
jmp 0x7589c
leaq 0xc762e(%rip), %rcx     # 0x13ceb8
jmp 0x7589c
leaq 0xa61d6(%rip), %rcx     # 0x11ba69
jmp 0x7589c
leaq 0xa9645(%rip), %rcx     # 0x11eee1
leaq 0xa6138(%rip), %rsi     # 0x11b9db
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
leaq 0x60(%rsp), %rsi
incq (%rsi)
movq 0x18(%r14), %rdi
callq 0xe3f6e
movl %eax, 0x6c(%rbp)
movzbl 0x69(%rbp), %edx
leaq 0xa6124(%rip), %rsi     # 0x11b9f0
movq %r14, %rdi
movq %r15, %rcx
xorl %eax, %eax
callq 0xde896
movb 0x69(%rbp), %al
andb $-0x2, %al
cmpb $0x2, %al
jne 0x7590c
pushq $0x1
popq %rsi
movq %r14, %rdi
callq 0xdeba7
movl 0x6c(%rbp), %edx
leaq 0xa610a(%rip), %rsi     # 0x11ba01
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
pushq $-0x1
popq %rsi
movq %r14, %rdi
callq 0xdeba7
movq 0x18(%r14), %rdi
leaq 0x60(%rsp), %r15
movq %r15, %rsi
callq 0xe3f2a
movzbl %al, %eax
movq %rax, 0x70(%rbp)
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe3f2a
movzbl %al, %ecx
movq %rcx, 0x78(%rbp)
movl 0x70(%rbp), %edx
leaq 0xa60ce(%rip), %rsi     # 0x11ba0f
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
jmp 0x75ba9
leaq 0xa61af(%rip), %rcx     # 0x11bb06
jmp 0x759a8
leaq 0xa6195(%rip), %rcx     # 0x11baf5
jmp 0x759a8
leaq 0xa6180(%rip), %rcx     # 0x11bae9
jmp 0x759a8
leaq 0xa61a5(%rip), %rcx     # 0x11bb17
jmp 0x759a8
leaq 0xa616a(%rip), %rcx     # 0x11bae5
jmp 0x759a8
leaq 0xa6177(%rip), %rcx     # 0x11bafb
jmp 0x759a8
leaq 0xa61ac(%rip), %rcx     # 0x11bb39
jmp 0x759a8
leaq 0xa61c6(%rip), %rcx     # 0x11bb5c
jmp 0x759a8
leaq 0xa61d2(%rip), %rcx     # 0x11bb71
jmp 0x759a8
leaq 0xa61d0(%rip), %rcx     # 0x11bb78
leaq 0xa60d2(%rip), %rsi     # 0x11ba81
movq %r14, %rdi
xorl %eax, %eax
callq 0xde896
addq $0xe, %r13
leaq 0x60(%rsp), %r15
movq %r13, (%r15)
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe4071
cvtsi2sd %rax, %xmm0
divsd 0xa5e0a(%rip), %xmm0    # 0x11b7e8
leaq 0xa60af(%rip), %rsi     # 0x11ba94
movq %r14, %rdi
movb $0x1, %al
callq 0xde896
movq 0x18(%r14), %rdi
movq %r15, %rsi
callq 0xe3f2a
movzbl %al, %ebp
leaq 0xa60a1(%rip), %rsi     # 0x11baa6
movq %r14, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0xde896
testb %bpl, %bpl
je 0x75a51
movq 0x10(%rsp), %r15
movl %ebp, 0x14(%r15)
cmpb $0x3, %bpl
jb 0x75a5e
movq 0x38(%rsp), %rax
cmpl $0x0, 0x1c(%rax)
jne 0x75a5e
leaq 0xa607e(%rip), %rsi     # 0x11bab5
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xdf2a5
movq 0x38(%rsp), %rax
movl $0x1, 0x1c(%rax)
jmp 0x75a5e
movq 0x10(%rsp), %r15
movl $0x2, 0x14(%r15)
leaq 0x60(%rsp), %rsi
incq (%rsi)
movq 0x8(%rsp), %r14
movq 0x18(%r14), %rdi
callq 0xe4071
movl %eax, 0x18(%r15)
movq %r14, %rdi
callq 0xeac74
movq %rax, %r13
movl 0x18(%r15), %ebp
movzbl 0x10(%r15), %eax
cmpl $0x8, %eax
movq %r15, %rdx
ja 0x75ac6
movl $0x1b0, %ecx            # imm = 0x1B0
btl %eax, %ecx
jae 0x75ac6
testb $0x1, %bpl
je 0x75ac6
leaq 0xa60e9(%rip), %rsi     # 0x11bb94
movq %r13, %rdi
callq 0xeb884
movq 0x10(%rsp), %rdx
decl %ebp
movq 0x38(%rsp), %rax
movb $0x1, 0x46(%rax)
movb 0x10(%rdx), %al
andb $-0x2, %al
cmpb $0x4, %al
jne 0x75b56
testb $0x2, %bpl
je 0x75af1
leaq 0xa6008(%rip), %rsi     # 0x11bae5
movq %r13, %rdi
callq 0xeb884
addl $-0x2, %ebp
movq 0x38(%rsp), %rax
movb $0x1, 0x45(%rax)
testb $0x4, %bpl
je 0x75b09
leaq 0xa60a0(%rip), %rsi     # 0x11bb9e
movq %r13, %rdi
callq 0xeb884
addl $-0x4, %ebp
testb $0x8, %bpl
je 0x75b21
leaq 0xa6096(%rip), %rsi     # 0x11bbac
movq %r13, %rdi
callq 0xeb884
addl $-0x8, %ebp
testb $0x10, %bpl
je 0x75b39
leaq 0xa6082(%rip), %rsi     # 0x11bbb0
movq %r13, %rdi
callq 0xeb884
addl $-0x10, %ebp
testb $0x20, %bpl
je 0x75b51
leaq 0xa6073(%rip), %rsi     # 0x11bbb9
movq %r13, %rdi
callq 0xeb884
addl $-0x20, %ebp
movq 0x10(%rsp), %rdx
testl %ebp, %ebp
je 0x75b72
leaq 0xc779b(%rip), %rsi     # 0x13d2fc
movq %r13, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0xeb8af
movq 0x10(%rsp), %rdx
movl 0x18(%rdx), %ebp
movq %r13, %rdi
callq 0xeb877
leaq 0xa5f48(%rip), %rsi     # 0x11bacc
movq 0x8(%rsp), %rdi
movl %ebp, %edx
movq %rax, %rcx
xorl %eax, %eax
callq 0xde896
movq %r13, %rdi
callq 0xeaf3c
movl $0x1, 0x130(%r12)
xorl %eax, %eax
cmpl $0x2710, %ebx           # imm = 0x2710
setl %al
addq $0x108, %rsp            # imm = 0x108
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x1, 0x1c(%rbp)
movq 0x8(%rsp), %rdi
movq %r15, %rcx
jmp 0x7525b
cmpl $0x4a, %edx
je 0x75efd
cmpl $0x6c, %edx
movq 0x8(%rsp), %rdi
jne 0x75c75
movq %rbp, 0x38(%rsp)
leaq 0xb4(%rsp), %rsi
callq 0xdebae
movq 0x10(%rsp), %rax
cmpq $0x0, 0x20(%rax)
je 0x75c3d
leaq 0xa6417(%rip), %rsi     # 0x11c02d
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xde896
cmpq $0x5f5e101, 0x28(%rsp)  # imm = 0x5F5E101
jl 0x76255
movq 0x38(%rsp), %rax
movl $0x1, 0x1c(%rax)
movq $0x0, 0x40(%rsp)
movq 0x40(%rsp), %rdi
callq 0xe5591
movl 0xb4(%rsp), %esi
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0xdebb7
movq %rbx, %rdi
movl 0x24(%rsp), %ebx
movq 0x38(%rsp), %rbp
jmp 0x76206
leaq 0xa61f7(%rip), %rsi     # 0x11be73
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xdf2a5
movq 0x8(%rsp), %rdi
movl $0x1, 0x1c(%rbp)
movl 0x24(%rsp), %ebx
jmp 0x75256
movq %rbp, %r15
movq 0x30(%rsp), %rax
movq %rax, 0x60(%rsp)
leaq 0xc0(%rsp), %rsi
movq 0x8(%rsp), %rdi
callq 0xdebae
movq 0x8(%rsp), %rdi
movq 0x10(%rsp), %rax
cmpq $0x0, 0x20(%rax)
je 0x75e0c
leaq 0xa62df(%rip), %rsi     # 0x11bfb7
xorl %eax, %eax
callq 0xde896
movq 0x10(%rsp), %rax
movl 0x18(%rax), %eax
cmpl $0x2, %eax
jae 0x75df1
xorl %ecx, %ecx
testl %eax, %eax
setne %cl
leaq 0x2(,%rcx,2), %r14
movq 0x30(%rsp), %rax
addq %rax, 0x28(%rsp)
leaq 0x60(%rsp), %r12
xorl %ebp, %ebp
movq 0x8(%rsp), %rbx
cmpq $0x10, %rbp
je 0x75e0c
cmpl $0x0, 0x1c(%r15)
jne 0x75e0c
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe4071
movq %rax, %r13
movq 0x18(%rsp), %rax
cmpq %rbp, 0x18(%rax)
jle 0x75d98
movq %rbx, %rdi
leaq 0xa6152(%rip), %rsi     # 0x11bea0
movl %ebp, %edx
movq %r13, %rcx
xorl %eax, %eax
callq 0xde9f1
testq %r13, %r13
jle 0x75d98
movq 0x18(%rbx), %r9
addq 0x30(%rsp), %r13
subq $0x8, %rsp
movq %rbx, %rdi
movq %r15, %rsi
movq 0x20(%rsp), %rdx
movq 0x18(%rsp), %rcx
movq %rbp, %r8
pushq $0x0
pushq $0x0
pushq %r14
pushq %r14
pushq 0x50(%rsp)
pushq $0x0
pushq %r13
callq 0x77fb8
addq $0x40, %rsp
incq %rbp
jmp 0x75d15
movq %rbp, %r15
movq 0x30(%rsp), %rax
movq %rax, 0x60(%rsp)
leaq 0xc0(%rsp), %rsi
movq 0x8(%rsp), %rdi
callq 0xdebae
movq 0x8(%rsp), %rdi
movq 0x10(%rsp), %rax
cmpq $0x0, 0x20(%rax)
je 0x75e0c
leaq 0xa60fd(%rip), %rsi     # 0x11bed4
xorl %eax, %eax
callq 0xde896
movq 0x10(%rsp), %rax
movl 0x18(%rax), %eax
testl $0xfffffff5, %eax       # imm = 0xFFFFFFF5
je 0x7655f
leaq 0xa60ea(%rip), %rsi     # 0x11bee2
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xdf2a5
movl $0x1, 0x1c(%r15)
movl 0xc0(%rsp), %esi
movq 0x8(%rsp), %rdi
callq 0xdebb7
movq 0x8(%rsp), %rdi
movl 0x24(%rsp), %ebx
movq %r15, %rbp
jmp 0x76206
movl 0x24(%rsp), %ebx
movq 0x38(%rsp), %rbp
jmp 0x7620b
movq %rbp, %r14
leaq 0xa8(%rsp), %rsi
callq 0xdebae
movq 0x10(%rsp), %rax
cmpq $0x0, 0x20(%rax)
je 0x761dd
leaq 0xa6114(%rip), %rsi     # 0x11bf77
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xde896
movq 0x10(%rsp), %rax
movl 0x18(%rax), %ecx
cmpl $0x2, %ecx
jae 0x761c2
xorl %eax, %eax
testl %ecx, %ecx
setne %cl
cmpq $0x5f5e100, 0x28(%rsp)  # imm = 0x5F5E100
jg 0x761d5
movb %cl, %al
leaq 0x2(,%rax,2), %rax
movq %rax, 0x40(%rsp)
xorl %ebx, %ebx
movq 0x8(%rsp), %r15
movq %r15, %rdi
movq 0x28(%rsp), %r13
movq %r13, %rsi
xorl %edx, %edx
callq 0xe59cd
movq %rax, %r12
movq 0x18(%r15), %rdi
movq 0x30(%rsp), %rsi
movq %r13, %rdx
movq %rax, %rcx
callq 0xe45f4
leaq 0x50(%rsp), %r15
andq $0x0, (%r15)
cmpq $0x8, %rbx
je 0x7660d
movq %r12, %rdi
movq %r15, %rsi
callq 0xe4071
movq %rax, 0x60(%rsp,%rbx,8)
incq %rbx
jmp 0x75ede
xorpd %xmm0, %xmm0
movupd %xmm0, 0x90(%rsp)
movupd %xmm0, 0x80(%rsp)
movq %r13, 0x60(%rsp)
movq %rsi, 0x68(%rsp)
movq 0x30(%rsp), %rcx
movq %rcx, 0x70(%rsp)
movq 0x28(%rsp), %rax
addq %rcx, %rax
movq %rax, %rbx
movq %rax, 0x78(%rsp)
movq %rbp, 0x38(%rsp)
cmpb $0x0, 0x91e(%rbp)
jne 0x75f66
movq 0x18(%rsp), %rax
cmpq $0x13f, (%rax)          # imm = 0x13F
jg 0x75f66
leaq 0xa606b(%rip), %rsi     # 0x11bfc5
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xdf05a
leaq 0x70(%rsp), %r12
movq 0x8(%rsp), %rdi
movq 0x30(%rsp), %rax
addq $0x2, %rax
cmpq %rbx, %rax
jge 0x75c67
movq %rdi, %rbx
movq 0x18(%rdi), %rdi
movq %r12, %rsi
callq 0xe3f6e
cmpl $0x1, %eax
je 0x75fe5
cmpl $0x2, %eax
movq 0x10(%rsp), %rcx
jne 0x76196
movl $0x1, 0xc(%rcx)
movq 0x8(%rsp), %rbx
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
movl %eax, 0x80(%rsp)
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
movq %rax, 0x90(%rsp)
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
jmp 0x7601b
movq 0x10(%rsp), %rax
movl $0x1, 0xc(%rax)
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
movl %eax, 0x80(%rsp)
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
movq %rax, 0x90(%rsp)
pushq $0x1
popq %rax
movq %rax, 0x98(%rsp)
movq 0x18(%rbx), %rdi
movq %r12, %rsi
callq 0xe3f6e
movq %rax, %rcx
movq %rax, 0x88(%rsp)
movq 0x60(%rsp), %rax
movq 0x70(%rsp), %rsi
movq (%rax), %rax
addq $0x7, %rax
cqto
pushq $0x8
popq %rdi
idivq %rdi
movq %rax, 0x28(%rsp)
movq %rsi, %rax
xorl %esi, %esi
movq %rbx, %rdi
movq %rax, 0x30(%rsp)
addq $0x2, %rax
movq 0x78(%rsp), %rbx
cmpq %rcx, %rsi
jge 0x75f70
cmpq %rbx, %rax
jge 0x75f70
movq %rsi, 0xa0(%rsp)
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
movq %r12, %rsi
callq 0xe3f6e
movq 0x8(%rsp), %rdi
movq 0x60(%rsp), %rcx
cqto
idivq 0x28(%rsp)
imulq 0x48(%rcx), %rax
addq %rdx, %rax
movq %rax, 0x58(%rsp)
xorl %edx, %edx
cmpq 0x90(%rsp), %rdx
jge 0x76166
xorl %ebp, %ebp
movq %rdx, 0x40(%rsp)
cmpq 0x18(%rcx), %rbp
jge 0x7615e
movq 0x48(%rcx), %rax
imulq %rdx, %rax
addq 0x58(%rsp), %rax
movq 0x40(%rcx), %r14
imulq %rbp, %r14
addq %rax, %r14
xorl %ebx, %ebx
cmpq 0x98(%rsp), %rbx
jge 0x7614c
leaq (%r14,%rbx), %r13
movq 0x18(%rdi), %rdi
movq %r12, %rsi
callq 0xe3f2a
movl %eax, %r15d
cmpl $0x0, 0x80(%rsp)
je 0x7612d
movq 0x68(%rsp), %rax
movq 0x20(%rax), %rdi
movq %r13, %rsi
callq 0xe3eb4
xorb %al, %r15b
movq 0x68(%rsp), %rax
movq 0x20(%rax), %rdi
movzbl %r15b, %edx
movq %r13, %rsi
callq 0xe5e13
incq %rbx
movq 0x8(%rsp), %rdi
jmp 0x760f2
incq %rbp
movq 0x60(%rsp), %rcx
movq 0x40(%rsp), %rdx
jmp 0x760ce
incq %rdx
jmp 0x760b9
movq 0x70(%rsp), %rax
movl %eax, %ecx
subl 0x30(%rsp), %ecx
testb $0x1, %cl
movq 0xa0(%rsp), %rsi
je 0x76186
incq %rax
movq %rax, 0x70(%rsp)
incq %rsi
movq 0x88(%rsp), %rcx
jmp 0x76060
testl %eax, %eax
movq 0x8(%rsp), %rdi
je 0x75c67
leaq 0xa5e54(%rip), %rsi     # 0x11bffe
movq 0x8(%rsp), %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xdf05a
movq 0x8(%rsp), %rdi
jmp 0x75c67
leaq 0xa5d19(%rip), %rsi     # 0x11bee2
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xdf2a5
movl $0x1, 0x1c(%r14)
xorl %r12d, %r12d
movq %r12, %rdi
callq 0xe5591
movl 0xa8(%rsp), %esi
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0xdebb7
movq %rbx, %rdi
movl 0x24(%rsp), %ebx
movq %r14, %rbp
movq 0x18(%rsp), %r13
cmpl $0x0, 0x1c(%rbp)
movq 0x10(%rsp), %rcx
jne 0x7525b
cmpl $0x0, 0xc(%rcx)
jne 0x76226
cmpb $0x0, 0x31(%rbp)
je 0x76240
movq 0x8(%rsp), %rdi
movq %rbp, %rsi
movq %r13, %rdx
callq 0x7764a
movq 0x10(%rsp), %rcx
jmp 0x75546
leaq 0xa2586(%rip), %rsi     # 0x1187cd
movq 0x8(%rsp), %rdi
xorl %eax, %eax
callq 0xde896
jmp 0x76236
xorl %ebx, %ebx
movq 0x8(%rsp), %r14
movq %r14, %rdi
movq 0x28(%rsp), %r15
movq %r15, %rsi
xorl %edx, %edx
callq 0xe59cd
movq %rax, %r12
movq 0x18(%r14), %rdi
movq 0x30(%rsp), %rsi
movq %r15, %rdx
movq %rax, %rcx
callq 0xe45f4
leaq 0xa8(%rsp), %r15
andq $0x0, (%r15)
cmpq $0x8, %rbx
je 0x762af
movq %r12, %rdi
movq %r15, %rsi
callq 0xe4071
movq %rax, 0xc0(%rsp,%rbx,8)
incq %rbx
jmp 0x76291
xorl %ebx, %ebx
leaq 0xa8(%rsp), %r15
cmpq $0x8, %rbx
je 0x762d4
movq %r12, %rdi
movq %r15, %rsi
callq 0xe4071
movq %rax, 0x60(%rsp,%rbx,8)
incq %rbx
jmp 0x762b9
movq %r12, 0x40(%rsp)
xorl %r13d, %r13d
movq 0x38(%rsp), %r14
movq 0x18(%rsp), %r15
cmpq $0x8, %r13
je 0x75c46
cmpl $0x0, 0x1c(%r14)
jne 0x75c46
cmpq %r13, 0x18(%r15)
jle 0x76557
movq 0x60(%rsp,%r13,8), %r12
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
leaq 0xa5c6c(%rip), %rsi     # 0x11bf85
movl %r13d, %edx
movq %r12, %rcx
xorl %eax, %eax
callq 0xde9f1
movq 0xc0(%rsp,%r13,8), %rbp
movq %rbx, %rdi
leaq 0xa5c67(%rip), %rsi     # 0x11bf9f
movl %r13d, %edx
movq %rbp, %rcx
xorl %eax, %eax
callq 0xde9f1
testq %r12, %r12
jle 0x76557
addq %r12, %r12
addq %rbp, %rbp
movq %r12, 0x50(%rsp)
movq 0x8(%rsp), %rdi
leaq 0xa5cd8(%rip), %rsi     # 0x11c03d
movq %r13, 0x58(%rsp)
movl %r13d, %edx
movq %r12, %rcx
movq %rbp, %r14
movq %rbp, %r8
xorl %eax, %eax
callq 0xde9f1
movq 0x40(%r15), %rsi
leaq 0x1(%rsi), %rax
cqto
pushq $0x2
popq %rcx
idivq %rcx
movq %rax, 0x30(%rsp)
testq %rsi, %rsi
jle 0x76548
imulq 0x58(%rsp), %rsi
movq %rsi, 0xa0(%rsp)
addq $0x2, %r12
cmpq 0x28(%rsp), %r12
movq 0xa0(%rsp), %rbx
jg 0x76548
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0xe3f6e
cmpq $0xffff, %rax           # imm = 0xFFFF
je 0x76548
cqto
idivq 0x30(%rsp)
movq %rax, %r12
movq 0x50(%rsp), %rax
addq $0x2, %rax
cmpq 0x28(%rsp), %rax
jg 0x76548
movq %r12, %rax
movq 0x18(%rsp), %rcx
imulq 0x48(%rcx), %rax
leaq (%rbx,%rdx,2), %rbp
addq %rax, %rbp
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0xe4026
movq %rax, %r13
testq %rax, %rax
js 0x7649e
je 0x76432
movq 0x10(%rsp), %rax
movl $0x1, 0xc(%rax)
movq %r14, %rdx
subq $0x1, %r13
jb 0x76511
movq 0x18(%rsp), %rax
cmpq 0x8(%rax), %r12
jge 0x7651e
leaq 0x2(%rdx), %rbx
cmpq 0x28(%rsp), %rbx
jg 0x7651e
movq 0x40(%rsp), %rdi
leaq 0x4e(%rsp), %r15
movq %r15, %rsi
pushq $0x2
popq %r14
movq %r14, %rcx
callq 0xe3cb7
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rdi
movq %rbp, %rsi
movq %r15, %rdx
movq %r14, %rcx
callq 0xe5bfe
incq %r12
movq 0x18(%rsp), %rax
addq 0x48(%rax), %rbp
movq %rbx, %rdx
jmp 0x76435
movq 0x10(%rsp), %rax
movl $0x1, 0xc(%rax)
movq %r14, %rdx
addq $0x2, %r14
cmpq 0x28(%rsp), %r14
jg 0x7651e
negq %r13
movq 0x40(%rsp), %rdi
leaq 0x4e(%rsp), %rsi
pushq $0x2
popq %rcx
callq 0xe3cb7
testq %r13, %r13
movl $0x0, %eax
cmovleq %rax, %r13
subq $0x1, %r13
jb 0x76514
movq 0x18(%rsp), %rax
cmpq 0x8(%rax), %r12
jge 0x7651e
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rdi
movq %rbp, %rsi
leaq 0x4e(%rsp), %rdx
pushq $0x2
popq %rcx
callq 0xe5bfe
incq %r12
movq 0x18(%rsp), %rax
addq 0x48(%rax), %rbp
jmp 0x764d9
movq %rdx, %r14
movq 0x50(%rsp), %r12
jmp 0x763a9
movq 0x38(%rsp), %rax
cmpl $0x0, 0x1c(%rax)
jne 0x76548
movq 0x8(%rsp), %rdi
leaq 0xa5a27(%rip), %rsi     # 0x11bf5c
xorl %eax, %eax
callq 0xdf2a5
movq 0x38(%rsp), %rax
movl $0x1, 0x1c(%rax)
movq 0x38(%rsp), %r14
movq 0x18(%rsp), %r15
movq 0x58(%rsp), %r13
incq %r13
jmp 0x762e6
shrb %al
andb $0x1, %al
movq 0x30(%rsp), %rcx
addq %rcx, 0x28(%rsp)
leaq 0x60(%rsp), %r12
movzbl %al, %r14d
pushq $0x1
popq %rbx
xorl %ebp, %ebp
movq 0x8(%rsp), %rax
cmpq $0x10, %rbp
je 0x75e0c
cmpl $0x0, 0x1c(%r15)
jne 0x75e0c
movq 0x18(%rax), %rdi
movq %r12, %rsi
callq 0xe4071
movq %rax, %r13
movq 0x18(%rsp), %rax
cmpq %rbp, 0x18(%rax)
jle 0x76605
movq 0x8(%rsp), %rdi
leaq 0xa58e5(%rip), %rsi     # 0x11bea0
movl %ebp, %edx
movq %r13, %rcx
xorl %eax, %eax
callq 0xde9f1
testq %r13, %r13
jle 0x76605
movq 0x8(%rsp), %rdi
movq 0x18(%rdi), %r9
addq 0x30(%rsp), %r13
subq $0x8, %rsp
movq %r15, %rsi
movq 0x20(%rsp), %rdx
movq 0x18(%rsp), %rcx
movq %rbp, %r8
pushq %r14
pushq $0x0
pushq %rbx
pushq %rbx
pushq 0x50(%rsp)
pushq $0x0
pushq %r13
callq 0x77fb8
addq $0x40, %rsp
incq %rbp
jmp 0x7657b
xorl %ebx, %ebx
leaq 0x50(%rsp), %r15
cmpq $0x8, %rbx
je 0x76632
movq %r12, %rdi
movq %r15, %rsi
callq 0xe4071
movq %rax, 0xc0(%rsp,%rbx,8)
incq %rbx
jmp 0x76614
leaq 0xa594c(%rip), %r15     # 0x11bf85
xorl %r13d, %r13d
cmpq $0x8, %r13
je 0x761e0
cmpl $0x0, 0x1c(%r14)
jne 0x761e0
movq 0x18(%rsp), %rax
cmpq %r13, 0x18(%rax)
jle 0x766d2
movq 0x60(%rsp,%r13,8), %rbp
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
movl %r13d, %edx
movq %rbp, %rcx
xorl %eax, %eax
callq 0xde9f1
movq 0xc0(%rsp,%r13,8), %rcx
movq %rbx, %rdi
leaq 0xa5914(%rip), %rsi     # 0x11bf9f
movl %r13d, %edx
movq %rcx, %rbx
xorl %eax, %eax
callq 0xde9f1
testq %rbp, %rbp
jle 0x766d2
subq $0x8, %rsp
movq 0x10(%rsp), %rdi
movq %r14, %rsi
movq 0x20(%rsp), %rdx
movq 0x18(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
pushq $0x0
pushq $0x1
pushq 0x58(%rsp)
pushq $0x1
pushq 0x50(%rsp)
pushq %rbx
pushq %rbp
callq 0x77fb8
addq $0x40, %rsp
incq %r13
jmp 0x7663c