Function at 0x464950
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c9ee6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x90
push esi
push edi
xor edi, edi
mov dword [ebp - 0x14], ecx
xor esi, esi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x40], esi
lea eax, [ecx + 0x30]
mov dword [ebp - 4], esi
mov dword [ebp - 0x18], eax
mov eax, dword [ecx + 0x28]
mov edx, dword [ebp + 8]
cmp eax, 0x10
ja case.0x46499b.0
jmp dword [eax*4 + 0x465270]
push ecx
mov ecx, edx
call fcn.00467df0
test al, al
je 0x464dd9
mov ecx, dword [ebp - 0x18]
call fcn.0045ed60
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x28], eax
cmp eax, 0xb
jne 0x4649d2
mov ecx, dword [ebp + 8]
call fcn.004678a0
jmp 0x464afc
cmp eax, 4
jne 0x464cca
mov edi, dword [ebp + 8]
mov esi, ecx
mov ecx, edi
lea eax, [esi + 0x64]
push eax
call fcn.00467ce0
test al, al
je 0x464dd9
lea ecx, [esi + 0x30]
call fcn.0045ed60
mov dword [esi + 0x28], eax
cmp eax, 0xc
jne 0x464c2a
lea eax, [ebp - 0xd]
mov byte [ebp - 0xd], 0
push eax
lea ecx, [ebp - 0x4c]
call fcn.0045f0e0
mov ecx, dword [ebp - 0x18]
call fcn.0045ed60
mov edi, dword [ebp - 0x4c]
mov ecx, esi
mov esi, dword [ebp - 0x40]
mov dword [ecx + 0x28], eax
jmp 0x46498c
push ecx
mov ecx, edx
call fcn.00467810
test al, al
je 0x464dd9
mov ecx, dword [ebp - 0x18]
call fcn.0045ed60
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x28], eax
cmp eax, 0xa
jne 0x464a5f
mov ecx, dword [ebp + 8]
call fcn.004676f0
jmp 0x464afc
lea eax, [ebp - 0xd]
mov byte [ebp - 0xd], 1
push eax
lea ecx, [ebp - 0x4c]
call fcn.0045f0e0
mov esi, dword [ebp - 0x40]
mov edi, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x14]
jmp 0x46498c
movsd xmm0, qword [ecx + 0x90]
call fcn.00452e30
test al, al
je 0x464d55
push ecx
mov ecx, dword [ebp - 0x14]
movsd xmm1, qword [ecx + 0x90]
mov ecx, dword [ebp + 8]
call fcn.00467ea0
jmp 0x464afc
push 0
mov ecx, edx
call fcn.00467f10
jmp 0x464afc
mov ecx, edx
call fcn.00467f30
jmp 0x464afc
push 1
mov ecx, edx
call fcn.00467f10
jmp 0x464afc
push dword [ecx + 0x84]
push dword [ecx + 0x80]
mov ecx, edx
call fcn.00467ef0
jmp 0x464afc
lea eax, [ecx + 0x64]
mov ecx, edx
push eax
call fcn.00467e80
jmp 0x464afc
push dword [ecx + 0x8c]
push dword [ecx + 0x88]
mov ecx, edx
call fcn.00467ed0
test al, al
je 0x464dd9
test esi, esi
je 0x464fea
xor ecx, ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], ecx
test esi, esi
jns 0x464b36
mov eax, esi
neg eax
cmp ecx, eax
jae 0x464b36
mov ecx, esi
mov edx, edi
mov eax, ecx
not eax
shr eax, 5
lea eax, [eax*4 + 4]
sub edx, eax
jmp 0x464b40
add ecx, esi
mov eax, ecx
shr eax, 5
lea edx, [edi + eax*4]
and ecx, 0x1f
lea edi, [ecx - 1]
mov eax, edi
cmp ecx, 1
jae 0x464b5d
not eax
shr eax, 5
lea eax, [eax*4 + 4]
sub edx, eax
jmp 0x464b63
shr eax, 5
lea edx, [edx + eax*4]
and edi, 0x1f
mov eax, 1
mov ecx, edi
shl eax, cl
mov ecx, dword [ebp - 0x18]
test dword [edx], eax
je 0x464b9d
call fcn.0045ed60
mov edi, dword [ebp - 0x14]
mov dword [edi + 0x28], eax
cmp eax, 0xd
je 0x464c15
cmp eax, 0xa
jne 0x464de2
mov ecx, dword [ebp + 8]
call fcn.004676f0
jmp 0x464bbe
call fcn.0045ed60
mov edi, dword [ebp - 0x14]
mov dword [edi + 0x28], eax
cmp eax, 0xd
je 0x464bd9
cmp eax, 0xb
jne 0x464e63
mov ecx, dword [ebp + 8]
call fcn.004678a0
test al, al
je 0x464dd9
lea ecx, [ebp - 0x4c]
call fcn.00467f50
mov esi, dword [ebp - 0x40]
mov edi, dword [ebp - 0x4c]
jmp 0x464b04
lea ecx, [edi + 0x30]
call fcn.0045ed60
mov dword [edi + 0x28], eax
cmp eax, 4
jne 0x464f62
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x64]
push eax
call fcn.00467ce0
test al, al
je 0x464dd9
lea ecx, [edi + 0x30]
call fcn.0045ed60
mov dword [edi + 0x28], eax
cmp eax, 0xc
jne 0x464ee6
mov ecx, dword [ebp - 0x18]
call fcn.0045ed60
mov ecx, edi
mov edi, dword [ebp - 0x4c]
mov dword [ecx + 0x28], eax
jmp 0x46498c
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push str.object_separator
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
call fcn.004067f0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 5
push eax
push 0xc
lea eax, [ebp - 0x64]
mov ecx, esi
push eax
call fcn.0045e150
mov byte [ebp - 4], 6
mov ecx, dword [esi + 0x54]
movq xmm0, qword [esi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x7c]
push eax
mov byte [ebp - 4], 7
call fcn.0045e530
push esi
sub esp, 8
mov byte [ebp - 4], 8
mov ecx, edi
call fcn.00465540
lea ecx, [ebp - 0x7c]
mov byte [ebp + 0xb], al
call fcn.00406390
lea ecx, [ebp - 0x9c]
call fcn.004445f0
lea ecx, [ebp - 0x64]
jmp 0x465238
mov ax, word [0xbc9bf8]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x20], 0xa
movq xmm0, qword [str.object_key]
mov dword [ebp - 0x1c], 0xf
movq qword [ebp - 0x30], xmm0
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
mov esi, dword [ebp - 0x14]
lea eax, [ebp - 0x30]
push eax
push 4
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 1
push eax
mov ecx, esi
call fcn.0045e150
mov byte [ebp - 4], 2
mov ecx, dword [esi + 0x54]
movq xmm0, qword [esi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 3
call fcn.0045e530
mov byte [ebp - 4], 4
jmp 0x465213
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 0xd], 0x27
call fcn.0045e530
lea ecx, [ebp - 0xd]
mov byte [ebp - 4], 9
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.00468910
add esp, 4
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x98]
push eax
call fcn.00468a00
add esp, 8
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0xb
call fcn.0045e530
mov ecx, dword [ebp + 8]
push esi
sub esp, 8
mov byte [ebp - 4], 0xc
call fcn.00468c00
lea ecx, [ebp - 0x64]
mov byte [ebp + 0xb], al
call fcn.00406390
lea ecx, [ebp - 0x98]
call fcn.004445f0
lea ecx, [ebp - 0x7c]
call fcn.00406390
lea ecx, [ebp - 0x30]
call fcn.00406390
jmp 0x465251
mov byte [ebp + 0xb], 0
jmp 0x465251
mov eax, dword [str.array]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x30], eax
mov al, byte [0xbc78c4]
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x2b], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x1c
push eax
push 0xa
lea eax, [ebp - 0x7c]
mov ecx, edi
push eax
call fcn.0045e150
mov byte [ebp - 4], 0x1d
mov ecx, dword [edi + 0x54]
movq xmm0, qword [edi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [edi + 0x30]
call fcn.0045e530
mov byte [ebp - 4], 0x1f
jmp 0x465213
mov eax, dword [str.object]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x30], eax
mov ax, word [0xbc78bc]
mov dword [ebp - 0x20], 6
mov dword [ebp - 0x1c], 0xf
mov word [ebp - 0x2c], ax
mov byte [ebp - 0x2a], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x28
push eax
push 0xb
lea eax, [ebp - 0x7c]
mov ecx, edi
push eax
call fcn.0045e150
mov byte [ebp - 4], 0x29
mov ecx, dword [edi + 0x54]
movq xmm0, qword [edi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [edi + 0x30]
call fcn.0045e530
mov byte [ebp - 4], 0x2b
jmp 0x465213
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push str.object_separator
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
call fcn.004067f0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x24
push eax
push 0xc
lea eax, [ebp - 0x7c]
mov ecx, edi
push eax
call fcn.0045e150
mov byte [ebp - 4], 0x25
mov ecx, dword [edi + 0x54]
movq xmm0, qword [edi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [edi + 0x30]
call fcn.0045e530
mov byte [ebp - 4], 0x27
jmp 0x465213
mov ax, word [0xbc9bf8]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x20], 0xa
movq xmm0, qword [str.object_key]
mov dword [ebp - 0x1c], 0xf
movq qword [ebp - 0x30], xmm0
mov word [ebp - 0x28], ax
mov byte [ebp - 0x26], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x20
push eax
push 4
lea eax, [ebp - 0x7c]
mov ecx, edi
push eax
call fcn.0045e150
mov byte [ebp - 4], 0x21
mov ecx, dword [edi + 0x54]
movq xmm0, qword [edi + 0x4c]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [edi + 0x30]
call fcn.0045e530
mov byte [ebp - 4], 0x23
jmp 0x465213
mov byte [ebp + 0xb], 1
jmp 0x465251
mov eax, dword [str.value]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x30], eax
mov al, byte [0xbc8bcc]
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x2b], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0xd
push eax
push 0
lea eax, [ebp - 0x7c]
push eax
call fcn.0045e150
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0xe
movq xmm0, qword [ecx + 0x4c]
mov ecx, dword [ecx + 0x54]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0xf
call fcn.0045e530
mov byte [ebp - 4], 0x10
jmp 0x465213
movq xmm0, qword [ecx + 0x4c]
mov eax, dword [ecx + 0x54]
movq qword [ebp - 0x3c], xmm0
xorps xmm0, xmm0
cmp dword [ebp - 0x3c], 1
mov dword [ebp - 0x34], eax
movups xmmword [ebp - 0x30], xmm0
jne 0x46511e
push 0x65
push str.attempting_to_parse_an_empty_input__check_that_your_input_string_or_stream_contains_the_expected_JSON
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
call fcn.004067f0
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x11
push ecx
mov eax, dword [ecx + 0x54]
movq xmm0, qword [ecx + 0x4c]
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x3c]
movq qword [ebp - 0x3c], xmm0
push eax
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x12
call fcn.0045e530
mov ecx, dword [ebp + 8]
push esi
sub esp, 8
mov byte [ebp - 4], 0x13
call fcn.00465540
lea ecx, [ebp - 0x64]
mov byte [ebp + 0xb], al
call fcn.00406390
lea ecx, [ebp - 0x9c]
call fcn.004445f0
jmp 0x46523d
mov eax, dword [str.value]
mov dword [ebp - 0x30], eax
mov al, byte [0xbc8bcc]
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x2b], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x14
push eax
push 0x10
lea eax, [ebp - 0x7c]
push eax
call fcn.0045e150
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x15
movq xmm0, qword [ecx + 0x4c]
mov ecx, dword [ecx + 0x54]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x16
call fcn.0045e530
mov byte [ebp - 4], 0x17
jmp 0x465213
mov eax, dword [str.value]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
mov dword [ebp - 0x30], eax
mov al, byte [0xbc8bcc]
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x2b], 0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x18
push eax
push 0x10
lea eax, [ebp - 0x7c]
push eax
call fcn.0045e150
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0x19
movq xmm0, qword [ecx + 0x4c]
mov ecx, dword [ecx + 0x54]
push ecx
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
push eax
lea ecx, [ebp - 0x9c]
movq qword [ebp - 0x3c], xmm0
call fcn.004652c0
add esp, 0xc
mov esi, eax
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x1a
call fcn.0045e530
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp + 8]
push esi
sub esp, 8
call fcn.00465540
lea ecx, [ebp - 0x64]
mov byte [ebp + 0xb], al
call fcn.00406390
lea ecx, [ebp - 0x9c]
call fcn.004445f0
lea ecx, [ebp - 0x7c]
call fcn.00406390
mov eax, dword [ebp - 0x1c]
cmp eax, 0xf
jbe 0x465251
mov edx, dword [ebp - 0x30]
push eax
call fcn.00406520
add esp, 4
lea ecx, [ebp - 0x4c]
call fcn.004061b0
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp + 0xb]
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4