// File: AutomataLab[P]JSONSki/src/QueryProcessor.cpp
// Function: QueryProcessor::goToPrimAttr(long&, bitmap&)
__attribute__((always_inline)) int QueryProcessor::goToPrimAttr(long& pos, bitmap& bm) {
    long word_id = pos / 64;
    bool first_interval = false;
    bool new_word = false;
    while (true) {
        while (word_id < mNumWords) {
            if (word_id > top_word) {
                // build basic bitmaps for the next word
                resetBitmap(bm);
                start_id = word_id * 2;
                build_bitmap_basic();
            }
            get_bitmap_colon(bm);
            IntervalInfo interval;
            if (first_interval == false) {
                if (new_word == true) {
                    interval = get_interval_new_word(bm.colonbit);
                    new_word = false;
                } else {
                    interval = get_interval(pos, bm.colonbit);
                }
                first_interval = true;
            } else {
                interval = next_interval(bm.colonbit);
            }
            get_bitmap_rbrace(bm);
            unsigned long bitmap_rbrace = bm.rbracebit & interval.intervalbit;
            if (bitmap_rbrace > 0) {
                // object ends
                pos = get_position(bitmap_rbrace, 1);
                return OBJECT_END;
            }
            if (interval.is_complete) {
                pos = interval_end(interval.intervalbit) + 1;
                int type = getAttributeType(pos);
                if (type == OBJECT) {
                    goOverObj(pos, bm);
                    word_id = pos / 64;  // update word id 
                    first_interval = false;
                }
                else if (type == ARRAY) {
                    goOverAry(pos, bm);
                    word_id = pos / 64; // update word id 
                    first_interval = false;
                }
                else {
                    return SUCCESS;
                }
                break;
            }
            ++word_id;
            first_interval = false;
            new_word = true;
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
andq $-0x20, %rsp
subq $0x1420, %rsp           # imm = 0x1420
movq %rdi, 0x148(%rsp)
movq %rsi, 0x140(%rsp)
movq %rdx, 0x138(%rsp)
movq 0x148(%rsp), %rax
movq %rax, 0xa0(%rsp)
movq 0x140(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movq %rax, 0x130(%rsp)
movb $0x0, 0x12f(%rsp)
movb $0x0, 0x12e(%rsp)
jmp 0x2b6d6
movq 0xa0(%rsp), %rcx
movq 0x130(%rsp), %rax
cmpq 0x2e0(%rcx), %rax
jge 0x2e89b
movq 0xa0(%rsp), %rcx
movq 0x130(%rsp), %rax
cmpq 0x270(%rcx), %rax
jle 0x2bd64
movq 0xa0(%rsp), %rax
movq 0x138(%rsp), %rcx
movq %rax, 0xd40(%rsp)
movq %rcx, 0xd38(%rsp)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x30(%rcx)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x31(%rcx)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x32(%rcx)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x33(%rcx)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x34(%rcx)
movq 0xd38(%rsp), %rcx
movb $0x0, 0x35(%rcx)
movq 0x130(%rsp), %rcx
addq %rcx, %rcx
movq %rcx, 0x88(%rax)
movq %rax, 0x1e8(%rsp)
movq 0x1e8(%rsp), %rax
movq %rax, 0x90(%rsp)
movq 0x88(%rax), %rcx
movq %rcx, %rdx
shrq $0x3f, %rdx
addq %rdx, %rcx
sarq %rcx
movq %rcx, 0x270(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0x1c0(%rsp)
movq 0x2c8(%rax), %rcx
movq 0x1c0(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x1f8(%rsp)
movq 0x1f8(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xa0(%rax)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0x360(%rsp)
vmovaps %ymm0, 0x340(%rsp)
vmovaps 0x360(%rsp), %ymm0
vmovaps 0x340(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x260(%rsp)
vmovaps 0x260(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1e0(%rsp)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0x320(%rsp)
vmovaps %ymm0, 0x300(%rsp)
vmovaps 0x320(%rsp), %ymm0
vmovaps 0x300(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x240(%rsp)
vmovaps 0x240(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1d8(%rsp)
movq 0x88(%rax), %rcx
incq %rcx
movq %rcx, 0x88(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0x1c0(%rsp)
movq 0x2c8(%rax), %rcx
movq 0x1c0(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x1f0(%rsp)
movq 0x1f0(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xc0(%rax)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0x2e0(%rsp)
vmovaps %ymm0, 0x2c0(%rsp)
vmovaps 0x2e0(%rsp), %ymm0
vmovaps 0x2c0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x220(%rsp)
vmovaps 0x220(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1d0(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0x2a0(%rsp)
vmovaps %ymm0, 0x280(%rsp)
vmovaps 0x2a0(%rsp), %ymm0
vmovaps 0x280(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x200(%rsp)
vmovaps 0x200(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1c8(%rsp)
movq 0x1d0(%rsp), %rcx
shlq $0x20, %rcx
movq 0x1e0(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x1d0(%rsp)
movq 0x1c8(%rsp), %rcx
shlq $0x20, %rcx
movq 0x1d8(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x1c8(%rsp)
movq 0x1c8(%rsp), %rcx
movq %rcx, 0x1b8(%rsp)
movq 0x1b8(%rsp), %rcx
movq %rcx, %rdx
addq %rdx, %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x1b0(%rsp)
movq 0x240(%rax), %rdx
movq 0x250(%rax), %rcx
xorq %rdx, %rcx
movq %rcx, 0x1a8(%rsp)
movq 0x1b0(%rsp), %rcx
movq 0x1a8(%rsp), %rdx
andq %rdx, %rcx
movq %rcx, 0x1a0(%rsp)
movq 0x1b0(%rsp), %rcx
movq 0x1a8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x198(%rsp)
movq 0x1b8(%rsp), %rcx
movq 0x1a0(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x190(%rsp)
movq 0x1b8(%rsp), %rcx
movq 0x198(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x188(%rsp)
setb 0x187(%rsp)
movq 0x240(%rax), %rdx
movq 0x188(%rsp), %rcx
orq %rdx, %rcx
movq %rcx, 0x188(%rsp)
movzbl 0x187(%rsp), %ecx
andl $0x1, %ecx
movq %rcx, 0x240(%rax)
movq 0x190(%rsp), %rcx
movq 0x1b8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x178(%rsp)
movq 0x188(%rsp), %rcx
movq 0x1b8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x170(%rsp)
movq 0x178(%rsp), %rcx
movq 0x258(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0x168(%rsp)
movq 0x170(%rsp), %rcx
movq 0x250(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0x160(%rsp)
movq 0x168(%rsp), %rcx
movq 0x160(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x158(%rsp)
movq 0x1d0(%rsp), %rcx
movq 0x158(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe0(%rax)
movq 0xe0(%rax), %rcx
movq $0x0, 0x3c0(%rsp)
movq %rcx, 0x3b8(%rsp)
vmovq 0x3c0(%rsp), %xmm1
vmovq 0x3b8(%rsp), %xmm0
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovdqa %xmm0, 0x3a0(%rsp)
vmovdqa 0x3a0(%rsp), %xmm0
movb $-0x1, 0x3cf(%rsp)
movb 0x3cf(%rsp), %cl
movb %cl, 0x9f(%rsp)
movb %cl, 0x140f(%rsp)
movb %cl, 0x140e(%rsp)
movb %cl, 0x140d(%rsp)
movb %cl, 0x140c(%rsp)
movb %cl, 0x140b(%rsp)
movb %cl, 0x140a(%rsp)
movb %cl, 0x1409(%rsp)
movb %cl, 0x1408(%rsp)
movb %cl, 0x1407(%rsp)
movb %cl, 0x1406(%rsp)
movb %cl, 0x1405(%rsp)
movb %cl, 0x1404(%rsp)
movb %cl, 0x1403(%rsp)
movb %cl, 0x1402(%rsp)
movb %cl, 0x1401(%rsp)
movb %cl, 0x1400(%rsp)
movzbl 0x1400(%rsp), %ecx
vmovd %ecx, %xmm1
movzbl 0x1401(%rsp), %ecx
vpinsrb $0x1, %ecx, %xmm1, %xmm1
movzbl 0x1402(%rsp), %ecx
vpinsrb $0x2, %ecx, %xmm1, %xmm1
movzbl 0x1403(%rsp), %ecx
vpinsrb $0x3, %ecx, %xmm1, %xmm1
movzbl 0x1404(%rsp), %ecx
vpinsrb $0x4, %ecx, %xmm1, %xmm1
movzbl 0x1405(%rsp), %ecx
vpinsrb $0x5, %ecx, %xmm1, %xmm1
movzbl 0x1406(%rsp), %ecx
vpinsrb $0x6, %ecx, %xmm1, %xmm1
movzbl 0x1407(%rsp), %ecx
vpinsrb $0x7, %ecx, %xmm1, %xmm1
movzbl 0x1408(%rsp), %ecx
vpinsrb $0x8, %ecx, %xmm1, %xmm1
movzbl 0x1409(%rsp), %ecx
vpinsrb $0x9, %ecx, %xmm1, %xmm1
movzbl 0x140a(%rsp), %ecx
vpinsrb $0xa, %ecx, %xmm1, %xmm1
movzbl 0x140b(%rsp), %ecx
vpinsrb $0xb, %ecx, %xmm1, %xmm1
movzbl 0x140c(%rsp), %ecx
vpinsrb $0xc, %ecx, %xmm1, %xmm1
movzbl 0x140d(%rsp), %ecx
vpinsrb $0xd, %ecx, %xmm1, %xmm1
movzbl 0x140e(%rsp), %ecx
vpinsrb $0xe, %ecx, %xmm1, %xmm1
movzbl 0x140f(%rsp), %ecx
vpinsrb $0xf, %ecx, %xmm1, %xmm1
vmovdqa %xmm1, 0x13f0(%rsp)
vmovdqa 0x13f0(%rsp), %xmm1
vpclmulqdq $0x0, %xmm1, %xmm0, %xmm0
vmovdqa %xmm0, 0x390(%rsp)
movq 0x390(%rsp), %rcx
movq %rcx, (%rax)
movq 0x248(%rax), %rcx
xorq (%rax), %rcx
movq %rcx, (%rax)
movq (%rax), %rcx
sarq $0x3f, %rcx
movq %rcx, 0x248(%rax)
movq 0xa0(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rcx, 0x3d8(%rsp)
movq %rax, 0x3d0(%rsp)
movq 0x3d8(%rsp), %rax
movq %rax, 0x88(%rsp)
movq 0x3d0(%rsp), %rax
movb 0x30(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2bece
movq 0x88(%rsp), %rcx
movq 0x3d0(%rsp), %rax
movq %rcx, 0x3f8(%rsp)
movq %rax, 0x3f0(%rsp)
movq 0x3f8(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x160(%rax), %ymm0
vmovaps %ymm1, 0x4a0(%rsp)
vmovaps %ymm0, 0x480(%rsp)
vmovaps 0x4a0(%rsp), %ymm0
vmovaps 0x480(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x420(%rsp)
vmovaps 0x420(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x3e8(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x160(%rax), %ymm0
vmovaps %ymm1, 0x460(%rsp)
vmovaps %ymm0, 0x440(%rsp)
vmovaps 0x460(%rsp), %ymm0
vmovaps 0x440(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0x400(%rsp)
vmovdqa 0x400(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0x3e0(%rsp)
movq 0x3e0(%rsp), %rdx
shlq $0x20, %rdx
orq 0x3e8(%rsp), %rdx
movq 0x3f0(%rsp), %rcx
movq %rdx, (%rcx)
movq 0x3f0(%rsp), %rcx
movq (%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x3f0(%rsp), %rax
movq %rcx, (%rax)
movq 0x3d0(%rsp), %rax
movb $0x1, 0x30(%rax)
leaq 0x118(%rsp), %rdi
vzeroupper
callq 0x62400
movb 0x12f(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2c24f
movb 0x12e(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x1, %eax
jne 0x2c05d
movq 0xa0(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rcx, 0x660(%rsp)
movq %rax, 0x658(%rsp)
leaq 0x668(%rsp), %rdi
callq 0x62400
movq $0x1, 0x650(%rsp)
movq 0x658(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2bfac
movq 0x658(%rsp), %rax
movq (%rax), %rax
movq 0x658(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x648(%rsp)
movq 0x648(%rsp), %rax
subq 0x650(%rsp), %rax
orq 0x648(%rsp), %rax
movq %rax, 0x640(%rsp)
movq 0x640(%rsp), %rax
movq %rax, 0x668(%rsp)
movb $0x1, 0x670(%rsp)
jmp 0x2bff6
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x638(%rsp)
movq 0x638(%rsp), %rax
subq 0x650(%rsp), %rax
orq 0x638(%rsp), %rax
movq %rax, 0x630(%rsp)
movq 0x630(%rsp), %rax
movq %rax, 0x668(%rsp)
movb $0x0, 0x670(%rsp)
movq 0x668(%rsp), %rax
movb 0x670(%rsp), %cl
movb %cl, 0x100(%rsp)
movq %rax, 0xf8(%rsp)
movq 0xf8(%rsp), %rax
movq %rax, 0x108(%rsp)
movb 0x100(%rsp), %al
movb %al, 0x110(%rsp)
movq 0x108(%rsp), %rax
movq %rax, 0x118(%rsp)
movb 0x110(%rsp), %al
movb %al, 0x120(%rsp)
movb $0x0, 0x12e(%rsp)
jmp 0x2c242
movq 0xa0(%rsp), %rdx
movq 0x140(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rdx, 0x618(%rsp)
movq %rcx, 0x610(%rsp)
movq %rax, 0x608(%rsp)
leaq 0x620(%rsp), %rdi
callq 0x62400
movq 0x610(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movl %edx, %eax
movl %eax, 0x604(%rsp)
movl 0x604(%rsp), %eax
movl %eax, %ecx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, 0x5f8(%rsp)
movq 0x5f8(%rsp), %rax
movq 0x5f8(%rsp), %rcx
subq $0x1, %rcx
xorq %rcx, %rax
movq %rax, 0x5f0(%rsp)
movq 0x608(%rsp), %rax
movq (%rax), %rcx
movq 0x5f0(%rsp), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x608(%rsp), %rax
movq %rcx, (%rax)
movq 0x608(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2c18f
movq 0x608(%rsp), %rax
movq (%rax), %rax
movq 0x608(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x5e8(%rsp)
movq 0x5e8(%rsp), %rax
subq 0x5f8(%rsp), %rax
orq 0x5e8(%rsp), %rax
movq %rax, 0x5e0(%rsp)
movq 0x5e0(%rsp), %rax
movq 0x5f0(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0x620(%rsp)
movb $0x1, 0x628(%rsp)
jmp 0x2c1e8
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x5d8(%rsp)
movq 0x5d8(%rsp), %rax
subq 0x5f8(%rsp), %rax
orq 0x5d8(%rsp), %rax
movq %rax, 0x5d0(%rsp)
movq 0x5d0(%rsp), %rax
movq 0x5f0(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0x620(%rsp)
movb $0x0, 0x628(%rsp)
movq 0x620(%rsp), %rax
movb 0x628(%rsp), %cl
movb %cl, 0xe0(%rsp)
movq %rax, 0xd8(%rsp)
movq 0xd8(%rsp), %rax
movq %rax, 0xe8(%rsp)
movb 0xe0(%rsp), %al
movb %al, 0xf0(%rsp)
movq 0xe8(%rsp), %rax
movq %rax, 0x118(%rsp)
movb 0xf0(%rsp), %al
movb %al, 0x120(%rsp)
movb $0x1, 0x12f(%rsp)
jmp 0x2c3d6
movq 0xa0(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rcx, 0x6a8(%rsp)
movq %rax, 0x6a0(%rsp)
leaq 0x6b0(%rsp), %rdi
callq 0x62400
movq 0x6a0(%rsp), %rax
movq (%rax), %rax
movq 0x6a0(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x698(%rsp)
movq 0x6a0(%rsp), %rax
movq (%rax), %rcx
movq 0x6a0(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0x6a0(%rsp), %rax
movq %rcx, (%rax)
movq 0x6a0(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2c332
movq 0x6a0(%rsp), %rax
movq (%rax), %rax
movq 0x6a0(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x690(%rsp)
movq 0x690(%rsp), %rax
subq 0x698(%rsp), %rax
orq 0x690(%rsp), %rax
movq %rax, 0x688(%rsp)
movq 0x688(%rsp), %rax
movq %rax, 0x6b0(%rsp)
movb $0x1, 0x6b8(%rsp)
jmp 0x2c37c
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x680(%rsp)
movq 0x680(%rsp), %rax
subq 0x698(%rsp), %rax
orq 0x680(%rsp), %rax
movq %rax, 0x678(%rsp)
movq 0x678(%rsp), %rax
movq %rax, 0x6b0(%rsp)
movb $0x0, 0x6b8(%rsp)
movq 0x6b0(%rsp), %rax
movb 0x6b8(%rsp), %cl
movb %cl, 0xc0(%rsp)
movq %rax, 0xb8(%rsp)
movq 0xb8(%rsp), %rax
movq %rax, 0xc8(%rsp)
movb 0xc0(%rsp), %al
movb %al, 0xd0(%rsp)
movq 0xc8(%rsp), %rax
movq %rax, 0x118(%rsp)
movb 0xd0(%rsp), %al
movb %al, 0x120(%rsp)
movq 0xa0(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rcx, 0x4d8(%rsp)
movq %rax, 0x4d0(%rsp)
movq 0x4d8(%rsp), %rax
movq %rax, 0x80(%rsp)
movq 0x4d0(%rsp), %rax
movb 0x33(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2c543
movq 0x80(%rsp), %rcx
movq 0x4d0(%rsp), %rax
movq %rcx, 0x4f8(%rsp)
movq %rax, 0x4f0(%rsp)
movq 0x4f8(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x1c0(%rax), %ymm0
vmovaps %ymm1, 0x5a0(%rsp)
vmovaps %ymm0, 0x580(%rsp)
vmovaps 0x5a0(%rsp), %ymm0
vmovaps 0x580(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x520(%rsp)
vmovaps 0x520(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x4e8(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x1c0(%rax), %ymm0
vmovaps %ymm1, 0x560(%rsp)
vmovaps %ymm0, 0x540(%rsp)
vmovaps 0x560(%rsp), %ymm0
vmovaps 0x540(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0x500(%rsp)
vmovdqa 0x500(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0x4e0(%rsp)
movq 0x4e0(%rsp), %rdx
shlq $0x20, %rdx
orq 0x4e8(%rsp), %rdx
movq 0x4f0(%rsp), %rcx
movq %rdx, 0x18(%rcx)
movq 0x4f0(%rsp), %rcx
movq 0x18(%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x4f0(%rsp), %rax
movq %rcx, 0x18(%rax)
movq 0x4d0(%rsp), %rax
movb $0x1, 0x33(%rax)
movq 0x138(%rsp), %rax
movq 0x18(%rax), %rax
andq 0x118(%rsp), %rax
movq %rax, 0xb0(%rsp)
cmpq $0x0, 0xb0(%rsp)
jbe 0x2c63c
movq 0xa0(%rsp), %rax
movq %rax, 0x6d8(%rsp)
leaq 0xb0(%rsp), %rax
movq %rax, 0x6d0(%rsp)
movl $0x1, 0x6cc(%rsp)
movq 0x6d8(%rsp), %rax
movq %rax, 0x78(%rsp)
cmpl $0x1, 0x6cc(%rsp)
jle 0x2c5eb
movq 0x6d0(%rsp), %rax
movq (%rax), %rcx
movq 0x6d0(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0x6d0(%rsp), %rax
movq %rcx, (%rax)
movl 0x6cc(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x6cc(%rsp)
jmp 0x2c5a6
movq 0x78(%rsp), %rax
movq 0x270(%rax), %rax
shlq $0x6, %rax
movq 0x6d0(%rsp), %rcx
movq (%rcx), %rcx
tzcntq %rcx, %rcx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x6c0(%rsp)
movq 0x6c0(%rsp), %rcx
movq 0x140(%rsp), %rax
movq %rcx, (%rax)
movl $0x3eb, 0x154(%rsp) # imm = 0x3EB
jmp 0x2e8a0
testb $0x1, 0x120(%rsp)
je 0x2e872
movq 0xa0(%rsp), %rcx
leaq 0x118(%rsp), %rax
movq %rcx, 0x6e8(%rsp)
movq %rax, 0x6e0(%rsp)
movq 0x6e8(%rsp), %rax
movq 0x270(%rax), %rdx
shlq $0x6, %rdx
addq $0x3f, %rdx
movq 0x6e0(%rsp), %rax
movq (%rax), %rax
bsrq %rax, %rax
xorq $0x3f, %rax
cltq
subq %rax, %rdx
addq $0x1, %rdx
movq 0x140(%rsp), %rax
movq %rdx, (%rax)
movq 0x140(%rsp), %rax
movq %rcx, 0x13a0(%rsp)
movq %rax, 0x1398(%rsp)
movq 0x13a0(%rsp), %rax
movq %rax, 0x70(%rsp)
movq 0x70(%rsp), %rax
movq 0x2c8(%rax), %rax
movq 0x1398(%rsp), %rcx
movq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x20, %eax
jne 0x2c701
movq 0x1398(%rsp), %rax
movq (%rax), %rcx
addq $0x1, %rcx
movq %rcx, (%rax)
jmp 0x2c6cd
movq 0x70(%rsp), %rax
movq 0x2c8(%rax), %rax
movq 0x1398(%rsp), %rcx
movq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x7b, %eax
jne 0x2c72e
movl $0x65, 0x13ac(%rsp)
jmp 0x2c766
movq 0x70(%rsp), %rax
movq 0x2c8(%rax), %rax
movq 0x1398(%rsp), %rcx
movq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x5b, %eax
jne 0x2c75b
movl $0x66, 0x13ac(%rsp)
jmp 0x2c766
movl $0x67, 0x13ac(%rsp)
movl 0x13ac(%rsp), %eax
movl %eax, 0xac(%rsp)
cmpl $0x65, 0xac(%rsp)
jne 0x2d7de
movq 0xa0(%rsp), %rdx
movq 0x140(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rdx, 0x790(%rsp)
movq %rcx, 0x788(%rsp)
movq %rax, 0x780(%rsp)
movq 0x790(%rsp), %rax
movq %rax, 0x68(%rsp)
movl $0x1, 0x77c(%rsp)
movl $0x0, 0x778(%rsp)
movq 0x788(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movq %rax, 0x770(%rsp)
movb $0x0, 0x76f(%rsp)
movb $0x0, 0x76e(%rsp)
jmp 0x2c804
movq 0x68(%rsp), %rcx
movq 0x770(%rsp), %rax
cmpq 0x2e0(%rcx), %rax
jge 0x2d76e
movq 0x68(%rsp), %rcx
movq 0x770(%rsp), %rax
cmpq 0x270(%rcx), %rax
jle 0x2ce83
movq 0x68(%rsp), %rax
movq 0x780(%rsp), %rcx
movq %rax, 0xd30(%rsp)
movq %rcx, 0xd28(%rsp)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x30(%rcx)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x31(%rcx)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x32(%rcx)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x33(%rcx)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x34(%rcx)
movq 0xd28(%rsp), %rcx
movb $0x0, 0x35(%rcx)
movq 0x770(%rsp), %rcx
addq %rcx, %rcx
movq %rcx, 0x88(%rax)
movq %rax, 0x828(%rsp)
movq 0x828(%rsp), %rax
movq %rax, 0x58(%rsp)
movq 0x88(%rax), %rcx
movq %rcx, %rdx
shrq $0x3f, %rdx
addq %rdx, %rcx
sarq %rcx
movq %rcx, 0x270(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0x800(%rsp)
movq 0x2c8(%rax), %rcx
movq 0x800(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x838(%rsp)
movq 0x838(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xa0(%rax)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0x9a0(%rsp)
vmovaps %ymm0, 0x980(%rsp)
vmovaps 0x9a0(%rsp), %ymm0
vmovaps 0x980(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x8a0(%rsp)
vmovaps 0x8a0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x820(%rsp)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0x960(%rsp)
vmovaps %ymm0, 0x940(%rsp)
vmovaps 0x960(%rsp), %ymm0
vmovaps 0x940(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x880(%rsp)
vmovaps 0x880(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x818(%rsp)
movq 0x88(%rax), %rcx
incq %rcx
movq %rcx, 0x88(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0x800(%rsp)
movq 0x2c8(%rax), %rcx
movq 0x800(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x830(%rsp)
movq 0x830(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xc0(%rax)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0x920(%rsp)
vmovaps %ymm0, 0x900(%rsp)
vmovaps 0x920(%rsp), %ymm0
vmovaps 0x900(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x860(%rsp)
vmovaps 0x860(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x810(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0x8e0(%rsp)
vmovaps %ymm0, 0x8c0(%rsp)
vmovaps 0x8e0(%rsp), %ymm0
vmovaps 0x8c0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x840(%rsp)
vmovaps 0x840(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x808(%rsp)
movq 0x810(%rsp), %rcx
shlq $0x20, %rcx
movq 0x820(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x810(%rsp)
movq 0x808(%rsp), %rcx
shlq $0x20, %rcx
movq 0x818(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x808(%rsp)
movq 0x808(%rsp), %rcx
movq %rcx, 0x7f8(%rsp)
movq 0x7f8(%rsp), %rcx
movq %rcx, %rdx
addq %rdx, %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x7f0(%rsp)
movq 0x240(%rax), %rdx
movq 0x250(%rax), %rcx
xorq %rdx, %rcx
movq %rcx, 0x7e8(%rsp)
movq 0x7f0(%rsp), %rcx
movq 0x7e8(%rsp), %rdx
andq %rdx, %rcx
movq %rcx, 0x7e0(%rsp)
movq 0x7f0(%rsp), %rcx
movq 0x7e8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x7d8(%rsp)
movq 0x7f8(%rsp), %rcx
movq 0x7e0(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x7d0(%rsp)
movq 0x7f8(%rsp), %rcx
movq 0x7d8(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0x7c8(%rsp)
setb 0x7c7(%rsp)
movq 0x240(%rax), %rdx
movq 0x7c8(%rsp), %rcx
orq %rdx, %rcx
movq %rcx, 0x7c8(%rsp)
movzbl 0x7c7(%rsp), %ecx
andl $0x1, %ecx
movq %rcx, 0x240(%rax)
movq 0x7d0(%rsp), %rcx
movq 0x7f8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x7b8(%rsp)
movq 0x7c8(%rsp), %rcx
movq 0x7f8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0x7b0(%rsp)
movq 0x7b8(%rsp), %rcx
movq 0x258(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0x7a8(%rsp)
movq 0x7b0(%rsp), %rcx
movq 0x250(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0x7a0(%rsp)
movq 0x7a8(%rsp), %rcx
movq 0x7a0(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0x798(%rsp)
movq 0x810(%rsp), %rcx
movq 0x798(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe0(%rax)
movq 0xe0(%rax), %rcx
movq $0x0, 0xa00(%rsp)
movq %rcx, 0x9f8(%rsp)
vmovq 0xa00(%rsp), %xmm1
vmovq 0x9f8(%rsp), %xmm0
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovdqa %xmm0, 0x9e0(%rsp)
vmovdqa 0x9e0(%rsp), %xmm0
movb $-0x1, 0xa0f(%rsp)
movb 0xa0f(%rsp), %cl
movb %cl, 0x67(%rsp)
movb %cl, 0x13ef(%rsp)
movb %cl, 0x13ee(%rsp)
movb %cl, 0x13ed(%rsp)
movb %cl, 0x13ec(%rsp)
movb %cl, 0x13eb(%rsp)
movb %cl, 0x13ea(%rsp)
movb %cl, 0x13e9(%rsp)
movb %cl, 0x13e8(%rsp)
movb %cl, 0x13e7(%rsp)
movb %cl, 0x13e6(%rsp)
movb %cl, 0x13e5(%rsp)
movb %cl, 0x13e4(%rsp)
movb %cl, 0x13e3(%rsp)
movb %cl, 0x13e2(%rsp)
movb %cl, 0x13e1(%rsp)
movb %cl, 0x13e0(%rsp)
movzbl 0x13e0(%rsp), %ecx
vmovd %ecx, %xmm1
movzbl 0x13e1(%rsp), %ecx
vpinsrb $0x1, %ecx, %xmm1, %xmm1
movzbl 0x13e2(%rsp), %ecx
vpinsrb $0x2, %ecx, %xmm1, %xmm1
movzbl 0x13e3(%rsp), %ecx
vpinsrb $0x3, %ecx, %xmm1, %xmm1
movzbl 0x13e4(%rsp), %ecx
vpinsrb $0x4, %ecx, %xmm1, %xmm1
movzbl 0x13e5(%rsp), %ecx
vpinsrb $0x5, %ecx, %xmm1, %xmm1
movzbl 0x13e6(%rsp), %ecx
vpinsrb $0x6, %ecx, %xmm1, %xmm1
movzbl 0x13e7(%rsp), %ecx
vpinsrb $0x7, %ecx, %xmm1, %xmm1
movzbl 0x13e8(%rsp), %ecx
vpinsrb $0x8, %ecx, %xmm1, %xmm1
movzbl 0x13e9(%rsp), %ecx
vpinsrb $0x9, %ecx, %xmm1, %xmm1
movzbl 0x13ea(%rsp), %ecx
vpinsrb $0xa, %ecx, %xmm1, %xmm1
movzbl 0x13eb(%rsp), %ecx
vpinsrb $0xb, %ecx, %xmm1, %xmm1
movzbl 0x13ec(%rsp), %ecx
vpinsrb $0xc, %ecx, %xmm1, %xmm1
movzbl 0x13ed(%rsp), %ecx
vpinsrb $0xd, %ecx, %xmm1, %xmm1
movzbl 0x13ee(%rsp), %ecx
vpinsrb $0xe, %ecx, %xmm1, %xmm1
movzbl 0x13ef(%rsp), %ecx
vpinsrb $0xf, %ecx, %xmm1, %xmm1
vmovdqa %xmm1, 0x13d0(%rsp)
vmovdqa 0x13d0(%rsp), %xmm1
vpclmulqdq $0x0, %xmm1, %xmm0, %xmm0
vmovdqa %xmm0, 0x9d0(%rsp)
movq 0x9d0(%rsp), %rcx
movq %rcx, (%rax)
movq 0x248(%rax), %rcx
xorq (%rax), %rcx
movq %rcx, (%rax)
movq (%rax), %rcx
sarq $0x3f, %rcx
movq %rcx, 0x248(%rax)
movq 0x68(%rsp), %rcx
movq 0x780(%rsp), %rax
movq %rcx, 0xa18(%rsp)
movq %rax, 0xa10(%rsp)
movq 0xa18(%rsp), %rax
movq %rax, 0x50(%rsp)
movq 0xa10(%rsp), %rax
movb 0x32(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2cfe7
movq 0x50(%rsp), %rcx
movq 0xa10(%rsp), %rax
movq %rcx, 0xa38(%rsp)
movq %rax, 0xa30(%rsp)
movq 0xa38(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x1a0(%rax), %ymm0
vmovaps %ymm1, 0xae0(%rsp)
vmovaps %ymm0, 0xac0(%rsp)
vmovaps 0xae0(%rsp), %ymm0
vmovaps 0xac0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xa60(%rsp)
vmovaps 0xa60(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xa28(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x1a0(%rax), %ymm0
vmovaps %ymm1, 0xaa0(%rsp)
vmovaps %ymm0, 0xa80(%rsp)
vmovaps 0xaa0(%rsp), %ymm0
vmovaps 0xa80(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0xa40(%rsp)
vmovdqa 0xa40(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0xa20(%rsp)
movq 0xa20(%rsp), %rdx
shlq $0x20, %rdx
orq 0xa28(%rsp), %rdx
movq 0xa30(%rsp), %rcx
movq %rdx, 0x10(%rcx)
movq 0xa30(%rsp), %rcx
movq 0x10(%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0xa30(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0xa10(%rsp), %rax
movb $0x1, 0x32(%rax)
leaq 0x758(%rsp), %rdi
vzeroupper
callq 0x62400
movb 0x76f(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2d35d
movb 0x76e(%rsp), %al
testb $0x1, %al
jne 0x2d01c
jmp 0x2d16a
movq 0x68(%rsp), %rcx
movq 0x780(%rsp), %rax
addq $0x10, %rax
movq %rcx, 0xca8(%rsp)
movq %rax, 0xca0(%rsp)
leaq 0xcb0(%rsp), %rdi
callq 0x62400
movq $0x1, 0xc98(%rsp)
movq 0xca0(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2d0c1
movq 0xca0(%rsp), %rax
movq (%rax), %rax
movq 0xca0(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0xc90(%rsp)
movq 0xc90(%rsp), %rax
subq 0xc98(%rsp), %rax
orq 0xc90(%rsp), %rax
movq %rax, 0xc88(%rsp)
movq 0xc88(%rsp), %rax
movq %rax, 0xcb0(%rsp)
movb $0x1, 0xcb8(%rsp)
jmp 0x2d10b
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0xc80(%rsp)
movq 0xc80(%rsp), %rax
subq 0xc98(%rsp), %rax
orq 0xc80(%rsp), %rax
movq %rax, 0xc78(%rsp)
movq 0xc78(%rsp), %rax
movq %rax, 0xcb0(%rsp)
movb $0x0, 0xcb8(%rsp)
movq 0xcb0(%rsp), %rax
movb 0xcb8(%rsp), %cl
movb %cl, 0x740(%rsp)
movq %rax, 0x738(%rsp)
movq 0x738(%rsp), %rax
movq %rax, 0x748(%rsp)
movb 0x740(%rsp), %al
movb %al, 0x750(%rsp)
movq 0x748(%rsp), %rax
movq %rax, 0x758(%rsp)
movb 0x750(%rsp), %al
movb %al, 0x760(%rsp)
jmp 0x2d350
movq 0x68(%rsp), %rdx
movq 0x788(%rsp), %rcx
movq 0x780(%rsp), %rax
addq $0x10, %rax
movq %rdx, 0xc60(%rsp)
movq %rcx, 0xc58(%rsp)
movq %rax, 0xc50(%rsp)
leaq 0xc68(%rsp), %rdi
callq 0x62400
movq 0xc58(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movl %edx, %eax
movl %eax, 0xc4c(%rsp)
movl 0xc4c(%rsp), %eax
movl %eax, %ecx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, 0xc40(%rsp)
movq 0xc40(%rsp), %rax
movq 0xc40(%rsp), %rcx
subq $0x1, %rcx
xorq %rcx, %rax
movq %rax, 0xc38(%rsp)
movq 0xc50(%rsp), %rax
movq (%rax), %rcx
movq 0xc38(%rsp), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0xc50(%rsp), %rax
movq %rcx, (%rax)
movq 0xc50(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2d29d
movq 0xc50(%rsp), %rax
movq (%rax), %rax
movq 0xc50(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0xc30(%rsp)
movq 0xc30(%rsp), %rax
subq 0xc40(%rsp), %rax
orq 0xc30(%rsp), %rax
movq %rax, 0xc28(%rsp)
movq 0xc28(%rsp), %rax
movq 0xc38(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0xc68(%rsp)
movb $0x1, 0xc70(%rsp)
jmp 0x2d2f6
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0xc20(%rsp)
movq 0xc20(%rsp), %rax
subq 0xc40(%rsp), %rax
orq 0xc20(%rsp), %rax
movq %rax, 0xc18(%rsp)
movq 0xc18(%rsp), %rax
movq 0xc38(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0xc68(%rsp)
movb $0x0, 0xc70(%rsp)
movq 0xc68(%rsp), %rax
movb 0xc70(%rsp), %cl
movb %cl, 0x720(%rsp)
movq %rax, 0x718(%rsp)
movq 0x718(%rsp), %rax
movq %rax, 0x728(%rsp)
movb 0x720(%rsp), %al
movb %al, 0x730(%rsp)
movq 0x728(%rsp), %rax
movq %rax, 0x758(%rsp)
movb 0x730(%rsp), %al
movb %al, 0x760(%rsp)
movb $0x1, 0x76f(%rsp)
jmp 0x2d4e5
movq 0x68(%rsp), %rcx
movq 0x780(%rsp), %rax
addq $0x10, %rax
movq %rcx, 0xcf0(%rsp)
movq %rax, 0xce8(%rsp)
leaq 0xcf8(%rsp), %rdi
callq 0x62400
movq 0xce8(%rsp), %rax
movq (%rax), %rax
movq 0xce8(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0xce0(%rsp)
movq 0xce8(%rsp), %rax
movq (%rax), %rcx
movq 0xce8(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0xce8(%rsp), %rax
movq %rcx, (%rax)
movq 0xce8(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2d441
movq 0xce8(%rsp), %rax
movq (%rax), %rax
movq 0xce8(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0xcd8(%rsp)
movq 0xcd8(%rsp), %rax
subq 0xce0(%rsp), %rax
orq 0xcd8(%rsp), %rax
movq %rax, 0xcd0(%rsp)
movq 0xcd0(%rsp), %rax
movq %rax, 0xcf8(%rsp)
movb $0x1, 0xd00(%rsp)
jmp 0x2d48b
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0xcc8(%rsp)
movq 0xcc8(%rsp), %rax
subq 0xce0(%rsp), %rax
orq 0xcc8(%rsp), %rax
movq %rax, 0xcc0(%rsp)
movq 0xcc0(%rsp), %rax
movq %rax, 0xcf8(%rsp)
movb $0x0, 0xd00(%rsp)
movq 0xcf8(%rsp), %rax
movb 0xd00(%rsp), %cl
movb %cl, 0x700(%rsp)
movq %rax, 0x6f8(%rsp)
movq 0x6f8(%rsp), %rax
movq %rax, 0x708(%rsp)
movb 0x700(%rsp), %al
movb %al, 0x710(%rsp)
movq 0x708(%rsp), %rax
movq %rax, 0x758(%rsp)
movb 0x710(%rsp), %al
movb %al, 0x760(%rsp)
movq 0x68(%rsp), %rcx
movq 0x780(%rsp), %rax
movq %rcx, 0xb18(%rsp)
movq %rax, 0xb10(%rsp)
movq 0xb18(%rsp), %rax
movq %rax, 0x48(%rsp)
movq 0xb10(%rsp), %rax
movb 0x33(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2d649
movq 0x48(%rsp), %rcx
movq 0xb10(%rsp), %rax
movq %rcx, 0xb38(%rsp)
movq %rax, 0xb30(%rsp)
movq 0xb38(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x1c0(%rax), %ymm0
vmovaps %ymm1, 0xbe0(%rsp)
vmovaps %ymm0, 0xbc0(%rsp)
vmovaps 0xbe0(%rsp), %ymm0
vmovaps 0xbc0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xb60(%rsp)
vmovaps 0xb60(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xb28(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x1c0(%rax), %ymm0
vmovaps %ymm1, 0xba0(%rsp)
vmovaps %ymm0, 0xb80(%rsp)
vmovaps 0xba0(%rsp), %ymm0
vmovaps 0xb80(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0xb40(%rsp)
vmovdqa 0xb40(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0xb20(%rsp)
movq 0xb20(%rsp), %rdx
shlq $0x20, %rdx
orq 0xb28(%rsp), %rdx
movq 0xb30(%rsp), %rcx
movq %rdx, 0x18(%rcx)
movq 0xb30(%rsp), %rcx
movq 0x18(%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0xb30(%rsp), %rax
movq %rcx, 0x18(%rax)
movq 0xb10(%rsp), %rax
movb $0x1, 0x33(%rax)
movq 0x780(%rsp), %rax
movq 0x18(%rax), %rax
andq 0x758(%rsp), %rax
movq %rax, 0x6f0(%rsp)
movq 0x6f0(%rsp), %rax
popcntq %rax, %rax
movl %eax, 0x778(%rsp)
movl 0x778(%rsp), %eax
cmpl 0x77c(%rsp), %eax
jge 0x2d6f1
movb 0x760(%rsp), %al
testb $0x1, %al
jne 0x2d696
jmp 0x2d6b3
movl 0x77c(%rsp), %eax
subl 0x778(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x77c(%rsp)
jmp 0x2d76e
movl 0x77c(%rsp), %eax
subl 0x778(%rsp), %eax
movl %eax, 0x77c(%rsp)
movq 0x770(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x770(%rsp)
movb $0x0, 0x76f(%rsp)
movb $0x1, 0x76e(%rsp)
jmp 0x2c804
movq 0x68(%rsp), %rcx
movl 0x77c(%rsp), %eax
movq %rcx, 0xd20(%rsp)
leaq 0x6f0(%rsp), %rcx
movq %rcx, 0xd18(%rsp)
movl %eax, 0xd14(%rsp)
movq 0xd20(%rsp), %rax
movq %rax, 0x40(%rsp)
cmpl $0x1, 0xd14(%rsp)
jle 0x2d773
movq 0xd18(%rsp), %rax
movq (%rax), %rcx
movq 0xd18(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0xd18(%rsp), %rax
movq %rcx, (%rax)
movl 0xd14(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0xd14(%rsp)
jmp 0x2d729
jmp 0x2c802
movq 0x40(%rsp), %rax
movq 0x270(%rax), %rax
shlq $0x6, %rax
movq 0xd18(%rsp), %rcx
movq (%rcx), %rcx
tzcntq %rcx, %rcx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0xd08(%rsp)
movq 0xd08(%rsp), %rcx
movq 0x788(%rsp), %rax
movq %rcx, (%rax)
movq 0x140(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movq %rax, 0x130(%rsp)
movb $0x0, 0x12f(%rsp)
jmp 0x2e870
cmpl $0x66, 0xac(%rsp)
jne 0x2e861
movq 0xa0(%rsp), %rdx
movq 0x140(%rsp), %rcx
movq 0x138(%rsp), %rax
movq %rdx, 0xdf0(%rsp)
movq %rcx, 0xde8(%rsp)
movq %rax, 0xde0(%rsp)
movq 0xdf0(%rsp), %rax
movq %rax, 0x38(%rsp)
movl $0x1, 0xddc(%rsp)
movl $0x0, 0xdd8(%rsp)
movq 0xde8(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movq %rax, 0xdd0(%rsp)
movb $0x0, 0xdcf(%rsp)
movb $0x0, 0xdce(%rsp)
jmp 0x2d86e
movq 0x38(%rsp), %rcx
movq 0xdd0(%rsp), %rax
cmpq 0x2e0(%rcx), %rax
jge 0x2e7f4
movq 0x38(%rsp), %rcx
movq 0xdd0(%rsp), %rax
cmpq 0x270(%rcx), %rax
jle 0x2deed
movq 0x38(%rsp), %rax
movq 0xde0(%rsp), %rcx
movq %rax, 0x1390(%rsp)
movq %rcx, 0x1388(%rsp)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x30(%rcx)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x31(%rcx)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x32(%rcx)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x33(%rcx)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x34(%rcx)
movq 0x1388(%rsp), %rcx
movb $0x0, 0x35(%rcx)
movq 0xdd0(%rsp), %rcx
addq %rcx, %rcx
movq %rcx, 0x88(%rax)
movq %rax, 0xe88(%rsp)
movq 0xe88(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x88(%rax), %rcx
movq %rcx, %rdx
shrq $0x3f, %rdx
addq %rdx, %rcx
sarq %rcx
movq %rcx, 0x270(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0xe60(%rsp)
movq 0x2c8(%rax), %rcx
movq 0xe60(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0xe98(%rsp)
movq 0xe98(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xa0(%rax)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0x1000(%rsp)
vmovaps %ymm0, 0xfe0(%rsp)
vmovaps 0x1000(%rsp), %ymm0
vmovaps 0xfe0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xf00(%rsp)
vmovaps 0xf00(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xe80(%rsp)
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0xfc0(%rsp)
vmovaps %ymm0, 0xfa0(%rsp)
vmovaps 0xfc0(%rsp), %ymm0
vmovaps 0xfa0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xee0(%rsp)
vmovaps 0xee0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xe78(%rsp)
movq 0x88(%rax), %rcx
incq %rcx
movq %rcx, 0x88(%rax)
movq 0x88(%rax), %rcx
shlq $0x5, %rcx
movq %rcx, 0xe60(%rsp)
movq 0x2c8(%rax), %rcx
movq 0xe60(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0xe90(%rsp)
movq 0xe90(%rsp), %rcx
vmovups (%rcx), %ymm0
vmovaps %ymm0, 0xc0(%rax)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x140(%rax), %ymm0
vmovaps %ymm1, 0xf80(%rsp)
vmovaps %ymm0, 0xf60(%rsp)
vmovaps 0xf80(%rsp), %ymm0
vmovaps 0xf60(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xec0(%rsp)
vmovaps 0xec0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xe70(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x180(%rax), %ymm0
vmovaps %ymm1, 0xf40(%rsp)
vmovaps %ymm0, 0xf20(%rsp)
vmovaps 0xf40(%rsp), %ymm0
vmovaps 0xf20(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0xea0(%rsp)
vmovaps 0xea0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0xe68(%rsp)
movq 0xe70(%rsp), %rcx
shlq $0x20, %rcx
movq 0xe80(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0xe70(%rsp)
movq 0xe68(%rsp), %rcx
shlq $0x20, %rcx
movq 0xe78(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0xe68(%rsp)
movq 0xe68(%rsp), %rcx
movq %rcx, 0xe58(%rsp)
movq 0xe58(%rsp), %rcx
movq %rcx, %rdx
addq %rdx, %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe50(%rsp)
movq 0x240(%rax), %rdx
movq 0x250(%rax), %rcx
xorq %rdx, %rcx
movq %rcx, 0xe48(%rsp)
movq 0xe50(%rsp), %rcx
movq 0xe48(%rsp), %rdx
andq %rdx, %rcx
movq %rcx, 0xe40(%rsp)
movq 0xe50(%rsp), %rcx
movq 0xe48(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe38(%rsp)
movq 0xe58(%rsp), %rcx
movq 0xe40(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0xe30(%rsp)
movq 0xe58(%rsp), %rcx
movq 0xe38(%rsp), %rdx
addq %rdx, %rcx
movq %rcx, 0xe28(%rsp)
setb 0xe27(%rsp)
movq 0x240(%rax), %rdx
movq 0xe28(%rsp), %rcx
orq %rdx, %rcx
movq %rcx, 0xe28(%rsp)
movzbl 0xe27(%rsp), %ecx
andl $0x1, %ecx
movq %rcx, 0x240(%rax)
movq 0xe30(%rsp), %rcx
movq 0xe58(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe18(%rsp)
movq 0xe28(%rsp), %rcx
movq 0xe58(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe10(%rsp)
movq 0xe18(%rsp), %rcx
movq 0x258(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0xe08(%rsp)
movq 0xe10(%rsp), %rcx
movq 0x250(%rax), %rdx
andq %rdx, %rcx
movq %rcx, 0xe00(%rsp)
movq 0xe08(%rsp), %rcx
movq 0xe00(%rsp), %rdx
orq %rdx, %rcx
movq %rcx, 0xdf8(%rsp)
movq 0xe70(%rsp), %rcx
movq 0xdf8(%rsp), %rdx
notq %rdx
andq %rdx, %rcx
movq %rcx, 0xe0(%rax)
movq 0xe0(%rax), %rcx
movq $0x0, 0x1060(%rsp)
movq %rcx, 0x1058(%rsp)
vmovq 0x1060(%rsp), %xmm1
vmovq 0x1058(%rsp), %xmm0
vpunpcklqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0]
vmovdqa %xmm0, 0x1040(%rsp)
vmovdqa 0x1040(%rsp), %xmm0
movb $-0x1, 0x106f(%rsp)
movb 0x106f(%rsp), %cl
movb %cl, 0x37(%rsp)
movb %cl, 0x13cf(%rsp)
movb %cl, 0x13ce(%rsp)
movb %cl, 0x13cd(%rsp)
movb %cl, 0x13cc(%rsp)
movb %cl, 0x13cb(%rsp)
movb %cl, 0x13ca(%rsp)
movb %cl, 0x13c9(%rsp)
movb %cl, 0x13c8(%rsp)
movb %cl, 0x13c7(%rsp)
movb %cl, 0x13c6(%rsp)
movb %cl, 0x13c5(%rsp)
movb %cl, 0x13c4(%rsp)
movb %cl, 0x13c3(%rsp)
movb %cl, 0x13c2(%rsp)
movb %cl, 0x13c1(%rsp)
movb %cl, 0x13c0(%rsp)
movzbl 0x13c0(%rsp), %ecx
vmovd %ecx, %xmm1
movzbl 0x13c1(%rsp), %ecx
vpinsrb $0x1, %ecx, %xmm1, %xmm1
movzbl 0x13c2(%rsp), %ecx
vpinsrb $0x2, %ecx, %xmm1, %xmm1
movzbl 0x13c3(%rsp), %ecx
vpinsrb $0x3, %ecx, %xmm1, %xmm1
movzbl 0x13c4(%rsp), %ecx
vpinsrb $0x4, %ecx, %xmm1, %xmm1
movzbl 0x13c5(%rsp), %ecx
vpinsrb $0x5, %ecx, %xmm1, %xmm1
movzbl 0x13c6(%rsp), %ecx
vpinsrb $0x6, %ecx, %xmm1, %xmm1
movzbl 0x13c7(%rsp), %ecx
vpinsrb $0x7, %ecx, %xmm1, %xmm1
movzbl 0x13c8(%rsp), %ecx
vpinsrb $0x8, %ecx, %xmm1, %xmm1
movzbl 0x13c9(%rsp), %ecx
vpinsrb $0x9, %ecx, %xmm1, %xmm1
movzbl 0x13ca(%rsp), %ecx
vpinsrb $0xa, %ecx, %xmm1, %xmm1
movzbl 0x13cb(%rsp), %ecx
vpinsrb $0xb, %ecx, %xmm1, %xmm1
movzbl 0x13cc(%rsp), %ecx
vpinsrb $0xc, %ecx, %xmm1, %xmm1
movzbl 0x13cd(%rsp), %ecx
vpinsrb $0xd, %ecx, %xmm1, %xmm1
movzbl 0x13ce(%rsp), %ecx
vpinsrb $0xe, %ecx, %xmm1, %xmm1
movzbl 0x13cf(%rsp), %ecx
vpinsrb $0xf, %ecx, %xmm1, %xmm1
vmovdqa %xmm1, 0x13b0(%rsp)
vmovdqa 0x13b0(%rsp), %xmm1
vpclmulqdq $0x0, %xmm1, %xmm0, %xmm0
vmovdqa %xmm0, 0x1030(%rsp)
movq 0x1030(%rsp), %rcx
movq %rcx, (%rax)
movq 0x248(%rax), %rcx
xorq (%rax), %rcx
movq %rcx, (%rax)
movq (%rax), %rcx
sarq $0x3f, %rcx
movq %rcx, 0x248(%rax)
movq 0x38(%rsp), %rcx
movq 0xde0(%rsp), %rax
movq %rcx, 0x1078(%rsp)
movq %rax, 0x1070(%rsp)
movq 0x1078(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x1070(%rsp), %rax
movb 0x34(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2e051
movq 0x20(%rsp), %rcx
movq 0x1070(%rsp), %rax
movq %rcx, 0x1098(%rsp)
movq %rax, 0x1090(%rsp)
movq 0x1098(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x200(%rax), %ymm0
vmovaps %ymm1, 0x1140(%rsp)
vmovaps %ymm0, 0x1120(%rsp)
vmovaps 0x1140(%rsp), %ymm0
vmovaps 0x1120(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x10c0(%rsp)
vmovaps 0x10c0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1088(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x200(%rax), %ymm0
vmovaps %ymm1, 0x1100(%rsp)
vmovaps %ymm0, 0x10e0(%rsp)
vmovaps 0x1100(%rsp), %ymm0
vmovaps 0x10e0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0x10a0(%rsp)
vmovdqa 0x10a0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0x1080(%rsp)
movq 0x1080(%rsp), %rdx
shlq $0x20, %rdx
orq 0x1088(%rsp), %rdx
movq 0x1090(%rsp), %rcx
movq %rdx, 0x20(%rcx)
movq 0x1090(%rsp), %rcx
movq 0x20(%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x1090(%rsp), %rax
movq %rcx, 0x20(%rax)
movq 0x1070(%rsp), %rax
movb $0x1, 0x34(%rax)
leaq 0xdb8(%rsp), %rdi
vzeroupper
callq 0x62400
movb 0xdcf(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2e3c7
movb 0xdce(%rsp), %al
testb $0x1, %al
jne 0x2e086
jmp 0x2e1d4
movq 0x38(%rsp), %rcx
movq 0xde0(%rsp), %rax
addq $0x20, %rax
movq %rcx, 0x1308(%rsp)
movq %rax, 0x1300(%rsp)
leaq 0x1310(%rsp), %rdi
callq 0x62400
movq $0x1, 0x12f8(%rsp)
movq 0x1300(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2e12b
movq 0x1300(%rsp), %rax
movq (%rax), %rax
movq 0x1300(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x12f0(%rsp)
movq 0x12f0(%rsp), %rax
subq 0x12f8(%rsp), %rax
orq 0x12f0(%rsp), %rax
movq %rax, 0x12e8(%rsp)
movq 0x12e8(%rsp), %rax
movq %rax, 0x1310(%rsp)
movb $0x1, 0x1318(%rsp)
jmp 0x2e175
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x12e0(%rsp)
movq 0x12e0(%rsp), %rax
subq 0x12f8(%rsp), %rax
orq 0x12e0(%rsp), %rax
movq %rax, 0x12d8(%rsp)
movq 0x12d8(%rsp), %rax
movq %rax, 0x1310(%rsp)
movb $0x0, 0x1318(%rsp)
movq 0x1310(%rsp), %rax
movb 0x1318(%rsp), %cl
movb %cl, 0xda0(%rsp)
movq %rax, 0xd98(%rsp)
movq 0xd98(%rsp), %rax
movq %rax, 0xda8(%rsp)
movb 0xda0(%rsp), %al
movb %al, 0xdb0(%rsp)
movq 0xda8(%rsp), %rax
movq %rax, 0xdb8(%rsp)
movb 0xdb0(%rsp), %al
movb %al, 0xdc0(%rsp)
jmp 0x2e3ba
movq 0x38(%rsp), %rdx
movq 0xde8(%rsp), %rcx
movq 0xde0(%rsp), %rax
addq $0x20, %rax
movq %rdx, 0x12c0(%rsp)
movq %rcx, 0x12b8(%rsp)
movq %rax, 0x12b0(%rsp)
leaq 0x12c8(%rsp), %rdi
callq 0x62400
movq 0x12b8(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movl %edx, %eax
movl %eax, 0x12ac(%rsp)
movl 0x12ac(%rsp), %eax
movl %eax, %ecx
movl $0x1, %eax
shlq %cl, %rax
movq %rax, 0x12a0(%rsp)
movq 0x12a0(%rsp), %rax
movq 0x12a0(%rsp), %rcx
subq $0x1, %rcx
xorq %rcx, %rax
movq %rax, 0x1298(%rsp)
movq 0x12b0(%rsp), %rax
movq (%rax), %rcx
movq 0x1298(%rsp), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x12b0(%rsp), %rax
movq %rcx, (%rax)
movq 0x12b0(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2e307
movq 0x12b0(%rsp), %rax
movq (%rax), %rax
movq 0x12b0(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x1290(%rsp)
movq 0x1290(%rsp), %rax
subq 0x12a0(%rsp), %rax
orq 0x1290(%rsp), %rax
movq %rax, 0x1288(%rsp)
movq 0x1288(%rsp), %rax
movq 0x1298(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0x12c8(%rsp)
movb $0x1, 0x12d0(%rsp)
jmp 0x2e360
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x1280(%rsp)
movq 0x1280(%rsp), %rax
subq 0x12a0(%rsp), %rax
orq 0x1280(%rsp), %rax
movq %rax, 0x1278(%rsp)
movq 0x1278(%rsp), %rax
movq 0x1298(%rsp), %rcx
xorq $-0x1, %rcx
andq %rcx, %rax
movq %rax, 0x12c8(%rsp)
movb $0x0, 0x12d0(%rsp)
movq 0x12c8(%rsp), %rax
movb 0x12d0(%rsp), %cl
movb %cl, 0xd80(%rsp)
movq %rax, 0xd78(%rsp)
movq 0xd78(%rsp), %rax
movq %rax, 0xd88(%rsp)
movb 0xd80(%rsp), %al
movb %al, 0xd90(%rsp)
movq 0xd88(%rsp), %rax
movq %rax, 0xdb8(%rsp)
movb 0xd90(%rsp), %al
movb %al, 0xdc0(%rsp)
movb $0x1, 0xdcf(%rsp)
jmp 0x2e54f
movq 0x38(%rsp), %rcx
movq 0xde0(%rsp), %rax
addq $0x20, %rax
movq %rcx, 0x1350(%rsp)
movq %rax, 0x1348(%rsp)
leaq 0x1358(%rsp), %rdi
callq 0x62400
movq 0x1348(%rsp), %rax
movq (%rax), %rax
movq 0x1348(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x1340(%rsp)
movq 0x1348(%rsp), %rax
movq (%rax), %rcx
movq 0x1348(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0x1348(%rsp), %rax
movq %rcx, (%rax)
movq 0x1348(%rsp), %rax
cmpq $0x0, (%rax)
je 0x2e4ab
movq 0x1348(%rsp), %rax
movq (%rax), %rax
movq 0x1348(%rsp), %rdx
xorl %ecx, %ecx
subq (%rdx), %rcx
andq %rcx, %rax
movq %rax, 0x1338(%rsp)
movq 0x1338(%rsp), %rax
subq 0x1340(%rsp), %rax
orq 0x1338(%rsp), %rax
movq %rax, 0x1330(%rsp)
movq 0x1330(%rsp), %rax
movq %rax, 0x1358(%rsp)
movb $0x1, 0x1360(%rsp)
jmp 0x2e4f5
movabsq $-0x8000000000000000, %rax # imm = 0x8000000000000000
movq %rax, 0x1328(%rsp)
movq 0x1328(%rsp), %rax
subq 0x1340(%rsp), %rax
orq 0x1328(%rsp), %rax
movq %rax, 0x1320(%rsp)
movq 0x1320(%rsp), %rax
movq %rax, 0x1358(%rsp)
movb $0x0, 0x1360(%rsp)
movq 0x1358(%rsp), %rax
movb 0x1360(%rsp), %cl
movb %cl, 0xd60(%rsp)
movq %rax, 0xd58(%rsp)
movq 0xd58(%rsp), %rax
movq %rax, 0xd68(%rsp)
movb 0xd60(%rsp), %al
movb %al, 0xd70(%rsp)
movq 0xd68(%rsp), %rax
movq %rax, 0xdb8(%rsp)
movb 0xd70(%rsp), %al
movb %al, 0xdc0(%rsp)
movq 0x38(%rsp), %rcx
movq 0xde0(%rsp), %rax
movq %rcx, 0x1178(%rsp)
movq %rax, 0x1170(%rsp)
movq 0x1178(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x1170(%rsp), %rax
movb 0x35(%rax), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
jne 0x2e6b3
movq 0x18(%rsp), %rcx
movq 0x1170(%rsp), %rax
movq %rcx, 0x1198(%rsp)
movq %rax, 0x1190(%rsp)
movq 0x1198(%rsp), %rax
vmovaps 0xa0(%rax), %ymm1
vmovaps 0x220(%rax), %ymm0
vmovaps %ymm1, 0x1240(%rsp)
vmovaps %ymm0, 0x1220(%rsp)
vmovaps 0x1240(%rsp), %ymm0
vmovaps 0x1220(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovaps %ymm0, 0x11c0(%rsp)
vmovaps 0x11c0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movq %rcx, 0x1188(%rsp)
vmovaps 0xc0(%rax), %ymm1
vmovaps 0x220(%rax), %ymm0
vmovaps %ymm1, 0x1200(%rsp)
vmovaps %ymm0, 0x11e0(%rsp)
vmovaps 0x1200(%rsp), %ymm0
vmovaps 0x11e0(%rsp), %ymm1
vpcmpeqb %ymm1, %ymm0, %ymm0
vmovdqa %ymm0, 0x11a0(%rsp)
vmovdqa 0x11a0(%rsp), %ymm0
vpmovmskb %ymm0, %ecx
movl %ecx, %ecx
movq %rcx, 0x1180(%rsp)
movq 0x1180(%rsp), %rdx
shlq $0x20, %rdx
orq 0x1188(%rsp), %rdx
movq 0x1190(%rsp), %rcx
movq %rdx, 0x28(%rcx)
movq 0x1190(%rsp), %rcx
movq 0x28(%rcx), %rcx
movq (%rax), %rax
xorq $-0x1, %rax
andq %rax, %rcx
movq 0x1190(%rsp), %rax
movq %rcx, 0x28(%rax)
movq 0x1170(%rsp), %rax
movb $0x1, 0x35(%rax)
movq 0xde0(%rsp), %rax
movq 0x28(%rax), %rax
andq 0xdb8(%rsp), %rax
movq %rax, 0xd50(%rsp)
movq 0xde0(%rsp), %rax
movq 0x28(%rax), %rsi
leaq 0xd48(%rsp), %rdi
vzeroupper
callq 0x62420
movq 0xd50(%rsp), %rax
popcntq %rax, %rax
movl %eax, 0xdd8(%rsp)
movl 0xdd8(%rsp), %eax
cmpl 0xddc(%rsp), %eax
jge 0x2e777
movb 0xdc0(%rsp), %al
testb $0x1, %al
jne 0x2e71c
jmp 0x2e739
movl 0xddc(%rsp), %eax
subl 0xdd8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0xddc(%rsp)
jmp 0x2e7f4
movl 0xddc(%rsp), %eax
subl 0xdd8(%rsp), %eax
movl %eax, 0xddc(%rsp)
movq 0xdd0(%rsp), %rax
addq $0x1, %rax
movq %rax, 0xdd0(%rsp)
movb $0x0, 0xdcf(%rsp)
movb $0x1, 0xdce(%rsp)
jmp 0x2d86e
movq 0x38(%rsp), %rcx
movl 0xddc(%rsp), %eax
movq %rcx, 0x1380(%rsp)
leaq 0xd50(%rsp), %rcx
movq %rcx, 0x1378(%rsp)
movl %eax, 0x1374(%rsp)
movq 0x1380(%rsp), %rax
movq %rax, 0x10(%rsp)
cmpl $0x1, 0x1374(%rsp)
jle 0x2e7f9
movq 0x1378(%rsp), %rax
movq (%rax), %rcx
movq 0x1378(%rsp), %rax
movq (%rax), %rax
subq $0x1, %rax
andq %rax, %rcx
movq 0x1378(%rsp), %rax
movq %rcx, (%rax)
movl 0x1374(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x1374(%rsp)
jmp 0x2e7af
jmp 0x2d86c
movq 0x10(%rsp), %rax
movq 0x270(%rax), %rax
shlq $0x6, %rax
movq 0x1378(%rsp), %rcx
movq (%rcx), %rcx
tzcntq %rcx, %rcx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x1368(%rsp)
movq 0x1368(%rsp), %rcx
movq 0xde8(%rsp), %rax
movq %rcx, (%rax)
movq 0x140(%rsp), %rax
movq (%rax), %rax
movl $0x40, %ecx
cqto
idivq %rcx
movq %rax, 0x130(%rsp)
movb $0x0, 0x12f(%rsp)
jmp 0x2e86e
movl $0x3e9, 0x154(%rsp) # imm = 0x3E9
jmp 0x2e8a0
jmp 0x2e870
jmp 0x2e89b
movq 0x130(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x130(%rsp)
movb $0x0, 0x12f(%rsp)
movb $0x1, 0x12e(%rsp)
jmp 0x2b6d6
jmp 0x2b6d4
movl 0x154(%rsp), %eax
movq %rbp, %rsp
popq %rbp
vzeroupper
retq
nop