Function at 0x140002f40
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
sub rsp, 0x150
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1400870c0]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov r15, r9
mov r12, r8
mov r13, rdx
mov r8d, ecx
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r14, rax
test rax, rax
jne 0x140003119
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
movabs rax, 0x4f69e5102379b243
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0x1e7f6015f1a7eb2d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0x694a86e4ad447175
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0x6f9afa085a6d64f9
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0x90030c16b46dd1d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rdx, 0x73de62c05af6626
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x3b4981754f10d305
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc0], rax
movabs rax, 0x6e5f0e7081c8cb42
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc8], rax
movabs rax, 0x4964f597c8271e07
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
movabs rax, 0xf9da7a351f16bc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
movabs rax, 0x90030c14b7cb879
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xe0], rax
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0xe8], rax
vmovdqu ymm0, ymmword [rbp + 0xc0]
vpxor ymm1, ymm0, ymmword [rbp + 0x20]
vmovdqa ymmword [rbp + 0x20], ymm1
vmovdqa xmm2, xmmword [rbp + 0x40]
vxorps xmm2, xmm2, xmmword [rbp + 0xe0]
vmovdqa xmmword [rbp + 0x40], xmm2
lea rdx, [rbp + 0x20]
vzeroupper
call fcn.140006a80
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int____ptr64]
lea rdx, [0x140006c50]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003465
lea rcx, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov rcx, qword [rbp + 0x70]
mov rsi, rcx
mov r8, qword [rbp + 0x68]
sub rsi, r8
shr rsi, 2
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
xor edx, edx
mov qword [rbp + 0xa0], rdx
mov ebx, edx
mov rdi, qword [rbp + 0x98]
nop dword [rax]
nop word [rax + rax]
movsxd rax, ebx
imul rax, rsi
add rax, r8
cmp ebx, 3
je 0x140003173
lea rcx, [rax + rsi]
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], r13
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], r15
lea r9, [rbp + 0xc0]
cmp rdi, rdx
mov rdx, rdi
je 0x1400031c5
call fcn.140007ae0
mov rdx, qword [rbp + 0x98]
add rdx, 0x10
mov qword [rbp + 0x98], rdx
jmp 0x1400031d8
lea rcx, [rbp + 0x90]
call fcn.140007490
mov rdx, qword [rbp + 0x98]
lea eax, [rbx + 1]
movsxd rcx, eax
imul rcx, rsi
add rcx, qword [rbp + 0x68]
cmp ebx, 2
mov rax, qword [rbp + 0x70]
je 0x1400031f3
lea rax, [rcx + rsi]
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], r13
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], r15
lea r9, [rbp + 0xc0]
cmp rdx, qword [rbp + 0xa0]
je 0x140003246
call fcn.140007ae0
mov rdx, qword [rbp + 0x98]
add rdx, 0x10
mov qword [rbp + 0x98], rdx
jmp 0x140003259
lea rcx, [rbp + 0x90]
call fcn.140007490
mov rdx, qword [rbp + 0x98]
lea eax, [rbx + 2]
movsxd rcx, eax
imul rcx, rsi
add rcx, qword [rbp + 0x68]
cmp ebx, 1
mov rax, qword [rbp + 0x70]
je 0x140003274
lea rax, [rcx + rsi]
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], r13
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], r15
lea r9, [rbp + 0xc0]
cmp rdx, qword [rbp + 0xa0]
je 0x1400032c7
call fcn.140007ae0
mov rdx, qword [rbp + 0x98]
add rdx, 0x10
mov qword [rbp + 0x98], rdx
jmp 0x1400032da
lea rcx, [rbp + 0x90]
call fcn.140007490
mov rdx, qword [rbp + 0x98]
lea eax, [rbx + 3]
movsxd rcx, eax
imul rcx, rsi
add rcx, qword [rbp + 0x68]
test ebx, ebx
mov rax, qword [rbp + 0x70]
je 0x1400032f4
lea rax, [rcx + rsi]
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], r13
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], r15
lea r9, [rbp + 0xc0]
cmp rdx, qword [rbp + 0xa0]
je 0x140003347
call fcn.140007ae0
mov rdi, qword [rbp + 0x98]
add rdi, 0x10
mov qword [rbp + 0x98], rdi
jmp 0x14000335a
lea rcx, [rbp + 0x90]
call fcn.140007490
mov rdi, qword [rbp + 0x98]
add ebx, 4
cmp ebx, 4
jge 0x140003376
mov rcx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x68]
mov rdx, qword [rbp + 0xa0]
jmp 0x140003160
mov rbx, qword [rbp + 0x90]
cmp rbx, rdi
je 0x1400033c5
cmp dword [rbx + 8], 0
je 0x14000344d
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbx + 8], eax
je 0x140003441
movups xmm0, xmmword [rbx]
movaps xmmword [rbp], xmm0
xor edx, edx
lea rcx, [rbp]
call qword [sym.imp.MSVCP140.dll__Thrd_join]
test eax, eax
jne 0x140003435
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
add rbx, 0x10
cmp rbx, rdi
jne 0x140003382
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rbp + 0x90]
test rcx, rcx
je 0x140003465
mov rax, rcx
mov rdx, qword [rbp + 0x98]
cmp rcx, rdx
je 0x1400033ff
nop
cmp dword [rax + 8], 0
jne 0x140003459
add rax, 0x10
cmp rax, rdx
jne 0x1400033f0
mov rdx, qword [rbp + 0xa0]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003460
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003460
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov ecx, 2
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
call fcn.14006ac68
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.14006a700
lea r11, [rsp + 0x150]
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