// File: /workspace/github_cpp_makefile_star2_O2/fgheng[P]keysound/src/cJSON.cc
// Function: parse_value(cJSON*, char const*)
static const char *parse_value(cJSON *item,const char *value)
{
	if (!value)						return 0;	/* Fail on null. */
	if (!strncmp(value,"null",4))	{ item->type=cJSON_NULL;  return value+4; }
	if (!strncmp(value,"false",5))	{ item->type=cJSON_False; return value+5; }
	if (!strncmp(value,"true",4))	{ item->type=cJSON_True; item->valueint=1;	return value+4; }
	if (*value=='\"')				{ return parse_string(item,value); }
	if (*value=='-' || (*value>='0' && *value<='9'))	{ return parse_number(item,value); }
	if (*value=='[')				{ return parse_array(item,value); }
	if (*value=='{')				{ return parse_object(item,value); }

	ep=value;return 0;	/* failure. */
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x10, %rsp
testq %rsi, %rsi
je 0x8dc7
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x3ff3(%rip), %rsi      # 0xc947
pushq $0x4
popq %rdx
movq %rbx, %rdi
callq 0x3170
testl %eax, %eax
je 0x89b4
leaq 0x3fe2(%rip), %rsi      # 0xc94c
pushq $0x5
popq %rdx
movq %rbx, %rdi
callq 0x3170
testl %eax, %eax
je 0x89be
leaq 0x3fd2(%rip), %rsi      # 0xc952
pushq $0x4
popq %rdx
movq %rbx, %rdi
callq 0x3170
testl %eax, %eax
je 0x89cc
movzbl (%rbx), %eax
cmpl $0x2d, %eax
je 0x89ec
cmpl $0x22, %eax
jne 0x89e0
movq %r14, %rdi
movq %rbx, %rsi
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
jmp 0x980e
movl $0x2, 0x18(%r14)
jmp 0x89d7
andl $0x0, 0x18(%r14)
addq $0x5, %rbx
jmp 0x8dc9
pushq $0x1
popq %rax
movl %eax, 0x18(%r14)
movl %eax, 0x28(%r14)
addq $0x4, %rbx
jmp 0x8dc9
leal -0x30(%rax), %ecx
cmpb $0x9, %cl
ja 0x8ac2
xorl %ecx, %ecx
cmpl $0x2d, %eax
sete %cl
leaq (%rbx,%rcx), %rdx
xorl %esi, %esi
cmpb $0x30, (%rbx,%rcx)
sete %sil
leaq (%rdx,%rsi), %rbx
movb (%rsi,%rdx), %cl
leal -0x31(%rcx), %edx
xorpd %xmm1, %xmm1
xorpd %xmm4, %xmm4
cmpb $0x8, %dl
ja 0x8a41
movsd 0x3e4f(%rip), %xmm0     # 0xc870
movzbl %cl, %ecx
addl $-0x30, %ecx
cvtsi2sd %ecx, %xmm2
mulsd %xmm0, %xmm4
addsd %xmm2, %xmm4
movb 0x1(%rbx), %cl
incq %rbx
leal -0x30(%rcx), %edx
cmpb $0xa, %dl
jb 0x8a21
cmpb $0x2e, %cl
jne 0x8a8c
movb 0x1(%rbx), %cl
leal -0x30(%rcx), %edx
xorpd %xmm1, %xmm1
cmpb $0x9, %dl
ja 0x8ab9
incq %rbx
movsd 0x3e10(%rip), %xmm0     # 0xc870
movsd 0x3e10(%rip), %xmm2     # 0xc878
movzbl %cl, %ecx
addl $-0x30, %ecx
cvtsi2sd %ecx, %xmm3
mulsd %xmm0, %xmm4
addsd %xmm3, %xmm4
addsd %xmm2, %xmm1
movb 0x1(%rbx), %cl
incq %rbx
leal -0x30(%rcx), %edx
cmpb $0xa, %dl
jb 0x8a68
movzbl %cl, %ecx
orl $0x20, %ecx
cmpl $0x65, %ecx
jne 0x8ab9
movzbl 0x1(%rbx), %edx
cmpl $0x2d, %edx
je 0x8bbf
pushq $0x1
popq %rcx
cmpl $0x2b, %edx
jne 0x8bc8
addq $0x2, %rbx
jmp 0x8bcb
xorpd %xmm0, %xmm0
jmp 0x8bef
cmpl $0x7b, %eax
je 0x8c32
cmpl $0x5b, %eax
jne 0x8c55
movl $0x5, 0x18(%r14)
incq %rbx
movq %rbx, %rdi
callq 0x8df0
movq %rax, %rbx
cmpb $0x5d, (%rax)
je 0x8c4d
pushq $0x40
popq %rdi
callq *0x9824(%rip)           # 0x12320
testq %rax, %rax
je 0x8da3
movq %rax, %r15
xorpd %xmm0, %xmm0
movupd %xmm0, 0x30(%rax)
movupd %xmm0, 0x20(%rax)
movupd %xmm0, 0x10(%rax)
movupd %xmm0, (%rax)
movq %rax, 0x10(%r14)
movq %rbx, %rdi
callq 0x8df0
movq %r15, %rdi
movq %rax, %rsi
callq 0x8931
movq %rax, %rdi
callq 0x8df0
testq %rax, %rax
je 0x8dc7
movq %rax, %r12
pushq $0x40
popq %r14
xorl %ebx, %ebx
movzbl (%r12), %eax
cmpl $0x2c, %eax
jne 0x8db3
movq %r14, %rdi
callq *0x97b9(%rip)           # 0x12320
testq %rax, %rax
je 0x8dc9
movq %rax, %r13
xorpd %xmm0, %xmm0
movupd %xmm0, 0x30(%rax)
movupd %xmm0, 0x20(%rax)
movupd %xmm0, 0x10(%rax)
movupd %xmm0, (%rax)
movq %rax, (%r15)
movq %r15, 0x8(%rax)
incq %r12
movq %r12, %rdi
callq 0x8df0
movq %r13, %rdi
movq %rax, %rsi
callq 0x8931
movq %rax, %rdi
callq 0x8df0
movq %rax, %r12
movq %r13, %r15
testq %rax, %rax
jne 0x8b50
jmp 0x8dc9
addq $0x2, %rbx
pushq $-0x1
popq %rcx
jmp 0x8bcb
incq %rbx
xorl %edx, %edx
movb (%rbx), %sil
addb $-0x30, %sil
cmpb $0x9, %sil
ja 0x8be8
imull $0xa, %edx, %edi
incq %rbx
movzbl %sil, %edx
addl %edi, %edx
jmp 0x8bcd
imull %ecx, %edx
cvtsi2sd %edx, %xmm0
cmpl $0x2d, %eax
jne 0x8bfc
xorpd 0x3cb4(%rip), %xmm4     # 0xc8b0
movapd %xmm4, (%rsp)
addsd %xmm0, %xmm1
movsd 0x3c63(%rip), %xmm0     # 0xc870
callq 0x3560
mulsd (%rsp), %xmm0
movsd %xmm0, 0x30(%r14)
cvttsd2si %xmm0, %eax
movl %eax, 0x28(%r14)
movl $0x3, 0x18(%r14)
jmp 0x8dc9
movl $0x6, 0x18(%r14)
incq %rbx
movq %rbx, %rdi
callq 0x8df0
movq %rax, %rbx
cmpb $0x7d, (%rax)
jne 0x8c61
incq %rbx
jmp 0x8dc9
movq %rbx, 0xbf84(%rip)      # 0x14be0
jmp 0x8dc7
pushq $0x40
popq %rdi
callq *0x96b6(%rip)           # 0x12320
testq %rax, %rax
je 0x8da3
movq %rax, %r15
xorpd %xmm0, %xmm0
movupd %xmm0, 0x30(%rax)
movupd %xmm0, 0x20(%rax)
movupd %xmm0, 0x10(%rax)
movupd %xmm0, (%rax)
movq %rax, 0x10(%r14)
movq %rbx, %rdi
callq 0x8df0
movq %r15, %rdi
movq %rax, %rsi
callq 0x980e
movq %rax, %rdi
callq 0x8df0
testq %rax, %rax
je 0x8dc7
movq 0x20(%r15), %rcx
movq %rcx, 0x38(%r15)
andq $0x0, 0x20(%r15)
cmpb $0x3a, (%rax)
jne 0x8daa
incq %rax
movq %rax, %rdi
callq 0x8df0
movq %r15, %rdi
movq %rax, %rsi
callq 0x8931
movq %rax, %rdi
callq 0x8df0
testq %rax, %rax
je 0x8dc7
movq %rax, %r13
pushq $0x40
popq %r14
xorl %ebx, %ebx
movzbl (%r13), %eax
cmpl $0x2c, %eax
jne 0x8dda
movq %r14, %rdi
callq *0x960e(%rip)           # 0x12320
testq %rax, %rax
je 0x8dc9
movq %rax, %r12
xorpd %xmm0, %xmm0
movupd %xmm0, 0x30(%rax)
movupd %xmm0, 0x20(%rax)
movupd %xmm0, 0x10(%rax)
movupd %xmm0, (%rax)
movq %rax, (%r15)
movq %r15, 0x8(%rax)
incq %r13
movq %r13, %rdi
callq 0x8df0
movq %r12, %rdi
movq %rax, %rsi
callq 0x980e
movq %rax, %rdi
callq 0x8df0
testq %rax, %rax
je 0x8dc9
movq 0x20(%r12), %rcx
movq %rcx, 0x38(%r12)
andq $0x0, 0x20(%r12)
cmpb $0x3a, (%rax)
jne 0x8daa
incq %rax
movq %rax, %rdi
callq 0x8df0
movq %r12, %rdi
movq %rax, %rsi
callq 0x8931
movq %rax, %rdi
callq 0x8df0
movq %rax, %r13
movq %r12, %r15
testq %rax, %rax
jne 0x8cfb
jmp 0x8dc9
andq $0x0, 0x10(%r14)
jmp 0x8dc7
movq %rax, 0xbe2f(%rip)      # 0x14be0
jmp 0x8dc7
cmpl $0x5d, %eax
jne 0x8dc0
incq %r12
movq %r12, %rbx
jmp 0x8dc9
movq %r12, 0xbe19(%rip)      # 0x14be0
xorl %ebx, %ebx
movq %rbx, %rax
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
cmpl $0x7d, %eax
jne 0x8de7
incq %r13
movq %r13, %rbx
jmp 0x8dc9
movq %r13, 0xbdf2(%rip)      # 0x14be0
jmp 0x8dc7