// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/pkgs/RNBasics/json.cpp
// Function: Json::Reader::decodeDouble(Json::Reader::Token&, Json::Value&)
bool Reader::decodeDouble(Token& token, Value& decoded) {
  double value = 0;
  std::string buffer(token.start_, token.end_);
  std::istringstream is(buffer);
  if (!(is >> value))
    return addError("'" + std::string(token.start_, token.end_) +
                        "' is not a number.",
                    token);
  decoded = value;
  return true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x238, %rsp            # imm = 0x238
movq %rdx, %r15
movq %rsi, %rbx
movq %rdi, %r14
movq $0x0, 0x8(%rsp)
movq 0x8(%rsi), %rsi
movq 0x10(%rbx), %rdx
leaq 0x80(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x70(%rsp), %r12
movq %r12, %rdi
callq 0x1a88c
leaq 0xb8(%rsp), %rdi
movq %r12, %rsi
movl $0x8, %edx
callq 0x11a10
leaq 0xb8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x113f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x20(%rax,%rcx), %ebp
testb $0x5, %bpl
je 0x7a20e
movq 0x8(%rbx), %rsi
movq 0x10(%rbx), %rdx
leaq 0x20(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x10(%rsp), %rdi
callq 0x1a88c
leaq 0x451e9(%rip), %rcx     # 0xbf3bb
leaq 0x10(%rsp), %rdi
movl $0x1, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x116b0
leaq 0x40(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7a270
movq %rdx, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
jmp 0x7a278
movsd 0x8(%rsp), %xmm0
movzwl 0x8(%r15), %eax
movq (%r15), %rcx
movsd %xmm0, (%r15)
leaq 0x90(%rsp), %rdi
movq %rcx, (%rdi)
movl %eax, %ecx
andl $0xfe00, %ecx           # imm = 0xFE00
orl $0x3, %ecx
movw %cx, 0x8(%r15)
andl $0x1ff, %eax            # imm = 0x1FF
movw %ax, 0x8(%rdi)
movq 0x10(%r15), %rax
movq $0x0, 0x10(%r15)
movq %rax, 0x10(%rdi)
movups 0x18(%r15), %xmm0
xorps %xmm1, %xmm1
movups %xmm1, 0x18(%r15)
movups %xmm0, 0x18(%rdi)
callq 0x80736
jmp 0x7a348
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq %r13, %r15
movq 0x8(%rax), %rdx
leaq 0x30(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x44f47(%rip), %rsi     # 0xbf1e5
callq 0x11b50
leaq 0x60(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7a2ca
movq %rdx, 0x50(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x60(%rsp)
jmp 0x7a2d2
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x50(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r14, %rdi
movq %rbx, %rdx
xorl %ecx, %ecx
callq 0x7894e
movq 0x50(%rsp), %rdi
cmpq %r13, %rdi
je 0x7a312
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x115c0
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
movq %r15, %r13
je 0x7a32c
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x115c0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x7a348
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x115c0
movq 0x89c49(%rip), %rsi     # 0x103f98
leaq 0xb8(%rsp), %rdi
callq 0x11870
leaq 0x130(%rsp), %rdi
callq 0x111f0
movq 0x70(%rsp), %rdi
cmpq %r13, %rdi
je 0x7a383
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x115c0
testb $0x5, %bpl
sete %al
addq $0x238, %rsp            # imm = 0x238
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x50(%rsp), %rdi
cmpq %r13, %rdi
je 0x7a3bb
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x115c0
jmp 0x7a3bb
movq %rax, %rbx
movq 0x30(%rsp), %rdi
cmpq %r12, %rdi
je 0x7a3da
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x115c0
jmp 0x7a3da
movq %r13, %r15
movq %rax, %rbx
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x7a400
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x115c0
jmp 0x7a400
jmp 0x7a3fa
movq %r13, %r15
movq %rax, %rbx
movq 0x89b91(%rip), %rsi     # 0x103f98
leaq 0xb8(%rsp), %rdi
callq 0x11870
leaq 0x130(%rsp), %rdi
callq 0x111f0
jmp 0x7a429
movq %r13, %r15
movq %rax, %rbx
movq 0x70(%rsp), %rdi
cmpq %r15, %rdi
je 0x7a443
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x115c0
movq %rbx, %rdi
callq 0x11a60
nop