// File: /workspace/github_c_makefile_star2_O1/samtools[P]htslib/test/test_khash.c
// Function: main
int main(int argc, char **argv) {
    int opt, res = EXIT_SUCCESS;
    char *test = NULL;
    char *input_file = NULL;
    size_t max = 1000;
    double del_frac = 0.25;
    int show_stats = 0;

    while ((opt = getopt(argc, argv, "df:hi:n:t:")) != -1) {
        switch (opt) {
        case 'd':
            show_stats = 1;
            break;
        case 'f':
            del_frac = strtod(optarg, NULL);
            if (del_frac < 0 || del_frac > 1.0) {
                fprintf(stderr, "Error: -d must be between 0.0 and 1.0\n");
                return EXIT_FAILURE;
            }
            break;
        case 'h':
            show_usage(stdout, argv[0]);
            return EXIT_SUCCESS;
        case 'i':
            input_file = optarg;
            break;
        case 'n':
            max = strtoul(optarg, NULL, 0);
            if (max == 0 || max > 99999999) {
                fprintf(stderr, "Error: -n must be between 1 and %u\n",
                        MAX_ENTRIES);
                return EXIT_FAILURE;
            }
            break;
        case 't':
            test = optarg;
            break;
        default:
            show_usage(stderr, argv[0]);
            return EXIT_FAILURE;
        }
    }

    if (!test || strcmp(test, "str2int") == 0) {
        if (test_str2int(max, (size_t) (max * del_frac), show_stats) != 0)
            res = EXIT_FAILURE;
    }

    if (test && strcmp(test, "benchmark") == 0) {
        if (benchmark(input_file) != 0)
            res = EXIT_FAILURE;
    }

    return res;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x118, %rsp            # imm = 0x118
movq %rsi, %r12
movl %edi, %ebp
movq $0x0, 0x10(%rsp)
movsd 0x1c78(%rip), %xmm0     # 0x3008
movapd %xmm0, 0x20(%rsp)
movl $0x3e8, %eax            # imm = 0x3E8
movq %rax, 0x38(%rsp)
leaq 0x1cbd(%rip), %r13      # 0x3064
leaq 0x1c8a(%rip), %r14      # 0x3038
xorl %r15d, %r15d
xorl %ecx, %ecx
movl %ecx, %ebx
movl %ebp, %edi
movq %r12, %rsi
movq %r13, %rdx
callq 0x1040
movl $0x1, %ecx
cmpl $0x64, %eax
je 0x13b3
movl %ebx, (%rsp)
leal -0x66(%rax), %ecx
cmpl $0x8, %ecx
ja 0x141d
movslq (%r14,%rcx,4), %rax
addq %r14, %rax
jmpq *%rax
movq 0x3be9(%rip), %rax      # 0x4fd0
movq (%rax), %rdi
xorl %esi, %esi
callq 0x1080
movapd %xmm0, 0x20(%rsp)
xorpd %xmm1, %xmm1
ucomisd %xmm0, %xmm1
movl (%rsp), %ecx
ja 0x20c2
movapd 0x20(%rsp), %xmm0
ucomisd 0x1bfa(%rip), %xmm0     # 0x3010
jbe 0x13b3
jmp 0x20c2
cmpl $-0x1, %eax
je 0x14c0
cmpl $0x74, %eax
jne 0x1489
movq 0x3b9e(%rip), %rax      # 0x4fd0
movq (%rax), %rax
movq %rax, 0x10(%rsp)
movl (%rsp), %ecx
jmp 0x13b3
movq 0x3b87(%rip), %rax      # 0x4fd0
movq (%rax), %r15
movl (%rsp), %ecx
jmp 0x13b3
movq 0x3b75(%rip), %rax      # 0x4fd0
movq (%rax), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x1050
movq %rax, 0x38(%rsp)
movq $-0x5f5e100, %rcx       # imm = 0xFA0A1F00
addq %rcx, %rax
cmpq %rcx, %rax
movl (%rsp), %ecx
ja 0x13b3
callq 0x11b0
jmp 0x149c
movq 0x3b50(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
movq (%r12), %rsi
callq 0x2159
movl $0x1, %ebx
jmp 0x19ac
movq 0x3b13(%rip), %rax      # 0x4fc0
movq (%rax), %rdi
movq (%r12), %rsi
callq 0x2159
xorl %ebx, %ebx
jmp 0x19ac
movq 0x10(%rsp), %rbx
testq %rbx, %rbx
movq %r15, 0x18(%rsp)
je 0x14eb
movq %r15, %r14
leaq 0x1be1(%rip), %rsi      # 0x30ba
movq %rbx, %rdi
callq 0x1100
xorl %ebp, %ebp
testl %eax, %eax
jne 0x1992
movl $0x10, %esi
movq 0x38(%rsp), %r14
movq %r14, %rdi
callq 0x12dc
testq %rax, %rax
je 0x1628
movq %rax, %r13
movl $0x1, %edi
movl $0x28, %esi
callq 0x1070
movq %rax, %r12
testq %rax, %rax
je 0x192c
testq %r14, %r14
je 0x157f
movl $0x1, %ebx
xorl %esi, %esi
leal -0x1(%rbx), %edx
shlq $0x4, %rsi
addq %r13, %rsi
movq %r12, %rdi
callq 0x221e
testl %eax, %eax
jne 0x1635
movl %ebx, %esi
incl %ebx
cmpq %rsi, %r14
ja 0x1530
movl $0x1, %ebx
xorl %esi, %esi
leal -0x1(%rbx), %edx
shlq $0x4, %rsi
addq %r13, %rsi
movq %r12, %rdi
xorl %ecx, %ecx
callq 0x2284
testl %eax, %eax
jne 0x1635
movl %ebx, %esi
incl %ebx
cmpq %rsi, %r14
ja 0x155a
cmpl $0x0, (%rsp)
je 0x1599
leaq 0x1dec(%rip), %rdi      # 0x3378
callq 0x1130
movq %r12, %rdi
callq 0x2435
movl $0x1, %esi
movq %r14, %rdi
callq 0x1070
testq %rax, %rax
je 0x193a
movq %rax, %rbx
xorps %xmm0, %xmm0
cvtsi2sd %r14, %xmm0
movapd 0x20(%rsp), %xmm1
mulsd %xmm0, %xmm1
cvttsd2si %xmm1, %rax
subsd 0x1a47(%rip), %xmm1     # 0x3018
movq %rax, %rcx
cvttsd2si %xmm1, %rdx
sarq $0x3f, %rcx
andq %rcx, %rdx
orq %rax, %rdx
movq %rdx, 0x60(%rsp)
testq %r14, %r14
movq %r12, 0x8(%rsp)
je 0x1641
leaq -0x1(%r14), %rax
movq %rax, %rcx
shrq %rcx
orq %rax, %rcx
movq %rcx, %rax
shrq $0x2, %rax
orq %rcx, %rax
movq %rax, %rcx
shrq $0x4, %rcx
orq %rax, %rcx
movq %rcx, %rax
shrq $0x8, %rax
orq %rcx, %rax
movq %rax, %rcx
shrq $0x10, %rcx
orl %eax, %ecx
jmp 0x1646
movl $0x1, %ebp
movq %r15, %r14
jmp 0x1992
movq 0x18(%rsp), %r14
xorl %ebx, %ebx
jmp 0x194d
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
cmpq $0x0, 0x60(%rsp)
je 0x182e
leaq 0x1(%r13), %rax
movq %rax, 0x70(%rsp)
movl $0x533d, %r12d          # imm = 0x533D
xorl %edx, %edx
movq %r13, 0x80(%rsp)
movq %rbx, 0x68(%rsp)
movq %rcx, 0x78(%rsp)
movq %rdx, 0x40(%rsp)
movl $0x80000057, %eax       # imm = 0x80000057
testb $0x1, %r12b
jne 0x1687
xorl %eax, %eax
shrl %r12d
xorl %eax, %r12d
movl %r12d, %ebp
andl %ecx, %ebp
decl %ebp
cmpq %rbp, %r14
jbe 0x167a
cmpb $0x0, (%rbx,%rbp)
jne 0x167a
movq %rbp, %rax
shlq $0x4, %rax
leaq (%rax,%r13), %rdx
movq 0x8(%rsp), %rcx
movl (%rcx), %ecx
testl %ecx, %ecx
je 0x16e0
movq %rcx, 0x50(%rsp)
movb (%rdx), %cl
testb %cl, %cl
je 0x16e8
addq 0x70(%rsp), %rax
movl $0x811c9dc5, %ebx       # imm = 0x811C9DC5
movzbl %cl, %ecx
xorl %ebx, %ecx
imull $0x1000193, %ecx, %ebx  # imm = 0x1000193
movb (%rax), %cl
incq %rax
testb %cl, %cl
jne 0x16ca
jmp 0x16ed
xorl %r15d, %r15d
jmp 0x17a2
movl $0x811c9dc5, %ebx       # imm = 0x811C9DC5
movq 0x50(%rsp), %rax
leal -0x1(%rax), %esi
andl %esi, %ebx
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rdi
movl $0x1, %r13d
movl %ebx, %r15d
movq %rdx, 0x58(%rsp)
movl %esi, 0x48(%rsp)
movq %rdi, 0x30(%rsp)
movl %r15d, %eax
shrl $0x4, %eax
movl (%rdi,%rax,4), %r8d
leal (%r15,%r15), %r14d
andl $0x1e, %r14d
movl %r8d, %eax
movl %r14d, %ecx
shrl %cl, %eax
testb $0x2, %al
jne 0x1785
testb $0x1, %al
jne 0x176d
movq 0x8(%rsp), %rax
movq 0x18(%rax), %rax
movl %r15d, %ecx
movq (%rax,%rcx,8), %rdi
movq %rdx, %rsi
movl %r8d, 0x20(%rsp)
callq 0x1100
movl 0x20(%rsp), %r8d
movq 0x30(%rsp), %rdi
movl 0x48(%rsp), %esi
movq 0x58(%rsp), %rdx
testl %eax, %eax
je 0x1785
addl %r13d, %r15d
andl %esi, %r15d
incl %r13d
cmpl %ebx, %r15d
jne 0x1717
movq 0x50(%rsp), %rcx
movl %ecx, %r15d
jmp 0x1798
movl %r14d, %ecx
shrl %cl, %r8d
testb $0x3, %r8b
movq 0x50(%rsp), %rcx
cmovnel %ecx, %r15d
movq 0x38(%rsp), %r14
movq 0x68(%rsp), %rbx
movq %rcx, %r13
cmpl %ecx, %r15d
jae 0x1814
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movl %r15d, %edx
shrl $0x4, %edx
movl (%rax,%rdx,4), %esi
leal (%r15,%r15), %ecx
andl $0x1e, %ecx
movl %esi, %edi
shrl %cl, %edi
testb $0x3, %dil
jne 0x17db
btsl %ecx, %esi
movl %esi, (%rax,%rdx,4)
movq 0x8(%rsp), %rax
decl 0x4(%rax)
movl $0x6, %eax
cmpl %r13d, %r15d
jae 0x17eb
movb $0x1, (%rbx,%rbp)
xorl %eax, %eax
testl %eax, %eax
movq 0x78(%rsp), %rcx
movq 0x40(%rsp), %rdx
movq 0x80(%rsp), %r13
jne 0x190f
incl %edx
cmpq 0x60(%rsp), %rdx
jb 0x1675
jmp 0x182e
movq 0x37c5(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
leaq 0x1adc(%rip), %rsi      # 0x3301
xorl %eax, %eax
callq 0x1110
jmp 0x17db
movq %rbx, %rbp
testq %r14, %r14
movq 0x8(%rsp), %r12
je 0x186d
movl $0x1, %ebx
xorl %eax, %eax
leal -0x1(%rbx), %edx
movq %rax, %rsi
shlq $0x4, %rsi
addq %r13, %rsi
movzbl (%rbp,%rax), %ecx
movq %r12, %rdi
callq 0x2284
testl %eax, %eax
jne 0x1922
movl %ebx, %eax
incl %ebx
cmpq %rax, %r14
ja 0x1842
cmpl $0x0, (%rsp)
je 0x1887
leaq 0x1b0c(%rip), %rdi      # 0x3386
callq 0x1130
movq %r12, %rdi
callq 0x2435
testq %r14, %r14
je 0x18e1
movl $0x1, %ebx
xorl %esi, %esi
cmpb $0x0, (%rbp,%rsi)
je 0x18b0
leal -0x1(%rbx), %edx
shlq $0x4, %rsi
addq %r13, %rsi
movq %r12, %rdi
callq 0x221e
testl %eax, %eax
jne 0x1922
movl %ebx, %esi
incl %ebx
cmpq %rsi, %r14
ja 0x1893
movl $0x1, %ebx
xorl %esi, %esi
leal -0x1(%rbx), %edx
shlq $0x4, %rsi
addq %r13, %rsi
movq %r12, %rdi
xorl %ecx, %ecx
callq 0x2284
testl %eax, %eax
jne 0x1922
movl %ebx, %esi
incl %ebx
cmpq %rsi, %r14
ja 0x18c0
cmpl $0x0, (%rsp)
movq %rbp, %rbx
je 0x18fe
leaq 0x1aa6(%rip), %rdi      # 0x3397
callq 0x1130
movq %r12, %rdi
callq 0x2435
movq %r12, %rdi
callq 0x2641
xorl %ebp, %ebp
movq 0x18(%rsp), %r14
jmp 0x197d
cmpl $0x6, %eax
movq 0x8(%rsp), %r12
je 0x1948
xorl %ebp, %ebp
movq 0x18(%rsp), %r14
jmp 0x198d
movq 0x18(%rsp), %r14
movq %rbp, %rbx
jmp 0x194d
xorl %ebx, %ebx
xorl %edi, %edi
callq 0x1090
movq %r15, %r14
jmp 0x194d
leaq 0x17e9(%rip), %rdi      # 0x312a
callq 0x1090
xorl %ebx, %ebx
movq 0x18(%rsp), %r14
movl $0x1, %ebp
testq %r12, %r12
je 0x197d
movq 0x18(%r12), %rdi
callq 0x10e0
movq 0x10(%r12), %rdi
callq 0x10e0
movq 0x20(%r12), %rdi
callq 0x10e0
movq %r12, %rdi
callq 0x10e0
movq %r13, %rdi
callq 0x10e0
movq %rbx, %rdi
callq 0x10e0
movq 0x10(%rsp), %rbx
testq %rbx, %rbx
je 0x19aa
leaq 0x1724(%rip), %rsi      # 0x30c2
movq %rbx, %rdi
callq 0x1100
testl %eax, %eax
je 0x19c0
movl %ebp, %ebx
movl %ebx, %eax
addq $0x118, %rsp            # imm = 0x118
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
testq %r14, %r14
je 0x1ad8
leaq 0x197b(%rip), %rsi      # 0x334b
movq %r14, %rdi
callq 0x10d0
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
xorl %r13d, %r13d
movl $0x90, %edx
xorl %esi, %esi
callq 0x1060
testq %rbx, %rbx
je 0x1b24
movq %rbx, (%rsp)
movq %rbx, %rdi
callq 0x10b0
leaq 0x88(%rsp), %rbx
movl %eax, %edi
movq %rbx, %rsi
callq 0x1170
movq 0x30(%rbx), %r12
cmpq $0xf4241, %r12          # imm = 0xF4241
movl $0xf4240, %ecx          # imm = 0xF4240
cmovbq %rcx, %r12
testl %eax, %eax
cmovnsq %rcx, %r12
leaq 0x1(%r12), %rdi
callq 0x10f0
testq %rax, %rax
je 0x1aff
movq %rax, %r15
movl %ebp, 0x30(%rsp)
xorl %r13d, %r13d
movq %r13, %rbp
movq %r12, %rbx
subq %r13, %rbx
je 0x1a60
movq %r15, %r14
jmp 0x1a92
leaq 0xf4241(%r12), %rsi
movq %r15, %r14
movq %r15, %rdi
callq 0x1160
leaq 0xf4240(%r12), %rcx
movq %rcx, %rbx
subq %rbp, %rbx
testq %rax, %rax
cmovneq %rcx, %r12
cmoveq %rax, %rbx
cmovneq %rax, %r14
je 0x1b04
movq %r14, %r15
leaq (%r14,%rbp), %rdi
movl $0x1, %esi
movq %rbx, %rdx
movq (%rsp), %rcx
callq 0x1120
leaq (%rax,%rbp), %r13
cmpq %rbx, %rax
je 0x1a50
movq %rax, %r14
movb $0x0, (%r15,%r13)
movq (%rsp), %rbx
movq %rbx, %rdi
callq 0x1180
testl %eax, %eax
je 0x1e1d
movl 0x30(%rsp), %ebp
movq %r15, %r14
jmp 0x1b0c
movl $0x2faf080, %eax        # imm = 0x2FAF080
movq %rax, 0x20(%rsp)
movl $0x2faf080, %edi        # imm = 0x2FAF080
movl $0x10, %esi
callq 0x12dc
movq %rax, %r13
movq $0x0, 0x10(%rsp)
jmp 0x1b36
xorl %r14d, %r14d
jmp 0x1b08
movl 0x30(%rsp), %ebp
movq (%rsp), %rbx
testq %rbx, %rbx
je 0x1b19
movq %rbx, %rdi
callq 0x10a0
movq %r14, %rdi
callq 0x10e0
xorl %r13d, %r13d
movq $0x0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
movl $0x1, %ebx
testq %r13, %r13
je 0x19ac
movl $0x1, %edi
movl $0x28, %esi
callq 0x1070
testq %rax, %rax
je 0x214c
movl %ebp, 0x30(%rsp)
movq %rax, (%rsp)
callq 0x2b45
movq (%rsp), %r15
movq %rax, 0x8(%rsp)
testq %rax, %rax
movq 0x10(%rsp), %rbp
js 0x2124
cmpq $0x0, 0x18(%rsp)
je 0x1c00
cmpq $0x0, 0x20(%rsp)
je 0x1c6d
leaq 0x88(%rsp), %rbx
xorl %r12d, %r12d
movq (%rbp,%r12,8), %rsi
movq %r15, %rdi
movq %rbx, %rdx
callq 0x266f
movl 0x88(%rsp), %r14d
testl %r14d, %r14d
js 0x1bde
movq 0x20(%r15), %rcx
movl %eax, %eax
movl %r12d, (%rcx,%rax,4)
testl %r14d, %r14d
js 0x2124
incq %r12
cmpq %r12, 0x20(%rsp)
jne 0x1b9f
jmp 0x1c6d
movq 0x33fb(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
movq (%rbp,%r12,8), %rdx
leaq 0x1601(%rip), %rsi      # 0x31f5
movl %r14d, %ecx
xorl %eax, %eax
callq 0x1110
jmp 0x1bc6
cmpq $0x0, 0x20(%rsp)
je 0x1c6d
movq %r13, %r14
xorl %r12d, %r12d
movq %r15, %rdi
movq %r14, %rsi
leaq 0x88(%rsp), %rdx
callq 0x266f
movl 0x88(%rsp), %ebx
testl %ebx, %ebx
jle 0x1c4e
movq 0x20(%r15), %rcx
movl %eax, %eax
movl %r12d, (%rcx,%rax,4)
testl %ebx, %ebx
jle 0x2124
incq %r12
addq $0x10, %r14
cmpq %r12, 0x20(%rsp)
jne 0x1c0e
jmp 0x1c6d
movq 0x338b(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
leaq 0x1596(%rip), %rsi      # 0x31f5
movq %r14, %rdx
movl %ebx, %ecx
xorl %eax, %eax
callq 0x1110
jmp 0x1c36
callq 0x2b45
movq (%rsp), %r15
testq %rax, %rax
js 0x2124
movq %rax, %r8
subq 0x8(%rsp), %r8
movabsq $0x431bde82d7b634db, %rcx # imm = 0x431BDE82D7B634DB
movq %r8, %rax
imulq %rcx
movq %rdx, %rcx
shrq $0x3f, %rcx
sarq $0x12, %rdx
addq %rdx, %rcx
imulq $0xf4240, %rcx, %rax    # imm = 0xF4240
subq %rax, %r8
leaq 0x343a(%rip), %rbx      # 0x50f0
leaq 0x169d(%rip), %rdx      # 0x335a
movl $0x40, %esi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x1140
leaq 0x165a(%rip), %rdi      # 0x332d
movq 0x20(%rsp), %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1030
callq 0x2b45
movq (%rsp), %r15
movq %rax, 0x60(%rsp)
testq %rax, %rax
js 0x2124
cmpq $0x0, 0x18(%rsp)
movq %r13, 0x58(%rsp)
je 0x1e7f
cmpq $0x0, 0x20(%rsp)
je 0x1fa2
movl (%r15), %eax
leal -0x1(%rax), %edx
xorl %ecx, %ecx
movq %rax, 0x40(%rsp)
movq (%rbp,%rcx,8), %r8
movl $0x0, %ebx
testl %eax, %eax
je 0x1e02
movq %rcx, 0x48(%rsp)
movb (%r8), %cl
testb %cl, %cl
je 0x1d63
leaq 0x1(%r8), %rax
movl $0x811c9dc5, %r12d      # imm = 0x811C9DC5
movzbl %cl, %ecx
xorl %r12d, %ecx
imull $0x1000193, %ecx, %r12d # imm = 0x1000193
movb (%rax), %cl
incq %rax
testb %cl, %cl
jne 0x1d4b
jmp 0x1d69
movl $0x811c9dc5, %r12d      # imm = 0x811C9DC5
andl %edx, %r12d
movq 0x10(%r15), %rsi
movl $0x1, %r13d
movl %r12d, %ebx
movq %r8, 0x8(%rsp)
movq %rsi, 0x38(%rsp)
movl %ebx, %eax
shrl $0x4, %eax
movl (%rsi,%rax,4), %ebp
leal (%rbx,%rbx), %r14d
andl $0x1e, %r14d
movl %ebp, %eax
movl %r14d, %ecx
shrl %cl, %eax
testb $0x2, %al
jne 0x1de2
testb $0x1, %al
jne 0x1dcc
movq 0x18(%r15), %rax
movl %ebx, %ecx
movq (%rax,%rcx,8), %rdi
movq %r8, %rsi
movl %edx, %r15d
callq 0x1100
movq 0x38(%rsp), %rsi
movq 0x8(%rsp), %r8
movl %r15d, %edx
movq (%rsp), %r15
testl %eax, %eax
je 0x1de2
addl %r13d, %ebx
andl %edx, %ebx
incl %r13d
cmpl %r12d, %ebx
jne 0x1d83
movq 0x40(%rsp), %rax
movl %eax, %ebx
jmp 0x1df3
movl %r14d, %ecx
shrl %cl, %ebp
testb $0x3, %bpl
movq 0x40(%rsp), %rax
cmovnel %eax, %ebx
movq 0x58(%rsp), %r13
movq 0x10(%rsp), %rbp
movq 0x48(%rsp), %rcx
cmpl %eax, %ebx
jae 0x20dd
incq %rcx
cmpq 0x20(%rsp), %rcx
jne 0x1d23
jmp 0x1fa2
movq %rbx, %rdi
callq 0x10a0
testl %eax, %eax
js 0x1acf
addq %r15, %r13
testq %r15, %r15
je 0x2040
movq %r15, %rax
addq %rbp, %r14
addq %r15, %r14
incq %r14
xorl %ebx, %ebx
movq %r14, %rdx
subq %rax, %rdx
decq %rax
decq %rdx
cmpb $0xa, 0x1(%rax)
leaq 0x1(%rax), %rax
je 0x1e50
cmpq %r13, %rax
adcq $0x0, %rbx
movq %rax, %rdi
movl $0xa, %esi
callq 0x10c0
testq %rax, %rax
jne 0x1e47
shlq $0x3, %rbx
jmp 0x2042
cmpq $0x0, 0x20(%rsp)
je 0x1fa2
movl (%r15), %eax
leal -0x1(%rax), %edx
leaq 0x1(%r13), %rcx
xorl %esi, %esi
movq %rax, 0x50(%rsp)
movq %rsi, %r8
shlq $0x4, %r8
addq %r13, %r8
movq %r8, 0x8(%rsp)
movl $0x0, %r13d
testl %eax, %eax
je 0x1f82
movq 0x8(%rsp), %rax
movb (%rax), %al
testb %al, %al
movq %rcx, 0x48(%rsp)
movq %rsi, 0x40(%rsp)
movl $0x811c9dc5, %r12d      # imm = 0x811C9DC5
je 0x1eea
movzbl %al, %eax
xorl %r12d, %eax
imull $0x1000193, %eax, %r12d # imm = 0x1000193
movb (%rcx), %al
incq %rcx
testb %al, %al
jne 0x1ed4
andl %edx, %r12d
movq 0x10(%r15), %rsi
movl $0x1, %ebx
movl %r12d, %r13d
movq %rsi, 0x38(%rsp)
movl %r13d, %eax
shrl $0x4, %eax
movl (%rsi,%rax,4), %ebp
leal (,%r13,2), %r14d
andl $0x1e, %r14d
movl %ebp, %eax
movl %r14d, %ecx
shrl %cl, %eax
testb $0x2, %al
jne 0x1f61
testb $0x1, %al
jne 0x1f4a
movq 0x18(%r15), %rax
movl %r13d, %ecx
movq (%rax,%rcx,8), %rdi
movq 0x8(%rsp), %rsi
movl %edx, %r15d
callq 0x1100
movq 0x38(%rsp), %rsi
movl %r15d, %edx
movq (%rsp), %r15
testl %eax, %eax
je 0x1f61
addl %ebx, %r13d
andl %edx, %r13d
incl %ebx
cmpl %r12d, %r13d
jne 0x1efe
movq 0x50(%rsp), %rax
movl %eax, %r13d
jmp 0x1f73
movl %r14d, %ecx
shrl %cl, %ebp
testb $0x3, %bpl
movq 0x50(%rsp), %rax
cmovnel %eax, %r13d
movq 0x10(%rsp), %rbp
movq 0x48(%rsp), %rcx
movq 0x40(%rsp), %rsi
cmpl %eax, %r13d
jae 0x20fe
incq %rsi
addq $0x10, %rcx
cmpq 0x20(%rsp), %rsi
movq 0x58(%rsp), %r13
jne 0x1e9c
callq 0x2b45
movq (%rsp), %r15
testq %rax, %rax
js 0x2124
movq %rax, %r8
subq 0x60(%rsp), %r8
movq %r8, %rax
movabsq $0x431bde82d7b634db, %rcx # imm = 0x431BDE82D7B634DB
imulq %rcx
movq %rdx, %rcx
shrq $0x3f, %rcx
sarq $0x12, %rdx
addq %rdx, %rcx
imulq $0xf4240, %rcx, %rax    # imm = 0xF4240
subq %rax, %r8
leaq 0x3105(%rip), %rbx      # 0x50f0
leaq 0x1368(%rip), %rdx      # 0x335a
movl $0x40, %esi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x1140
leaq 0x1334(%rip), %rdi      # 0x333c
movq 0x20(%rsp), %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1030
movq %r15, %rdi
callq 0x2435
movq %r15, %rdi
callq 0x2641
movq %r13, %rdi
callq 0x10e0
movq %rbp, %rdi
callq 0x10e0
movl 0x30(%rsp), %ebx
jmp 0x19ac
xorl %ebx, %ebx
movq %rbx, %rdi
callq 0x10f0
movq %rax, 0x10(%rsp)
testq %rax, %rax
movl 0x30(%rsp), %ebp
je 0x20bb
movq %r15, %rax
testq %r15, %r15
je 0x20cc
movq $0x0, 0x20(%rsp)
cmpb $0xa, (%rax)
jne 0x2080
leaq 0x1(%rax), %rdi
movb $0x0, (%rax)
cmpb $0xa, 0x1(%rax)
movq %rdi, %rax
je 0x206e
jmp 0x2083
movq %rax, %rdi
cmpq %r13, %rdi
jae 0x209e
movq 0x10(%rsp), %rax
movq 0x20(%rsp), %rcx
movq %rdi, (%rax,%rcx,8)
incq %rcx
movq %rcx, 0x20(%rsp)
movq %r13, %rdx
subq %rdi, %rdx
movl $0xa, %esi
callq 0x10c0
testq %rax, %rax
jne 0x2069
movq %r15, %r13
jmp 0x1b36
xorl %ebx, %ebx
jmp 0x1ad3
callq 0x11cd
jmp 0x149c
movq $0x0, 0x20(%rsp)
movq %rax, %r13
jmp 0x1b36
movq 0x2efc(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
leaq 0x1155(%rip), %rsi      # 0x3243
movq %r8, %rdx
xorl %eax, %eax
callq 0x1110
movq (%rsp), %r15
jmp 0x2124
movq 0x2edb(%rip), %rax      # 0x4fe0
movq (%rax), %rdi
leaq 0x1134(%rip), %rsi      # 0x3243
movq 0x8(%rsp), %rdx
xorl %eax, %eax
callq 0x1110
movq (%rsp), %r15
movq 0x58(%rsp), %r13
movq 0x18(%r15), %rdi
callq 0x10e0
movq 0x10(%r15), %rdi
callq 0x10e0
movq 0x20(%r15), %rdi
callq 0x10e0
movq %r15, %rdi
callq 0x10e0
movl $0x1, %ebx
movq %r13, %rdi
callq 0x10e0
jmp 0x19ac