// File: BU-DiSC[P]BF-Shared-Hashing/./args.hxx
// Function: std::enable_if<!std::is_assignable<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::value, bool>::type args::ValueReader::operator()<int>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, int&)
typename std::enable_if<!std::is_assignable<T, std::string>::value, bool>::type
        operator ()(const std::string &name, const std::string &value, T &destination)
        {
            std::istringstream ss(value);
            ss >> destination >> std::ws;

            if (ss.rdbuf()->in_avail() > 0)
            {
#ifdef ARGS_NOEXCEPT
                (void)name;
                return false;
#else
                std::ostringstream problem;
                problem << "Argument '" << name << "' received invalid value type '" << value << "'";
                throw ParseError(problem.str());
#endif
            }
            return true;
        }

// Assembly:
subq $0x398, %rsp            # imm = 0x398
movq %rdi, 0x390(%rsp)
movq %rsi, 0x388(%rsp)
movq %rdx, 0x380(%rsp)
movq %rcx, 0x378(%rsp)
movq 0x380(%rsp), %rsi
leaq 0x1f8(%rsp), %rdi
movq %rdi, 0x38(%rsp)
movl $0x8, %edx
callq 0x67f0
movq 0x38(%rsp), %rdi
movq 0x378(%rsp), %rsi
callq 0x6330
movq %rax, 0x40(%rsp)
jmp 0x4abbf
movq 0x40(%rsp), %rdi
movq 0x353ed(%rip), %rsi     # 0x7ffb8
callq 0x61f0
jmp 0x4abd2
leaq 0x1f8(%rsp), %rdi
callq 0x61d0
movq %rax, 0x30(%rsp)
jmp 0x4abe6
movq 0x30(%rsp), %rdi
callq 0x68a0
movq %rax, 0x28(%rsp)
jmp 0x4abf7
movq 0x28(%rsp), %rax
cmpq $0x0, %rax
jle 0x4ad5f
leaq 0x70(%rsp), %rdi
callq 0x66c0
jmp 0x4ac12
leaq 0x1a524(%rip), %rsi     # 0x6513d
leaq 0x70(%rsp), %rdi
callq 0x6500
movq %rax, 0x20(%rsp)
jmp 0x4ac2a
movq 0x20(%rsp), %rdi
movq 0x388(%rsp), %rsi
callq 0x6490
movq %rax, 0x18(%rsp)
jmp 0x4ac43
movq 0x18(%rsp), %rdi
leaq 0x1a4f9(%rip), %rsi     # 0x65148
callq 0x6500
movq %rax, 0x10(%rsp)
jmp 0x4ac5b
movq 0x10(%rsp), %rdi
movq 0x380(%rsp), %rsi
callq 0x6490
movq %rax, 0x8(%rsp)
jmp 0x4ac74
movq 0x8(%rsp), %rdi
leaq 0x1a41e(%rip), %rsi     # 0x6509e
callq 0x6500
jmp 0x4ac87
movb $0x1, 0x4f(%rsp)
movl $0x10, %edi
callq 0x62b0
movq %rax, (%rsp)
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x6520
jmp 0x4acab
movq (%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x418a0
jmp 0x4acbb
movq (%rsp), %rdi
movb $0x0, 0x4f(%rsp)
leaq 0x346c5(%rip), %rsi     # 0x7f390
leaq -0xe9c2(%rip), %rdx     # 0x3c310
callq 0x6810
jmp 0x4ad92
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1f0(%rsp)
movl %eax, 0x1ec(%rsp)
jmp 0x4ad78
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1f0(%rsp)
movl %eax, 0x1ec(%rsp)
jmp 0x4ad53
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1f0(%rsp)
movl %eax, 0x1ec(%rsp)
jmp 0x4ad3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1f0(%rsp)
movl %eax, 0x1ec(%rsp)
leaq 0x50(%rsp), %rdi
callq 0x6340
testb $0x1, 0x4f(%rsp)
jne 0x4ad48
jmp 0x4ad51
movq (%rsp), %rdi
callq 0x63d0
jmp 0x4ad53
leaq 0x70(%rsp), %rdi
callq 0x6160
jmp 0x4ad78
leaq 0x1f8(%rsp), %rdi
callq 0x62a0
movb $0x1, %al
andb $0x1, %al
addq $0x398, %rsp            # imm = 0x398
retq
leaq 0x1f8(%rsp), %rdi
callq 0x62a0
movq 0x1f0(%rsp), %rdi
callq 0x6850
nopw %cs:(%rax,%rax)
nopl (%rax)