// File: /workspace/github_cpp_makefile_star2_O1/AutomataLab[P]JSONSki/src/QueryProcessor.cpp
// Function: QueryProcessor::goToAryAttr(long&, bitmap&)
__attribute__((always_inline)) int QueryProcessor::goToAryAttr(long& pos, bitmap& bm) {
    do {
        int result = goOverPriAttrs(pos, bm);
        if (result == OBJECT_END) {
            return result;
        }
        int attribute_type = getAttributeType(pos);
        if (attribute_type == ARRAY) {
            return SUCCESS;
        }
        goOverObj(pos, bm);
    } while (hasMoreAttributes(pos));
    return OBJECT_END;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
leaq 0x30(%rdx), %rax
movq %rax, -0x8(%rsp)
movq 0x2c8(%rdi), %r10
vpcmpeqd %xmm0, %xmm0, %xmm0
movq (%rsi), %rcx
leaq 0x3f(%rcx), %rax
testq %rcx, %rcx
cmovnsq %rcx, %rax
sarq $0x6, %rax
movq 0x2c8(%rdi), %rbx
xorl %ebp, %ebp
cmpq 0x270(%rdi), %rax
jle 0x19f0e
leaq (%rax,%rax), %rcx
movq -0x8(%rsp), %r8
movw $0x0, 0x4(%r8)
movl $0x0, (%r8)
movq %rcx, 0x88(%rdi)
movq %rax, 0x270(%rdi)
movq %rax, %rcx
shlq $0x6, %rcx
vmovdqu (%rbx,%rcx), %ymm1
vmovdqa %ymm1, 0xa0(%rdi)
vmovdqa 0x140(%rdi), %ymm2
vmovdqa 0x180(%rdi), %ymm3
vpcmpeqb %ymm1, %ymm2, %ymm4
vpmovmskb %ymm4, %r11d
vpcmpeqb %ymm1, %ymm3, %ymm1
vpmovmskb %ymm1, %r12d
leaq 0x1(,%rax,2), %rcx
movq %rcx, 0x88(%rdi)
shlq $0x5, %rcx
vmovdqu (%rbx,%rcx), %ymm1
vmovdqa %ymm1, 0xc0(%rdi)
vpcmpeqb %ymm1, %ymm2, %ymm2
vpmovmskb %ymm2, %ecx
vpcmpeqb %ymm1, %ymm3, %ymm1
vpmovmskb %ymm1, %r15d
shlq $0x20, %rcx
orq %r11, %rcx
shlq $0x20, %r15
orq %r12, %r15
leaq (%r15,%r15), %r11
notq %r11
andq %r15, %r11
movq 0x250(%rdi), %r13
movq 0x240(%rdi), %r8
movq %r8, %r12
xorq %r13, %r12
movq %r11, %r9
andq %r12, %r9
notq %r12
andq %r11, %r12
addq %r15, %r9
xorl %r11d, %r11d
addq %r15, %r12
setb %r11b
movq %r11, 0x240(%rdi)
andq 0x258(%rdi), %r9
orq %r8, %r12
andq %r13, %r12
orq %r9, %r12
notq %r12
orq %r15, %r12
andq %rcx, %r12
movq %r12, 0xe0(%rdi)
vmovq %r12, %xmm1
vpclmulqdq $0x0, %xmm0, %xmm1, %xmm1
vmovq %xmm1, %rcx
xorq 0x248(%rdi), %rcx
movq %rcx, (%rdi)
sarq $0x3f, %rcx
movq %rcx, 0x248(%rdi)
cmpb $0x0, 0x32(%rdx)
jne 0x19f50
vmovdqa 0x1a0(%rdi), %ymm1
vpcmpeqb 0xa0(%rdi), %ymm1, %ymm2
vpmovmskb %ymm2, %ecx
vpcmpeqb 0xc0(%rdi), %ymm1, %ymm1
vpmovmskb %ymm1, %r8d
shlq $0x20, %r8
orq %rcx, %r8
movq %r8, 0x10(%rdx)
movq (%rdi), %rcx
notq %rcx
andq %r8, %rcx
movq %rcx, 0x10(%rdx)
movb $0x1, 0x32(%rdx)
cmpb $0x0, 0x34(%rdx)
jne 0x19f92
vmovdqa 0x200(%rdi), %ymm1
vpcmpeqb 0xa0(%rdi), %ymm1, %ymm2
vpmovmskb %ymm2, %ecx
vpcmpeqb 0xc0(%rdi), %ymm1, %ymm1
vpmovmskb %ymm1, %r8d
shlq $0x20, %r8
orq %rcx, %r8
movq %r8, 0x20(%rdx)
movq (%rdi), %rcx
notq %rcx
andq %r8, %rcx
movq %rcx, 0x20(%rdx)
movb $0x1, 0x34(%rdx)
movq 0x20(%rdx), %r12
orq 0x10(%rdx), %r12
testb $0x1, %bpl
je 0x19fb5
movq %r12, %r8
negq %r8
setb %cl
andq %r12, %r8
leaq -0x1(%r8), %r15
orq %r8, %r15
jmp 0x1a00c
movq (%rsi), %rcx
leal 0x3f(%rcx), %r8d
testq %rcx, %rcx
cmovnsl %ecx, %r8d
andl $0xc0, %r8d
subl %r8d, %ecx
movl $0x1, %r11d
shlq %cl, %r11
movq %r11, %r15
negq %r15
movq %r15, %r13
btcq %rcx, %r13
andq %r13, %r12
setne %cl
je 0x19ffc
movq %r12, %r8
negq %r8
andq %r12, %r8
movq %r8, %r15
subq %r11, %r15
jmp 0x1a006
movabsq $-0x8000000000000000, %r8 # imm = 0x8000000000000000
orq %r8, %r15
andq %r13, %r15
cmpb $0x0, 0x33(%rdx)
jne 0x1a04e
vmovdqa 0x1c0(%rdi), %ymm1
vpcmpeqb 0xa0(%rdi), %ymm1, %ymm2
vpmovmskb %ymm2, %r8d
vpcmpeqb 0xc0(%rdi), %ymm1, %ymm1
vpmovmskb %ymm1, %r9d
shlq $0x20, %r9
orq %r8, %r9
movq %r9, 0x18(%rdx)
movq (%rdi), %r8
notq %r8
andq %r9, %r8
movq %r8, 0x18(%rdx)
movb $0x1, 0x33(%rdx)
movq 0x18(%rdx), %r11
andq %r15, %r11
je 0x1a074
movq 0x270(%rdi), %rcx
shlq $0x6, %rcx
bsfq %r11, %r8
orq %rcx, %r8
movq %r8, (%rsi)
movl $0x3eb, %r14d           # imm = 0x3EB
jmp 0x1a09b
testb %cl, %cl
je 0x1a0a7
movq 0x270(%rdi), %rcx
shlq $0x6, %rcx
bsrq %r15, %r8
xorq $0x3f, %r8
orq %rcx, %r8
xorq $0x3f, %r8
movq %r8, (%rsi)
movl $0x3e9, %r14d           # imm = 0x3E9
xorl %ecx, %ecx
testb %cl, %cl
jne 0x19de7
jmp 0x1a0b1
incq %rax
movb $0x1, %bpl
movb $0x1, %cl
jmp 0x1a09d
cmpl $0x3eb, %r14d           # imm = 0x3EB
jne 0x1a0c4
movl $0x3eb, -0xc(%rsp)      # imm = 0x3EB
jmp 0x1a0e6
movq (%rsi), %rcx
movzbl (%r10,%rcx), %eax
cmpl $0x20, %eax
jne 0x1a0d9
incq %rcx
movq %rcx, (%rsi)
jmp 0x1a0c7
cmpl $0x5b, %eax
jne 0x1a0ed
movl $0x3e9, -0xc(%rsp)      # imm = 0x3E9
xorl %eax, %eax
jmp 0x1a407
leaq 0x3f(%rcx), %rax
testq %rcx, %rcx
cmovnsq %rcx, %rax
sarq $0x6, %rax
movl $0x1, %r14d
xorl %ebx, %ebx
xorl %ecx, %ecx
cmpq 0x2e0(%rdi), %rax
jge 0x1a106
cmpq 0x270(%rdi), %rax
jle 0x1a238
leaq (%rax,%rax), %r8
movq -0x8(%rsp), %r9
movw $0x0, 0x4(%r9)
movl $0x0, (%r9)
movq %r8, 0x88(%rdi)
movq %rax, 0x270(%rdi)
movq %rax, %r8
shlq $0x6, %r8
vmovdqu (%r10,%r8), %ymm1
vmovdqa %ymm1, 0xa0(%rdi)
vmovdqa 0x140(%rdi), %ymm2
vmovdqa 0x180(%rdi), %ymm3
vpcmpeqb %ymm1, %ymm2, %ymm4
vpmovmskb %ymm4, %r8d
vpcmpeqb %ymm1, %ymm3, %ymm1
vpmovmskb %ymm1, %r9d
leaq 0x1(,%rax,2), %r11
movq %r11, 0x88(%rdi)
shlq $0x5, %r11
vmovdqu (%r10,%r11), %ymm1
vmovdqa %ymm1, 0xc0(%rdi)
vpcmpeqb %ymm1, %ymm2, %ymm2
vpmovmskb %ymm2, %r15d
vpcmpeqb %ymm1, %ymm3, %ymm1
vpmovmskb %ymm1, %r12d
shlq $0x20, %r15
orq %r8, %r15
shlq $0x20, %r12
orq %r9, %r12
leaq (%r12,%r12), %r8
notq %r8
andq %r12, %r8
movq 0x250(%rdi), %r9
movq 0x240(%rdi), %r11
movq %r11, %r13
xorq %r9, %r13
movq %r8, %rbp
andq %r13, %rbp
notq %r13
andq %r8, %r13
addq %r12, %rbp
xorl %r8d, %r8d
addq %r12, %r13
setb %r8b
movq %r8, 0x240(%rdi)
andq 0x258(%rdi), %rbp
orq %r11, %r13
andq %r9, %r13
orq %rbp, %r13
notq %r13
orq %r12, %r13
andq %r15, %r13
movq %r13, 0xe0(%rdi)
vmovq %r13, %xmm1
vpclmulqdq $0x0, %xmm0, %xmm1, %xmm1
vmovq %xmm1, %r8
xorq 0x248(%rdi), %r8
movq %r8, (%rdi)
sarq $0x3f, %r8
movq %r8, 0x248(%rdi)
cmpb $0x0, 0x32(%rdx)
jne 0x1a27a
vmovdqa 0x1a0(%rdi), %ymm1
vpcmpeqb 0xa0(%rdi), %ymm1, %ymm2
vpmovmskb %ymm2, %r8d
vpcmpeqb 0xc0(%rdi), %ymm1, %ymm1
vpmovmskb %ymm1, %r9d
shlq $0x20, %r9
orq %r8, %r9
movq %r9, 0x10(%rdx)
movq (%rdi), %r8
notq %r8
andq %r9, %r8
movq %r8, 0x10(%rdx)
movb $0x1, 0x32(%rdx)
testb $0x1, %cl
jne 0x1a2a1
testb $0x1, %bl
je 0x1a2d3
movq 0x10(%rdx), %rcx
movq %rcx, %r8
negq %r8
setb %bpl
andq %rcx, %r8
leaq -0x1(%r8), %r15
orq %r8, %r15
jmp 0x1a34b
movq 0x10(%rdx), %r8
movq %r8, %r12
negq %r12
andq %r8, %r12
leaq -0x1(%r8), %r11
andq %r8, %r11
movq %r11, 0x10(%rdx)
setne %bpl
je 0x1a326
movq %r11, %r8
negq %r8
andq %r11, %r8
movq %r8, %r15
subq %r12, %r15
orq %r8, %r15
jmp 0x1a34d
movq (%rsi), %rcx
leal 0x3f(%rcx), %r8d
testq %rcx, %rcx
cmovnsl %ecx, %r8d
andl $0xc0, %r8d
subl %r8d, %ecx
movl $0x1, %r13d
shlq %cl, %r13
movq %r13, %r15
negq %r15
movq %r15, %r12
btcq %rcx, %r12
movq 0x10(%rdx), %rcx
andq %r12, %rcx
movq %rcx, 0x10(%rdx)
setne %bpl
je 0x1a33b
movq %rcx, %r8
negq %r8
andq %rcx, %r8
movq %r8, %r15
subq %r13, %r15
orq %r8, %r15
jmp 0x1a348
negq %r12
movabsq $-0x8000000000000000, %r8 # imm = 0x8000000000000000
orq %r8, %r12
movq %r12, %r15
jmp 0x1a34d
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
orq %rcx, %r15
andq %r12, %r15
movb $0x1, %cl
cmpb $0x0, 0x33(%rdx)
jne 0x1a38f
vmovdqa 0x1c0(%rdi), %ymm1
vpcmpeqb 0xa0(%rdi), %ymm1, %ymm2
vpmovmskb %ymm2, %r8d
vpcmpeqb 0xc0(%rdi), %ymm1, %ymm1
vpmovmskb %ymm1, %r9d
shlq $0x20, %r9
orq %r8, %r9
movq %r9, 0x18(%rdx)
movq (%rdi), %r8
notq %r8
andq %r9, %r8
movq %r8, 0x18(%rdx)
movb $0x1, 0x33(%rdx)
andq 0x18(%rdx), %r15
popcntq %r15, %r12
movl %r14d, %r11d
subl %r12d, %r11d
jle 0x1a3b2
testb %bpl, %bpl
je 0x1a3e8
subl %r12d, %r14d
incl %r14d
movl $0x5, %ebp
jmp 0x1a3f4
cmpl $0x2, %r14d
jl 0x1a3cc
leal 0x1(%r14), %r11d
leaq -0x1(%r15), %r8
andq %r8, %r15
decl %r11d
cmpl $0x2, %r11d
jg 0x1a3bc
movq 0x270(%rdi), %r8
shlq $0x6, %r8
bsfq %r15, %r9
orq %r8, %r9
movq %r9, (%rsi)
movl $0x1, %ebp
jmp 0x1a3f4
incq %rax
xorl %ecx, %ecx
movb $0x1, %bl
movl %r11d, %r14d
xorl %ebp, %ebp
testl %ebp, %ebp
je 0x1a106
cmpl $0x5, %ebp
je 0x1a106
movb $0x1, %al
testb %al, %al
je 0x1a478
movq (%rsi), %rax
cmpb $0x20, (%r10,%rax)
jne 0x1a429
leaq 0x1(%rax), %rbx
movq %rbx, (%rsi)
cmpb $0x20, 0x1(%r10,%rax)
movq %rbx, %rax
je 0x1a415
jmp 0x1a42c
movq %rax, %rbx
incq %rbx
movq %rbx, (%rsi)
movb (%r10,%rbx), %cl
incq %rbx
cmpb $0x20, %cl
je 0x1a42f
movl $0x3eb, %eax            # imm = 0x3EB
cmpb $0x7d, %cl
je 0x1a47c
cmpb $0x2c, %cl
jne 0x1a450
movq %rbx, (%rsi)
movq (%rsi), %rbx
incq %rbx
movzbl -0x1(%r10,%rbx), %r11d
cmpl $0x20, %r11d
je 0x1a468
cmpl $0xa, %r11d
jne 0x1a46d
movq %rbx, (%rsi)
jmp 0x1a453
cmpb $0x7d, %cl
jne 0x19dcc
jmp 0x1a47c
movl -0xc(%rsp), %eax
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
vzeroupper
retq