// File: /workspace/github_c_makefile_star2_O3/akumrao[P]videoAnalyzer/decoder/set.c
// Function: x264_sps_read(bs_s*, x264_sps_t*)
int x264_sps_read(bs_t *s, x264_sps_t sps_array[32]) {LOG_CALL;
    x264_sps_t *sps;

    int i_profile_idc;
    int i_level_idc;

    int b_constraint_set0;
    int b_constraint_set1;
    int b_constraint_set2;

    int id;

    i_profile_idc = bs_read(s, 8, "i_profile_idc");
    b_constraint_set0 = bs_read1(s, "b_constraint_set0");
    b_constraint_set1 = bs_read1(s, "b_constraint_set1");
    b_constraint_set2 = bs_read1(s, "b_constraint_set2");

    bs_skip(s, 5); /* reserved */
    i_level_idc = bs_read(s, 8,"i_level_idc");


    id = bs_read_ue(s,"id");
    if (bs_eof(s) || id >= 32)
    {
        /* the sps is invalid, no need to corrupt sps_array[0] */
        return -1;
    }

    sps = &sps_array[id];
    sps->i_id = id;

    /* put pack parsed value */
    sps->i_profile_idc = i_profile_idc;
    sps->i_level_idc = i_level_idc;
    sps->b_constraint_set0 = b_constraint_set0;
    sps->b_constraint_set1 = b_constraint_set1;
    sps->b_constraint_set2 = b_constraint_set2;

    sps->i_log2_max_frame_num = bs_read_ue(s,"i_log2_max_frame_num") + 4;

    sps->i_poc_type = bs_read_ue(s,"i_poc_type");
    if (sps->i_poc_type == 0)
    {
        sps->i_log2_max_poc_lsb = bs_read_ue(s,"i_log2_max_poc_lsb") + 4;
    } else if (sps->i_poc_type == 1)
    {
        int i;
        sps->b_delta_pic_order_always_zero = bs_read1(s, "b_delta_pic_order_always_zero");
        sps->i_offset_for_non_ref_pic = bs_read_se(s,"i_offset_for_non_ref_pic");
        sps->i_offset_for_top_to_bottom_field = bs_read_se(s,"i_offset_for_top_to_bottom_field");
        sps->i_num_ref_frames_in_poc_cycle = bs_read_ue(s,"i_num_ref_frames_in_poc_cycle");
        if (sps->i_num_ref_frames_in_poc_cycle > 256)
        {
            /* FIXME what to do */
            sps->i_num_ref_frames_in_poc_cycle = 256;
        }
        for (i = 0; i < sps->i_num_ref_frames_in_poc_cycle; i++)
        {
            sps->i_offset_for_ref_frame[i] = bs_read_se(s,"i_offset_for_ref_frame");
        }
    } else if (sps->i_poc_type > 2)
    {
        goto error;
    }

    sps->i_num_ref_frames = bs_read_ue(s,"i_num_ref_frames");
    sps->b_gaps_in_frame_num_value_allowed = bs_read1(s, "b_gaps_in_frame_num_value_allowed");
    sps->i_mb_width = bs_read_ue(s,"i_mb_width") + 1;
    sps->i_mb_height = bs_read_ue(s,"i_mb_height") + 1;
    sps->b_frame_mbs_only = bs_read1(s, "b_frame_mbs_only");
    if (!sps->b_frame_mbs_only)
    {
        sps->b_mb_adaptive_frame_field = bs_read1(s, "b_mb_adaptive_frame_field");
    } else
    {
        sps->b_mb_adaptive_frame_field = 0;
    }
    sps->b_direct8x8_inference = bs_read1(s, "b_direct8x8_inference");

    sps->b_crop = bs_read1(s, "b_crop");
    if (sps->b_crop)
    {
        sps->crop.i_left = bs_read_ue(s,"crop.i_left");
        sps->crop.i_right = bs_read_ue(s,"crop.rigth");
        sps->crop.i_top = bs_read_ue(s,"crop.top");
        sps->crop.i_bottom = bs_read_ue(s,"crop.i_bottom");
    } else
    {
        sps->crop.i_left = 0;
        sps->crop.i_right = 0;
        sps->crop.i_top = 0;
        sps->crop.i_bottom = 0;
    }

    sps->b_vui = bs_read1(s, "b_vui");
    if (sps->b_vui)
    {
        /* FIXME */
    } else
    {

    }

    if (bs_eof(s))
    {
        /* no rbsp trailing */
        fprintf(stderr, "incomplete SPS\n");
        goto error;
    }

    fprintf(stderr, "x264_sps_read: sps:0x%x profile:%d/%d poc:%d ref:%d %xx%d crop:%d-%d-%d-%d\n",
            sps->i_id,
            sps->i_profile_idc, sps->i_level_idc,
            sps->i_poc_type,
            sps->i_num_ref_frames,
            sps->i_mb_width, sps->i_mb_height,
            sps->crop.i_left, sps->crop.i_right,
            sps->crop.i_top, sps->crop.i_bottom);

    return id;

error:
    /* invalidate this sps */
    sps->i_id = -1;
    return -1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rsi, -0x48(%rbp)
movq %rdi, %rbx
leaq 0x16cd1(%rip), %rdi     # 0x271b4
leaq 0x19f5a(%rip), %rsi     # 0x2a444
leaq 0x19f61(%rip), %rdx     # 0x2a452
xorl %r14d, %r14d
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
movl $0x8, %esi
leaq 0x19eb1(%rip), %r8      # 0x2a3c0
cmpq %rdx, %rax
jae 0x10540
movslq 0x18(%rbx), %rdi
movl %edi, %ecx
subl %esi, %ecx
movzbl (%rax), %r12d
jns 0x1055d
andl (%r8,%rdi,4), %r12d
negb %cl
shll %cl, %r12d
orl %r12d, %r14d
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %edi, %esi
jg 0x1050f
leaq 0x1947d(%rip), %rdi     # 0x299c4
leaq 0x19f12(%rip), %rcx     # 0x2a460
movl %r14d, %edx
xorl %eax, %eax
callq 0x4a56
movl %r14d, %r12d
jmp 0x10596
shrl %cl, %r12d
movl %esi, %edx
andl (%r8,%rdx,4), %r12d
orl %r14d, %r12d
movl %ecx, 0x18(%rbx)
cmpl %esi, %edi
jne 0x1057e
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x1942a(%rip), %rdi     # 0x299af
leaq 0x19ed4(%rip), %rcx     # 0x2a460
movl %r12d, %edx
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rax
xorl %r14d, %r14d
movl $0x0, %esi
cmpq 0x10(%rbx), %rax
jae 0x105ce
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %esi, %esi
btl %ecx, %edx
setb %sil
testl %ecx, %ecx
jne 0x105ce
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x19403(%rip), %rdi     # 0x299d8
leaq 0x19e92(%rip), %rdx     # 0x2a46e
movl %esi, -0x3c(%rbp)
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x10617
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x10617
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x193ba(%rip), %rdi     # 0x299d8
leaq 0x19e5b(%rip), %rdx     # 0x2a480
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
xorl %esi, %esi
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x10661
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %esi, %esi
btl %ecx, %edx
setb %sil
testl %ecx, %ecx
jne 0x10661
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x19370(%rip), %rdi     # 0x299d8
leaq 0x19e23(%rip), %rdx     # 0x2a492
xorl %r15d, %r15d
movl %esi, -0x38(%rbp)
xorl %eax, %eax
callq 0x4a56
movl 0x18(%rbx), %eax
leal -0x5(%rax), %ecx
cmpl $0x5, %eax
jg 0x106b3
movq 0x8(%rbx), %rdx
cmpl $-0x6, %ecx
movl $0xfffffff9, %esi       # imm = 0xFFFFFFF9
cmovgel %ecx, %esi
subl %eax, %esi
addl $0xc, %esi
movl %esi, %ecx
shrl $0x3, %ecx
andl $-0x8, %esi
addq %rcx, %rdx
incq %rdx
leal (%rax,%rsi), %ecx
addl $0x3, %ecx
movq %rdx, 0x8(%rbx)
movl %ecx, 0x18(%rbx)
leaq 0x19bae(%rip), %rdi     # 0x2a26b
movl $0x5, %esi
xorl %edx, %edx
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
movl $0x8, %esi
leaq 0x19ce1(%rip), %r8      # 0x2a3c0
cmpq %rdx, %rax
jae 0x10710
movslq 0x18(%rbx), %rdi
movl %edi, %ecx
subl %esi, %ecx
movzbl (%rax), %r13d
jns 0x1072d
andl (%r8,%rdi,4), %r13d
negb %cl
shll %cl, %r13d
orl %r13d, %r15d
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %edi, %esi
jg 0x106df
leaq 0x192ad(%rip), %rdi     # 0x299c4
leaq 0x19d86(%rip), %rcx     # 0x2a4a4
movl %r15d, %edx
xorl %eax, %eax
callq 0x4a56
movl %r15d, %r13d
jmp 0x10766
shrl %cl, %r13d
movl %esi, %edx
andl (%r8,%rdx,4), %r13d
orl %r15d, %r13d
movl %ecx, 0x18(%rbx)
cmpl %esi, %edi
jne 0x1074e
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x1925a(%rip), %rdi     # 0x299af
leaq 0x19d48(%rip), %rcx     # 0x2a4a4
movl %r13d, %edx
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
xorl %eax, %eax
leaq 0x19c49(%rip), %r11     # 0x2a3c0
cmpq %rsi, %rdx
jae 0x1079c
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rdx), %edi
jne 0x10797
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %edi
jb 0x107aa
cmpq %rsi, %rdx
jae 0x107aa
cmpl $0x1f, %eax
ja 0x107aa
incl %eax
jmp 0x10777
xorl %edi, %edi
testl %eax, %eax
je 0x1080c
movl %eax, %r8d
cmpq %rsi, %rdx
jae 0x1080c
movslq 0x18(%rbx), %r9
movl %r9d, %ecx
subl %r8d, %ecx
movzbl (%rdx), %r10d
jns 0x107e9
andl (%r11,%r9,4), %r10d
negb %cl
shll %cl, %r10d
orl %r10d, %edi
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r9d, %r8d
jg 0x107b3
jmp 0x1080c
shrl %cl, %r10d
movl %r8d, %esi
andl (%r11,%rsi,4), %r10d
orl %r10d, %edi
movl %ecx, 0x18(%rbx)
cmpl %r8d, %r9d
jne 0x1080c
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl %r14d, -0x40(%rbp)
movl $0xffffffff, %r14d      # imm = 0xFFFFFFFF
movl %eax, %ecx
shll %cl, %r14d
notl %r14d
addl %edi, %r14d
leaq 0x1916e(%rip), %rdi     # 0x29996
leaq 0x190bb(%rip), %rdx     # 0x298ea
xorl %r15d, %r15d
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x16971(%rip), %rdi     # 0x271b4
leaq 0x18f5e(%rip), %rsi     # 0x297a8
leaq 0x19157(%rip), %rdx     # 0x299a8
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %r11
movq 0x10(%rbx), %rdx
cmpq %rdx, %r11
setae %cl
cmpl $0x20, %r14d
setge %sil
orb %cl, %sil
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
jne 0x10aa4
movslq %r14d, %rcx
imulq $0x470, %rcx, %rcx      # imm = 0x470
movq -0x48(%rbp), %rdi
leaq (%rdi,%rcx), %rsi
movq %rsi, -0x30(%rbp)
movl %r14d, -0x34(%rbp)
movl %r14d, (%rdi,%rcx)
movl %r12d, 0x4(%rdi,%rcx)
movl %r13d, 0x8(%rdi,%rcx)
movl -0x3c(%rbp), %esi
movl %esi, 0xc(%rdi,%rcx)
movl -0x40(%rbp), %esi
movl %esi, 0x10(%rdi,%rcx)
movl -0x38(%rbp), %esi
movl %esi, 0x14(%rdi,%rcx)
movl 0x18(%rbx), %esi
leaq 0x19afd(%rip), %r10     # 0x2a3c0
movl %esi, %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%r11), %edi
je 0x108d4
movl %ecx, %esi
jmp 0x108e7
incq %r11
movq %r11, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0x8, %esi
btl %ecx, %edi
jb 0x108fc
cmpq %rdx, %r11
jae 0x108fc
cmpl $0x1f, %r15d
ja 0x108fc
incl %r15d
jmp 0x108c3
xorl %r14d, %r14d
movl $0x0, %r12d
testl %r15d, %r15d
je 0x10968
xorl %r12d, %r12d
movl %r15d, %edi
cmpq %rdx, %r11
jae 0x10968
movl %esi, %ecx
subl %edi, %ecx
movzbl (%r11), %r8d
jns 0x10947
movslq %esi, %r9
andl (%r10,%r9,4), %r8d
negb %cl
shll %cl, %r8d
orl %r8d, %r12d
incq %r11
movq %r11, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %esi, %edi
movl $0x8, %esi
jg 0x10910
jmp 0x10968
shrl %cl, %r8d
movl %edi, %edx
andl (%r10,%rdx,4), %r8d
orl %r8d, %r12d
movl %ecx, 0x18(%rbx)
cmpl %edi, %esi
jne 0x10968
incq %r11
movq %r11, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r13d      # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %r13d
notl %r13d
leal (%r12,%r13), %esi
leaq 0x19014(%rip), %rdi     # 0x29996
leaq 0x18f27(%rip), %rdx     # 0x298b0
xorl %eax, %eax
callq 0x4a56
leaq 0x19a29(%rip), %r10     # 0x2a3c0
leal (%r12,%r13), %eax
addl $0x4, %eax
movq -0x30(%rbp), %r12
movl %eax, 0x18(%r12)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x109d4
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x109cf
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x109e4
cmpq %rdx, %rax
jae 0x109e4
cmpl $0x1f, %r14d
ja 0x109e4
incl %r14d
jmp 0x109af
xorl %esi, %esi
testl %r14d, %r14d
je 0x10a45
movl %r14d, %edi
cmpq %rdx, %rax
jae 0x10a45
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x10a23
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x109ee
jmp 0x10a45
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x10a45
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %r15d
notl %r15d
addl %esi, %r15d
leaq 0x18f38(%rip), %rdi     # 0x29996
leaq 0x19a4b(%rip), %rdx     # 0x2a4b0
xorl %r14d, %r14d
movl %r15d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r15d, 0x1c(%r12)
cmpl $0x1, %r15d
je 0x10b47
testl %r15d, %r15d
je 0x10ab3
cmpl $0x2, %r15d
leaq 0x1992f(%rip), %r11     # 0x2a3c0
jle 0x10fdb
movl $0xffffffff, (%r12)     # imm = 0xFFFFFFFF
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
xorl %eax, %eax
leaq 0x198fc(%rip), %r10     # 0x2a3c0
cmpq %rsi, %rdx
jae 0x10ae9
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rdx), %edi
jne 0x10ae4
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %edi
jb 0x10af7
cmpq %rsi, %rdx
jae 0x10af7
cmpl $0x1f, %eax
ja 0x10af7
incl %eax
jmp 0x10ac4
xorl %r14d, %r14d
testl %eax, %eax
je 0x10c54
xorl %r14d, %r14d
movl %eax, %edi
cmpq %rsi, %rdx
jae 0x10c54
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rdx), %r9d
jns 0x10c32
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %r14d
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x10b07
jmp 0x10c54
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x10b78
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x10b78
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x18e59(%rip), %rdi     # 0x299d8
leaq 0x19935(%rip), %rdx     # 0x2a4bb
xorl %r15d, %r15d
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x24(%r12)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
leaq 0x19819(%rip), %r10     # 0x2a3c0
cmpq %rdx, %rax
jae 0x10bcc
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x10bc7
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x10bdc
cmpq %rdx, %rax
jae 0x10bdc
cmpl $0x1f, %r15d
ja 0x10bdc
incl %r15d
jmp 0x10ba7
xorl %r14d, %r14d
movl $0x0, %esi
testl %r15d, %r15d
je 0x10cb5
xorl %esi, %esi
movl %r15d, %edi
cmpq %rdx, %rax
jae 0x10cb5
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x10c93
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x10bf2
jmp 0x10cb5
shrl %cl, %r9d
movl %edi, %esi
andl (%r10,%rsi,4), %r9d
orl %r9d, %r14d
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x10c54
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movl %eax, %ecx
shll %cl, %r15d
notl %r15d
leal (%r14,%r15), %esi
leaq 0x18d29(%rip), %rdi     # 0x29996
leaq 0x18c79(%rip), %rdx     # 0x298ed
xorl %eax, %eax
callq 0x4a56
leaq 0x1973e(%rip), %r11     # 0x2a3c0
leal (%r14,%r15), %eax
addl $0x4, %eax
movl %eax, 0x20(%r12)
jmp 0x10fdb
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x10cb5
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %eax
movl %eax, %ecx
notl %ecx
addl %esi, %ecx
subl %eax, %esi
sarl %esi
movl %ecx, %r15d
sarl %r15d
negl %r15d
testb $0x1, %cl
cmovnel %esi, %r15d
leaq 0x18d08(%rip), %rdi     # 0x299e8
leaq 0x197f2(%rip), %rdx     # 0x2a4d9
movl %r15d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x196c8(%rip), %r10     # 0x2a3c0
movl %r15d, 0x28(%r12)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x10d2a
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x10d25
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x10d3a
cmpq %rdx, %rax
jae 0x10d3a
cmpl $0x1f, %r14d
ja 0x10d3a
incl %r14d
jmp 0x10d05
xorl %r15d, %r15d
movl $0x0, %esi
testl %r14d, %r14d
je 0x10da3
xorl %esi, %esi
movl %r14d, %edi
cmpq %rdx, %rax
jae 0x10da3
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x10d81
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x10d4c
jmp 0x10da3
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x10da3
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %eax
movl %eax, %ecx
notl %ecx
addl %esi, %ecx
subl %eax, %esi
sarl %esi
movl %ecx, %r14d
sarl %r14d
negl %r14d
testb $0x1, %cl
cmovnel %esi, %r14d
leaq 0x18c1a(%rip), %rdi     # 0x299e8
leaq 0x1971d(%rip), %rdx     # 0x2a4f2
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x195da(%rip), %r10     # 0x2a3c0
movl %r14d, 0x2c(%r12)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x10e18
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x10e13
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x10e28
cmpq %rdx, %rax
jae 0x10e28
cmpl $0x1f, %r15d
ja 0x10e28
incl %r15d
jmp 0x10df3
xorl %esi, %esi
testl %r15d, %r15d
je 0x10e8b
xorl %esi, %esi
movl %r15d, %edi
cmpq %rdx, %rax
jae 0x10e8b
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x10e69
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x10e34
jmp 0x10e8b
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x10e8b
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r14d      # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %r14d
notl %r14d
addl %esi, %r14d
leaq 0x18af2(%rip), %rdi     # 0x29996
leaq 0x19668(%rip), %rdx     # 0x2a513
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x19504(%rip), %r11     # 0x2a3c0
movl $0x100, %eax            # imm = 0x100
cmpl %eax, %r14d
cmovll %r14d, %eax
movl %eax, 0x30(%r12)
testl %r14d, %r14d
jle 0x10fdb
leaq 0x18b0b(%rip), %r14     # 0x299e8
leaq 0x1964d(%rip), %r15     # 0x2a531
xorl %r13d, %r13d
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
xorl %eax, %eax
cmpq %rsi, %rdx
jae 0x10f16
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rdx), %edi
jne 0x10f11
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %edi
jb 0x10f24
cmpq %rsi, %rdx
jae 0x10f24
cmpl $0x1f, %eax
ja 0x10f24
incl %eax
jmp 0x10ef1
xorl %edi, %edi
testl %eax, %eax
je 0x10f86
movl %eax, %r8d
cmpq %rsi, %rdx
jae 0x10f86
movslq 0x18(%rbx), %r9
movl %r9d, %ecx
subl %r8d, %ecx
movzbl (%rdx), %r10d
jns 0x10f63
andl (%r11,%r9,4), %r10d
negb %cl
shll %cl, %r10d
orl %r10d, %edi
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r9d, %r8d
jg 0x10f2d
jmp 0x10f86
shrl %cl, %r10d
movl %r8d, %esi
andl (%r11,%rsi,4), %r10d
orl %r10d, %edi
movl %ecx, 0x18(%rbx)
cmpl %r8d, %r9d
jne 0x10f86
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl %eax, %ecx
shll %cl, %edx
movl %edx, %eax
notl %eax
addl %edi, %eax
subl %edx, %edi
sarl %edi
movl %eax, %r12d
sarl %r12d
negl %r12d
testb $0x1, %al
cmovnel %edi, %r12d
movq %r14, %rdi
movl %r12d, %esi
movq %r15, %rdx
xorl %eax, %eax
callq 0x4a56
leaq 0x19401(%rip), %r11     # 0x2a3c0
movq -0x30(%rbp), %rax
movl %r12d, 0x34(%rax,%r13,4)
movq %rax, %r12
incq %r13
movslq 0x30(%rax), %rax
cmpq %rax, %r13
jl 0x10ee7
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rsi
xorl %eax, %eax
cmpq %rsi, %rdx
jae 0x1100a
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rdx), %edi
jne 0x11005
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %edi
jb 0x11018
cmpq %rsi, %rdx
jae 0x11018
cmpl $0x1f, %eax
ja 0x11018
incl %eax
jmp 0x10fe5
xorl %r14d, %r14d
movl $0x0, %edi
testl %eax, %eax
je 0x11082
xorl %edi, %edi
movl %eax, %r8d
cmpq %rsi, %rdx
jae 0x11082
movslq 0x18(%rbx), %r9
movl %r9d, %ecx
subl %r8d, %ecx
movzbl (%rdx), %r10d
jns 0x1105f
andl (%r11,%r9,4), %r10d
negb %cl
shll %cl, %r10d
orl %r10d, %edi
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r9d, %r8d
jg 0x11029
jmp 0x11082
shrl %cl, %r10d
movl %r8d, %esi
andl (%r11,%rsi,4), %r10d
orl %r10d, %edi
movl %ecx, 0x18(%rbx)
cmpl %r8d, %r9d
jne 0x11082
incq %rdx
movq %rdx, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movl %eax, %ecx
shll %cl, %r15d
notl %r15d
addl %edi, %r15d
leaq 0x188fc(%rip), %rdi     # 0x29996
leaq 0x194a7(%rip), %rdx     # 0x2a548
movl %r15d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r15d, 0x434(%r12)
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x110e4
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x110e4
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x188ed(%rip), %rdi     # 0x299d8
leaq 0x19467(%rip), %rdx     # 0x2a559
xorl %r15d, %r15d
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x438(%r12)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
leaq 0x192aa(%rip), %r9      # 0x2a3c0
cmpq %rdx, %rax
jae 0x1113b
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x11136
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x1114b
cmpq %rdx, %rax
jae 0x1114b
cmpl $0x1f, %r15d
ja 0x1114b
incl %r15d
jmp 0x11116
xorl %r14d, %r14d
movl $0x0, %r12d
testl %r15d, %r15d
je 0x111b3
xorl %r12d, %r12d
movl %r15d, %esi
cmpq %rdx, %rax
jae 0x111b3
movslq 0x18(%rbx), %rdi
movl %edi, %ecx
subl %esi, %ecx
movzbl (%rax), %r8d
jns 0x11192
andl (%r9,%rdi,4), %r8d
negb %cl
shll %cl, %r8d
orl %r8d, %r12d
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %edi, %esi
jg 0x1115f
jmp 0x111b3
shrl %cl, %r8d
movl %esi, %edx
andl (%r9,%rdx,4), %r8d
orl %r8d, %r12d
movl %ecx, 0x18(%rbx)
cmpl %esi, %edi
jne 0x111b3
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r13d      # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %r13d
movl %r13d, %esi
notl %esi
addl %r12d, %esi
leaq 0x187c8(%rip), %rdi     # 0x29996
leaq 0x193a6(%rip), %rdx     # 0x2a57b
xorl %eax, %eax
callq 0x4a56
leaq 0x191dd(%rip), %r9      # 0x2a3c0
subl %r13d, %r12d
movq -0x30(%rbp), %rax
movl %r12d, 0x43c(%rax)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x1121e
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x11219
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x1122e
cmpq %rdx, %rax
jae 0x1122e
cmpl $0x1f, %r14d
ja 0x1122e
incl %r14d
jmp 0x111f9
xorl %r15d, %r15d
testl %r14d, %r14d
je 0x11290
xorl %r15d, %r15d
movl %r14d, %esi
cmpq %rdx, %rax
jae 0x11290
movslq 0x18(%rbx), %rdi
movl %edi, %ecx
subl %esi, %ecx
movzbl (%rax), %r8d
jns 0x1126f
andl (%r9,%rdi,4), %r8d
negb %cl
shll %cl, %r8d
orl %r8d, %r15d
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %edi, %esi
jg 0x1123c
jmp 0x11290
shrl %cl, %r8d
movl %esi, %edx
andl (%r9,%rdx,4), %r8d
orl %r8d, %r15d
movl %ecx, 0x18(%rbx)
cmpl %esi, %edi
jne 0x11290
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %r12d
movl %r12d, %esi
notl %esi
addl %r15d, %esi
leaq 0x186eb(%rip), %rdi     # 0x29996
leaq 0x192d4(%rip), %rdx     # 0x2a586
xorl %eax, %eax
callq 0x4a56
subl %r12d, %r15d
movq -0x30(%rbp), %r12
movl %r15d, 0x440(%r12)
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x11323
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r15d, %r15d
btl %ecx, %edx
setb %r15b
testl %ecx, %ecx
jne 0x112f9
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x186d8(%rip), %rdi     # 0x299d8
leaq 0x1928b(%rip), %rdx     # 0x2a592
xorl %r14d, %r14d
movl %r15d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r15d, 0x444(%r12)
testl %r15d, %r15d
je 0x11346
jmp 0x11392
leaq 0x186ae(%rip), %rdi     # 0x299d8
leaq 0x19261(%rip), %rdx     # 0x2a592
xorl %esi, %esi
xorl %eax, %eax
callq 0x4a56
movl $0x0, 0x444(%r12)
movq 0x8(%rbx), %rax
xorl %r14d, %r14d
cmpq 0x10(%rbx), %rax
jae 0x1137a
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x1137a
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x18657(%rip), %rdi     # 0x299d8
leaq 0x1921b(%rip), %rdx     # 0x2a5a3
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x448(%r12)
movq 0x8(%rbx), %rax
xorl %r14d, %r14d
cmpq 0x10(%rbx), %rax
jae 0x113ce
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x113ce
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x18603(%rip), %rdi     # 0x299d8
leaq 0x191e1(%rip), %rdx     # 0x2a5bd
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x44c(%r12)
movq 0x8(%rbx), %rax
cmpq 0x10(%rbx), %rax
jae 0x1148f
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x11423
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x185ae(%rip), %rdi     # 0x299d8
leaq 0x191a2(%rip), %rdx     # 0x2a5d3
xorl %r15d, %r15d
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x450(%r12)
testl %r14d, %r14d
je 0x114b2
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
leaq 0x18f66(%rip), %r10     # 0x2a3c0
cmpq %rdx, %rax
jae 0x1147f
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x1147a
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x114c3
cmpq %rdx, %rax
jae 0x114c3
cmpl $0x1f, %r15d
ja 0x114c3
incl %r15d
jmp 0x1145a
leaq 0x18542(%rip), %rdi     # 0x299d8
leaq 0x19136(%rip), %rdx     # 0x2a5d3
xorl %esi, %esi
xorl %eax, %eax
callq 0x4a56
movl $0x0, 0x450(%r12)
xorps %xmm0, %xmm0
movups %xmm0, 0x454(%r12)
jmp 0x11801
xorl %r14d, %r14d
movl $0x0, %esi
testl %r15d, %r15d
je 0x1152c
xorl %esi, %esi
movl %r15d, %edi
cmpq %rdx, %rax
jae 0x1152c
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x1150a
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x114d5
jmp 0x1152c
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x1152c
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %r12d
notl %r12d
addl %esi, %r12d
leaq 0x18451(%rip), %rdi     # 0x29996
leaq 0x1908e(%rip), %rdx     # 0x2a5da
movl %r12d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x18e63(%rip), %r10     # 0x2a3c0
movq -0x30(%rbp), %rax
movl %r12d, 0x454(%rax)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x11595
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x11590
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x115a5
cmpq %rdx, %rax
jae 0x115a5
cmpl $0x1f, %r14d
ja 0x115a5
incl %r14d
jmp 0x11570
xorl %r15d, %r15d
movl $0x0, %esi
testl %r14d, %r14d
je 0x1160e
xorl %esi, %esi
movl %r14d, %edi
cmpq %rdx, %rax
jae 0x1160e
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x115ec
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x115b7
jmp 0x1160e
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x1160e
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %r12d
notl %r12d
addl %esi, %r12d
leaq 0x1836f(%rip), %rdi     # 0x29996
leaq 0x18fb8(%rip), %rdx     # 0x2a5e6
movl %r12d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x18d81(%rip), %r10     # 0x2a3c0
movq -0x30(%rbp), %rax
movl %r12d, 0x458(%rax)
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x11677
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x11672
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x11687
cmpq %rdx, %rax
jae 0x11687
cmpl $0x1f, %r15d
ja 0x11687
incl %r15d
jmp 0x11652
xorl %r14d, %r14d
movl $0x0, %esi
testl %r15d, %r15d
je 0x116f0
xorl %esi, %esi
movl %r15d, %edi
cmpq %rdx, %rax
jae 0x116f0
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x116ce
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x11699
jmp 0x116f0
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x116f0
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl %r15d, %ecx
shll %cl, %r12d
notl %r12d
addl %esi, %r12d
leaq 0x1828d(%rip), %rdi     # 0x29996
leaq 0x18ee1(%rip), %rdx     # 0x2a5f1
movl %r12d, %esi
xorl %eax, %eax
callq 0x4a56
leaq 0x18c9f(%rip), %r10     # 0x2a3c0
movq -0x30(%rbp), %rax
movl %r12d, 0x45c(%rax)
movq %rax, %r12
movq 0x8(%rbx), %rax
movq 0x10(%rbx), %rdx
cmpq %rdx, %rax
jae 0x1175c
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %esi
jne 0x11757
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
btl %ecx, %esi
jb 0x1176c
cmpq %rdx, %rax
jae 0x1176c
cmpl $0x1f, %r14d
ja 0x1176c
incl %r14d
jmp 0x11737
xorl %esi, %esi
testl %r14d, %r14d
je 0x117cf
xorl %esi, %esi
movl %r14d, %edi
cmpq %rdx, %rax
jae 0x117cf
movslq 0x18(%rbx), %r8
movl %r8d, %ecx
subl %edi, %ecx
movzbl (%rax), %r9d
jns 0x117ad
andl (%r10,%r8,4), %r9d
negb %cl
shll %cl, %r9d
orl %r9d, %esi
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
subl %r8d, %edi
jg 0x11778
jmp 0x117cf
shrl %cl, %r9d
movl %edi, %edx
andl (%r10,%rdx,4), %r9d
orl %r9d, %esi
movl %ecx, 0x18(%rbx)
cmpl %edi, %r8d
jne 0x117cf
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movl %r14d, %ecx
shll %cl, %r15d
notl %r15d
addl %esi, %r15d
leaq 0x181ae(%rip), %rdi     # 0x29996
leaq 0x18e0b(%rip), %rdx     # 0x2a5fa
movl %r15d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r15d, 0x460(%r12)
movq 0x8(%rbx), %rax
xorl %r14d, %r14d
cmpq 0x10(%rbx), %rax
jae 0x11835
movl 0x18(%rbx), %ecx
decl %ecx
movl %ecx, 0x18(%rbx)
movzbl (%rax), %edx
xorl %r14d, %r14d
btl %ecx, %edx
setb %r14b
testl %ecx, %ecx
jne 0x11835
incq %rax
movq %rax, 0x8(%rbx)
movl $0x8, 0x18(%rbx)
leaq 0x1819c(%rip), %rdi     # 0x299d8
leaq 0x18dc5(%rip), %rdx     # 0x2a608
movl %r14d, %esi
xorl %eax, %eax
callq 0x4a56
movl %r14d, 0x464(%r12)
leaq 0x15958(%rip), %rdi     # 0x271b4
leaq 0x17f45(%rip), %rsi     # 0x297a8
leaq 0x1813e(%rip), %rdx     # 0x299a8
xorl %eax, %eax
callq 0x4a56
movq 0x8(%rbx), %rax
movq 0x21754(%rip), %rcx     # 0x32fd0
movq (%rcx), %rdi
cmpq 0x10(%rbx), %rax
jae 0x118fd
movl (%r12), %edx
movl 0x4(%r12), %ecx
movl 0x8(%r12), %r8d
movl 0x1c(%r12), %r9d
movl 0x434(%r12), %r10d
movl 0x43c(%r12), %r11d
movl 0x440(%r12), %ebx
movl 0x454(%r12), %r14d
movl 0x458(%r12), %r15d
movq %r12, %rax
movl 0x45c(%r12), %r12d
movl 0x460(%rax), %r13d
subq $0x8, %rsp
leaq 0x18d41(%rip), %rsi     # 0x2a61e
xorl %eax, %eax
pushq %r13
pushq %r12
pushq %r15
pushq %r14
pushq %rbx
pushq %r11
pushq %r10
callq 0x2170
addq $0x40, %rsp
movl -0x34(%rbp), %eax
jmp 0x10aa4
callq 0x29cc
jmp 0x10a97