// File: /workspace/github_c_makefile_star2_O0/samtools[P]htslib/test/test-vcf-api.c
// Function: write_bcf
void write_bcf(char *fname)
{
    // Init
    htsFile *fp    = hts_open(fname,"wb");
    if (!fp) error("Failed to open \"%s\" : %s", fname, strerror(errno));
    bcf_hdr_t *hdr = bcf_hdr_init("w");
    if (!hdr) error("bcf_hdr_init : %s", strerror(errno));
    bcf1_t *rec    = bcf_init1();
    if (!rec) error("bcf_init1 : %s", strerror(errno));

    // Check no-op on fresh bcf1_t
    check0(bcf_update_alleles(hdr, rec, NULL, 0));

    // Create VCF header
    kstring_t str = {0,0,0};
    check0(bcf_hdr_append(hdr, "##fileDate=20090805"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=UF,Number=1,Type=Integer,Description=\"Unused FORMAT\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=UI,Number=1,Type=Integer,Description=\"Unused INFO\">"));
    check0(bcf_hdr_append(hdr, "##FILTER=<ID=Flt,Description=\"Unused FILTER\">"));
    check0(bcf_hdr_append(hdr, "##unused=<XX=AA,Description=\"Unused generic\">"));
    check0(bcf_hdr_append(hdr, "##unused=<ID=BB,Description=\"Unused generic with ID\">"));
    check0(bcf_hdr_append(hdr, "##unused=unformatted text 1"));
    check0(bcf_hdr_append(hdr, "##unused=unformatted text 2"));
    check0(bcf_hdr_append(hdr, "##contig=<ID=Unused,length=1>"));
    check0(bcf_hdr_append(hdr, "##source=myImputationProgramV3.1"));
    check0(bcf_hdr_append(hdr, "##reference=file:///seq/references/1000GenomesPilot-NCBI36.fasta"));
    check0(bcf_hdr_append(hdr, "##contig=<ID=20,length=62435964,assembly=B36,md5=f126cdf8a6e0c7f379d618ff66beb2da,species=\"Homo sapiens\",taxonomy=x>"));
    check0(bcf_hdr_append(hdr, "##phasing=partial"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=NS,Number=1,Type=Integer,Description=\"Number of Samples With Data\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=DP,Number=1,Type=Integer,Description=\"Total Depth\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=NEG,Number=.,Type=Integer,Description=\"Test -ve Numbers\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=AF,Number=A,Type=Float,Description=\"Allele Frequency\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=AA,Number=1,Type=String,Description=\"Ancestral Allele\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=DB,Number=0,Type=Flag,Description=\"dbSNP membership, build 129\">"));
    check0(bcf_hdr_append(hdr, "##INFO=<ID=H2,Number=0,Type=Flag,Description=\"HapMap2 membership\">"));
    check0(bcf_hdr_append(hdr, "##FILTER=<ID=q10,Description=\"Quality below 10\">"));
    check0(bcf_hdr_append(hdr, "##FILTER=<ID=s50,Description=\"Less than half of samples have data\">"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=GT,Number=1,Type=String,Description=\"Genotype\">"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=GQ,Number=1,Type=Integer,Description=\"Genotype Quality\">"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=DP,Number=1,Type=Integer,Description=\"Read Depth\">"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=HQ,Number=2,Type=Integer,Description=\"Haplotype Quality\">"));
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=TS,Number=1,Type=String,Description=\"Test String 1\">"));

    // Try a few header modifications
    bcf_hdr_remove(hdr, BCF_HL_CTG, "Unused");
    check0(bcf_hdr_append(hdr, "##contig=<ID=Unused,length=62435964>"));
    bcf_hdr_remove(hdr, BCF_HL_FMT, "TS");
    check0(bcf_hdr_append(hdr, "##FORMAT=<ID=TS,Number=1,Type=String,Description=\"Test String\">"));
    bcf_hdr_remove(hdr, BCF_HL_INFO, "NEG");
    check0(bcf_hdr_append(hdr, "##INFO=<ID=NEG,Number=.,Type=Integer,Description=\"Test Negative Numbers\">"));
    bcf_hdr_remove(hdr, BCF_HL_FLT, "s50");
    check0(bcf_hdr_append(hdr, "##FILTER=<ID=s50,Description=\"Less than 50% of samples have data\">"));

    check0(bcf_hdr_add_sample(hdr, "NA00001"));
    check0(bcf_hdr_add_sample(hdr, "NA00002"));
    check0(bcf_hdr_add_sample(hdr, "NA00003"));
    check0(bcf_hdr_add_sample(hdr, NULL));      // to update internal structures
    if ( bcf_hdr_write(fp, hdr)!=0 ) error("Failed to write to %s\n", fname);


    // Add a record
    // 20     14370   rs6054257 G      A       29   PASS   NS=3;DP=14;NEG=-127;AF=0.5;DB;H2           GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,.
    // .. CHROM
    rec->rid = bcf_hdr_name2id(hdr, "20");
    // .. POS
    rec->pos = 14369;
    // .. ID
    check0(bcf_update_id(hdr, rec, "rs6054257"));
    // .. REF and ALT
    test_update_alleles(hdr, rec);
    const char *alleles[2] = { "G", "A" };
    check0(bcf_update_alleles_str(hdr, rec, "G,A"));
    check0(check_alleles(rec, alleles, 2));
    // .. QUAL
    rec->qual = 29;
    // .. FILTER
    int32_t tmpi = bcf_hdr_id2int(hdr, BCF_DT_ID, "PASS");
    check0(bcf_update_filter(hdr, rec, &tmpi, 1));
    // .. INFO
    tmpi = 3;
    check0(bcf_update_info_int32(hdr, rec, "NS", &tmpi, 1));
    tmpi = 500;
    check0(bcf_update_info_int32(hdr, rec, "DP", &tmpi, 1));
    tmpi = 100000;
    check0(bcf_update_info_int32(hdr, rec, "DP", &tmpi, 1));
    tmpi = 14;
    check0(bcf_update_info_int32(hdr, rec, "DP", &tmpi, 1));
    tmpi = -127;
    check0(bcf_update_info_int32(hdr, rec, "NEG", &tmpi, 1));
    float tmpf = 0.5;
    check0(bcf_update_info_float(hdr, rec, "AF", &tmpf, 1));
    check0(bcf_update_info_flag(hdr, rec, "DB", NULL, 1));
    check0(bcf_update_info_flag(hdr, rec, "H2", NULL, 1));
    // .. FORMAT
    int32_t *tmpia = (int*)malloc(bcf_hdr_nsamples(hdr)*2*sizeof(int));
    tmpia[0] = bcf_gt_phased(0);
    tmpia[1] = bcf_gt_phased(0);
    tmpia[2] = bcf_gt_phased(1);
    tmpia[3] = bcf_gt_phased(0);
    tmpia[4] = bcf_gt_unphased(1);
    tmpia[5] = bcf_gt_unphased(1);
    check0(bcf_update_genotypes(hdr, rec, tmpia, bcf_hdr_nsamples(hdr)*2));
    tmpia[0] = 48;
    tmpia[1] = 48;
    tmpia[2] = 43;
    check0(bcf_update_format_int32(hdr, rec, "GQ", tmpia, bcf_hdr_nsamples(hdr)));
    tmpia[0] = 0;
    tmpia[1] = 0;
    tmpia[2] = 1;
    check0(bcf_update_format_int32(hdr, rec, "DP", tmpia, bcf_hdr_nsamples(hdr)));
    tmpia[0] = 1;
    tmpia[1] = 100000;
    tmpia[2] = 1;
    check0(bcf_update_format_int32(hdr, rec, "DP", tmpia, bcf_hdr_nsamples(hdr)));
    tmpia[0] = 1;
    tmpia[1] = 8;
    tmpia[2] = 5;
    check0(bcf_update_format_int32(hdr, rec, "DP", tmpia, bcf_hdr_nsamples(hdr)));
    tmpia[0] = 51;
    tmpia[1] = 51;
    tmpia[2] = 51;
    tmpia[3] = 51;
    tmpia[4] = bcf_int32_missing;
    tmpia[5] = bcf_int32_missing;
    check0(bcf_update_format_int32(hdr, rec, "HQ", tmpia, bcf_hdr_nsamples(hdr)*2));
    char *tmp_str[] = {"String1","SomeOtherString2","YetAnotherString3"};
    check0(bcf_update_format_string(hdr, rec, "TS", (const char**)tmp_str, 3));
    tmp_str[0] = "LongerStringRequiringBufferReallocation";
    check0(bcf_update_format_string(hdr, rec, "TS", (const char**)tmp_str, 3));
    tmp_str[0] = "String1";
    check0(bcf_update_format_string(hdr, rec, "TS", (const char**)tmp_str, 3));
    if ( bcf_write1(fp, hdr, rec)!=0 ) error("Failed to write to %s\n", fname);

    // 20     1110696 . A      G,T     67   .   NS=2;DP=10;NEG=-128;AF=0.333,.;AA=T;DB GT 2 1   ./.
    bcf_clear1(rec);
    rec->rid = bcf_hdr_name2id(hdr, "20");
    rec->pos = 1110695;
    check0(bcf_update_alleles_str(hdr, rec, "A,G,T"));
    rec->qual = 67;
    tmpi = 2;
    check0(bcf_update_info_int32(hdr, rec, "NS", &tmpi, 1));
    tmpi = 10;
    check0(bcf_update_info_int32(hdr, rec, "DP", &tmpi, 1));
    tmpi = -128;
    check0(bcf_update_info_int32(hdr, rec, "NEG", &tmpi, 1));
    float *tmpfa = (float*)malloc(2*sizeof(float));
    tmpfa[0] = 0.333;
    bcf_float_set_missing(tmpfa[1]);
    check0(bcf_update_info_float(hdr, rec, "AF", tmpfa, 2));
    check0(bcf_update_info_string(hdr, rec, "AA", "SHORT"));
    check0(bcf_update_info_string(hdr, rec, "AA", "LONGSTRING"));
    check0(bcf_update_info_string(hdr, rec, "AA", "T"));
    check0(bcf_update_info_flag(hdr, rec, "DB", NULL, 1));
    tmpia[0] = bcf_gt_phased(2);
    tmpia[1] = bcf_int32_vector_end;
    tmpia[2] = bcf_gt_phased(1);
    tmpia[3] = bcf_int32_vector_end;
    tmpia[4] = bcf_gt_missing;
    tmpia[5] = bcf_gt_missing;
    check0(bcf_update_genotypes(hdr, rec, tmpia, bcf_hdr_nsamples(hdr)*2));
    if ( bcf_write1(fp, hdr, rec)!=0 ) error("Failed to write to %s\n", fname);

    free(tmpia);
    free(tmpfa);

    // Clean
    free(str.s);
    bcf_destroy1(rec);
    bcf_hdr_destroy(hdr);
    int ret;
    if ( (ret=hts_close(fp)) )
    {
        fprintf(stderr,"hts_close(%s): non-zero status %d\n",fname,ret);
        exit(ret);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
leaq 0x100452(%rip), %rsi    # 0x10601c
callq 0xcf30
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x5c09
movq -0x8(%rbp), %rax
movq %rax, -0x98(%rbp)
callq 0x4050
movl (%rax), %edi
callq 0x4120
movq -0x98(%rbp), %rsi
movq %rax, %rdx
leaq 0x10041d(%rip), %rdi    # 0x10601f
movb $0x0, %al
callq 0x5ae0
leaq 0x104dac(%rip), %rdi    # 0x10a9bc
callq 0x425e0
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x5c3d
callq 0x4050
movl (%rax), %edi
callq 0x4120
movq %rax, %rsi
leaq 0x100402(%rip), %rdi    # 0x106038
movb $0x0, %al
callq 0x5ae0
callq 0x43c30
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x5c6a
callq 0x4050
movl (%rax), %edi
callq 0x4120
movq %rax, %rsi
leaq 0x1003e7(%rip), %rdi    # 0x10604a
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
xorl %eax, %eax
movl %eax, %edx
xorl %ecx, %ecx
callq 0x52590
cmpl $0x0, %eax
jne 0x5c84
jmp 0x5c99
leaq 0x1003ce(%rip), %rdi    # 0x106059
leaq 0x1003d2(%rip), %rsi    # 0x106064
movb $0x0, %al
callq 0x5ae0
leaq -0x38(%rbp), %rdi
xorl %esi, %esi
movl $0x18, %edx
callq 0x4240
movq -0x18(%rbp), %rdi
leaq 0x1003dc(%rip), %rsi    # 0x106090
callq 0x41c70
cmpl $0x0, %eax
jne 0x5cc0
jmp 0x5cd5
leaq 0x100392(%rip), %rdi    # 0x106059
leaq 0x1003d6(%rip), %rsi    # 0x1060a4
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1003ef(%rip), %rsi    # 0x1060cf
callq 0x41c70
cmpl $0x0, %eax
jne 0x5cec
jmp 0x5d01
leaq 0x100366(%rip), %rdi    # 0x106059
leaq 0x100418(%rip), %rsi    # 0x106112
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100462(%rip), %rsi    # 0x10616e
callq 0x41c70
cmpl $0x0, %eax
jne 0x5d18
jmp 0x5d2d
leaq 0x10033a(%rip), %rdi    # 0x106059
leaq 0x100487(%rip), %rsi    # 0x1061ad
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1004cd(%rip), %rsi    # 0x106205
callq 0x41c70
cmpl $0x0, %eax
jne 0x5d44
jmp 0x5d59
leaq 0x10030e(%rip), %rdi    # 0x106059
leaq 0x1004e1(%rip), %rsi    # 0x106233
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100516(%rip), %rsi    # 0x10627a
callq 0x41c70
cmpl $0x0, %eax
jne 0x5d70
jmp 0x5d85
leaq 0x1002e2(%rip), %rdi    # 0x106059
leaq 0x10052a(%rip), %rsi    # 0x1062a8
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x10055f(%rip), %rsi    # 0x1062ef
callq 0x41c70
cmpl $0x0, %eax
jne 0x5d9c
jmp 0x5db1
leaq 0x1002b6(%rip), %rdi    # 0x106059
leaq 0x10057b(%rip), %rsi    # 0x106325
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x101a01(%rip), %rsi    # 0x1077bd
callq 0x41c70
cmpl $0x0, %eax
jne 0x5dc8
jmp 0x5ddd
leaq 0x10028a(%rip), %rdi    # 0x106059
leaq 0x10059e(%rip), %rsi    # 0x106374
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1005bf(%rip), %rsi    # 0x1063a7
callq 0x41c70
cmpl $0x0, %eax
jne 0x5df4
jmp 0x5e09
leaq 0x10025e(%rip), %rdi    # 0x106059
leaq 0x1005c1(%rip), %rsi    # 0x1063c3
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x101ae3(%rip), %rsi    # 0x1078f7
callq 0x41c70
cmpl $0x0, %eax
jne 0x5e20
jmp 0x5e35
leaq 0x100232(%rip), %rdi    # 0x106059
leaq 0x1005c8(%rip), %rsi    # 0x1063f6
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1005eb(%rip), %rsi    # 0x10642b
callq 0x41c70
cmpl $0x0, %eax
jne 0x5e4c
jmp 0x5e61
leaq 0x100206(%rip), %rdi    # 0x106059
leaq 0x1005f2(%rip), %rsi    # 0x10644c
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100618(%rip), %rsi    # 0x106484
callq 0x41c70
cmpl $0x0, %eax
jne 0x5e78
jmp 0x5e8d
leaq 0x1001da(%rip), %rdi    # 0x106059
leaq 0x10063f(%rip), %rsi    # 0x1064c5
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100685(%rip), %rsi    # 0x10651d
callq 0x41c70
cmpl $0x0, %eax
jne 0x5ea4
jmp 0x5eb9
leaq 0x1001ae(%rip), %rdi    # 0x106059
leaq 0x1006e0(%rip), %rsi    # 0x106592
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x10075c(%rip), %rsi    # 0x106620
callq 0x41c70
cmpl $0x0, %eax
jne 0x5ed0
jmp 0x5ee5
leaq 0x100182(%rip), %rdi    # 0x106059
leaq 0x100754(%rip), %rsi    # 0x106632
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x10076b(%rip), %rsi    # 0x10665b
callq 0x41c70
cmpl $0x0, %eax
jne 0x5efc
jmp 0x5f11
leaq 0x100156(%rip), %rdi    # 0x106059
leaq 0x1007a0(%rip), %rsi    # 0x1066aa
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1007f6(%rip), %rsi    # 0x106712
callq 0x41c70
cmpl $0x0, %eax
jne 0x5f28
jmp 0x5f3d
leaq 0x10012a(%rip), %rdi    # 0x106059
leaq 0x10081b(%rip), %rsi    # 0x106751
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100861(%rip), %rsi    # 0x1067a9
callq 0x41c70
cmpl $0x0, %eax
jne 0x5f54
jmp 0x5f69
leaq 0x1000fe(%rip), %rdi    # 0x106059
leaq 0x10088c(%rip), %rsi    # 0x1067ee
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1008d8(%rip), %rsi    # 0x10684c
callq 0x41c70
cmpl $0x0, %eax
jne 0x5f80
jmp 0x5f95
leaq 0x1000d2(%rip), %rdi    # 0x106059
leaq 0x100900(%rip), %rsi    # 0x10688e
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100949(%rip), %rsi    # 0x1068e9
callq 0x41c70
cmpl $0x0, %eax
jne 0x5fac
jmp 0x5fc1
leaq 0x1000a6(%rip), %rdi    # 0x106059
leaq 0x100972(%rip), %rsi    # 0x10692c
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x1009bc(%rip), %rsi    # 0x106988
callq 0x41c70
cmpl $0x0, %eax
jne 0x5fd8
jmp 0x5fed
leaq 0x10007a(%rip), %rdi    # 0x106059
leaq 0x1009ee(%rip), %rsi    # 0x1069d4
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100a41(%rip), %rsi    # 0x106a39
callq 0x41c70
cmpl $0x0, %eax
jne 0x6004
jmp 0x6019
leaq 0x10004e(%rip), %rdi    # 0x106059
leaq 0x100a6a(%rip), %rsi    # 0x106a7c
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100ab4(%rip), %rsi    # 0x106ad8
callq 0x41c70
cmpl $0x0, %eax
jne 0x6030
jmp 0x6045
leaq 0x100022(%rip), %rdi    # 0x106059
leaq 0x100acb(%rip), %rsi    # 0x106b09
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100b03(%rip), %rsi    # 0x106b53
callq 0x41c70
cmpl $0x0, %eax
jne 0x605c
jmp 0x6071
leaq 0xffff6(%rip), %rdi     # 0x106059
leaq 0x100b2d(%rip), %rsi    # 0x106b97
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100b78(%rip), %rsi    # 0x106bf4
callq 0x41c70
cmpl $0x0, %eax
jne 0x6088
jmp 0x609d
leaq 0xfffca(%rip), %rdi     # 0x106059
leaq 0x100b9b(%rip), %rsi    # 0x106c31
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100bdf(%rip), %rsi    # 0x106c87
callq 0x41c70
cmpl $0x0, %eax
jne 0x60b4
jmp 0x60c9
leaq 0xfff9e(%rip), %rdi     # 0x106059
leaq 0x100c0b(%rip), %rsi    # 0x106ccd
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100c58(%rip), %rsi    # 0x106d2c
callq 0x41c70
cmpl $0x0, %eax
jne 0x60e0
jmp 0x60f5
leaq 0xfff72(%rip), %rdi     # 0x106059
leaq 0x100c7e(%rip), %rsi    # 0x106d6c
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100cc5(%rip), %rsi    # 0x106dc5
callq 0x41c70
cmpl $0x0, %eax
jne 0x610c
jmp 0x6121
leaq 0xfff46(%rip), %rdi     # 0x106059
leaq 0x100cf2(%rip), %rsi    # 0x106e0c
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100d40(%rip), %rsi    # 0x106e6c
callq 0x41c70
cmpl $0x0, %eax
jne 0x6138
jmp 0x614d
leaq 0xfff1a(%rip), %rdi     # 0x106059
leaq 0x100d68(%rip), %rsi    # 0x106eae
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movl $0x3, %esi
leaq 0x100dac(%rip), %rdx    # 0x106f09
callq 0x41cd0
movq -0x18(%rbp), %rdi
leaq 0x100da3(%rip), %rsi    # 0x106f10
callq 0x41c70
cmpl $0x0, %eax
jne 0x6179
jmp 0x618e
leaq 0xffed9(%rip), %rdi     # 0x106059
leaq 0x100dae(%rip), %rsi    # 0x106f35
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movl $0x2, %esi
leaq 0x100dd3(%rip), %rdx    # 0x106f71
callq 0x41cd0
movq -0x18(%rbp), %rdi
leaq 0x100dc6(%rip), %rsi    # 0x106f74
callq 0x41c70
cmpl $0x0, %eax
jne 0x61ba
jmp 0x61cf
leaq 0xffe98(%rip), %rdi     # 0x106059
leaq 0x100dec(%rip), %rsi    # 0x106fb4
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movl $0x1, %esi
leaq 0x100e2e(%rip), %rdx    # 0x10700d
callq 0x41cd0
movq -0x18(%rbp), %rdi
leaq 0x100e22(%rip), %rsi    # 0x107011
callq 0x41c70
cmpl $0x0, %eax
jne 0x61fb
jmp 0x6210
leaq 0xffe57(%rip), %rdi     # 0x106059
leaq 0x100e52(%rip), %rsi    # 0x10705b
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
xorl %esi, %esi
leaq 0x100ea1(%rip), %rdx    # 0x1070be
callq 0x41cd0
movq -0x18(%rbp), %rdi
leaq 0x100e95(%rip), %rsi    # 0x1070c2
callq 0x41c70
cmpl $0x0, %eax
jne 0x6239
jmp 0x624e
leaq 0xffe19(%rip), %rdi     # 0x106059
leaq 0x100ebe(%rip), %rsi    # 0x107105
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100f08(%rip), %rsi    # 0x107161
callq 0x3da70
cmpl $0x0, %eax
jne 0x6265
jmp 0x627a
leaq 0xffded(%rip), %rdi     # 0x106059
leaq 0x100ef6(%rip), %rsi    # 0x107169
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100f07(%rip), %rsi    # 0x10718c
callq 0x3da70
cmpl $0x0, %eax
jne 0x6291
jmp 0x62a6
leaq 0xffdc1(%rip), %rdi     # 0x106059
leaq 0x100ef5(%rip), %rsi    # 0x107194
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100f06(%rip), %rsi    # 0x1071b7
callq 0x3da70
cmpl $0x0, %eax
jne 0x62bd
jmp 0x62d2
leaq 0xffd95(%rip), %rdi     # 0x106059
leaq 0x100ef4(%rip), %rsi    # 0x1071bf
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x3da70
cmpl $0x0, %eax
jne 0x62e6
jmp 0x62fb
leaq 0xffd6c(%rip), %rdi     # 0x106059
leaq 0x100eee(%rip), %rsi    # 0x1071e2
movb $0x0, %al
callq 0x5ae0
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x43790
cmpl $0x0, %eax
je 0x631f
movq -0x8(%rbp), %rsi
leaq 0x100eee(%rip), %rdi    # 0x107206
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
leaq 0x100ef3(%rip), %rsi    # 0x10721d
callq 0x6e10
movl %eax, %ecx
movq -0x20(%rbp), %rax
movl %ecx, 0x10(%rax)
movq -0x20(%rbp), %rax
movq $0x3821, (%rax)         # imm = 0x3821
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100ece(%rip), %rdx    # 0x107220
callq 0x52b50
cmpl $0x0, %eax
jne 0x635e
jmp 0x6373
leaq 0xffcf4(%rip), %rdi     # 0x106059
leaq 0x100ebe(%rip), %rsi    # 0x10722a
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x6e40
movq 0x1246f9(%rip), %rax    # 0x12aa80
movq %rax, -0x50(%rbp)
movq 0x1246f6(%rip), %rax    # 0x12aa88
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100eaa(%rip), %rdx    # 0x10724f
callq 0x52a70
cmpl $0x0, %eax
jne 0x63b1
jmp 0x63c6
leaq 0xffca1(%rip), %rdi     # 0x106059
leaq 0x100e94(%rip), %rsi    # 0x107253
movb $0x0, %al
callq 0x5ae0
movq -0x20(%rbp), %rdi
leaq -0x50(%rbp), %rsi
movl $0x2, %edx
callq 0x71d0
cmpl $0x0, %eax
jne 0x63df
jmp 0x63f4
leaq 0xffc73(%rip), %rdi     # 0x106059
leaq 0x100e8e(%rip), %rsi    # 0x10727b
movb $0x0, %al
callq 0x5ae0
movq -0x20(%rbp), %rax
movss 0xffc04(%rip), %xmm0    # 0x106004
movss %xmm0, 0x14(%rax)
movq -0x18(%rbp), %rdi
xorl %esi, %esi
leaq 0x100e88(%rip), %rdx    # 0x10729a
callq 0x418a0
movl %eax, -0x54(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x54(%rbp), %rdx
movl $0x1, %ecx
callq 0x52090
cmpl $0x0, %eax
jne 0x6437
jmp 0x644c
leaq 0xffc1b(%rip), %rdi     # 0x106059
leaq 0x100e5a(%rip), %rsi    # 0x10729f
movb $0x0, %al
callq 0x5ae0
movl $0x3, -0x54(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x102c02(%rip), %rdx    # 0x109064
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x647b
jmp 0x6490
leaq 0xffbd7(%rip), %rdi     # 0x106059
leaq 0x100e3c(%rip), %rsi    # 0x1072c5
movb $0x0, %al
callq 0x5ae0
movl $0x1f4, -0x54(%rbp)     # imm = 0x1F4
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100e51(%rip), %rdx    # 0x1072f7
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x64bf
jmp 0x64d4
leaq 0xffb93(%rip), %rdi     # 0x106059
leaq 0x100e2d(%rip), %rsi    # 0x1072fa
movb $0x0, %al
callq 0x5ae0
movl $0x186a0, -0x54(%rbp)   # imm = 0x186A0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100e0d(%rip), %rdx    # 0x1072f7
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6503
jmp 0x6518
leaq 0xffb4f(%rip), %rdi     # 0x106059
leaq 0x100de9(%rip), %rsi    # 0x1072fa
movb $0x0, %al
callq 0x5ae0
movl $0xe, -0x54(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100dc9(%rip), %rdx    # 0x1072f7
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6547
jmp 0x655c
leaq 0xffb0b(%rip), %rdi     # 0x106059
leaq 0x100da5(%rip), %rsi    # 0x1072fa
movb $0x0, %al
callq 0x5ae0
movl $0xffffff81, -0x54(%rbp) # imm = 0xFFFFFF81
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100a9b(%rip), %rdx    # 0x10700d
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x658b
jmp 0x65a0
leaq 0xffac7(%rip), %rdi     # 0x106059
leaq 0x100d93(%rip), %rsi    # 0x10732c
movb $0x0, %al
callq 0x5ae0
movss 0xffa60(%rip), %xmm0    # 0x106008
movss %xmm0, -0x58(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x10e083(%rip), %rdx    # 0x11463f
leaq -0x58(%rbp), %rcx
movl $0x1, %r8d
movl $0x2, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x65d8
jmp 0x65ed
leaq 0xffa7a(%rip), %rdi     # 0x106059
leaq 0x100d79(%rip), %rsi    # 0x10735f
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100d95(%rip), %rdx    # 0x107391
xorl %eax, %eax
movl %eax, %ecx
movl $0x1, %r8d
xorl %r9d, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6615
jmp 0x662a
leaq 0xffa3d(%rip), %rdi     # 0x106059
leaq 0x100d71(%rip), %rsi    # 0x107394
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100d92(%rip), %rdx    # 0x1073cb
xorl %eax, %eax
movl %eax, %ecx
movl $0x1, %r8d
xorl %r9d, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6652
jmp 0x6667
leaq 0xffa00(%rip), %rdi     # 0x106059
leaq 0x100d6e(%rip), %rsi    # 0x1073ce
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rax
movl 0x8(%rax), %eax
shll %eax
movslq %eax, %rdi
shlq $0x2, %rdi
callq 0x4680
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movl $0x3, (%rax)
movq -0x60(%rbp), %rax
movl $0x3, 0x4(%rax)
movq -0x60(%rbp), %rax
movl $0x5, 0x8(%rax)
movq -0x60(%rbp), %rax
movl $0x3, 0xc(%rax)
movq -0x60(%rbp), %rax
movl $0x4, 0x10(%rax)
movq -0x60(%rbp), %rax
movl $0x4, 0x14(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
shll %r8d
leaq 0x108d1e(%rip), %rdx    # 0x10f3fd
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x66f1
jmp 0x6706
leaq 0xff961(%rip), %rdi     # 0x106059
leaq 0x100d06(%rip), %rsi    # 0x107405
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x30, (%rax)
movq -0x60(%rbp), %rax
movl $0x30, 0x4(%rax)
movq -0x60(%rbp), %rax
movl $0x2b, 0x8(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
leaq 0x100d02(%rip), %rdx    # 0x107443
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x6753
jmp 0x6768
leaq 0xff8ff(%rip), %rdi     # 0x106059
leaq 0x100ce5(%rip), %rsi    # 0x107446
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x0, (%rax)
movq -0x60(%rbp), %rax
movl $0x0, 0x4(%rax)
movq -0x60(%rbp), %rax
movl $0x1, 0x8(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
leaq 0x100b54(%rip), %rdx    # 0x1072f7
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x67b5
jmp 0x67ca
leaq 0xff89d(%rip), %rdi     # 0x106059
leaq 0x100cc1(%rip), %rsi    # 0x107484
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x1, (%rax)
movq -0x60(%rbp), %rax
movl $0x186a0, 0x4(%rax)     # imm = 0x186A0
movq -0x60(%rbp), %rax
movl $0x1, 0x8(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
leaq 0x100af2(%rip), %rdx    # 0x1072f7
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x6817
jmp 0x682c
leaq 0xff83b(%rip), %rdi     # 0x106059
leaq 0x100c5f(%rip), %rsi    # 0x107484
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x1, (%rax)
movq -0x60(%rbp), %rax
movl $0x8, 0x4(%rax)
movq -0x60(%rbp), %rax
movl $0x5, 0x8(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
leaq 0x100a90(%rip), %rdx    # 0x1072f7
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x6879
jmp 0x688e
leaq 0xff7d9(%rip), %rdi     # 0x106059
leaq 0x100bfd(%rip), %rsi    # 0x107484
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x33, (%rax)
movq -0x60(%rbp), %rax
movl $0x33, 0x4(%rax)
movq -0x60(%rbp), %rax
movl $0x33, 0x8(%rax)
movq -0x60(%rbp), %rax
movl $0x33, 0xc(%rax)
movq -0x60(%rbp), %rax
movl $0x80000000, 0x10(%rax) # imm = 0x80000000
movq -0x60(%rbp), %rax
movl $0x80000000, 0x14(%rax) # imm = 0x80000000
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
shll %r8d
leaq 0x100bd5(%rip), %rdx    # 0x1074c2
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x68ff
jmp 0x6914
leaq 0xff753(%rip), %rdi     # 0x106059
leaq 0x100bb8(%rip), %rsi    # 0x1074c5
movb $0x0, %al
callq 0x5ae0
movq 0x124175(%rip), %rax    # 0x12aa90
movq %rax, -0x80(%rbp)
movq 0x124172(%rip), %rax    # 0x12aa98
movq %rax, -0x78(%rbp)
movq 0x12416f(%rip), %rax    # 0x12aaa0
movq %rax, -0x70(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x80(%rbp), %rcx
leaq 0x100629(%rip), %rdx    # 0x106f71
movl $0x3, %r8d
callq 0x51750
cmpl $0x0, %eax
jne 0x695a
jmp 0x696f
leaq 0xff6f8(%rip), %rdi     # 0x106059
leaq 0x100bc8(%rip), %rsi    # 0x107530
movb $0x0, %al
callq 0x5ae0
leaq 0x100bfd(%rip), %rax    # 0x107573
movq %rax, -0x80(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x80(%rbp), %rcx
leaq 0x1005e4(%rip), %rdx    # 0x106f71
movl $0x3, %r8d
callq 0x51750
cmpl $0x0, %eax
jne 0x699f
jmp 0x69b4
leaq 0xff6b3(%rip), %rdi     # 0x106059
leaq 0x100b83(%rip), %rsi    # 0x107530
movb $0x0, %al
callq 0x5ae0
leaq 0x100b4a(%rip), %rax    # 0x107505
movq %rax, -0x80(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x80(%rbp), %rcx
leaq 0x10059f(%rip), %rdx    # 0x106f71
movl $0x3, %r8d
callq 0x51750
cmpl $0x0, %eax
jne 0x69e4
jmp 0x69f9
leaq 0xff66e(%rip), %rdi     # 0x106059
leaq 0x100b3e(%rip), %rsi    # 0x107530
movb $0x0, %al
callq 0x5ae0
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x46180
cmpl $0x0, %eax
je 0x6a21
movq -0x8(%rbp), %rsi
leaq 0x1007ec(%rip), %rdi    # 0x107206
movb $0x0, %al
callq 0x5ae0
movq -0x20(%rbp), %rdi
callq 0x43c60
movq -0x18(%rbp), %rdi
leaq 0x1007e8(%rip), %rsi    # 0x10721d
callq 0x6e10
movl %eax, %ecx
movq -0x20(%rbp), %rax
movl %ecx, 0x10(%rax)
movq -0x20(%rbp), %rax
movq $0x10f2a7, (%rax)       # imm = 0x10F2A7
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100b3e(%rip), %rdx    # 0x10759b
callq 0x52a70
cmpl $0x0, %eax
jne 0x6a69
jmp 0x6a7e
leaq 0xff5e9(%rip), %rdi     # 0x106059
leaq 0x100b2a(%rip), %rsi    # 0x1075a1
movb $0x0, %al
callq 0x5ae0
movq -0x20(%rbp), %rax
movss 0xff582(%rip), %xmm0    # 0x10600c
movss %xmm0, 0x14(%rax)
movl $0x2, -0x54(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x1025bf(%rip), %rdx    # 0x109064
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6abe
jmp 0x6ad3
leaq 0xff594(%rip), %rdi     # 0x106059
leaq 0x1007f9(%rip), %rsi    # 0x1072c5
movb $0x0, %al
callq 0x5ae0
movl $0xa, -0x54(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x10080e(%rip), %rdx    # 0x1072f7
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6b02
jmp 0x6b17
leaq 0xff550(%rip), %rdi     # 0x106059
leaq 0x1007ea(%rip), %rsi    # 0x1072fa
movb $0x0, %al
callq 0x5ae0
movl $0xffffff80, -0x54(%rbp) # imm = 0xFFFFFF80
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x1004e0(%rip), %rdx    # 0x10700d
leaq -0x54(%rbp), %rcx
movl $0x1, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6b46
jmp 0x6b5b
leaq 0xff50c(%rip), %rdi     # 0x106059
leaq 0x1007d8(%rip), %rsi    # 0x10732c
movb $0x0, %al
callq 0x5ae0
movl $0x8, %edi
callq 0x4680
movq %rax, -0x88(%rbp)
movq -0x88(%rbp), %rax
movss 0xff495(%rip), %xmm0    # 0x106010
movss %xmm0, (%rax)
movq -0x88(%rbp), %rdi
addq $0x4, %rdi
leaq 0x125a5f(%rip), %rax    # 0x12c5f0
movl (%rax), %esi
callq 0x7300
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x88(%rbp), %rcx
leaq 0x10da91(%rip), %rdx    # 0x11463f
movl $0x2, %r9d
movl %r9d, %r8d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6bc3
jmp 0x6bd8
leaq 0xff48f(%rip), %rdi     # 0x106059
leaq 0x1009fa(%rip), %rsi    # 0x1075cb
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100a16(%rip), %rdx    # 0x1075fd
leaq 0x100a12(%rip), %rcx    # 0x107600
movl $0x1, %r8d
movl $0x3, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6c06
jmp 0x6c1b
leaq 0xff44c(%rip), %rdi     # 0x106059
leaq 0x1009f2(%rip), %rsi    # 0x107606
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x1009d3(%rip), %rdx    # 0x1075fd
leaq 0x100a07(%rip), %rcx    # 0x107638
movl $0x1, %r8d
movl $0x3, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6c49
jmp 0x6c5e
leaq 0xff409(%rip), %rdi     # 0x106059
leaq 0x1009ec(%rip), %rsi    # 0x107643
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x100990(%rip), %rdx    # 0x1075fd
leaq 0x10092b(%rip), %rcx    # 0x10759f
movl $0x1, %r8d
movl $0x3, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6c8c
jmp 0x6ca1
leaq 0xff3c6(%rip), %rdi     # 0x106059
leaq 0x1009e0(%rip), %rsi    # 0x10767a
movb $0x0, %al
callq 0x5ae0
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq 0x1006e1(%rip), %rdx    # 0x107391
xorl %eax, %eax
movl %eax, %ecx
movl $0x1, %r8d
xorl %r9d, %r9d
callq 0x50f90
cmpl $0x0, %eax
jne 0x6cc9
jmp 0x6cde
leaq 0xff389(%rip), %rdi     # 0x106059
leaq 0x1006bd(%rip), %rsi    # 0x107394
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rax
movl $0x7, (%rax)
movq -0x60(%rbp), %rax
movl $0x80000001, 0x4(%rax)  # imm = 0x80000001
movq -0x60(%rbp), %rax
movl $0x5, 0x8(%rax)
movq -0x60(%rbp), %rax
movl $0x80000001, 0xc(%rax)  # imm = 0x80000001
movq -0x60(%rbp), %rax
movl $0x0, 0x10(%rax)
movq -0x60(%rbp), %rax
movl $0x0, 0x14(%rax)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
shll %r8d
leaq 0x1086c0(%rip), %rdx    # 0x10f3fd
movl $0x1, %r9d
callq 0x518f0
cmpl $0x0, %eax
jne 0x6d4f
jmp 0x6d64
leaq 0xff303(%rip), %rdi     # 0x106059
leaq 0x1006a8(%rip), %rsi    # 0x107405
movb $0x0, %al
callq 0x5ae0
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x46180
cmpl $0x0, %eax
je 0x6d8c
movq -0x8(%rbp), %rsi
leaq 0x100481(%rip), %rdi    # 0x107206
movb $0x0, %al
callq 0x5ae0
movq -0x60(%rbp), %rdi
callq 0x45a0
movq -0x88(%rbp), %rdi
callq 0x45a0
movq -0x28(%rbp), %rdi
callq 0x45a0
movq -0x20(%rbp), %rdi
callq 0x44020
movq -0x18(%rbp), %rdi
callq 0x42dd0
movq -0x10(%rbp), %rdi
callq 0xf050
movl %eax, -0x8c(%rbp)
cmpl $0x0, %eax
je 0x6dfd
movq 0x124201(%rip), %rax    # 0x12afd8
movq (%rax), %rdi
movq -0x8(%rbp), %rdx
movl -0x8c(%rbp), %ecx
leaq 0x1008bd(%rip), %rsi    # 0x1076a8
movb $0x0, %al
callq 0x4700
movl -0x8c(%rbp), %edi
callq 0x45d0
addq $0xa0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)