// File: /workspace/github_cpp_makefile_star2_O1/fondoger[P]C0-Compiler/src/grammar.cpp
// Function: pStatement()
static void pStatement()
{
    std::string id;
    switch (g_sym) {
        case SEMICOLON: pEmptyStatement(); break;
        case LBRACE:    readSymbol(); pStatementsList(); break;
        case IFSY:      pIfElseStatement(); break;
        case DOSY:      pDoWhileStatement(); break;
        case SWITCHSY:  pSwitchCaseStatement(); break;
        case PRINTFSY:  pPrintfStatement(); break;
        case SCANFSY:   pScanfStatement(); break;
        case RETURNSY:  pReturnStatement(); break;
        case IDENTSY:
            // must be function call statement or assignment statement
            // should be determined from symbol table
            id = g_id;
            readSymbol();
            switch (g_sym) {
                case LBRACK:    pArrayAssignmentStatement(id); break;
                case BECOMES:   pAssignmentStatement(id); break;
                case LPARENT:   
                case SEMICOLON: pFunctionCallStatement(id); break;
                default:        error(ERR_WRONG_STATEMENT); break;
            }
            break;
        default:
            test(Symset({SEMICOLON, LBRACE, IFSY, DOSY, SWITCHSY,
                PRINTFSY, SCANFSY, RETURNSY, IDENTSY}), Symset({}));
            break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x278, %rsp            # imm = 0x278
leaq -0xe0(%rbp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq 0x19703(%rip), %r13     # 0x29630
movl (%r13), %eax
cmpq $0xe, %rax
ja 0xffcc
leaq 0xc332(%rip), %rcx      # 0x1c274
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x196e6(%rip), %rsi     # 0x29638
leaq -0xf0(%rbp), %rdi
callq 0x3160
callq 0x19e44
movl (%r13), %eax
addl $-0x1d, %eax
cmpl $0x9, %eax
ja 0x10fb6
leaq 0xc336(%rip), %rcx      # 0x1c2b0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0xf0(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x1a8c5
testb %al, %al
je 0x11000
cmpl $0x2, -0x7c(%rbp)
jne 0x11033
leaq -0xf0(%rbp), %rdi
callq 0x1a883
movq %rax, %r14
cmpl $0x1d, (%r13)
jne 0x11066
movq %r14, %rdi
callq 0x131a4
jmp 0x110db
cmpl $0x21, %eax
je 0x10bcf
cmpl $0x26, %eax
jne 0xffe4
callq 0x19e44
jmp 0x110b1
movups 0xc9f1(%rip), %xmm0     # 0x1c9dc
leaq -0x280(%rbp), %rsi
movaps %xmm0, 0x10(%rsi)
movups 0xc9cf(%rip), %xmm0     # 0x1c9cc
movaps %xmm0, (%rsi)
movl $0x0, 0x20(%rsi)
leaq -0xf8(%rbp), %rdi
movl $0x9, %edx
callq 0x13eac
movq -0xf8(%rbp), %rdi
xorl %esi, %esi
callq 0xd8a2
jmp 0x110b1
leaq -0x270(%rbp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
leaq -0x80(%rbp), %rdi
callq 0x15d1f
cmpl $0x9, (%r13)
jne 0x111fd
callq 0x19e44
leaq -0x48(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0xa0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movabsq $0x2600000022, %rbx     # imm = 0x2600000022
leaq -0x58(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xa0(%rbp), %rdi
movq -0xc0(%rbp), %rsi
callq 0xd8a2
leaq -0x48(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x58(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10206
callq 0x19e44
leaq -0x280(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x11d47
leaq -0x38(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x30(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x58(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0xd8a2
leaq -0x38(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x30(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10206
callq 0x19e44
leaq -0x60(%rbp), %rsi
movl $0x21, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x40(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x30(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0xd8a2
leaq -0x60(%rbp), %rsi
movl $0x21, (%rsi)
leaq -0x40(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x40(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10206
callq 0x19e44
callq 0x15b45
leaq -0x280(%rbp), %rbx
leaq -0x50(%rbp), %r14
leaq -0x80(%rbp), %r15
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x1367a
cmpl $0x22, (%r13)
jne 0x101cf
callq 0x15bd3
leaq -0x40(%rbp), %rdi
movl $0x13, (%rdi)
leaq 0x14d86(%rip), %rcx     # 0x24f80
leaq -0x80(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
callq 0x19e44
leaq -0x70(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1021d
callq 0x32a0
movq -0x280(%rbp), %rdi
cmpq %r12, %rdi
jne 0x110ac
jmp 0x110b1
leaq -0x280(%rbp), %rdi
callq 0x15d1f
cmpl $0x7, (%r13)
jne 0x1121c
callq 0x19e44
leaq -0x80(%rbp), %rdi
movl $0x13, (%rdi)
leaq 0x14d21(%rip), %rcx     # 0x24f80
leaq -0x280(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
callq 0xfefc
leaq -0x58(%rbp), %rsi
movl $0x8, (%rsi)
leaq -0x80(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movabsq $0x2600000022, %rbx     # imm = 0x2600000022
leaq -0xc0(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0xa0(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x80(%rbp), %rdi
movq -0xa0(%rbp), %rsi
callq 0xd8a2
leaq -0x58(%rbp), %rsi
movl $0x8, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0xc0(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x103d7
callq 0x19e44
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x48(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xc0(%rbp), %rdi
movq -0x58(%rbp), %rsi
callq 0xd8a2
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x48(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x103d7
callq 0x19e44
callq 0x11b38
leaq -0x48(%rbp), %rdi
movl $0x16, (%rdi)
leaq 0x14c0a(%rip), %rcx     # 0x24f80
leaq -0x280(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x38(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x48(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xd8a2
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
callq 0x19e44
jmp 0x10c12
leaq -0x280(%rbp), %rdi
callq 0x15dd5
leaq -0x80(%rbp), %rdi
callq 0x15fad
leaq -0xa0(%rbp), %rdi
callq 0x1617d
cmpl $0x5, (%r13)
jne 0x1125a
callq 0x19e44
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movabsq $0x2600000022, %rbx     # imm = 0x2600000022
leaq -0x48(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xc0(%rbp), %rdi
movq -0x58(%rbp), %rsi
callq 0xd8a2
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x48(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10be6
callq 0x19e44
callq 0x11b38
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x38(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x48(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xd8a2
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x38(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10be6
callq 0x19e44
leaq -0x38(%rbp), %rdi
movl $0x15, (%rdi)
leaq 0x14a76(%rip), %rcx     # 0x24f80
leaq -0x80(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
leaq -0x38(%rbp), %rdi
movl $0x13, (%rdi)
leaq 0x14a59(%rip), %rcx     # 0x24f80
leaq -0x280(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
callq 0xfefc
leaq -0x38(%rbp), %rdi
movl $0x14, (%rdi)
leaq 0x14a34(%rip), %rcx     # 0x24f80
leaq -0xa0(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
leaq -0x60(%rbp), %rsi
movl $0x6, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x50(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x40(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xd8a2
leaq -0x60(%rbp), %rsi
movl $0x6, (%rsi)
leaq -0x50(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x50(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10be6
callq 0x19e44
leaq -0x50(%rbp), %rdi
movl $0x13, (%rdi)
leaq 0x149ab(%rip), %rcx     # 0x24f80
leaq -0x80(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
callq 0xfefc
leaq -0x50(%rbp), %rdi
movl $0x13, (%rdi)
leaq 0x14989(%rip), %rcx     # 0x24f80
leaq -0xa0(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
jmp 0x10beb
leaq -0x270(%rbp), %r14
movq %r14, -0x10(%r14)
movq $0x0, -0x8(%r14)
movb $0x0, (%r14)
callq 0x19e44
movabsq $0x260000001d, %r15     # imm = 0x260000001D
leaq -0x80(%rbp), %rsi
movq %r15, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movabsq $0x2600000022, %rbx     # imm = 0x2600000022
leaq -0xa0(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xc0(%rbp), %rdi
movq -0x58(%rbp), %rsi
callq 0xd8a2
leaq -0xa0(%rbp), %rsi
movq %r15, (%rsi)
leaq -0x80(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movl (%r13), %eax
movq -0x80(%rbp), %rcx
btq %rax, %rcx
jae 0x10d17
cmpl $0x1d, %eax
jne 0x10c2b
callq 0x19e44
leaq -0x280(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x11d47
leaq -0x80(%rbp), %rdi
movl $0xb, (%rdi)
leaq 0x148ac(%rip), %rcx     # 0x24f80
leaq -0x280(%rbp), %rsi
movq %rcx, %rdx
callq 0x151b0
leaq -0xa0(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x80(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x48(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xd8a2
leaq -0xa0(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x80(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x80(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10d17
callq 0x19e44
jmp 0x10c4e
leaq -0x70(%rbp), %r14
movq %r14, -0x10(%r14)
xorl %eax, %eax
movq %rax, -0x8(%r14)
movb %al, (%r14)
leaq -0x90(%rbp), %r15
movq %r15, -0x10(%r15)
movq %rax, -0x8(%r15)
movb %al, (%r15)
leaq -0x280(%rbp), %rdi
callq 0x31f0
cmpl $0xd, (%r13)
jne 0x1123b
callq 0x19e44
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movabsq $0x2600000022, %r12     # imm = 0x2600000022
leaq -0xc0(%rbp), %rsi
movq %r12, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x58(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0xd8a2
leaq -0x30(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0xc0(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10e67
callq 0x19e44
cmpl $0x12, (%r13)
jne 0x10d28
leaq 0x18e3c(%rip), %rsi     # 0x29660
leaq -0xc0(%rbp), %rdi
callq 0x1abbf
leaq -0x80(%rbp), %rdi
leaq -0xc0(%rbp), %rbx
movq %rbx, %rsi
callq 0x3370
movq (%rbx), %rdi
leaq -0xb0(%rbp), %rbx
cmpq %rbx, %rdi
je 0x10857
callq 0x32a0
leaq -0x30(%rbp), %rdi
movl $0xf, (%rdi)
leaq -0xc0(%rbp), %rsi
movq %rbx, (%rsi)
movl $0x727473, 0x10(%rsi)   # imm = 0x727473
movq $0x3, 0x8(%rsi)
leaq 0x146ff(%rip), %rcx     # 0x24f80
leaq -0x80(%rbp), %rdx
callq 0x151b0
movq -0xc0(%rbp), %rdi
cmpq %rbx, %rdi
je 0x1089b
callq 0x32a0
callq 0x19e44
cmpl $0x24, (%r13)
jne 0x10da4
callq 0x19e44
leaq -0xa0(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x11d47
xorl %eax, %eax
cmpl $0x1, -0x60(%rbp)
sete %al
leaq 0xbd6f(%rip), %rcx      # 0x1c63f
leaq 0xba59(%rip), %rsi      # 0x1c330
cmoveq %rcx, %rsi
leaq -0xc0(%rbp), %rdi
movq %rbx, (%rdi)
negq %rax
leaq (%rsi,%rax), %rdx
addq $0x4, %rdx
callq 0x14454
leaq -0x30(%rbp), %rdi
movl $0xf, (%rdi)
leaq 0x1467a(%rip), %rcx     # 0x24f80
leaq -0xc0(%rbp), %rsi
leaq -0xa0(%rbp), %rdx
callq 0x151b0
jmp 0x10d93
callq 0x19e44
leaq -0x80(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x58(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movabsq $0x2600000022, %rax     # imm = 0x2600000022
leaq -0x280(%rbp), %rsi
movq %rax, (%rsi)
leaq -0x48(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x58(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0xd8a2
leaq -0x80(%rbp), %rsi
movl $0x1d, (%rsi)
leaq -0x280(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x280(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10f8a
movq %r13, %r15
callq 0x19e44
leaq -0x90(%rbp), %rbx
leaq -0x40(%rbp), %r14
leaq -0xa0(%rbp), %r12
leaq 0x18c7d(%rip), %r13     # 0x29638
movl $0x0, -0x40(%rbp)
movl $0x1, %edx
leaq -0x30(%rbp), %rdi
movq %r14, %rsi
callq 0x13eac
movabsq $0x2600000022, %rax     # imm = 0x2600000022
movq %rax, -0xa0(%rbp)
movl $0x2, %edx
leaq -0x38(%rbp), %rdi
movq %r12, %rsi
callq 0x13eac
movq -0x30(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0xd8a2
movl $0x0, -0x40(%rbp)
movl $0x1, %edx
movq %r12, %rdi
movq %r14, %rsi
callq 0x13eac
movq -0xa0(%rbp), %rax
movl (%r15), %ecx
btq %rcx, %rax
jae 0x10f8a
callq 0x19e44
movq %r13, %rdi
leaq -0xc0(%rbp), %rsi
callq 0x1a8c5
testb %al, %al
je 0x10acf
cmpl $0x1, -0xbc(%rbp)
jne 0x10a64
movl -0xb8(%rbp), %eax
addl $-0x3, %eax
cmpl $-0x3, %eax
ja 0x10b56
leaq -0x70(%rbp), %rax
movq %rax, -0x80(%rbp)
movq $0x2e, -0xa0(%rbp)
leaq -0x80(%rbp), %rdi
movq %r12, %rsi
xorl %edx, %edx
callq 0x3490
movq %rax, -0x80(%rbp)
movq -0xa0(%rbp), %rcx
movq %rcx, -0x70(%rbp)
movups 0xbca4(%rip), %xmm0     # 0x1c73f
movups %xmm0, 0x1e(%rax)
movups 0xbc8b(%rip), %xmm0     # 0x1c731
movups %xmm0, 0x10(%rax)
movups 0xbc70(%rip), %xmm0     # 0x1c721
movups %xmm0, (%rax)
movq %rcx, -0x78(%rbp)
movb $0x0, (%rax,%rcx)
leaq -0x80(%rbp), %rdi
callq 0xdcc8
movq -0x80(%rbp), %rdi
leaq -0x70(%rbp), %rax
jmp 0x10b4c
leaq -0x270(%rbp), %rax
movq %rax, -0x280(%rbp)
movq $0x21, -0xa0(%rbp)
leaq -0x280(%rbp), %rdi
movq %r12, %rsi
xorl %edx, %edx
callq 0x3490
movq %rax, -0x280(%rbp)
movq -0xa0(%rbp), %rcx
movq %rcx, -0x270(%rbp)
movups 0xb958(%rip), %xmm0     # 0x1c46d
movups %xmm0, 0x10(%rax)
movups 0xb93d(%rip), %xmm0     # 0x1c45d
movups %xmm0, (%rax)
movb $0x72, 0x20(%rax)
movq %rcx, -0x278(%rbp)
movb $0x0, (%rax,%rcx)
leaq -0x280(%rbp), %rdi
callq 0xdcc8
movq -0x280(%rbp), %rdi
leaq -0x270(%rbp), %rax
cmpq %rax, %rdi
je 0x10b56
callq 0x32a0
xorl %eax, %eax
cmpl $0x1, -0xb8(%rbp)
movl $0x10, -0x40(%rbp)
leaq 0xb7c3(%rip), %rsi      # 0x1c330
leaq 0xbacb(%rip), %rcx      # 0x1c63f
cmoveq %rcx, %rsi
sete %al
movq %rbx, -0xa0(%rbp)
negq %rax
leaq (%rsi,%rax), %rdx
addq $0x4, %rdx
movq %r12, %rdi
callq 0x14454
movq %r14, %rdi
movq %r12, %rsi
movq %r13, %rdx
leaq 0x143db(%rip), %rcx     # 0x24f80
callq 0x151b0
movq -0xa0(%rbp), %rdi
cmpq %rbx, %rdi
je 0x10bbb
callq 0x32a0
cmpl $0x24, (%r15)
jne 0x10eae
callq 0x19e44
jmp 0x109bb
callq 0x19e44
cmpl $0x22, (%r13)
je 0xffda
callq 0xfefc
jmp 0x10bd4
callq 0x19e44
leaq -0x90(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x10c00
callq 0x32a0
leaq -0x70(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x10c12
callq 0x32a0
leaq -0x270(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x110ac
jmp 0x110b1
movl $0x0, -0x50(%rbp)
leaq -0x80(%rbp), %rdi
movl $0xb, (%rdi)
leaq 0x1433d(%rip), %rcx     # 0x24f80
movq %rcx, %rsi
movq %rcx, %rdx
callq 0x151b0
movl -0x50(%rbp), %eax
cmpl 0x14351(%rip), %eax     # 0x24fa8
je 0x10cbf
leaq -0x70(%rbp), %r15
movq %r15, -0x10(%r15)
leaq -0xa0(%rbp), %rsi
movq $0x1a, (%rsi)
leaq -0x80(%rbp), %rdi
xorl %edx, %edx
callq 0x3490
leaq -0x80(%rbp), %rdi
movq %rax, (%rdi)
movq -0xa0(%rbp), %rcx
movq %rcx, 0x10(%rdi)
movups 0xbac7(%rip), %xmm0     # 0x1c75a
movups %xmm0, 0xa(%rax)
movups 0xbab2(%rip), %xmm0     # 0x1c750
movups %xmm0, (%rax)
movq %rcx, 0x8(%rdi)
movq (%rdi), %rax
movb $0x0, (%rax,%rcx)
callq 0xdcc8
movq -0x80(%rbp), %rdi
cmpq %r15, %rdi
je 0x10cbf
callq 0x32a0
leaq -0x60(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0xa0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x40(%rbp), %rsi
movq %rbx, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xa0(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0xd8a2
leaq -0x60(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0x40(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
callq 0x19e44
movq -0x280(%rbp), %rdi
jmp 0x10ea0
leaq -0x80(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x11d47
xorl %eax, %eax
cmpl $0x1, -0x60(%rbp)
sete %al
leaq 0xb8fa(%rip), %rcx      # 0x1c63f
leaq 0xb5e4(%rip), %rsi      # 0x1c330
cmoveq %rcx, %rsi
leaq -0xb0(%rbp), %rbx
movq %rbx, -0x10(%rbx)
negq %rax
leaq (%rsi,%rax), %rdx
addq $0x4, %rdx
leaq -0xc0(%rbp), %rdi
callq 0x14454
leaq -0x30(%rbp), %rdi
movl $0xf, (%rdi)
leaq 0x141fd(%rip), %rcx     # 0x24f80
leaq -0xc0(%rbp), %rsi
leaq -0x80(%rbp), %rdx
callq 0x151b0
movq -0xc0(%rbp), %rdi
cmpq %rbx, %rdi
je 0x10da4
callq 0x32a0
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0xc0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x38(%rbp), %rsi
movq %r12, (%rsi)
leaq -0x30(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xc0(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xd8a2
leaq -0x40(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x38(%rbp), %rax
movl (%r13), %ecx
btq %rcx, %rax
jae 0x10e67
callq 0x19e44
leaq -0xc8(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0x38(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x50(%rbp), %rsi
movq %r12, (%rsi)
leaq -0x40(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xd8a2
leaq -0xc8(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0x50(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
callq 0x19e44
movq 0x1212d(%rip), %rsi     # 0x22fa0
leaq -0x280(%rbp), %rdi
callq 0x3210
leaq -0x200(%rbp), %rdi
callq 0x30e0
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x10e9c
callq 0x32a0
movq -0x80(%rbp), %rdi
cmpq %r14, %rdi
jne 0x110ac
jmp 0x110b1
leaq -0x60(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0xa0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0x50(%rbp), %rsi
movabsq $0x2600000022, %rax     # imm = 0x2600000022
movq %rax, (%rsi)
leaq -0x40(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0xa0(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xd8a2
leaq -0x60(%rbp), %rsi
movl $0x1e, (%rsi)
leaq -0x50(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x50(%rbp), %rax
movl (%r15), %ecx
btq %rcx, %rax
jae 0x10f8a
callq 0x19e44
leaq -0xcc(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0x50(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
leaq -0xc8(%rbp), %rsi
movabsq $0x2600000022, %rax     # imm = 0x2600000022
movq %rax, (%rsi)
leaq -0x60(%rbp), %rdi
movl $0x2, %edx
callq 0x13eac
movq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0xd8a2
leaq -0xcc(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0xc8(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
callq 0x19e44
jmp 0x110b1
leaq -0xf0(%rbp), %rdi
callq 0x11908
jmp 0x110b1
leaq -0xf0(%rbp), %rdi
callq 0x11532
jmp 0x110b1
leaq -0x290(%rbp), %rbx
movq %rbx, -0x10(%rbx)
movabsq $0x747320676e6f7277, %rax # imm = 0x747320676E6F7277
movq %rax, (%rbx)
movabsq $0x746e656d65746174, %rax # imm = 0x746E656D65746174
movq %rax, 0x7(%rbx)
movq $0xf, -0x8(%rbx)
movb $0x0, 0xf(%rbx)
leaq -0x2a0(%rbp), %rdi
callq 0xdcc8
movq -0x2a0(%rbp), %rdi
jmp 0x110a7
leaq -0x270(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xb44b(%rip), %rsi      # 0x1c45d
leaq 0xb465(%rip), %rdx      # 0x1c47e
leaq -0x280(%rbp), %rdi
callq 0x14454
leaq -0x280(%rbp), %rdi
callq 0xdcc8
jmp 0x110a0
leaq -0x270(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xb43a(%rip), %rsi      # 0x1c47f
leaq 0xb461(%rip), %rdx      # 0x1c4ad
leaq -0x280(%rbp), %rdi
callq 0x14454
leaq -0x280(%rbp), %rdi
callq 0xdcc8
jmp 0x110a0
movq 0x8(%r14), %rax
cmpq (%r14), %rax
je 0x110db
leaq -0x270(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xb4e2(%rip), %rsi      # 0x1c563
leaq 0xb505(%rip), %rdx      # 0x1c58d
leaq -0x280(%rbp), %rdi
callq 0x14454
leaq -0x280(%rbp), %rdi
callq 0xdcc8
movq -0x280(%rbp), %rdi
cmpq %rbx, %rdi
je 0x110b1
callq 0x32a0
movq -0xf0(%rbp), %rdi
leaq -0xe0(%rbp), %rax
cmpq %rax, %rdi
je 0x110c9
callq 0x32a0
addq $0x278, %rsp            # imm = 0x278
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0xa, -0xa0(%rbp)
movq 0x8(%r14), %rbx
subq (%r14), %rbx
sarq $0x2, %rbx
movl $0x1, %esi
cmpq $0xa, %rbx
jb 0x1114a
movl $0x4, %esi
movabsq $0x346dc5d63886594b, %rdi # imm = 0x346DC5D63886594B
movq %rbx, %rcx
cmpq $0x63, %rcx
jbe 0x11143
cmpq $0x3e7, %rcx            # imm = 0x3E7
jbe 0x11148
cmpq $0x2710, %rcx           # imm = 0x2710
jb 0x1114a
movq %rcx, %rax
mulq %rdi
shrq $0xb, %rdx
addl $0x4, %esi
cmpq $0x1869f, %rcx          # imm = 0x1869F
movq %rdx, %rcx
ja 0x1110d
addl $-0x3, %esi
jmp 0x1114a
addl $-0x2, %esi
jmp 0x1114a
decl %esi
movl %esi, %esi
leaq -0x270(%rbp), %r15
movq %r15, -0x10(%r15)
leaq -0x280(%rbp), %rdi
xorl %edx, %edx
callq 0x3350
leaq -0x280(%rbp), %r14
movq (%r14), %rdi
movl 0x8(%r14), %esi
movq %rbx, %rdx
callq 0x143d3
leaq 0x13dfe(%rip), %rcx     # 0x24f80
leaq -0xa0(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
movq %r14, %rdx
callq 0x151b0
movq -0x280(%rbp), %rdi
cmpq %r15, %rdi
je 0x111a9
callq 0x32a0
leaq -0xa0(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0x280(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
movq -0x280(%rbp), %rdi
xorl %esi, %esi
callq 0xd8a2
leaq -0xc0(%rbp), %rsi
movl $0x26, (%rsi)
leaq -0xa0(%rbp), %rdi
movl $0x1, %edx
callq 0x13eac
callq 0x19e44
jmp 0x110b1
leaq 0xb47b(%rip), %rdi      # 0x1c67f
leaq 0xb17e(%rip), %rsi      # 0x1c389
leaq 0xb47f(%rip), %rcx      # 0x1c691
movl $0xf8, %edx
callq 0x31b0
leaq 0xb435(%rip), %rdi      # 0x1c658
leaq 0xb15f(%rip), %rsi      # 0x1c389
leaq 0xb435(%rip), %rcx      # 0x1c666
movl $0x157, %edx            # imm = 0x157
callq 0x31b0
leaq 0xb4b1(%rip), %rdi      # 0x1c6f3
leaq 0xb140(%rip), %rsi      # 0x1c389
leaq 0xb4b5(%rip), %rcx      # 0x1c705
movl $0x16b, %edx            # imm = 0x16B
callq 0x31b0
leaq 0xb18d(%rip), %rdi      # 0x1c3ee
leaq 0xb121(%rip), %rsi      # 0x1c389
leaq 0xb18d(%rip), %rcx      # 0x1c3fc
movl $0xbf, %edx
callq 0x31b0
jmp 0x1129c
movq %rax, %r13
movq -0x280(%rbp), %rdi
cmpq %r15, %rdi
jne 0x11504
jmp 0x11512
jmp 0x1129c
jmp 0x112f4
jmp 0x11435
movq %rax, %r13
movq -0x280(%rbp), %rdi
jmp 0x114ff
movq %rax, %r13
movq -0x2a0(%rbp), %rdi
jmp 0x114ff
jmp 0x114d0
jmp 0x1147a
jmp 0x1147a
movq %rax, %r13
movq -0x80(%rbp), %rdi
cmpq %r15, %rdi
je 0x1141c
callq 0x32a0
jmp 0x1141c
jmp 0x11419
jmp 0x11419
jmp 0x112f4
jmp 0x11435
movq %rax, %r13
movq -0xc0(%rbp), %rdi
cmpq %rbx, %rdi
je 0x11438
callq 0x32a0
jmp 0x11438
jmp 0x11435
jmp 0x11419
jmp 0x11419
jmp 0x11419
jmp 0x1147a
jmp 0x11435
jmp 0x1147a
jmp 0x114a8
jmp 0x1147a
jmp 0x11435
jmp 0x1147a
jmp 0x114a8
jmp 0x114d0
jmp 0x1147a
jmp 0x114a8
jmp 0x114d0
jmp 0x11419
jmp 0x11419
jmp 0x11435
jmp 0x1147a
jmp 0x114a8
jmp 0x11435
jmp 0x114d0
jmp 0x1147a
jmp 0x114a8
jmp 0x11419
jmp 0x114d0
jmp 0x1147a
jmp 0x11435
jmp 0x114a8
jmp 0x114d0
jmp 0x1147a
jmp 0x114a8
jmp 0x11435
jmp 0x114d0
jmp 0x1147a
jmp 0x114a8
jmp 0x11419
jmp 0x11435
jmp 0x114a8
jmp 0x114d0
movq %rax, %r13
jmp 0x11492
jmp 0x11419
jmp 0x114a8
movq %rax, %r13
jmp 0x11457
movq %rax, %r13
jmp 0x114e5
jmp 0x11419
jmp 0x11435
jmp 0x1147a
jmp 0x114a8
jmp 0x114d0
jmp 0x1147a
jmp 0x114a8
jmp 0x11435
jmp 0x114d0
jmp 0x11419
jmp 0x1150f
movq %rax, %r13
movq -0x280(%rbp), %rdi
jmp 0x1146c
movq %rax, %r13
movq -0x80(%rbp), %rdi
leaq -0x70(%rbp), %rax
jmp 0x114b6
movq %rax, %r13
movq 0x11b61(%rip), %rsi     # 0x22fa0
leaq -0x280(%rbp), %rdi
callq 0x3210
leaq -0x200(%rbp), %rdi
callq 0x30e0
movq -0xa0(%rbp), %rdi
cmpq %r15, %rdi
je 0x11468
callq 0x32a0
movq -0x80(%rbp), %rdi
cmpq %r14, %rdi
jne 0x11504
jmp 0x11512
movq %rax, %r13
leaq -0x90(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x11492
callq 0x32a0
leaq -0x70(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x114ab
callq 0x32a0
jmp 0x114ab
jmp 0x114d0
movq %rax, %r13
leaq -0x270(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x11504
jmp 0x11512
movq %rax, %r13
movq -0x280(%rbp), %rdi
leaq -0x270(%rbp), %rax
jmp 0x114b6
movq %rax, %r13
leaq -0x70(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x114e5
callq 0x32a0
movq -0x280(%rbp), %rdi
cmpq %r12, %rdi
jne 0x11504
jmp 0x11512
jmp 0x1150f
movq %rax, %r13
movq -0xa0(%rbp), %rdi
cmpq %rbx, %rdi
je 0x11512
callq 0x32a0
jmp 0x11512
jmp 0x1150f
jmp 0x1150f
movq %rax, %r13
movq -0xf0(%rbp), %rdi
leaq -0xe0(%rbp), %rax
cmpq %rax, %rdi
je 0x1152a
callq 0x32a0
movq %r13, %rdi
callq 0x3480