// File: jmmccracken[P]PAI/ccmth.cpp
// Function: ReadCmdLineArgs(int, char**)
bool ReadCmdLineArgs(int argc, char **argv){

    bool bInputSet = false,
         bOutputSet = false;

    for(int iter=1;iter < argc;iter++ ){

        if( (strcmp("-h",argv[iter]) == 0) || (strcmp("-?",argv[iter]) == 0) ){
            CmdLineHelp(argv[0]);
            return( false );

        }else if( strcmp("-E",argv[iter]) == 0 ){

            iEmbeddingDimension = atoi(argv[iter+1]);

        }else if( strcmp("-t",argv[iter]) == 0 ){

            iLagTimeStep = atoi(argv[iter+1]);

        }else if( strcmp("-Ey",argv[iter]) == 0 ){

            iYEmbeddingDimension = atoi(argv[iter+1]);

        }else if( strcmp("-ty",argv[iter]) == 0 ){

            iYLagTimeStep = atoi(argv[iter+1]);

        }else if( strcmp("-L",argv[iter]) == 0 ){

            iLibraryLength = atoi(argv[iter+1]);

        }else if( strcmp("-f",argv[iter]) == 0 ){

            cFilename = argv[iter+1];
            bInputSet = true;

        }else if( strcmp("-n",argv[iter]) == 0 ){

            iNumOfTimeSeries = atoi(argv[iter+1]);

        }else if( strcmp("-p",argv[iter]) == 0 ){

            iNumThreads = atoi(argv[iter+1]);

        }else if( strcmp("-o",argv[iter]) == 0 ){

            cOutputname = argv[iter+1];
            bOutputSet = true;

        }else if( strcmp("-eY",argv[iter]) == 0 ){

            cTSOutputname = argv[iter+1];
            bSaveEstimatedTS = true;

        }else if( strcmp("-v",argv[iter]) == 0 ){

            bVerboseFlag = true;

        }else if( strcmp("-PAI",argv[iter]) == 0 ){

            bPAI = true;

        }else if( strcmp("-L2",argv[iter]) == 0 ){

            bL2 = true;

        }else if( strcmp("-Op",argv[iter]) == 0 ){

            bOptThreading = true;
            iThreadWaitSec = atoi(argv[iter+1]);

        }else if( strcmp("-FindLag",argv[iter]) == 0 ){

            bFindLag = true;
            iMaxAutoCorrToCheck = atoi(argv[iter+1]);
            dCompareTolerance = atof(argv[iter+2]);
        }else if( strcmp("-FindE",argv[iter]) == 0 ){

            bFindE = true;
            iNumberOfTimeStep2Check = atoi(argv[iter+1]);
            dWeightToleranceLevel = atof(argv[iter+2]);

        }

    }

    //Make sure the required things were defined
    if( iEmbeddingDimension < 0 && !bFindLag ){
        fprintf(stderr, "Error: embedding dimension is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( iLagTimeStep < 0 && !bFindLag ){
        fprintf(stderr, "Error: lag time step is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( iLibraryLength < 0 ){
        fprintf(stderr, "Error: library length is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( !bInputSet ){
        fprintf(stderr, "Error: input data filename is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( iNumOfTimeSeries < 0 ){
        fprintf(stderr, "Error: number of time series in input data file not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( !bOutputSet ){
        fprintf(stderr, "Error: output data filename is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( bOptThreading && (iThreadWaitSec < 0) ){
        fprintf(stderr, "Error: Thread wait time must be defined as an integer > 0\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }
    if( !bSaveEstimatedTS ){
        fprintf(stderr, "Error: output data filename for estimated time series not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindLag && (iMaxAutoCorrToCheck < 0) ){
        fprintf(stderr, "Error: maximum autocorrelation lag time to check is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindLag && (dCompareTolerance < 0) ){
        fprintf(stderr, "Error: autocorrelation comparison tolerance is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindE && (iNumberOfTimeStep2Check < 0) ){
        fprintf(stderr, "Error: number of time steps to check is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindE && (dWeightToleranceLevel < 0) ){
        fprintf(stderr, "Error: weight tolerance is not defined\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindE && bFindLag ){
        fprintf(stderr, "Error: -FindLag and -FindE cannot be used together\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindE && bPAI ){
        fprintf(stderr, "Error: -FindE and -PAI cannot be used together\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( bFindLag && bPAI ){
        fprintf(stderr, "Error: -FindLag and -PAI cannot be used together\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }if( (iNumThreads != 0) && bSaveEstimatedTS ){
        fprintf(stderr, "Error: -eY cannot be used with threading\n\n");
        CmdLineHelp(argv[0]);
        return( false );
    }

    //Issue any warnings
    if( iNumThreads < 0 ){
        fprintf(stderr, "Warning: number of threads improperly defined; using default\n");
        iNumThreads = 0;
    }
    if( bVerboseFlag && (iNumThreads != 0) ){
        fprintf(stderr, "Warning: verbose logging is not available with multiple threads; turning off verbose output\n");
        bVerboseFlag = false;
    }


    return( true );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movb $0x0, -0x11(%rbp)
movb $0x0, -0x12(%rbp)
movl $0x1, -0x18(%rbp)
movl -0x18(%rbp), %eax
cmpl -0x8(%rbp), %eax
jge 0x7a66
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9dfb(%rip), %rdi      # 0x11408
callq 0x3290
cmpl $0x0, %eax
je 0x7634
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9de1(%rip), %rdi      # 0x1140b
callq 0x3290
cmpl $0x0, %eax
jne 0x7649
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9db2(%rip), %rdi      # 0x1140e
callq 0x3290
cmpl $0x0, %eax
jne 0x7687
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11b46(%rip)     # 0x191c8
jmp 0x7a54
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9d77(%rip), %rdi      # 0x11411
callq 0x3290
cmpl $0x0, %eax
jne 0x76c5
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11b0c(%rip)     # 0x191cc
jmp 0x7a52
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9d3c(%rip), %rdi      # 0x11414
callq 0x3290
cmpl $0x0, %eax
jne 0x7703
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11ae6(%rip)     # 0x191e4
jmp 0x7a50
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9d02(%rip), %rdi      # 0x11418
callq 0x3290
cmpl $0x0, %eax
jne 0x7741
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11aac(%rip)     # 0x191e8
jmp 0x7a4e
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9cc8(%rip), %rdi      # 0x1141c
callq 0x3290
cmpl $0x0, %eax
jne 0x777f
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11a56(%rip)     # 0x191d0
jmp 0x7a4c
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9c8d(%rip), %rdi      # 0x1141f
callq 0x3290
cmpl $0x0, %eax
jne 0x77bd
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x11a84(%rip)     # 0x19238
movb $0x1, -0x11(%rbp)
jmp 0x7a4a
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9c52(%rip), %rdi      # 0x11422
callq 0x3290
cmpl $0x0, %eax
jne 0x77fb
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x119de(%rip)     # 0x191d4
jmp 0x7a48
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9c17(%rip), %rdi      # 0x11425
callq 0x3290
cmpl $0x0, %eax
jne 0x7839
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x119ec(%rip)     # 0x19220
jmp 0x7a46
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9bdc(%rip), %rdi      # 0x11428
callq 0x3290
cmpl $0x0, %eax
jne 0x7877
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x119ba(%rip)     # 0x19228
movb $0x1, -0x12(%rbp)
jmp 0x7a44
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9ba1(%rip), %rdi      # 0x1142b
callq 0x3290
cmpl $0x0, %eax
jne 0x78b8
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x11984(%rip)     # 0x19230
movb $0x1, 0x1198f(%rip)     # 0x19242
jmp 0x7a42
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9b64(%rip), %rdi      # 0x1142f
callq 0x3290
cmpl $0x0, %eax
jne 0x78e1
movb $0x1, 0x11964(%rip)     # 0x19240
jmp 0x7a40
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9b3e(%rip), %rdi      # 0x11432
callq 0x3290
cmpl $0x0, %eax
jne 0x790a
movb $0x1, 0x11940(%rip)     # 0x19245
jmp 0x7a3e
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9b1a(%rip), %rdi      # 0x11437
callq 0x3290
cmpl $0x0, %eax
jne 0x7933
movb $0x1, 0x1191a(%rip)     # 0x19248
jmp 0x7a3c
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9af5(%rip), %rdi      # 0x1143b
callq 0x3290
cmpl $0x0, %eax
jne 0x7978
movb $0x1, 0x118ea(%rip)     # 0x19241
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11865(%rip)     # 0x191d8
jmp 0x7a3a
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9ab4(%rip), %rdi      # 0x1143f
callq 0x3290
cmpl $0x0, %eax
jne 0x79d8
movb $0x1, 0x118a7(%rip)     # 0x19243
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x11824(%rip)     # 0x191dc
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x2, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x3260
movsd %xmm0, 0x1181a(%rip)    # 0x191f0
jmp 0x7a38
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq 0x9a5d(%rip), %rdi      # 0x11448
callq 0x3290
cmpl $0x0, %eax
jne 0x7a36
movb $0x1, 0x11848(%rip)     # 0x19244
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x32c0
movl %eax, 0x117c8(%rip)     # 0x191e0
movq -0x10(%rbp), %rax
movl -0x18(%rbp), %ecx
addl $0x2, %ecx
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rdi
callq 0x3260
movsd %xmm0, 0x117c2(%rip)    # 0x191f8
jmp 0x7a38
jmp 0x7a3a
jmp 0x7a3c
jmp 0x7a3e
jmp 0x7a40
jmp 0x7a42
jmp 0x7a44
jmp 0x7a46
jmp 0x7a48
jmp 0x7a4a
jmp 0x7a4c
jmp 0x7a4e
jmp 0x7a50
jmp 0x7a52
jmp 0x7a54
jmp 0x7a56
jmp 0x7a58
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x75ee
cmpl $0x0, 0x1175b(%rip)     # 0x191c8
jge 0x7aa5
testb $0x1, 0x117cd(%rip)     # 0x19243
jne 0x7aa5
movq 0x11549(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x99c6(%rip), %rsi      # 0x1144f
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
cmpl $0x0, 0x11720(%rip)     # 0x191cc
jge 0x7ae4
testb $0x1, 0x1178e(%rip)     # 0x19243
jne 0x7ae4
movq 0x1150a(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x99b3(%rip), %rsi      # 0x1147b
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
cmpl $0x0, 0x116e5(%rip)     # 0x191d0
jge 0x7b1a
movq 0x114d4(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x99a3(%rip), %rsi      # 0x114a1
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, -0x11(%rbp)
jne 0x7b4d
movq 0x114a1(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9997(%rip), %rsi      # 0x114c8
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
cmpl $0x0, 0x11680(%rip)     # 0x191d4
jge 0x7b83
movq 0x1146b(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x998d(%rip), %rsi      # 0x114f4
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, -0x12(%rbp)
jne 0x7bb6
movq 0x11438(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9998(%rip), %rsi      # 0x11532
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x11684(%rip)     # 0x19241
je 0x7bf5
cmpl $0x0, 0x11612(%rip)     # 0x191d8
jge 0x7bf5
movq 0x113f9(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9986(%rip), %rsi      # 0x1155f
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x11646(%rip)     # 0x19242
jne 0x7c2b
movq 0x113c3(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x998c(%rip), %rsi      # 0x1159b
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x11611(%rip)     # 0x19243
je 0x7c6a
cmpl $0x0, 0x115a1(%rip)     # 0x191dc
jge 0x7c6a
movq 0x11384(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9991(%rip), %rsi      # 0x115df
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x115d2(%rip)     # 0x19243
je 0x7cad
xorps %xmm0, %xmm0
ucomisd 0x11572(%rip), %xmm0    # 0x191f0
jbe 0x7cad
movq 0x11341(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9990(%rip), %rsi      # 0x11621
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x11590(%rip)     # 0x19244
je 0x7cec
cmpl $0x0, 0x11523(%rip)     # 0x191e0
jge 0x7cec
movq 0x11302(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x998e(%rip), %rsi      # 0x1165e
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x11551(%rip)     # 0x19244
je 0x7d2f
xorps %xmm0, %xmm0
ucomisd 0x114f8(%rip), %xmm0    # 0x191f8
jbe 0x7d2f
movq 0x112bf(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9981(%rip), %rsi      # 0x11694
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x1150e(%rip)     # 0x19244
je 0x7d6e
testb $0x1, 0x11504(%rip)     # 0x19243
je 0x7d6e
movq 0x11280(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x996b(%rip), %rsi      # 0x116bd
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x114cf(%rip)     # 0x19244
je 0x7dad
testb $0x1, 0x114c7(%rip)     # 0x19245
je 0x7dad
movq 0x11241(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9961(%rip), %rsi      # 0x116f2
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
testb $0x1, 0x1148f(%rip)     # 0x19243
je 0x7dec
testb $0x1, 0x11488(%rip)     # 0x19245
je 0x7dec
movq 0x11202(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9953(%rip), %rsi      # 0x11723
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
cmpl $0x0, 0x1142d(%rip)     # 0x19220
je 0x7e28
testb $0x1, 0x11446(%rip)     # 0x19242
je 0x7e28
movq 0x111c3(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9947(%rip), %rsi      # 0x11756
movb $0x0, %al
callq 0x32a0
movq -0x10(%rbp), %rax
movq (%rax), %rdi
callq 0x80b0
movb $0x0, -0x1(%rbp)
jmp 0x7e88
cmpl $0x0, 0x113f1(%rip)     # 0x19220
jge 0x7e53
movq 0x11190(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x993f(%rip), %rsi      # 0x11781
movb $0x0, %al
callq 0x32a0
movl $0x0, 0x113cd(%rip)     # 0x19220
testb $0x1, 0x113e6(%rip)     # 0x19240
je 0x7e84
cmpl $0x0, 0x113bd(%rip)     # 0x19220
je 0x7e84
movq 0x1115c(%rip), %rax     # 0x18fc8
movq (%rax), %rdi
leaq 0x9949(%rip), %rsi      # 0x117bf
movb $0x0, %al
callq 0x32a0
movb $0x0, 0x113bc(%rip)     # 0x19240
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)