Function at 0x1402c26f0
Capabilities:
Get system information on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
xor r14d, r14d
movaps xmmword [rax - 0x28], xmm6
movzx eax, word [0x140552c0c]
xorps xmm6, xmm6
movsd qword [rbp - 0x11], xmm6
mov rbx, rdx
mov rdi, rcx
mov qword [rbp - 0x29], r14
mov qword [rbp - 0x21], r14
mov qword [rbp - 0x19], r14
test ax, ax
jne 0x1402c2767
lea rcx, [rbp + 7]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
nop dword [rax + rax]
movzx ecx, word [rbp + 0x27]
xor eax, eax
lock cmpxchg word [0x140552c0c], cx
movzx ecx, word [0x140552c0c]
test cx, cx
jne 0x1402c2767
call fcn.140329e68
lea rcx, [rbp + 0x7f]
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetSystemTimeAsFileTime]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
nop dword [rax + rax]
mov rcx, rax
lea r9, [rbp - 0x39]
lea rax, [rbp - 0x31]
lea r8, [rbp - 9]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 1]
call qword [sym.imp.KERNEL32.dll_GetProcessTimes]
nop dword [rax + rax]
test eax, eax
jne 0x1402c27c4
call fcn.140329e68
movups xmm0, xmmword [rbp - 0x29]
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
jmp 0x1402c294d
mov qword [rbp + 0x77], r14
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
nop dword [rax + rax]
mov rcx, rax
lea rdx, [rbp + 0x77]
call qword [sym.imp.KERNEL32.dll_QueryProcessCycleTime]
nop dword [rax + rax]
test eax, eax
jne 0x1402c2804
call fcn.140329e68
mov qword [rbx], r14
mov qword [rbx + 8], r14
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], r14
jmp 0x1402c294d
lea rsi, [rdi + 0x30]
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
mov r8d, dword [rbp - 0x2d]
mov r10, qword [rdi + 8]
mov eax, dword [rbp + 0x7f]
shl r8, 0x20
test r10, r10
jne 0x1402c2860
mov ecx, dword [rbp + 0x83]
shl rcx, 0x20
add rcx, rax
mov eax, dword [rbp - 0x39]
mov qword [rdi + 8], rcx
mov ecx, dword [rbp - 0x35]
shl rcx, 0x20
add rcx, rax
mov rax, qword [rbp + 0x77]
mov qword [rdi + 0x20], rax
mov eax, dword [rbp - 0x31]
add r8, rax
mov qword [rdi + 0x10], rcx
jmp 0x1402c2921
mov r9d, dword [rbp + 0x83]
mov r11d, dword [rbp - 0x35]
shl r9, 0x20
add r9, rax
shl r11, 0x20
mov eax, dword [rbp - 0x39]
add r11, rax
mov eax, dword [rbp - 0x31]
add r8, rax
mov rax, qword [rbp + 0x77]
cmp r9, r10
jbe 0x1402c2915
sub rax, qword [rdi + 0x20]
mov rdx, r11
sub rdx, qword [rdi + 0x10]
mov rcx, r8
sub rcx, qword [rdi + 0x18]
xorps xmm0, xmm0
movsd xmm2, qword [0x1404202f0]
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x29], rdx
lea rax, [rcx + rdx]
mov qword [rbp - 0x21], rcx
cvtsi2sd xmm0, rax
test rax, rax
jns 0x1402c28ca
addsd xmm0, xmm2
mov rax, r9
xorps xmm1, xmm1
sub rax, r10
cvtsi2sd xmm1, rax
jns 0x1402c28de
addsd xmm1, xmm2
divsd xmm0, xmm1
movsd qword [rdi + 0x28], xmm0
movzx eax, word [0x140552c0c]
movsd xmm6, qword [rdi + 0x28]
movd xmm0, eax
mov rax, qword [rbp + 0x77]
cvtdq2pd xmm0, xmm0
divsd xmm6, xmm0
movsd qword [rdi + 0x28], xmm6
mulsd xmm6, qword [0x1404202d8]
movsd qword [rbp - 0x11], xmm6
mov qword [rdi + 0x20], rax
mov qword [rdi + 0x10], r11
mov qword [rdi + 8], r9
movsd qword [rdi + 0x28], xmm6
mov qword [rdi + 0x18], r8
movups xmm0, xmmword [rbp - 0x29]
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
test rsi, rsi
je 0x1402c294d
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
lea r11, [rsp + 0xb0]
mov rax, rbx
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret