Function at 0x140067170
Capabilities:
Get system information on windows

Disassembly:
mov r11, rsp
push rbx
push rbp
push rsi
push rdi
push r13
push r14
sub rsp, 0xc8
mov rax, qword [0x1400a6010]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x120]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov qword [rsp + 0x30], rax
mov r13, rcx
xor r14d, r14d
movups xmmword [rsp + 0x68], xmm0
mov ecx, 0xfeff90
mov rbx, r9
movups xmmword [rsp + 0x78], xmm0
mov rbp, r8
mov rsi, rdx
movups xmmword [r11 - 0x70], xmm0
mov qword [r11 - 0x60], r14
movups xmmword [rsp + 0x38], xmm1
movups xmmword [rsp + 0x48], xmm1
movups xmmword [rsp + 0x58], xmm1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdi, rax
test rax, rax
jne 0x140067206
lea rdx, str.CMem::GetAddressByPattern
lea rcx, str._s:_malloc___failed
call fcn.140013f00
lea eax, [rdi - 1]
jmp 0x1400673fb
mov qword [rsp + 0x110], r12
lea rcx, [rsp + 0x68]
mov qword [rsp + 0xc0], r15
movaps xmmword [rsp + 0xb0], xmm6
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp rsi, qword [rsp + 0x78]
jae 0x1400673c2
movsd xmm6, qword [0x14009b278]
movabs r15, 0x4000000040000005
nop word [rax + rax]
mov r9d, 0x30
lea r8, [rsp + 0x38]
mov rdx, rsi
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_VirtualQueryEx]
test eax, eax
je 0x140067469
mov eax, dword [rsp + 0x5c]
test eax, 0xf00
jne 0x1400673ad
add eax, 0xfffffffe
cmp eax, 0x3e
ja 0x1400673ad
bt r15, rax
jae 0x1400673ad
mov rsi, qword [rsp + 0x50]
xorps xmm0, xmm0
test rsi, rsi
js 0x1400672a8
cvtsi2sd xmm0, rsi
jmp 0x1400672c0
mov rax, rsi
mov rcx, rsi
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2sd xmm0, rcx
addsd xmm0, xmm0
divsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
cvttsd2si r12d, xmm0
cmp r12d, 1
jge 0x1400672e0
mov r12d, 1
movzx r15d, r14w
jmp 0x1400672f0
mov r15d, r14d
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rsp + 0x38]
mov r9d, 0xfeff90
movzx eax, r15w
mov r8, rdi
imul r14, rax, 0xfeff90
lea rax, [rsp + 0x98]
mov rcx, r13
sub rsi, r14
mov qword [rsp + 0x20], rax
cmp rsi, r9
cmovb r9, rsi
add rdx, r14
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140067438
xor ecx, ecx
mov eax, ecx
nop dword [rax + rax]
lea rsi, [r14 + rax]
test rbx, rbx
je 0x140067370
nop dword [rax]
cmp rax, 0xfeff90
jae 0x140067370
movzx edx, byte [rcx + rbp]
cmp byte [rdi + rax], dl
je 0x140067365
test dl, dl
jne 0x140067370
inc rax
inc rcx
cmp rcx, rbx
jb 0x140067350
cmp rcx, rbx
je 0x14006741b
inc rax
mov ecx, 0
cmp rax, 0xfeff90
jb 0x140067340
inc r15w
movzx eax, r15w
cmp eax, r12d
jge 0x1400673a0
mov rsi, qword [rsp + 0x50]
jmp 0x1400672f0
xor r14d, r14d
movabs r15, 0x4000000040000005
mov rsi, qword [rsp + 0x38]
add rsi, qword [rsp + 0x50]
cmp rsi, qword [rsp + 0x78]
jb 0x140067250
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rdx, str.CMem::GetAddressByPattern
lea rcx, str._s:_Address_not_found_with_given_pattern
call fcn.140013f00
mov eax, 0xffffffff
mov r15, qword [rsp + 0xc0]
mov r12, qword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140076740
add rsp, 0xc8
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
add rcx, rsi
mov qword [rax], rcx
xor eax, eax
jmp 0x1400673e3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.1400144a0
mov r8, rax
lea rdx, str.CMem::GetAddressByPattern
lea rcx, str._s:_ReadProcessMemory___failed___s
call fcn.140013f00
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1400673de
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.1400144a0
mov r8, rax
lea rdx, str.CMem::GetAddressByPattern
lea rcx, str._s:_VirtualQueryEx___failed___s
call fcn.140013f00
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1400673de