Function at 0x14017d3b4
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x14042eb28]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rdi, rdx
mov rsi, rcx
xor edx, edx
lea rcx, [rbp - 0x29]
lea r8d, [rdx + 0x48]
call sub.msvcrt.dll_memset
and qword [rbp + 0x17], 0
lea r14, [rsi + 0x20]
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
mov rcx, r14
movdqa xmmword [rbp + 7], xmm0
mov rdx, rdi
xor ebx, ebx
call fcn.14017d908
test al, al
je 0x14017d5d4
movsxd rax, dword [rbp - 0x69]
mov rcx, qword [0x1403be410]
mov r14, qword [rsi + 0x28]
lea r15, [rax + rax*8]
cmp rcx, qword [rdi + 0x10]
jne 0x14017d445
mov rax, qword [0x1403be418]
cmp rax, qword [rdi + 0x18]
je 0x14017d45e
movups xmm0, xmmword [rdi + 0x10]
movdqu xmmword [r14 + r15*8 + 0x10], xmm0
mov rax, qword [0x1403be418]
mov rcx, qword [0x1403be410]
cmp rcx, qword [rdi + 0x20]
jne 0x14017d46a
cmp rax, qword [rdi + 0x28]
je 0x14017d475
movups xmm0, xmmword [rdi + 0x20]
movdqu xmmword [r14 + r15*8 + 0x20], xmm0
cmp qword [rdi + 0x30], rbx
je 0x14017d4ef
lea rsi, [r14 + r15*8]
mov rbx, qword [rsi + 0x30]
test rbx, rbx
je 0x14017d4a9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8, [rbx - 4]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor ecx, ecx
call fcn.14007ab44
and qword [rsi + 0x30], 0
mov r13, qword [rdi + 0x30]
xor ebx, ebx
test r13, r13
je 0x14017d4dc
mov ebx, dword [r13 - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rsi + 0x30]
mov edx, ebx
mov rcx, r13
call fcn.14007a880
mov ebx, eax
test eax, eax
jns 0x14017d4e0
mov ecx, eax
call fcn.14007ab24
jmp 0x14017d4e0
and qword [rsi + 0x30], rbx
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
js 0x14017d730
cmp qword [rdi + 0x38], 0
je 0x14017d56a
lea rsi, [r14 + r15*8]
mov rbx, qword [rsi + 0x38]
test rbx, rbx
je 0x14017d524
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8, [rbx - 4]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor ecx, ecx
call fcn.14007ab44
and qword [rsi + 0x38], 0
mov r13, qword [rdi + 0x38]
xor ebx, ebx
test r13, r13
je 0x14017d557
mov ebx, dword [r13 - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rsi + 0x38]
mov edx, ebx
mov rcx, r13
call fcn.14007a880
mov ebx, eax
test eax, eax
jns 0x14017d55b
mov ecx, eax
call fcn.14007ab24
jmp 0x14017d55b
and qword [rsi + 0x38], rbx
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
js 0x14017d730
cmp qword [rdi + 0x40], 0
je 0x14017d737
lea rsi, [r14 + r15*8]
mov rbx, qword [rsi + 0x40]
test rbx, rbx
je 0x14017d5a3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8, [rbx - 4]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor ecx, ecx
call fcn.14007ab44
and qword [rsi + 0x40], 0
mov rdi, qword [rdi + 0x40]
xor ebx, ebx
test rdi, rdi
je 0x14017d5cb
mov ebx, dword [rdi - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rsi + 0x40]
mov edx, ebx
mov rcx, rdi
call fcn.14007a880
jmp 0x14017d718
and qword [rsi + 0x40], rbx
jmp 0x14017d725
movups xmm0, xmmword [rdi]
mov rsi, qword [rdi + 0x30]
movups xmm1, xmmword [rdi + 0x10]
movdqu xmmword [rbp - 0x29], xmm0
movups xmm0, xmmword [rdi + 0x20]
movdqu xmmword [rbp - 0x19], xmm1
movdqu xmmword [rbp - 9], xmm0
test rsi, rsi
je 0x14017d62b
mov ebx, dword [rsi - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rbp + 7]
mov edx, ebx
mov rcx, rsi
call fcn.14007a880
mov ebx, eax
test eax, eax
jns 0x14017d61c
mov ecx, eax
call fcn.14007ab24
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
js 0x14017d730
mov rsi, qword [rdi + 0x38]
test rsi, rsi
je 0x14017d668
mov ebx, dword [rsi - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rbp + 0xf]
mov edx, ebx
mov rcx, rsi
call fcn.14007a880
mov ebx, eax
test eax, eax
jns 0x14017d659
mov ecx, eax
call fcn.14007ab24
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
js 0x14017d730
mov rdi, qword [rdi + 0x40]
test rdi, rdi
je 0x14017d6a5
mov ebx, dword [rdi - 4]
xor ecx, ecx
call fcn.14007ab44
lea r8, [rbp + 0x17]
mov edx, ebx
mov rcx, rdi
call fcn.14007a880
mov ebx, eax
test eax, eax
jns 0x14017d696
mov ecx, eax
call fcn.14007ab24
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
js 0x14017d730
lea r8, [rbp - 0x69]
mov rcx, r14
lea rdx, [rbp - 0x29]
call fcn.14017d908
test al, al
je 0x14017d709
mov rdx, qword [r14 + 8]
xor r9d, r9d
movsxd rax, dword [rbp - 0x69]
mov qword [rbp - 0x61], 3
lea r8d, [r9 + 0x28]
lea rcx, [rax + rax*8]
lea rax, [rdx + rcx*8]
lea rcx, [0x140044538]
mov qword [rbp - 0x49], rax
mov qword [rbp - 0x59], rcx
lea rax, [rbp - 0x29]
lea rcx, [rbp - 0x39]
mov qword [rbp - 0x41], rax
mov qword [rbp - 0x51], rcx
lea rdx, [rbp - 0x61]
mov ecx, 0xb9
call sub.ntdll.dll_NtQuerySystemInformation
xor ebx, ebx
jmp 0x14017d725
mov edx, dword [rbp - 0x69]
lea r8, [rbp - 0x29]
mov rcx, r14
call fcn.14017dcf4
mov ebx, eax
test eax, eax
jns 0x14017d725
mov ecx, eax
call fcn.14007ab24
mov ecx, ebx
call fcn.14007ab44
test ebx, ebx
jns 0x14017d737
mov ecx, ebx
call fcn.14007ab24
mov ecx, ebx
call fcn.14007ab44
and qword [rbp - 0x51], 0
lea rax, [0x14003c338]
xor r9d, r9d
mov qword [rbp - 0x59], rax
lea rax, [rbp - 0x29]
mov qword [rbp - 0x61], 3
lea rdx, [rbp - 0x61]
mov qword [rbp - 0x49], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x28]
call sub.ntdll.dll_NtQuerySystemInformation
mov eax, ebx
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.14036e5e0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret