Function at 0x140005b00
Capabilities:
Get system information on windows

Disassembly:
push rbx
push r12
sub rsp, 0xd8
mov rax, qword [0x14009e098]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x30], r8
mov rbx, rdx
mov r8d, ecx
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r12, rax
test rax, rax
jne 0x140005b65
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Failed_to_open_process.
call fcn.14000bd80
lea rdx, [0x14000bf50]
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]
jmp 0x140005d44
mov qword [rsp + 0xf8], rbp
lea rcx, [rsp + 0x68]
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xb0], r15
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov r15, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
cmp r15, r13
jae 0x140005d0b
mov rsi, 0xffffffffffffffff
nop word [rax + rax]
mov r9d, Ordinal_50
lea r8, [rsp + 0x38]
mov rdx, r15
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_VirtualQueryEx]
test rax, rax
je 0x140005ce8
cmp dword [rsp + 0x58], 0x1000
jne 0x140005c6e
cmp dword [rsp + 0x5c], 4
jne 0x140005c6e
mov rcx, qword [rsp + 0x50]
call fcn.14007b910
mov r9, qword [rsp + 0x50]
mov r14, rax
mov rdx, qword [rsp + 0x38]
lea rax, [rsp + 0x98]
mov r8, r14
mov qword [rsp + 0x20], rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140005cdf
mov rbp, qword [rsp + 0x98]
xor edi, edi
test rbp, rbp
je 0x140005c66
xor eax, eax
nop
mov r8, rsi
inc r8
cmp byte [rbx + r8], 0
jne 0x140005c43
lea rcx, [rax + r14]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140005c81
inc edi
mov eax, edi
cmp rax, rbp
jb 0x140005c40
mov rcx, r14
call fcn.14007b4d0
add r15, qword [rsp + 0x50]
cmp r15, r13
jb 0x140005bc0
jmp 0x140005d0b
mov rax, qword [rsp + 0x30]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140005c86
mov edx, edi
mov r9, rsi
add rdx, qword [rsp + 0x38]
mov r8, rax
mov rcx, r12
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x140005cd5
lea rdx, str.Failed_to_write_memory.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000bd80
lea rdx, [0x14000bf50]
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 rcx, r14
call fcn.14007b4d0
jmp 0x140005d0b
lea rdx, str.Failed_to_read_memory.
jmp 0x140005cb9
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Failed_to_query_memory.
call fcn.14000bd80
lea rdx, [0x14000bf50]
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 rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r14, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0xf8]
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.14007b4b0
add rsp, 0xd8
pop r12
pop rbx
ret