// File: /workspace/github_cpp_makefile_star2_O3/drarwood[P]gags/InputParser.cpp
// Function: ParseCommand(int, char**, ARGS*)
void ParseCommand(int argc, char** argv, ARGS *a) {
    
    if (argc > 1) {
        
        // defaults
        a->seed       = 10000;
        a->popsize    = 10;
        a->mRate      = 0.01;
        a->iterations = 50000;
        a->ok         = true;
        
        for (int i = 1; i != argc; ++i) {
            if (string(argv[i]) == "--pheno" || string(argv[i]) == "-p") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->phenoString = argv[i+1];
                }
                else {
                    cout << "Not entered --pheno (-p) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--ns" || string(argv[i]) == "-n") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->nsString = argv[i+1];
                }
                else {
                    cout << "Not entered --ns (-n) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--means" || string(argv[i]) == "-m") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->meansString = argv[i+1];
                }
                else {
                    cout << "Not entered --means (-m) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--sds" || string(argv[i]) == "-s") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->sdsString = argv[i+1];
                }
                else {
                    cout << "Not entered --sds (-s) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--seed" || string(argv[i]) == "-r") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->seed = atoi(argv[i+1]);
                }
                else {
                    cout << "Not entered --seed (-r) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--mrate" || string(argv[i]) == "-y") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->mRate = atof(argv[i+1]);
                }
                else {
                    cout << "Not entered --mrate (-y) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--popsize" || string(argv[i]) == "-z") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->popsize = atoi(argv[i+1]);
                }
                else {
                    cout << "Not entered --popsize (-z) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--exclusions" || string(argv[i]) == "-e") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->exclusionsString = argv[i+1];
                }
                else {
                    cout << "Not entered --exclusions (-e) argument" << endl << endl;
                    a->ok = false;
                }
            } 
            else if (string(argv[i]) == "--iterations" || string(argv[i]) == "-i") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->iterations = atoi(argv[i+1]);
                }
                else {
                    cout << "Not entered --iterations (-i) argument" << endl << endl;
                    a->ok = false;
                }
            } 
            else if (string(argv[i]) == "--out" || string(argv[i]) == "-o") {
                if (i+1 <= argc-1 && string(argv[i+1]).substr(0,2) != "--") {
                    a->outString = argv[i+1];
                }
                else {
                    cout << "Not entered --out (-o) argument" << endl << endl;
                    a->ok = false;
                }
            }
            else if (string(argv[i]) == "--help" || string(argv[i]) == "-h") {
                a->ok = false;
            }
        }
        
        if (a->phenoString.empty() || a->meansString.empty() || a->sdsString.empty() || a->outString.empty() ) {
            a->ok = false;
        }

    }
    else {
        a->ok = false;
    }

}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x98, %rsp
cmpl $0x2, %edi
jl 0xa9ff
movq %rsi, %r14
movabsq $0xa00002710, %rax      # imm = 0xA00002710
movq %rax, 0xc0(%rdx)
movabsq $0x3f847ae147ae147b, %rax # imm = 0x3F847AE147AE147B
movq %rax, 0xd0(%rdx)
movl $0xc350, 0xc8(%rdx)     # imm = 0xC350
leaq 0xd8(%rdx), %rax
movq %rax, 0x50(%rsp)
movb $0x1, 0xd8(%rdx)
leaq 0x40(%rsp), %r13
leal -0x1(%rdi), %eax
movq %rax, 0x60(%rsp)
leaq 0xa0(%rdx), %rax
movq %rax, 0x68(%rsp)
leaq 0x80(%rdx), %rax
movq %rax, 0x70(%rsp)
leaq 0x60(%rdx), %rax
movq %rax, 0x78(%rsp)
leaq 0x40(%rdx), %rax
movq %rax, 0x80(%rsp)
movq %rdx, 0x58(%rsp)
leaq 0x20(%rdx), %rax
movq %rax, 0x88(%rsp)
movl %edi, %r12d
movl $0x1, %ebp
leaq 0x30(%rsp), %rbx
movq (%r14,%rbp,8), %rsi
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2bc4(%rip), %rsi      # 0xc704
callq 0x30c0
testl %eax, %eax
je 0x9b91
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2ba3(%rip), %rsi      # 0xc70c
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9b93
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0x9b93
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9baa
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0x9c65
cmpq 0x60(%rsp), %rbp
jae 0x9cd6
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x2b1a(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9c13
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9c2f
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0x9cd6
movq 0x8(%r14,%rbp,8), %rbx
movq %rbp, 0x90(%rsp)
movq 0x58(%rsp), %r15
movq 0x8(%r15), %r13
movq %rbx, %rdi
callq 0x3110
movq %r15, %rdi
movq 0x90(%rsp), %rbp
jmp 0xa05c
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2aaf(%rip), %rsi      # 0xc734
callq 0x30c0
testl %eax, %eax
je 0x9cf1
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2a8b(%rip), %rsi      # 0xc739
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9cf3
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0x9cf3
movl $0x21, %edx
movq 0x72f6(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x2a26(%rip), %rsi      # 0xc712
jmp 0xa254
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9d0a
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0x9dba
cmpq 0x60(%rsp), %rbp
jae 0x9e2b
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x29ba(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9d73
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9d8f
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0x9e2b
movq 0x8(%r14,%rbp,8), %rbx
movq 0x58(%rsp), %rax
movq 0x28(%rax), %r13
movq %rbx, %rdi
callq 0x3110
movq 0x88(%rsp), %rdi
jmp 0xa05c
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2981(%rip), %rsi      # 0xc75b
callq 0x30c0
testl %eax, %eax
je 0x9e46
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2960(%rip), %rsi      # 0xc763
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9e48
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0x9e48
movl $0x1e, %edx
movq 0x71a1(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x28fb(%rip), %rsi      # 0xc73c
jmp 0xa254
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9e5f
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0x9f0f
cmpq 0x60(%rsp), %rbp
jae 0x9f80
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x2865(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9ec8
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9ee4
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0x9f80
movq 0x8(%r14,%rbp,8), %rbx
movq 0x58(%rsp), %rax
movq 0x48(%rax), %r13
movq %rbx, %rdi
callq 0x3110
movq 0x80(%rsp), %rdi
jmp 0xa05c
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2859(%rip), %rsi      # 0xc788
callq 0x30c0
testl %eax, %eax
je 0x9f9b
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2836(%rip), %rsi      # 0xc78e
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9f9d
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0x9f9d
movl $0x21, %edx
movq 0x704c(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x27d0(%rip), %rsi      # 0xc766
jmp 0xa254
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0x9fb4
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa076
cmpq 0x60(%rsp), %rbp
jae 0xa0e7
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x2710(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa01d
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa039
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0xa0e7
movq 0x8(%r14,%rbp,8), %rbx
movq 0x58(%rsp), %rax
movq 0x68(%rax), %r13
movq %rbx, %rdi
callq 0x3110
movq 0x78(%rsp), %rdi
xorl %esi, %esi
movq %r13, %rdx
leaq 0x40(%rsp), %r13
movq %rbx, %rcx
movq %rax, %r8
callq 0x33a0
jmp 0xa2b2
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x271b(%rip), %rsi      # 0xc7b1
callq 0x30c0
testl %eax, %eax
je 0xa102
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x26f9(%rip), %rsi      # 0xc7b8
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa104
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa104
movl $0x1f, %edx
movq 0x6ee5(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x2694(%rip), %rsi      # 0xc791
jmp 0xa254
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa11b
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa1c2
cmpq 0x60(%rsp), %rbp
jae 0xa23e
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x25a9(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa184
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa1a0
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0xa23e
movq 0x8(%r14,%rbp,8), %rdi
callq 0x33b0
movq 0x58(%rsp), %rcx
movl %eax, 0xc0(%rcx)
jmp 0xa2b2
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x25fa(%rip), %rsi      # 0xc7dc
callq 0x30c0
testl %eax, %eax
je 0xa2c8
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x25d5(%rip), %rsi      # 0xc7e4
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa2ca
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa2ca
movl $0x20, %edx
movq 0x6d8e(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x2567(%rip), %rsi      # 0xc7bb
callq 0x32c0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3260
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31b0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3260
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31b0
movq 0x50(%rsp), %rax
movb $0x0, (%rax)
leaq 0x30(%rsp), %rbx
incq %rbp
cmpq %rbp, %r12
jne 0x9b25
jmp 0xaa0b
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa2e1
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa38c
cmpq 0x60(%rsp), %rbp
leaq 0x30(%rsp), %rbx
jae 0xa3fd
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x23e3(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %r15d
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa34b
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa367
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %r15d, %r15d
je 0xa3fd
movq 0x8(%r14,%rbp,8), %rdi
callq 0x3300
movq 0x58(%rsp), %rax
movsd %xmm0, 0xd0(%rax)
jmp 0xa2b7
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x245d(%rip), %rsi      # 0xc809
callq 0x30c0
testl %eax, %eax
je 0xa418
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x243e(%rip), %rsi      # 0xc813
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa41a
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa41a
movl $0x21, %edx
movq 0x6bcf(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x23d4(%rip), %rsi      # 0xc7e7
jmp 0xa56c
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa431
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa4da
cmpq 0x60(%rsp), %rbp
leaq 0x30(%rsp), %rbx
jae 0xa556
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x2293(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %r15d
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa49b
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa4b7
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %r15d, %r15d
je 0xa556
movq 0x8(%r14,%rbp,8), %rdi
callq 0x33b0
movq 0x58(%rsp), %rcx
movl %eax, 0xc4(%rcx)
jmp 0xa2b7
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2340(%rip), %rsi      # 0xc83a
callq 0x30c0
testl %eax, %eax
je 0xa5d4
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2320(%rip), %rsi      # 0xc847
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa5d6
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa5d6
movl $0x23, %edx
movq 0x6a76(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x22aa(%rip), %rsi      # 0xc816
callq 0x32c0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3260
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31b0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3260
movsbl %al, %esi
movq %rbx, %rdi
leaq 0x30(%rsp), %rbx
callq 0x3030
movq %rax, %rdi
callq 0x31b0
movq 0x50(%rsp), %rax
movb $0x0, (%rax)
jmp 0xa2b7
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa5ed
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa69d
cmpq 0x60(%rsp), %rbp
jae 0xa70e
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
leaq 0x30(%rsp), %rbx
movl $0x2, %ecx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x20d7(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %ebx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa656
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa672
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %ebx, %ebx
je 0xa70e
movq 0x8(%r14,%rbp,8), %rbx
movq 0x58(%rsp), %rax
movq 0x88(%rax), %r13
movq %rbx, %rdi
callq 0x3110
movq 0x70(%rsp), %rdi
jmp 0xa05c
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x21b4(%rip), %rsi      # 0xc871
callq 0x30c0
testl %eax, %eax
je 0xa729
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x2198(%rip), %rsi      # 0xc87e
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa72b
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa72b
movl $0x26, %edx
movq 0x68be(%rip), %rbx      # 0x10fd8
movq %rbx, %rdi
leaq 0x2126(%rip), %rsi      # 0xc84a
jmp 0xa254
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa742
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa7eb
cmpq 0x60(%rsp), %rbp
leaq 0x30(%rsp), %rbx
jae 0xa85c
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x1f82(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %r15d
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa7ac
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa7c8
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %r15d, %r15d
je 0xa85c
movq 0x8(%r14,%rbp,8), %rdi
callq 0x33b0
movq 0x58(%rsp), %rcx
movl %eax, 0xc8(%rcx)
jmp 0xa2b7
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x209d(%rip), %rsi      # 0xc8a8
callq 0x30c0
testl %eax, %eax
je 0xa877
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x207a(%rip), %rsi      # 0xc8ae
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa879
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa879
movl $0x26, %edx
movq 0x6770(%rip), %r15      # 0x10fd8
movq %r15, %rdi
leaq 0x200f(%rip), %rsi      # 0xc881
jmp 0xa9ba
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa890
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
je 0xa933
cmpq 0x60(%rsp), %rbp
leaq 0x30(%rsp), %rbx
jae 0xa9a4
movq 0x8(%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %r15
movq %r15, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movl $0x2, %ecx
movq %rbx, %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x32a0
movq %rbx, %rdi
leaq 0x1e34(%rip), %rsi      # 0xc70f
callq 0x30c0
movl %eax, %r15d
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa8fa
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa916
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
testl %r15d, %r15d
je 0xa9a4
movq 0x8(%r14,%rbp,8), %rsi
movq 0x68(%rsp), %rdi
callq 0x3330
jmp 0xa2b7
movq (%r14,%rbp,8), %rsi
leaq 0x30(%rsp), %rbx
movq %rbx, %rdi
leaq 0xe(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x1f7e(%rip), %rsi      # 0xc8d1
callq 0x30c0
testl %eax, %eax
je 0xa9d4
movq (%r14,%rbp,8), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
leaq 0xf(%rsp), %rdx
callq 0xafc6
movq %rbx, %rdi
leaq 0x1f5c(%rip), %rsi      # 0xc8d8
callq 0x30c0
testl %eax, %eax
sete %bl
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xa9d6
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xa9d6
movl $0x1f, %edx
movq 0x6628(%rip), %r15      # 0x10fd8
movq %r15, %rdi
leaq 0x1ef7(%rip), %rsi      # 0xc8b1
callq 0x32c0
movq %r15, %rdi
callq 0x3120
movq %rax, %rdi
callq 0x3120
jmp 0xa5c7
movb $0x1, %bl
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xa9ed
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
testb %bl, %bl
leaq 0x30(%rsp), %rbx
je 0xa2b7
jmp 0xa5c7
addq $0xd8, %rdx
movq %rdx, %rax
jmp 0xaa3b
movq 0x58(%rsp), %rcx
cmpq $0x0, 0x8(%rcx)
je 0xaa36
cmpq $0x0, 0x48(%rcx)
movq 0x50(%rsp), %rax
je 0xaa3b
cmpq $0x0, 0x68(%rcx)
je 0xaa3b
cmpq $0x0, 0xa8(%rcx)
jne 0xaa3e
jmp 0xaa3b
movq 0x50(%rsp), %rax
movb $0x0, (%rax)
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0xaa98
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaa98
jmp 0xaad3
jmp 0xaad3
jmp 0xaab7
jmp 0xaad3
movq %rax, %rbx
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0xaad6
movq 0x20(%rsp), %rsi
jmp 0xaac9
jmp 0xaad3
jmp 0xaab7
jmp 0xaad3
movq %rax, %rbx
movq 0x30(%rsp), %rdi
cmpq %r13, %rdi
je 0xaad6
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x3280
jmp 0xaad6
movq %rax, %rbx
movq %rbx, %rdi
callq 0x3450