// File: /workspace/github_cpp_makefile_star2_O3/Chrom3D[P]Chrom3D/src/tclap-1.2.1/include/tclap/ValueArg.h
// Function: TCLAP::ValueArg<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::processArg(int*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&)
bool ValueArg<T>::processArg(int *i, std::vector<std::string>& args)
{
    if ( _ignoreable && Arg::ignoreRest() )
		return false;

    if ( _hasBlanks( args[*i] ) )
		return false;

    std::string flag = args[*i];

    std::string value = "";
    trimFlag( flag, value );

    if ( argMatches( flag ) )
    {
        if ( _alreadySet )
		{
			if ( _xorSet )
				throw( CmdLineParseException(
				       "Mutually exclusive argument already set!", 
				                             toString()) );
			else
				throw( CmdLineParseException("Argument already set!", 
				                             toString()) );
		}

        if ( Arg::delimiter() != ' ' && value == "" )
			throw( ArgParseException( 
							"Couldn't find delimiter for this argument!",
                             toString() ) );

        if ( value == "" )
        {
            (*i)++;
            if ( static_cast<unsigned int>(*i) < args.size() ) 
				_extractValue( args[*i] );
            else
				throw( ArgParseException("Missing a value for this argument!",
                                                    toString() ) );
        }
        else
			_extractValue( value );
				
        _alreadySet = true;
        _checkWithVisitor();
        return true;
    }	
    else
		return false;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
cmpb $0x1, 0xa0(%rdi)
jne 0x2545a
cmpb $0x0, 0x12f47(%rip)     # 0x3839f
jne 0x25498
movslq (%r15), %rcx
movq (%r14), %rdx
shlq $0x5, %rcx
leaq (%rdx,%rcx), %rax
movq 0x8(%rdx,%rcx), %rdx
cmpq $0x2, %rdx
jb 0x2549f
movq (%rax), %rcx
cmpb $0x7, 0x1(%rcx)
je 0x25498
movl $0x2, %edi
movq %rdi, %rsi
cmpq %rdi, %rdx
je 0x25493
leaq 0x1(%rsi), %rdi
cmpb $0x7, (%rcx,%rsi)
jne 0x25481
cmpq %rsi, %rdx
jbe 0x2549f
xorl %ebp, %ebp
jmp 0x255c5
leaq 0x58(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq (%rax), %rsi
addq %rsi, %rdx
leaq 0x48(%rsp), %rdi
callq 0xa4a2
leaq 0x78(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x69d3(%rip), %rdx      # 0x2be9b
leaq 0x68(%rsp), %rdi
movq %rdx, %rsi
callq 0xdf94
movq (%rbx), %rax
leaq 0x48(%rsp), %rsi
leaq 0x68(%rsp), %r12
movq %rbx, %rdi
movq %r12, %rdx
callq *0x50(%rax)
movq (%rbx), %rax
leaq 0x48(%rsp), %rsi
movq %rbx, %rdi
callq *0x30(%rax)
movl %eax, %ebp
testb %al, %al
je 0x25592
cmpb $0x1, 0x91(%rbx)
je 0x255d9
cmpb $0x20, 0x12e41(%rip)    # 0x38358
je 0x25532
leaq 0x697b(%rip), %rsi      # 0x2be9b
leaq 0x68(%rsp), %rdi
callq 0x6100
testl %eax, %eax
je 0x256b0
leaq 0x6962(%rip), %rsi      # 0x2be9b
movq %r12, %rdi
callq 0x6100
testl %eax, %eax
jne 0x2556e
movslq (%r15), %rax
incq %rax
movl %eax, (%r15)
movl %eax, %ecx
movq (%r14), %r12
movq 0x8(%r14), %rdx
subq %r12, %rdx
sarq $0x5, %rdx
cmpq %rcx, %rdx
jbe 0x2571b
shlq $0x5, %rax
addq %rax, %r12
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2588c
movb $0x1, 0x91(%rbx)
movq 0x98(%rbx), %rdi
testq %rdi, %rdi
je 0x25592
movq (%rdi), %rax
callq *0x10(%rax)
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x255a9
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6310
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x255c5
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x6310
movl %ebp, %eax
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movb 0xa1(%rbx), %bpl
movl $0x68, %edi
callq 0x61a0
movq %rax, %r14
leaq 0x18(%rsp), %r15
cmpb $0x1, %bpl
jne 0x25654
movq %r15, -0x10(%r15)
leaq 0x6478(%rip), %rsi      # 0x2ba7b
leaq 0x6499(%rip), %rdx      # 0x2baa3
leaq 0x8(%rsp), %rdi
callq 0xdf94
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x1e520
xorl %ebp, %ebp
leaq 0x11f68(%rip), %rsi     # 0x375a8
leaq -0x659(%rip), %rdx      # 0x24fee
movq %r14, %rdi
callq 0x6550
jmp 0x25784
movq %r15, -0x10(%r15)
leaq 0x5ca9(%rip), %rsi      # 0x2b308
leaq 0x5cb7(%rip), %rdx      # 0x2b31d
leaq 0x8(%rsp), %rdi
callq 0xdf94
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x1e520
xorl %ebp, %ebp
leaq 0x11f0c(%rip), %rsi     # 0x375a8
leaq -0x6b5(%rip), %rdx      # 0x24fee
movq %r14, %rdi
callq 0x6550
jmp 0x25784
movl $0x68, %edi
callq 0x61a0
movq %rax, %r14
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x6663(%rip), %rsi      # 0x2bd30
leaq 0x6686(%rip), %rdx      # 0x2bd5a
leaq 0x8(%rsp), %rdi
callq 0xdf94
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x24e24
xorl %ebp, %ebp
leaq 0x12286(%rip), %rsi     # 0x37990
leaq -0x723(%rip), %rdx      # 0x24fee
movq %r14, %rdi
callq 0x6550
jmp 0x25784
movl $0x68, %edi
callq 0x61a0
movq %rax, %r14
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x6623(%rip), %rsi      # 0x2bd5b
leaq 0x663e(%rip), %rdx      # 0x2bd7d
leaq 0x8(%rsp), %rdi
callq 0xdf94
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x24e24
xorl %ebp, %ebp
leaq 0x1221b(%rip), %rsi     # 0x37990
leaq -0x78e(%rip), %rdx      # 0x24fee
movq %r14, %rdi
callq 0x6550
jmp 0x25790
jmp 0x257cc
jmp 0x25790
jmp 0x257cc
jmp 0x25790
jmp 0x257cc
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x257ae
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6310
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x257c5
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6310
testb %bpl, %bpl
jne 0x257f1
jmp 0x25803
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x257f1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6310
jmp 0x257f1
jmp 0x257ee
jmp 0x257ee
jmp 0x257ee
movq %rax, %rbx
movq %r14, %rdi
callq 0x6280
jmp 0x25803
movq %rax, %rbx
jmp 0x2581a
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x2581a
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6310
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x25836
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x6310
movq %rbx, %rdi
callq 0x65b0