// File: 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:
subq $0x2c8, %rsp            # imm = 0x2C8
movq %rdi, 0x2b8(%rsp)
movq %rsi, 0x2b0(%rsp)
movq %rdx, 0x2a8(%rsp)
movq 0x2b8(%rsp), %rax
movq %rax, 0x38(%rsp)
movq $0x0, 0x2a0(%rsp)
movq 0x2b0(%rsp), %rax
movq 0x8(%rax), %rcx
movq %rcx, 0x40(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x48(%rsp)
leaq 0x27f(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x12c30
movq 0x40(%rsp), %rsi
movq 0x48(%rsp), %rdx
movq 0x50(%rsp), %rcx
leaq 0x280(%rsp), %rdi
callq 0xf9320
jmp 0xe33f2
leaq 0x27f(%rsp), %rdi
callq 0x12760
leaq 0xe8(%rsp), %rdi
leaq 0x280(%rsp), %rsi
movl $0x8, %edx
callq 0x12bc0
jmp 0xe341b
leaq 0xe8(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x12570
movq %rax, 0x30(%rsp)
jmp 0xe3437
movq 0x30(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x122e0
movb %al, 0x2f(%rsp)
jmp 0xe3451
movb 0x2f(%rsp), %al
testb $0x1, %al
jne 0xe345e
jmp 0xe3640
movq 0x2b0(%rsp), %rax
movq 0x8(%rax), %rcx
movq %rcx, 0x10(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x18(%rsp)
leaq 0x87(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x12c30
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq 0x20(%rsp), %rcx
leaq 0x88(%rsp), %rdi
callq 0xf9320
jmp 0xe34a8
leaq 0x870bc(%rip), %rsi     # 0x16a56b
leaq 0xa8(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0xf93a0
jmp 0xe34c6
leaq 0x86ec8(%rip), %rdx     # 0x16a395
leaq 0xc8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x228f0
jmp 0xe34e4
movq 0x38(%rsp), %rdi
movq 0x2b0(%rsp), %rdx
xorl %eax, %eax
movl %eax, %ecx
leaq 0xc8(%rsp), %rsi
callq 0xe0aa0
movb %al, 0xf(%rsp)
jmp 0xe3508
movb 0xf(%rsp), %al
andb $0x1, %al
movb %al, 0x2c7(%rsp)
leaq 0xc8(%rsp), %rdi
callq 0x12430
leaq 0xa8(%rsp), %rdi
callq 0x12430
leaq 0x88(%rsp), %rdi
callq 0x12430
leaq 0x87(%rsp), %rdi
callq 0x12760
movl $0x1, 0x80(%rsp)
jmp 0xe36a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
leaq 0x27f(%rsp), %rdi
callq 0x12760
jmp 0xe36ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
jmp 0xe36e0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
jmp 0xe36d3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
jmp 0xe362e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
jmp 0xe3621
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
jmp 0xe3614
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
leaq 0xc8(%rsp), %rdi
callq 0x12430
leaq 0xa8(%rsp), %rdi
callq 0x12430
leaq 0x88(%rsp), %rdi
callq 0x12430
leaq 0x87(%rsp), %rdi
callq 0x12760
jmp 0xe36d3
movsd 0x2a0(%rsp), %xmm0
leaq 0x58(%rsp), %rdi
callq 0xece60
jmp 0xe3655
movq 0x2a8(%rsp), %rdi
leaq 0x58(%rsp), %rsi
callq 0xe3700
jmp 0xe3669
leaq 0x58(%rsp), %rdi
callq 0xed680
movb $0x1, 0x2c7(%rsp)
movl $0x1, 0x80(%rsp)
jmp 0xe36a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x270(%rsp)
movl %eax, 0x26c(%rsp)
leaq 0x58(%rsp), %rdi
callq 0xed680
jmp 0xe36d3
leaq 0xe8(%rsp), %rdi
callq 0x122f0
leaq 0x280(%rsp), %rdi
callq 0x12430
movb 0x2c7(%rsp), %al
andb $0x1, %al
addq $0x2c8, %rsp            # imm = 0x2C8
retq
leaq 0xe8(%rsp), %rdi
callq 0x122f0
leaq 0x280(%rsp), %rdi
callq 0x12430
movq 0x270(%rsp), %rdi
callq 0x12c20
nopw (%rax,%rax)