// File: /workspace/github_c_makefile_star2_O3/jsummers[P]deark/modules/makichan.c
// Function: de_run_makichan
static void de_run_makichan(deark *c, de_module_params *mparams)
{
	lctx *d = NULL;

	d = de_malloc(c, sizeof(lctx));
	d->opt_allowbad = (u8)de_get_ext_option_bool(c, "makichan:allowbad", 0);

	if(!dbuf_memcmp(c->infile, 0, "MAKI01", 6)) {
		d->is_mki = 1;
		if(de_getbyte(6)=='B') {
			d->is_mki_b = 1;
		}
	}

	if(d->is_mki) {
		do_mki(c, d);
	}
	else {
		do_mag(c, d);
	}

	dbuf_close(d->unc_pixels);
	dbuf_close(d->virtual_screen);
	de_free(c, d);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rdi, %r12
movl $0x490, %esi            # imm = 0x490
callq 0xe8b2b
movq %rax, %r15
movq %rax, %rbp
leaq 0x9b9b8(%rip), %rsi     # 0x12fe8b
movq %r12, %rdi
xorl %edx, %edx
callq 0xe9bd0
movb %al, (%r15)
movq 0x18(%r12), %rdi
leaq 0x9b9b1(%rip), %rdx     # 0x12fe9d
movl $0x6, %ecx
xorl %esi, %esi
callq 0xefc85
testl %eax, %eax
jne 0x9451d
movl $0x1, 0x78(%rbp)
movq 0x18(%r12), %rdi
movl $0x6, %esi
callq 0xeead3
cmpb $0x42, %al
jne 0x9451d
movl $0x1, 0x7c(%rbp)
cmpl $0x0, 0x78(%rbp)
movq %r12, 0x8(%rsp)
movq %rbp, 0x10(%rsp)
je 0x94af5
movq $0x20, 0x18(%rbp)
leaq 0x9b964(%rip), %rsi     # 0x12fea4
movq %r12, %rdi
movl $0x20, %edx
xorl %eax, %eax
callq 0xe8617
movq %r12, %rdi
movl $0x1, %esi
callq 0xe8a15
movq 0x18(%rbp), %r15
movq 0x18(%r12), %rdi
movq %r15, %rsi
callq 0xeeb67
movq %rax, 0x30(%rbp)
movq 0x18(%r12), %rdi
leaq 0x2(%r15), %rsi
callq 0xeeb67
movq %r12, %r14
movq %rax, %r12
movq 0x18(%r14), %rdi
leaq 0x4(%r15), %rsi
callq 0xeeb67
movq %rax, %r13
addq %r12, %rax
movq %rax, 0x40(%rbp)
movq 0x18(%r14), %rdi
leaq 0x6(%r15), %rsi
callq 0xeeb67
movq %rax, %rbx
leaq 0x9cc72(%rip), %rsi     # 0x131225
movq %r14, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0xe8617
movq %r14, %rdi
movl $0x1, %esi
callq 0xe8a15
movl %ebx, %eax
andb $0x1, %al
movb %al, 0x70(%rbp)
movl $0x8, %edx
testb $0x2, %bl
jne 0x945ea
movq $0x4, 0x50(%rbp)
movl $0x10, %edx
movq %rdx, 0x48(%rbp)
leaq 0x7d233(%rip), %rsi     # 0x111828
movq 0x8(%rsp), %r14
movq %r14, %rdi
xorl %eax, %eax
callq 0xe8617
movq %r14, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xe8a15
movq 0x18(%r14), %rdi
leaq 0x8(%r15), %rsi
callq 0xeeb67
movq %rax, %rbp
movq 0x18(%r14), %rdi
leaq 0xa(%r15), %rsi
callq 0xeeb67
movq %rax, %rbx
leaq 0x9b87d(%rip), %rsi     # 0x12feb5
movq %r14, %rdi
movl %ebp, %edx
movl %ebx, %ecx
xorl %eax, %eax
callq 0xe8617
movq 0x18(%r14), %rdi
leaq 0xc(%r15), %rsi
callq 0xeeb67
subq %rbp, %rax
movq 0x10(%rsp), %rbp
movq %rax, 0x8(%rbp)
movq 0x18(%r14), %rdi
leaq 0xe(%r15), %rsi
callq 0xeeb67
subq %rbx, %rax
movq %rax, 0x10(%rbp)
movq 0x8(%rbp), %rsi
movq %r14, %rdi
movq %rax, %rdx
callq 0xe8f88
movq 0x8(%rbp), %rax
testb $0x3f, %al
je 0x9469f
leaq 0x9b83a(%rip), %rsi     # 0x12fecb
movq %r14, %rdi
xorl %eax, %eax
callq 0xe8faa
movq 0x8(%rbp), %rax
leaq 0x3f(%rax), %rcx
addq $0x7e, %rax
testq %rcx, %rcx
cmovnsq %rcx, %rax
andq $-0x40, %rax
movq %rax, 0x60(%rbp)
movq 0x10(%rbp), %rax
testb $0x3, %al
je 0x946d3
leaq 0x9b84e(%rip), %rsi     # 0x12ff13
movq %r14, %rdi
xorl %eax, %eax
callq 0xe8faa
movq 0x10(%rbp), %rax
leaq 0x3(%rax), %rcx
addq $0x6, %rax
testq %rcx, %rcx
cmovnsq %rcx, %rax
andq $-0x4, %rax
movq %rax, 0x68(%rbp)
leaq 0x40(%r15), %rdx
movq %rdx, 0x20(%rbp)
addq $0x428, %r15            # imm = 0x428
movq %r15, 0x28(%rbp)
addq 0x30(%rbp), %r15
movq %r15, 0x38(%rbp)
addl 0x40(%rbp), %r15d
leaq 0x9b84b(%rip), %rsi     # 0x12ff5b
movq %r14, %rdi
movl $0x3e8, %ecx            # imm = 0x3E8
xorl %eax, %eax
callq 0xe8617
movl 0x28(%rbp), %edx
movl 0x30(%rbp), %ecx
leaq 0x9b849(%rip), %rsi     # 0x12ff75
movq %r14, %rdi
xorl %eax, %eax
callq 0xe8617
leaq 0x9b85d(%rip), %rsi     # 0x12ff9a
movq %r14, %rdi
movl %r12d, %edx
movl %r13d, %ecx
xorl %eax, %eax
callq 0xe8617
movl 0x38(%rbp), %edx
movl 0x40(%rbp), %ecx
leaq 0x9b85e(%rip), %rsi     # 0x12ffb8
movq %r14, %rdi
xorl %eax, %eax
callq 0xe8617
leaq 0x9b87f(%rip), %rsi     # 0x12ffea
movq %r14, %rdi
movl %r15d, %edx
xorl %eax, %eax
callq 0xe8617
movq 0x50(%rbp), %rax
cmpq $0x4, %rax
movq %r14, %r12
je 0x9478f
cmpq $0x8, %rax
jne 0x95092
movq %r12, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xe8a15
movq 0x18(%rbp), %rdx
addq $0x10, %rdx
movq %r12, %rdi
movq %rbp, %rsi
callq 0x9511f
movq 0x8(%rbp), %rsi
movq 0x10(%rbp), %rdx
movq %r12, %rdi
callq 0xf1db1
testl %eax, %eax
je 0x950b0
movq 0x60(%rbp), %rax
leaq 0xf(%rax), %r15
testq %rax, %rax
cmovnsq %rax, %r15
sarq $0x4, %r15
movq 0x20(%rbp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rbp), %r13
movq 0x68(%rbp), %rsi
imulq %r15, %rsi
movq %r12, %rdi
movl $0x1, %edx
callq 0xf09c5
movq %rax, 0x80(%rbp)
movq 0x60(%rbp), %r9
movq 0x68(%rbp), %r8
cmpq $0x4, %r8
jl 0x94983
leaq (,%r15,4), %rsi
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
movq $0x0, 0x50(%rsp)
xorl %edi, %edi
xorl %eax, %eax
movq %rsi, 0x48(%rsp)
cmpq $0x8, %r9
jl 0x94963
movq %rdi, 0x38(%rsp)
xorl %r14d, %r14d
testl %ecx, %ecx
jns 0x94867
movq 0x18(%r12), %rdi
movq 0x28(%rsp), %rsi
leaq 0x1(%rsi), %rbx
callq 0xeead3
movl $0x7, %ecx
movq %rbx, 0x28(%rsp)
movl $0x1, %edx
shll %cl, %edx
testb %dl, %al
je 0x94934
movq %rax, 0x30(%rsp)
movl %ecx, 0x40(%rsp)
movq %r14, %rbx
shrq %rbx
addq 0x50(%rsp), %rbx
movq 0x18(%r12), %rdi
leaq 0x1(%r13), %rbp
movq %r13, 0x20(%rsp)
movq %r13, %rsi
callq 0xeead3
movl %eax, %r13d
movq 0x18(%r12), %rdi
movq %rbp, %rsi
movq 0x10(%rsp), %rbp
callq 0xeead3
movl %r13d, %ecx
andb $0xf, %cl
movb %cl, 0x1d(%rsp)
movl %eax, %ecx
andb $0xf, %cl
movb %cl, 0x1f(%rsp)
shrb $0x4, %r13b
movb %r13b, 0x1c(%rsp)
shrb $0x4, %al
movb %al, 0x1e(%rsp)
xorl %r12d, %r12d
testb $0x1, %r14b
jne 0x948eb
movb 0x1c(%rsp,%r12), %al
shlb $0x4, %al
jmp 0x948ff
movq 0x80(%rbp), %rdi
movq %rbx, %rsi
callq 0xeead3
orb 0x1c(%rsp,%r12), %al
movq 0x80(%rbp), %rdi
movzbl %al, %edx
movq %rbx, %rsi
callq 0xf0e8b
incq %r12
addq %r15, %rbx
cmpq $0x4, %r12
jne 0x948db
movq 0x20(%rsp), %r13
addq $0x2, %r13
movq 0x8(%rsp), %r12
movl 0x40(%rsp), %ecx
movq 0x30(%rsp), %rax
decl %ecx
incq %r14
movq 0x60(%rbp), %r9
leaq 0x7(%r9), %rdx
testq %r9, %r9
cmovnsq %r9, %rdx
sarq $0x3, %rdx
cmpq %rdx, %r14
jl 0x94846
movq 0x68(%rbp), %r8
movq 0x48(%rsp), %rsi
movq 0x38(%rsp), %rdi
incq %rdi
leaq 0x3(%r8), %rdx
testq %r8, %r8
cmovnsq %r8, %rdx
sarq $0x2, %rdx
addq %rsi, 0x50(%rsp)
cmpq %rdx, %rdi
jl 0x94834
movq %r9, %rsi
shrq $0x3f, %rsi
addq %r9, %rsi
sarq %rsi
movq %rsi, 0x58(%rbp)
movq 0x38(%rbp), %r13
xorl %ebx, %ebx
cmpl $0x0, 0x7c(%rbp)
movq %rbp, %r14
setne %bpl
imulq %r8, %rsi
movq %r12, %rdi
movl $0x1, %edx
callq 0xf09c5
movq %rax, 0x88(%r14)
movq 0x10(%r14), %rcx
testq %rcx, %rcx
jle 0x94adb
movb %bpl, %bl
leaq 0x2(,%rbx,2), %rdx
movq 0x10(%rsp), %rax
movq 0x58(%rax), %rax
movq %rdx, 0x40(%rsp)
negq %rdx
movq %rdx, 0x28(%rsp)
movl $0xffffffff, %ebp       # imm = 0xFFFFFFFF
xorl %r12d, %r12d
movq $0x0, 0x30(%rsp)
movq $0x0, 0x20(%rsp)
testq %rax, %rax
jle 0x94ac0
xorl %r14d, %r14d
testl %ebp, %ebp
jns 0x94a3c
movq 0x10(%rsp), %rax
movq 0x80(%rax), %rdi
movq 0x30(%rsp), %rsi
leaq 0x1(%rsi), %rbx
callq 0xeead3
movl %eax, %r12d
movl $0x7, %ebp
movq %rbx, 0x30(%rsp)
movl $0x1, %eax
movl %ebp, %ecx
shll %cl, %eax
testb %al, %r12b
je 0x94a66
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x1(%r13), %r15
movq %r13, %rsi
callq 0xeead3
movl %eax, %ebx
movq %r15, %r13
jmp 0x94a68
xorl %ebx, %ebx
movq 0x10(%rsp), %r15
movq 0x88(%r15), %rdi
movq 0x20(%rsp), %rax
cmpq 0x40(%rsp), %rax
jb 0x94a9d
movq 0x58(%r15), %rsi
imulq 0x28(%rsp), %rsi
addq %r14, %rsi
callq 0xeead3
xorb %bl, %al
movq 0x88(%r15), %rdi
movl %eax, %ebx
decl %ebp
movzbl %bl, %esi
callq 0xf0bd6
incq %r14
movq 0x58(%r15), %rax
cmpq %rax, %r14
jl 0x94a11
movq 0x10(%rsp), %rcx
movq 0x10(%rcx), %rcx
movq 0x20(%rsp), %rsi
incq %rsi
incq 0x28(%rsp)
movq %rsi, 0x20(%rsp)
cmpq %rcx, %rsi
jl 0x94a05
movq 0x8(%rsp), %r12
movq %r12, %rdi
movq 0x10(%rsp), %rbp
movq %rbp, %rsi
callq 0x951d9
jmp 0x950b0
leaq 0x60(%rsp), %r8
movq $0x0, (%r8)
movq 0x18(%r12), %rdi
movq 0x18(%rdi), %rcx
movl $0x1a, %esi
xorl %edx, %edx
callq 0xefa77
testl %eax, %eax
je 0x94c62
movq 0x18(%r12), %rdi
movq 0x60(%rsp), %rcx
leaq 0x1(%rcx), %rdx
notq %rcx
addq 0x18(%rdi), %rcx
addq $0x18, %r15
xorl %esi, %esi
movq %r15, %r8
callq 0xefa77
testl %eax, %eax
je 0x94c62
movl (%r15), %edx
leaq 0xa3568(%rip), %rsi     # 0x1380bb
movq %r12, %rdi
xorl %eax, %eax
callq 0xe8617
movl (%r15), %edx
leaq 0xa4b87(%rip), %rsi     # 0x1396ee
movq %r12, %rdi
xorl %eax, %eax
callq 0xe8617
movq %r12, %rdi
movl $0x1, %esi
callq 0xe8a15
movq (%r15), %r15
movq 0x18(%r12), %rdi
leaq 0x1(%r15), %rsi
callq 0xeead3
movl %eax, %ebx
movq 0x18(%r12), %rdi
leaq 0x2(%r15), %rsi
callq 0xeead3
movzbl %bl, %ebp
movzbl %al, %ebx
leaq 0x9b4b6(%rip), %rsi     # 0x130062
movq %r12, %rdi
movl %ebp, %edx
movl %ebx, %ecx
xorl %eax, %eax
callq 0xe8617
cmpb $0x3, %bpl
movq 0x10(%rsp), %rbp
jne 0x94c04
andl $-0x8, %ebx
roll $0x1c, %ebx
leaq 0x9b4e6(%rip), %rsi     # 0x1300b8
cmpl $0x6, %ebx
ja 0x95099
movl $0x23, %eax
btl %ebx, %eax
jb 0x94c04
movl $0x54, %eax
btl %ebx, %eax
jae 0x95099
movl $0x1, 0x74(%rbp)
cmpb $0x0, (%rbp)
je 0x950e2
movq 0x18(%r12), %rdi
leaq 0x3(%r15), %rsi
callq 0xeead3
movzbl %al, %ebx
leaq 0x9b4af(%rip), %rsi     # 0x1300cb
movq %r12, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0xe8617
movq %r12, %rdi
movl $0x1, %esi
callq 0xe8a15
movl %ebx, %eax
andb $0x1, %al
movb %al, 0x70(%rbp)
andb $-0x7e, %bl
movzbl %bl, %eax
cmpl $0x7f, %eax
jg 0x94c78
testl %eax, %eax
jne 0x94c96
movq $0x10, 0x48(%rbp)
movq $0x4, 0x50(%rbp)
movl $0x10, %edx
jmp 0x94ca8
leaq 0x9b3bc(%rip), %rsi     # 0x130025
movq %r12, %rdi
xorl %eax, %eax
callq 0xe9295
jmp 0x950b0
cmpl $0x80, %eax
jne 0x94ca5
movq $0x100, 0x48(%rbp)      # imm = 0x100
movq $0x8, 0x50(%rbp)
movl $0x100, %edx            # imm = 0x100
jmp 0x94ca8
movq $0x8, 0x48(%rbp)
movl $0x8, %edx
jmp 0x94ca8
movl 0x48(%rbp), %edx
leaq 0x7cb79(%rip), %rsi     # 0x111828
movq %r12, %rdi
xorl %eax, %eax
callq 0xe8617
movq %r12, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xe8a15
movq 0x18(%r12), %rdi
leaq 0x4(%r15), %rsi
callq 0xeebc8
movq %rax, %rbx
movq 0x18(%r12), %rdi
leaq 0x6(%r15), %rsi
callq 0xeebc8
movq %rax, %r12
leaq 0x9b1c6(%rip), %rsi     # 0x12feb5
movq 0x8(%rsp), %rdi
movl %ebx, %edx
movl %r12d, %ecx
xorl %eax, %eax
callq 0xe8617
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0x8(%r15), %rsi
callq 0xeebc8
movq %rax, %r13
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
leaq 0xa(%r15), %rsi
callq 0xeebc8
subq %rbx, %r13
incq %r13
movq %r13, 0x8(%rbp)
subq %r12, %rax
movq 0x8(%rsp), %r12
leaq 0x1(%rax), %rdx
movq %rdx, 0x10(%rbp)
movq %r12, %rdi
movq %r13, %rsi
callq 0xe8f88
movq 0x18(%r12), %rdi
leaq 0xc(%r15), %rsi
callq 0xeed61
addq 0x18(%rbp), %rax
movq %rax, 0x20(%rbp)
leaq 0x9b372(%rip), %rsi     # 0x1300db
movq %r12, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xe8617
movq 0x18(%r12), %rdi
leaq 0x10(%r15), %rsi
callq 0xeed61
addq 0x18(%rbp), %rax
movq %rax, 0x28(%rbp)
movq 0x18(%r12), %rdi
leaq 0x14(%r15), %rsi
callq 0xeed61
movq %rax, 0x30(%rbp)
movl 0x28(%rbp), %edx
leaq 0x9b346(%rip), %rsi     # 0x1300ed
movq %r12, %rdi
movl %eax, %ecx
xorl %eax, %eax
callq 0xe8617
movq 0x18(%r12), %rdi
leaq 0x18(%r15), %rsi
callq 0xeed61
addq 0x18(%rbp), %rax
movq %rax, 0x38(%rbp)
movq 0x18(%r12), %rdi
addq $0x1c, %r15
movq %r15, %rsi
callq 0xeed61
movq %rax, 0x40(%rbp)
movl 0x38(%rbp), %edx
leaq 0x9b320(%rip), %rsi     # 0x130108
movq %r12, %rdi
movl %eax, %ecx
xorl %eax, %eax
callq 0xe8617
movq 0x50(%rbp), %rax
cmpq $0x4, %rax
je 0x94e08
cmpq $0x8, %rax
jne 0x95092
movq %r12, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xe8a15
movq 0x18(%rbp), %rdx
addq $0x20, %rdx
movq %r12, %rdi
movq %rbp, %rsi
callq 0x9511f
movq 0x8(%rbp), %rsi
movq 0x10(%rbp), %rdx
movq %r12, %rdi
callq 0xf1db1
testl %eax, %eax
je 0x950b0
leaq 0x9b2dc(%rip), %rsi     # 0x130123
movq %r12, %rdi
xorl %eax, %eax
callq 0xe8617
movq 0x50(%rbp), %rsi
imulq 0x8(%rbp), %rsi
leaq 0x1f(%rsi), %rax
addq $0x3e, %rsi
testq %rax, %rax
cmovnsq %rax, %rsi
sarq $0x5, %rsi
shlq $0x2, %rsi
movq %rsi, 0x58(%rbp)
imulq 0x10(%rbp), %rsi
movq %r12, %rdi
movl $0x1, %edx
callq 0xf09c5
movq %rax, 0x88(%rbp)
movq 0x20(%rbp), %rax
movq %rax, 0x48(%rsp)
movq 0x28(%rbp), %rax
movq %rax, 0x28(%rsp)
movq 0x38(%rbp), %r15
movq 0x58(%rbp), %rax
leaq 0x3(%rax), %rsi
testq %rax, %rax
cmovnsq %rax, %rsi
sarq $0x2, %rsi
movq %r12, %rdi
callq 0xe8b2b
movq %rax, 0x38(%rsp)
movq 0x10(%rbp), %rcx
testq %rcx, %rcx
jle 0x95078
movq 0x58(%rbp), %rax
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
xorl %edx, %edx
leaq 0x5e(%rsp), %r12
movq $0x0, 0x30(%rsp)
cmpq $0x4, %rax
jl 0x9506c
movq $0x0, 0x20(%rsp)
movq %rdx, 0x50(%rsp)
testl %ebx, %ebx
js 0x94f0d
movq 0x30(%rsp), %rax
jmp 0x94f2e
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
movq 0x48(%rsp), %rsi
leaq 0x1(%rsi), %r14
callq 0xeead3
movl $0x7, %ebx
movq %r14, 0x48(%rsp)
movl $0x1, %edx
movl %ebx, %ecx
shll %cl, %edx
movq %rax, 0x30(%rsp)
testb %dl, %al
je 0x94f73
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
movq 0x28(%rsp), %rsi
leaq 0x1(%rsi), %r14
callq 0xeead3
movl %eax, %r13d
movq 0x38(%rsp), %rax
movq 0x20(%rsp), %rcx
xorb (%rax,%rcx), %r13b
movb %r13b, (%rax,%rcx)
movq %r14, 0x28(%rsp)
jmp 0x94f81
movq 0x38(%rsp), %rax
movq 0x20(%rsp), %rcx
movb (%rax,%rcx), %r13b
decl %ebx
movl %ebx, 0x40(%rsp)
movl %r13d, %r14d
shrb $0x4, %r14b
andb $0xf, %r13b
movb $0x1, %bpl
movzbl %r14b, %ecx
movzbl %r13b, %eax
testb $0x1, %bpl
cmovnel %ecx, %eax
testb %al, %al
je 0x94fec
movq 0x10(%rsp), %rbx
movq 0x88(%rbx), %rdi
movzbl %al, %eax
leaq 0x9aea2(%rip), %rcx     # 0x12fe60
movzbl (%rax,%rcx), %ecx
imulq 0x58(%rbx), %rcx
movq 0x18(%rdi), %rdx
leaq 0x9ae7e(%rip), %rsi     # 0x12fe50
movzbl (%rax,%rsi), %eax
leaq (%rcx,%rax,2), %rax
subq %rax, %rdx
movl $0x2, %ecx
movq %r12, %rsi
callq 0xee8d4
jmp 0x9500e
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rdi
movl $0x2, %ecx
movq %r12, %rsi
movq %r15, %rdx
callq 0xee8d4
addq $0x2, %r15
movq 0x10(%rsp), %rbx
movq 0x88(%rbx), %rdi
movl $0x2, %edx
movq %r12, %rsi
callq 0xef547
testb $0x1, %bpl
movl $0x0, %ebp
jne 0x94f95
movq 0x20(%rsp), %rsi
incq %rsi
movq 0x10(%rsp), %rbp
movq 0x58(%rbp), %rax
leaq 0x3(%rax), %rcx
testq %rax, %rax
cmovnsq %rax, %rcx
sarq $0x2, %rcx
movq %rsi, 0x20(%rsp)
cmpq %rcx, %rsi
movq 0x50(%rsp), %rdx
movl 0x40(%rsp), %ebx
jl 0x94f02
movq 0x10(%rbp), %rcx
incq %rdx
cmpq %rcx, %rdx
jl 0x94eea
movq 0x8(%rsp), %r12
movq %r12, %rdi
movq 0x38(%rsp), %rsi
callq 0xe8be2
movq %r12, %rdi
jmp 0x94ae8
leaq 0x9af6a(%rip), %rsi     # 0x130003
movq %r12, %rdi
xorl %eax, %eax
callq 0xe9295
movq %r12, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xe8a15
movq 0x88(%rbp), %rdi
callq 0xf052b
movq 0x80(%rbp), %rdi
callq 0xf052b
movq %r12, %rdi
movq %rbp, %rsi
callq 0xe8be2
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x9af9b(%rip), %rsi     # 0x130084
jmp 0x95099