Function at 0x14001c450
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xa0
mov rax, qword [0x1400a2078]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rsi, r8
mov qword [rbp - 0x29], rdx
mov r14, rdx
mov qword [rbp - 0x49], rcx
lea r8, [0x1400927e4]
mov dword [rbp - 0x31], 0
lea rdx, str.__HOSTINFO.NPROC.
mov rbx, rcx
lea r9, [rbp - 0x31]
call fcn.140021140
cmp eax, 1
jne 0x14001c4cc
lea rcx, [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rbp - 1]
cmp dword [rbp - 0x31], eax
jg 0x14001c72d
lea r9, [rbp - 0x2d]
mov dword [rbp - 0x2d], 0
lea r8, [0x1400927e4]
mov rcx, rbx
lea rdx, str.__HOSTINFO.CORES.
call fcn.140021140
cmp eax, 1
jne 0x14001c500
call fcn.140022500
cmp dword [rbp - 0x2d], eax
jg 0x14001c72d
mov rcx, qword [rbp - 0x49]
lea r9, [0x1400ab0c0]
lea r8, [0x14008f260]
lea rdx, str.__LICGEN.TYPE.
call fcn.140021140
mov rcx, qword [rbp - 0x49]
mov edx, 0xa
call fcn.140044214
mov rbx, rax
test rax, rax
je 0x14001c72d
cmp byte [rax + 1], 0x21
jne 0x14001c72d
movzx ecx, byte [rax + 2]
sub cl, 0x3d
cmp cl, 1
ja 0x14001c72d
mov rax, qword [rbp - 0x49]
xor edi, edi
nop dword [rax + rax]
mov r8d, 0xa
lea rdx, [rbp - 0x39]
mov rcx, rax
call fcn.140053c94
mov dword [rbp + rdi*4 + 0x1f], eax
mov rax, qword [rbp - 0x39]
cmp rax, qword [rbp - 0x49]
jbe 0x14001c72d
cmp byte [rax], 0x2d
jne 0x14001c72d
inc rax
inc rdi
mov qword [rbp - 0x49], rax
cmp rdi, 3
jl 0x14001c560
mov qword [rbp - 0x49], rbx
cmp byte [rbx + 1], 0x21
mov dword [rbp + 0x17], 1
mov dword [rbp + 0x13], 1
mov dword [rbp + 0xf], 1
jne 0x14001c5ee
cmp byte [rbx + 2], 0x3e
jne 0x14001c5ee
lea rcx, [rbx + 3]
mov r8d, 0xa
lea rdx, [rbp - 0x49]
call fcn.140053c94
cmp eax, 1
jl 0x14001c72d
mov rbx, qword [rbp - 0x49]
cmp byte [rbx], 0xa
jne 0x14001c72d
mov dword [rbp + 0x13], eax
xor r12d, r12d
nop dword [rax]
nop word [rax + rax]
movsxd rax, dword [r14 + r12*4]
mov r13d, dword [rbp + r12*4 + 0x1f]
lea rdi, [rsi + rax*8]
test r13d, r13d
je 0x14001c717
xor r15d, r15d
xor r14d, r14d
test r13d, r13d
jle 0x14001c70c
nop word [rax + rax]
lea rcx, [rbx + 1]
mov qword [rbp - 0x49], rcx
cmp byte [rcx], 0x21
je 0x14001c64d
inc rcx
mov qword [rbp - 0x49], rcx
cmp byte [rcx], 0x3d
jne 0x14001c72d
inc rcx
mov edx, 0xa
mov qword [rbp - 0x49], rcx
call fcn.140044214
mov qword [rbp - 0x39], rax
mov rbx, rax
test rax, rax
je 0x14001c72d
inc qword [rbp - 0x49]
cmp rsi, rdi
jae 0x14001c700
mov byte [rax], 0
mov r8, qword [rbp - 0x49]
cmp r12, 1
jne 0x14001c6bc
mov rbx, r8
mov qword [rbp - 0x39], rbx
movsx ecx, byte [r8]
test ecx, ecx
je 0x14001c6c0
lea eax, [rcx - 0x61]
cmp eax, 5
ja 0x14001c6a8
sub cl, 0x20
mov byte [rbx], cl
mov rbx, qword [rbp - 0x39]
inc rbx
mov qword [rbp - 0x39], rbx
movsx ecx, byte [rbx]
test ecx, ecx
jne 0x14001c697
mov r8, qword [rbp - 0x49]
jmp 0x14001c6c0
mov rbx, qword [rbp - 0x39]
mov rax, qword [rsi]
mov rdx, r8
sub rdx, rax
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x14001c6e3
inc rax
test cl, cl
jne 0x14001c6d0
xor eax, eax
jmp 0x14001c6e8
sbb eax, eax
or eax, 1
test eax, eax
je 0x14001c6f9
jns 0x14001c700
add rsi, 8
cmp rsi, rdi
jb 0x14001c6c0
jmp 0x14001c700
inc r15d
add rsi, 8
inc r14d
cmp r14d, r13d
jl 0x14001c630
cmp r15d, dword [rbp + r12*4 + 0xf]
jl 0x14001c72d
mov r14, qword [rbp - 0x29]
inc r12
mov rsi, rdi
cmp r12, 3
jl 0x14001c600
lea rax, [rbx + 1]
jmp 0x14001c72f
xor eax, eax
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140042470
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret