// File: /workspace/github_c_makefile_star2_O2/jsummers[P]deark/modules/storyboard.c
// Function: de_run_storyboard
static void de_run_storyboard(deark *c, de_module_params *mparams)
{
	struct storyboard_ctx *d = NULL;
	u8 b;

	d = de_malloc(c, sizeof(struct storyboard_ctx));
	d->input_encoding = de_get_input_encoding(c, NULL, DE_ENCODING_CP437);

	b = de_getbyte(2);
	if(b=='_') {
		de_declare_fmt(c, "Storyboard picture (old)");
		de_run_storyboard_oldfmt(c, d, mparams);
	}
	else if(b==0xc1) {
		de_declare_fmt(c, "Storyboard picture (new)");
		de_run_storyboard_newfmt(c, d, mparams);
	}
	else {
		d->need_errmsg = 1;
	}

	if(d) {
		if(d->need_errmsg) {
			de_err(c, "Bad or unsupported Storyboard image");
		}
		de_free(c, d);
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdi, %r13
movl $0x880, %esi            # imm = 0x880
callq 0xdecaf
movq %rax, %rbx
movq %rax, %r14
pushq $0xd
popq %rdx
movq %r13, %rdi
xorl %esi, %esi
callq 0xe08d2
movq %rbx, 0x28(%rsp)
movl %eax, (%rbx)
movq 0x18(%r13), %rdi
pushq $0x2
popq %r15
movq %r15, %rsi
callq 0xe3eb4
cmpb $-0x3f, %al
movq %r13, 0x10(%rsp)
je 0xdc7bb
movzbl %al, %eax
cmpl $0x5f, %eax
jne 0xdc7b1
leaq 0x5c272(%rip), %rsi     # 0x1389fe
movq %r13, %rdi
callq 0xe07f7
leaq 0x8(%rsp), %rsi
movq $0x6, (%rsi)
movq 0x18(%r13), %rdi
callq 0xe3f2a
testb %al, %al
je 0xdc85f
movb $0x1, 0x6(%r14)
jmp 0xdd3c4
leaq 0x5c255(%rip), %rsi     # 0x138a17
movq %r13, %rdi
callq 0xe07f7
movq 0x18(%r13), %rdi
leaq 0x3c(%rsp), %rbx
pushq $0x4
popq %rcx
movq %rbx, %rsi
xorl %edx, %edx
callq 0xe3cb7
movzbl 0x1(%rbx), %eax
movl %eax, %ecx
xorb $-0x7c, %cl
movb 0x3(%rbx), %dl
movl %edx, %esi
xorb $0x8, %sil
orb %cl, %sil
jne 0xdc821
movq $0x140, 0x50(%r14)      # imm = 0x140
movq $0xc8, 0x58(%r14)
movq $0x2, 0x8(%r14)
movl $0x140, %edx            # imm = 0x140
movl $0xc8, %eax
pushq $0x2
popq %rcx
jmp 0xdcd06
movl %eax, %ecx
xorb $-0x7c, %cl
movl %edx, %esi
xorb $0x1, %sil
orb %cl, %sil
pushq $0x4
popq %rcx
jne 0xdc909
movq $0x280, 0x50(%r14)      # imm = 0x280
movq $0xc8, 0x58(%r14)
movq $0x4, 0x8(%r14)
movl $0x280, %edx            # imm = 0x280
movl $0xc8, %eax
jmp 0xdcd06
movq 0x18(%r13), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0xe3f2a
movb %al, 0x4(%r14)
movzbl %al, %edx
leaq 0x4001e(%rip), %rsi     # 0x11c89c
movq %r13, %rdi
xorl %eax, %eax
callq 0xde896
addq $0x3, (%rbx)
movq 0x18(%r13), %rdi
movq %rbx, %rsi
callq 0xe3fc4
movq %rax, 0x20(%r14)
leaq 0x5c1b1(%rip), %rsi     # 0x138a54
movq %r13, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
movq 0x18(%r13), %rdi
movq %rbx, %rsi
callq 0xe3fc4
movq %rax, 0x18(%r14)
leaq 0x5c1a0(%rip), %rsi     # 0x138a66
movq %r13, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
movzbl 0x4(%r14), %edx
cmpl $0x3, %edx
je 0xdc970
cmpl $0x4, %edx
je 0xdc8f2
cmpl $0x6, %edx
jne 0xdcb7c
pushq $0x1
popq %r15
movq %r15, 0x8(%r14)
cmpb $0x0, 0x5(%r14)
je 0xdcb92
xorl %r15d, %r15d
jmp 0xdccca
movl %eax, %esi
xorb $-0x7c, %sil
movl %edx, %edi
xorb $0x3, %dil
orb %sil, %dil
jne 0xdc941
movq $0x280, 0x50(%r14)      # imm = 0x280
movq $0x15e, 0x58(%r14)      # imm = 0x15E
movq $0x4, 0x8(%r14)
movl $0x280, %edx            # imm = 0x280
movl $0x15e, %eax            # imm = 0x15E
jmp 0xdcd06
movl %eax, %esi
xorb $-0x7c, %sil
xorb $0x7, %dl
orb %sil, %dl
jne 0xdcc5b
movq $0x280, 0x50(%r14)      # imm = 0x280
movq $0x1e0, 0x58(%r14)      # imm = 0x1E0
movq $0x4, 0x8(%r14)
jmp 0xdccfc
movb $0x1, 0x5(%r14)
movq 0x8(%rsp), %rbx
movq $0x10000, 0x38(%r14)    # imm = 0x10000
movl $0xfa0, %esi            # imm = 0xFA0
movq %r13, %rdi
xorl %edx, %edx
callq 0xe59cd
movq %rax, %r15
movq %rax, %rdi
callq 0xe589c
movq %r13, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movq %r15, %rcx
callq 0xdd5a9
testl %eax, %eax
je 0xdccca
movq %r15, %rdi
callq 0xe58e8
movq 0x20(%r14), %rdx
leaq -0x50(%rdx), %rsi
pushq $0x19
popq %rcx
pushq $0x50
popq %rax
cmpq $0x140, %rsi            # imm = 0x140
ja 0xdc9fb
movq 0x18(%r14), %rsi
leaq -0x14(%rsi), %rdi
cmpq $0x50, %rdi
ja 0xdc9fb
movq %rsi, %rax
imulq %rdx, %rax
shrq %rdx
cmpq 0x18(%r15), %rax
pushq $0x50
popq %rax
cmoveq %rdx, %rax
cmoveq %rsi, %rcx
movq %r15, 0x20(%rsp)
movq %rax, 0x28(%r14)
movq %rcx, 0x30(%r14)
movq %r13, %rdi
xorl %esi, %esi
callq 0xe88f4
movq %rax, %rbx
movb $0x1, 0x2(%rax)
cmpq $0x50, 0x28(%r14)
jg 0xdca27
cmpq $0x1a, 0x30(%r14)
jl 0xdca2b
movb $0x1, 0x3(%rbx)
movq %r13, %rdi
movq %rbx, %rsi
callq 0xe89f9
leaq 0x20(%rbx), %rcx
xorl %r12d, %r12d
pushq $0x14
popq %rdi
pushq $0x10
popq %r8
xorl %esi, %esi
xorl %edx, %edx
xorl %r9d, %r9d
callq 0xe1b11
movq $0x1, 0x10(%rbx)
pushq $0x1
popq %rsi
movq %rbx, %r15
pushq $0x8
popq %rbx
movq %r13, %rdi
movq %rbx, %rdx
callq 0xdf66f
movq %rax, 0x18(%r15)
pushq $0x18
popq %rsi
movq %r13, %rdi
callq 0xdecaf
movq 0x18(%r15), %rcx
movq %rax, (%rcx)
movq %r15, 0x30(%rsp)
movq 0x18(%r15), %rax
movq (%rax), %r15
movq 0x28(%r14), %rax
movq %rax, (%r15)
movq 0x30(%r14), %rsi
movq %rsi, 0x8(%r15)
movq %r13, %rdi
movq %rbx, %rdx
callq 0xdf66f
movq %r15, 0x18(%rsp)
movq %rax, 0x10(%r15)
movl (%r14), %esi
leaq 0x40(%rsp), %rdi
callq 0xe11fc
cmpq 0x30(%r14), %r12
jge 0xdcc9a
movq 0x28(%r14), %rsi
movq %r13, %rdi
pushq $0x14
popq %rdx
callq 0xdf66f
movq 0x18(%rsp), %rcx
movq 0x10(%rcx), %rcx
movq %rax, (%rcx,%r12,8)
xorl %r13d, %r13d
xorl %r15d, %r15d
movq 0x28(%r14), %rsi
cmpq %rsi, %r15
jge 0xdcb6f
imulq %r12, %rsi
addq %r15, %rsi
movq 0x20(%rsp), %rbp
movq %rbp, %rdi
callq 0xe3eb4
movl %eax, %ebx
movq 0x28(%r14), %rsi
imulq %r12, %rsi
addq 0x40(%r14), %rsi
addq %r15, %rsi
movq %rbp, %rdi
callq 0xe3eb4
movl %eax, %ecx
andb $0xf, %cl
shrb $0x4, %al
movzbl %cl, %ecx
movq 0x18(%rsp), %rbp
movq 0x10(%rbp), %rdx
movq (%rdx,%r12,8), %rdx
movl %ecx, 0x8(%rdx,%r13)
movzbl %al, %eax
movl %eax, 0xc(%rdx,%r13)
movzbl %bl, %edi
movl %edi, (%rdx,%r13)
leaq 0x40(%rsp), %rsi
callq 0xe1679
movq 0x10(%rbp), %rcx
movq (%rcx,%r12,8), %rcx
movl %eax, 0x4(%rcx,%r13)
incq %r15
addq $0x14, %r13
jmp 0xdcaea
incq %r12
movq 0x10(%rsp), %r13
jmp 0xdcabe
leaq 0x5beee(%rip), %rsi     # 0x138a71
movq %r13, %rdi
xorl %eax, %eax
callq 0xdf2a5
jmp 0xdd3c4
movq 0x8(%rsp), %rbx
movq 0x18(%r14), %rdx
movq 0x20(%r14), %rcx
movq %rcx, %rax
imulq %rdx, %rax
movq %rax, 0x38(%r14)
movb $0x8, %al
movzbl %al, %eax
divb %r15b
movzbl %al, %esi
imulq %rcx, %rsi
movq %rsi, 0x10(%r14)
movq %r13, %rdi
callq 0xdf038
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
movq %r13, %rdi
callq 0xe6be1
testl %eax, %eax
je 0xdd3c4
movq 0x38(%r14), %rsi
pushq $0x1
popq %rdx
movq %r13, %rdi
callq 0xe59cd
movq %rax, %r15
movq %rax, %rdi
callq 0xe589c
movq %r13, %rdi
movq %r14, %rsi
movq %rbx, %rdx
movq %r15, %rcx
callq 0xdd5a9
testl %eax, %eax
je 0xdd3c4
movq %r15, %rdi
callq 0xe58e8
movq %r13, %rdi
callq 0xdfd1a
movq %rax, %r12
movq 0x28(%rsp), %rbp
addq $0x7c, %rbp
cmpb $0x6, 0x4(%r14)
movl $0x1, 0x78(%rax)
jne 0xdd427
movaps 0x5bd6b(%rip), %xmm0    # 0x1389b0
movups %xmm0, 0x80(%r12)
movq $-0x1000000, 0x7c(%r14) # imm = 0xFF000000
jmp 0xdd44e
pushq $0x8
popq %rcx
cmpl $0x86, %eax
je 0xdccd7
cmpl $0x85, %eax
jne 0xdd40d
movq $0x140, 0x50(%r14)      # imm = 0x140
movq $0xc8, 0x58(%r14)
movq $0x8, 0x8(%r14)
movq $0x740, 0x70(%r14)      # imm = 0x740
movl $0x140, %edx            # imm = 0x140
jmp 0xdc855
movq %r13, %rdi
movq 0x30(%rsp), %rbx
movq %rbx, %rsi
callq 0xe8a63
testq %rbx, %rbx
je 0xdccc5
movq %r13, %rdi
movq %rbx, %rsi
callq 0xe88fe
movq %r13, %rdi
movq %rbx, %rsi
callq 0xe8998
movq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0xe5591
jmp 0xdd3c4
movq $0x280, 0x50(%r14)      # imm = 0x280
movq $0x1e0, 0x58(%r14)      # imm = 0x1E0
movq $0x8, 0x8(%r14)
movq $0xb00, 0x70(%r14)      # imm = 0xB00
movb $0x1, 0x78(%r14)
movl $0x280, %edx            # imm = 0x280
movl $0x1e0, %eax            # imm = 0x1E0
pushq $0x1
popq %r8
shll %cl, %r8d
leaq 0x5bdde(%rip), %rsi     # 0x138af2
xorl %ebx, %ebx
movq %r13, %rdi
movl %eax, %ecx
xorl %eax, %eax
callq 0xde896
movq 0x18(%r13), %rdi
pushq $0x5
popq %rsi
callq 0xe3fa3
movq %rax, 0x10(%r14)
movq 0x18(%r13), %rdi
pushq $0x7
popq %rsi
callq 0xe3fa3
movq %rax, 0x18(%r14)
movq 0x10(%r14), %rsi
movq %r13, %rdi
movq %rax, %rdx
callq 0xdf038
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
movq %r13, %rdi
callq 0xe6be1
testl %eax, %eax
je 0xdce20
movq 0x8(%r14), %rax
cmpq $0x2, %rax
je 0xdcf02
cmpq $0x8, %rax
je 0xdce2b
cmpq $0x4, %rax
jne 0xdcfc0
leaq 0x40(%rsp), %r12
pushq $0x20
popq %r13
xorl %r15d, %r15d
cmpq $0x10, %r15
je 0xdcf7f
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0xd(%r15), %rbp
movq %rbp, %rsi
callq 0xe3eb4
movzbl %al, %ebx
cmpb $0x6, %bl
jne 0xdcdcb
cmpq $0xc8, 0x58(%r14)
pushq $0x14
popq %rdx
je 0xdcdcd
movl %ebx, %edx
pushq $0x1e
popq %rdi
xorl %esi, %esi
callq 0xe1a23
movl %eax, 0x47c(%r14,%r15,4)
movq %r12, %rdi
movq %r13, %rsi
leaq 0x345b4(%rip), %rdx     # 0x1113a0
movl %ebx, %ecx
xorl %eax, %eax
callq 0xde40c
movl 0x47c(%r14,%r15,4), %edx
leaq -0xd(%rbp), %rsi
movq 0x10(%rsp), %rdi
movq %r12, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0xdf153
addq $-0xc, %rbp
movq %rbp, %r15
jmp 0xdcd97
xorl %r15d, %r15d
xorl %r12d, %r12d
jmp 0xdd3a9
xorl %ebp, %ebp
cmpq $0x100, %rbp            # imm = 0x100
je 0xdcfbc
leaq 0x80(%rbp), %rsi
movq 0x18(%r13), %rdi
callq 0xe3eb4
movl %eax, %ebx
movq 0x18(%r13), %rdi
leaq 0x180(%rbp), %rsi
callq 0xe3eb4
movl %eax, %r15d
movq 0x18(%r13), %rdi
leaq 0x280(%rbp), %rsi
callq 0xe3eb4
movl %eax, %r13d
movzbl %bl, %edi
movl %edi, 0x18(%rsp)
callq 0xe1cec
movl %eax, %r12d
movzbl %r15b, %r15d
movl %r15d, %edi
callq 0xe1cec
movl %eax, %ebx
movzbl %r13b, %r13d
movl %r13d, %edi
callq 0xe1cec
movzbl %r12b, %ecx
shll $0x10, %ecx
movzbl %bl, %edx
shll $0x8, %edx
orl %ecx, %edx
movzbl %al, %eax
orl %edx, %eax
orl $0xff000000, %eax       # imm = 0xFF000000
movl %eax, 0x7c(%r14,%rbp,4)
leaq 0x40(%rsp), %rbx
movq %rbx, %rdi
pushq $0x40
popq %rsi
leaq 0x270aa(%rip), %rdx     # 0x103f75
movl 0x18(%rsp), %ecx
movl %r15d, %r8d
movl %r13d, %r9d
movq 0x10(%rsp), %r13
xorl %eax, %eax
callq 0xde40c
movl 0x7c(%r14,%rbp,4), %edx
movq %r13, %rdi
movq %rbp, %rsi
movq %rbx, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0xdf153
incq %rbp
jmp 0xdce2d
movq 0x18(%r13), %rdi
pushq $0xd
popq %rsi
callq 0xe3eb4
andb $0xf, %al
xorl %esi, %esi
cmpb $0x6, %al
sete %sil
movq 0x28(%rsp), %rax
leaq 0x47c(%rax), %rcx
addl $0x3, %esi
xorl %ebx, %ebx
pushq $0xa
popq %rdi
pushq $0x4
popq %r8
xorl %edx, %edx
xorl %r9d, %r9d
callq 0xe1b11
movq 0x18(%r13), %rdi
pushq $0xe
popq %rsi
callq 0xe3eb4
andb $0xf, %al
movzbl %al, %edx
pushq $0x14
popq %rdi
xorl %esi, %esi
callq 0xe1a23
movl %eax, 0x47c(%r14)
leaq 0x5bb8b(%rip), %rax     # 0x138aee
cmpq $0x4, %rbx
je 0xdcfbc
movzbl (%rbx,%rax), %ecx
movl 0x47c(%r14,%rcx,4), %ecx
movl %ecx, 0x7c(%r14,%rbx,4)
incq %rbx
jmp 0xdcf63
cmpq $0xc8, 0x58(%r14)
leaq 0x5ba42(%rip), %rcx     # 0x1389d0
leaq 0x5ba2b(%rip), %rax     # 0x1389c0
cmoveq %rcx, %rax
xorl %ecx, %ecx
movq 0x10(%rsp), %r13
cmpq $0x10, %rcx
je 0xdcfbc
movzbl (%rax,%rcx), %edx
movl 0x47c(%r14,%rdx,4), %edx
movl %edx, 0x7c(%r14,%rcx,4)
incq %rcx
jmp 0xdcfa0
movq 0x8(%r14), %rax
movq 0x10(%r14), %rsi
cmpq $0x7, %rax
jg 0xdcff4
pushq $0x8
popq %rbx
movq %rsi, %rdi
movq %rbx, %rsi
callq 0xdfbb6
cqto
idivq %rbx
movq %rax, %rsi
movq %rax, 0x60(%r14)
imulq 0x18(%r14), %rsi
movq %rsi, 0x68(%r14)
imulq 0x8(%r14), %rsi
jmp 0xdd001
shrq $0x3, %rax
imulq %rax, %rsi
imulq 0x18(%r14), %rsi
movq %rsi, 0x38(%r14)
pushq $0x1
popq %rbp
movq %r13, %rdi
movl %ebp, %edx
callq 0xe59cd
movq %rax, 0x18(%rsp)
movq %rax, %rdi
callq 0xe589c
movq 0x18(%r13), %rax
movq 0x18(%rax), %r12
movb 0x78(%r14), %al
xorl %ecx, %ecx
movb %al, 0x30(%rsp)
cmpb $0x1, %al
sete %cl
xorl $0x7f, %ecx
movl %ecx, 0x20(%rsp)
movq 0x70(%r14), %rax
testq %rax, %rax
movl $0x800, %edx            # imm = 0x800
cmovgq %rax, %rdx
leaq 0x8(%rsp), %rax
movq %rdx, (%rax)
xorl %r15d, %r15d
cmpq 0x38(%r14), %r15
setl %al
cmpq %r12, %rdx
setl %bl
andb %al, %bl
cmpb $0x1, %bl
jne 0xdd1d4
movq 0x18(%r13), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3f2a
testb %al, %al
je 0xdd0ab
movzbl %al, %r13d
cmpl %r13d, 0x20(%rsp)
jae 0xdd0c1
cmpl $0x7f, %r13d
jne 0xdd0f7
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3fc4
movq %rax, %r13
jmp 0xdd0c5
movq %r12, %r13
subq 0x8(%rsp), %r13
testq %r13, %r13
movl $0x0, %eax
cmovleq %rax, %r13
jmp 0xdd0c5
andl $0x7f, %r13d
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
movq 0x8(%rsp), %rsi
movq %r13, %rdx
movq 0x18(%rsp), %rcx
callq 0xe45f4
addq %r13, 0x8(%rsp)
addq %r13, %r15
movq 0x8(%rsp), %rdx
movq 0x10(%rsp), %r13
jmp 0xdd058
cmpb $0x1, 0x30(%rsp)
sete %cl
cmpb $-0x3, %al
setae %dl
cmpb $-0x7f, %al
jb 0xdd115
andb %dl, %cl
jne 0xdd115
andl $0x7f, %r13d
jmp 0xdd1ac
cmpl $0xff, %r13d
je 0xdd196
cmpl $0xfe, %r13d
je 0xdd14c
cmpl $0xfd, %r13d
jne 0xdd3f9
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3fc4
movq %rax, %r13
jmp 0xdd163
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3f2a
movzbl %al, %r13d
movq 0x18(%rsp), %rdi
callq 0xe58e8
movq 0x10(%r14), %rax
cmpq %r13, %rax
jl 0xdd3f9
movq 0x18(%rsp), %rcx
movq 0x18(%rcx), %rsi
subq %rax, %rsi
movq %rcx, %rdi
movq %r13, %rdx
callq 0xe45f4
jmp 0xdd0e8
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3fc4
movq %rax, %r13
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%rsp), %rsi
callq 0xe3f2a
movzbl %al, %esi
movq 0x18(%rsp), %rdi
movq %r13, %rdx
callq 0xe5e40
jmp 0xdd0e5
cmpb $0x0, 0x6(%r14)
je 0xdd204
leaq 0x5b92d(%rip), %rsi     # 0x138b0f
movq %r13, %rdi
xorl %eax, %eax
callq 0xdf2a5
movb $0x0, 0x6(%r14)
testb %bl, %bl
movq 0x18(%rsp), %r12
je 0xdd209
xorl %r15d, %r15d
xorl %ebx, %ebx
jmp 0xdd3a9
movq 0x18(%rsp), %r12
movq %r12, %rdi
callq 0xe58e8
movq %r13, %rdi
callq 0xdfd1a
movq %rax, 0x20(%rsp)
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
pushq $0x3
popq %rcx
movq %r13, %rdi
callq 0xe7437
movq %rax, %r15
cmpq $0x7, 0x8(%r14)
jg 0xdd2fe
andl $0x0, 0x8(%rsp)
xorl %r13d, %r13d
cmpq 0x68(%r14), %r13
jge 0xdd321
xorl %ebx, %ebx
movl 0x8(%r14), %eax
cmpq %rax, %rbx
jae 0xdd278
movq 0x68(%r14), %rsi
imulq %rbx, %rsi
addq %r13, %rsi
movq %r12, %rdi
callq 0xe3eb4
movb %al, 0x8(%rsp,%rbx)
incq %rbx
jmp 0xdd253
movq %r13, %rax
cqto
idivq 0x18(%r14)
movq %rdx, %rbx
xorl %r12d, %r12d
cmpq $0x8, %r12
je 0xdd2f1
movl %ebp, %eax
movl %r12d, %ecx
shll %cl, %eax
movq 0x18(%r14), %rsi
movl 0x8(%r14), %edx
xorl %ecx, %ecx
xorl %edi, %edi
cmpq %rcx, %rdx
je 0xdd2c3
movzbl 0x8(%rsp,%rcx), %r8d
andl %eax, %r8d
movl %ebp, %r9d
shll %cl, %r9d
testl %r8d, %r8d
cmovel %r8d, %r9d
orl %r9d, %edi
incq %rcx
jmp 0xdd2a0
movq %r13, %rax
cqto
idivq %rsi
leaq (,%rax,8), %rsi
subq %r12, %rsi
addq $0x7, %rsi
movl %edi, %eax
movl 0x7c(%r14,%rax,4), %ecx
movq %r15, %rdi
movq %rbx, %rdx
callq 0xe7287
incq %r12
jmp 0xdd287
incq %r13
movq 0x18(%rsp), %r12
jmp 0xdd247
movq 0x10(%r14), %rcx
movq 0x28(%rsp), %r8
addq $0x7c, %r8
andl $0x0, (%rsp)
pushq $0x8
popq %rdx
movq %r12, %rdi
xorl %esi, %esi
movq %r15, %r9
callq 0xe7cbc
jmp 0xdd326
movq 0x10(%rsp), %r13
movq 0x50(%r14), %rax
cmpq $0x280, %rax            # imm = 0x280
movq 0x20(%rsp), %rbx
je 0xdd36b
cmpq $0x140, %rax            # imm = 0x140
jne 0xdd39c
cmpq $0xc8, 0x58(%r14)
jne 0xdd39c
movl $0x1, 0x78(%rbx)
movabsq $0x4018000000000000, %rax # imm = 0x4018000000000000
movq %rax, 0x80(%rbx)
movsd 0x5b63f(%rip), %xmm0    # 0x1389a8
jmp 0xdd394
movq 0x58(%r14), %rax
cmpq $0x1e0, %rax            # imm = 0x1E0
je 0xdd39c
movl $0x1, 0x78(%rbx)
movabsq $0x407e000000000000, %rcx # imm = 0x407E000000000000
movq %rcx, 0x80(%rbx)
cvtsi2sd %rax, %xmm0
movsd %xmm0, 0x88(%rbx)
movq %r15, %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0xe70ab
movq %r12, %rdi
callq 0xe5591
movq %r15, %rdi
callq 0xe7084
movq %r13, %rdi
movq %rbx, %rsi
callq 0xdfd24
cmpb $0x0, 0x6(%r14)
je 0xdd3dc
leaq 0x5b65e(%rip), %rsi     # 0x138a30
movq %r13, %rdi
xorl %eax, %eax
callq 0xdf2a5
movq %r13, %rdi
movq %r14, %rsi
callq 0xded32
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movb $0x1, 0x6(%r14)
movq 0x8(%rsp), %rdx
movq 0x10(%rsp), %r13
jmp 0xdd1db
movq 0x50(%r14), %rdx
testq %rdx, %rdx
jle 0xdd4b6
movl 0x8(%r14), %ecx
movl 0x58(%r14), %eax
jmp 0xdcd06
movaps 0x38842(%rip), %xmm0    # 0x115c70
movups %xmm0, 0x80(%r12)
pushq $0xa
popq %rdi
pushq $0x3
popq %rsi
pushq $0x4
popq %r8
xorl %edx, %edx
movq %rbp, %rcx
xorl %r9d, %r9d
callq 0xe1b11
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
xorl %eax, %eax
cmpq $0x1, 0x8(%r14)
setne %al
leal 0x1(,%rax,2), %ecx
movq %r13, %rdi
callq 0xe7437
movq %rax, %rbx
movq 0x8(%r14), %rdx
movq 0x20(%r14), %rcx
andl $0x0, (%rsp)
movq %r15, %rdi
xorl %esi, %esi
movq %rbp, %r8
movq %rax, %r9
callq 0xe7cbc
movq %rbx, %rdi
movq %r12, %rsi
xorl %edx, %edx
callq 0xe70ab
movq %r15, %rdi
callq 0xe5591
movq %rbx, %rdi
callq 0xe7084
movq %r13, %rdi
movq %r12, %rsi
jmp 0xdd3bf
leaq 0x5b60f(%rip), %rsi     # 0x138acc
movq %r13, %rdi
xorl %eax, %eax
callq 0xdf2a5
jmp 0xdd3c4