Function at 0x140179864
Capabilities:
Get system information on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xa0
and qword [rbp - 0x21], 0
mov r13, r8
mov r12, rdx
lea r8, [rbp - 0x31]
mov r15, rcx
lea rdx, [rbp - 9]
xor ebx, ebx
xor edi, edi
and qword [rbp - 9], rbx
mov rcx, r13
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], rdi
call fcn.14017ee7c
mov r14d, eax
test eax, eax
jns 0x1401798d3
mov ecx, eax
call fcn.140079c40
lea r12, [0x140012998]
jmp 0x140179a9e
mov edx, dword [rbp - 0x31]
lea r8, [rbp - 0x19]
mov rcx, qword [rbp - 9]
call fcn.140079744
mov r14d, eax
test eax, eax
jns 0x1401798f7
mov ecx, eax
call fcn.140079c40
mov rbx, qword [rbp - 0x19]
jmp 0x1401798c7
lea r8, [rbp - 0x29]
mov rcx, r13
lea rdx, [rbp - 0x11]
call fcn.14017efd8
mov r14d, eax
test eax, eax
jns 0x14017991f
mov ecx, eax
call fcn.140079c40
mov rbx, qword [rbp - 0x19]
mov rdi, qword [rbp - 0x11]
jmp 0x1401798c7
mov eax, dword [r13 + 4]
mov rbx, qword [rbp - 0x19]
mov rdi, qword [rbp - 0x11]
mov dword [rbp - 0x31], eax
mov eax, dword [r13]
mov dword [rbp - 1], eax
test eax, eax
je 0x140179b9b
sub eax, 1
je 0x140179b68
sub eax, 1
je 0x140179b4b
sub eax, 1
je 0x140179a19
cmp eax, 1
jne 0x140179a37
mov r12, qword [r15 + 0x18]
xor r15d, r15d
and qword [rbp - 0x29], 0
cmp dword [0x140440928], eax
mov rax, qword [r12]
cmove r15, qword [0x14043fff8]
mov r14, qword [rax + 0x178]
mov rax, qword [0x1403c1610]
mov rcx, r14
call rax
mov rax, r14
lea r8, [rbp - 0x29]
mov rdx, r15
mov rcx, r12
call rax
mov r14d, eax
test eax, eax
jns 0x1401799b1
mov ecx, eax
call fcn.140079c40
jmp 0x1401799be
mov rcx, qword [rbp - 0x29]
lea rdx, [rbp - 0x21]
call fcn.140076ce8
mov ecx, r14d
call fcn.140079c60
and qword [rbp + 0x17], 0
lea rax, [rbp - 0x29]
xor r9d, r9d
mov qword [rbp + 7], 3
lea r12, [0x140012998]
mov qword [rbp + 0x1f], rax
lea rdx, [rbp + 7]
mov qword [rbp + 0xf], r12
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
test r14d, r14d
jns 0x140179bc6
mov ecx, r14d
call fcn.140079c40
mov rbx, qword [rbp - 0x19]
mov rdi, qword [rbp - 0x11]
jmp 0x140179a9e
mov r8d, dword [rbp - 0x29]
lea r9, [rbp - 0x21]
mov rdx, rdi
mov rcx, r15
call fcn.140179ecc
mov r14d, eax
test eax, eax
js 0x1401798ea
lea r12, [0x140012998]
mov rax, qword [rbp - 0x21]
mov r8, rbx
mov r9d, dword [rbp - 1]
mov rdx, r13
mov qword [rsp + 0x28], rax
mov rcx, r15
mov eax, dword [rbp - 0x31]
mov dword [rsp + 0x20], eax
call fcn.14017b5ec
mov r14d, eax
test eax, eax
js 0x140179a97
mov r15, qword [rbp + 0x77]
mov rax, qword [r15]
mov r14, qword [rax + 0xa8]
mov rax, qword [0x1403c1610]
mov rcx, r14
call rax
mov rdx, qword [rbp - 0x21]
mov rax, r14
xor r8d, r8d
mov rcx, r15
call rax
mov r14d, eax
test eax, eax
jns 0x140179a9e
mov ecx, eax
call fcn.140079c40
mov ecx, r14d
call fcn.140079c60
test rdi, rdi
je 0x140179abf
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rbp - 9], 0
je 0x140179adb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 9]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
je 0x140179afc
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.140079c60
and qword [rbp + 0x17], 0
lea rax, [rbp - 0x21]
xor r9d, r9d
mov qword [rbp + 7], 3
lea rdx, [rbp + 7]
mov qword [rbp + 0xf], r12
mov ecx, 0xb9
mov qword [rbp + 0x1f], rax
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
lea r11, [rsp + 0xa0]
mov eax, r14d
mov rbx, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r9d, dword [rbp - 0x29]
lea rax, [rbp - 0x21]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, r15
call fcn.14017a320
jmp 0x140179bb6
mov rax, qword [rbp + 0x7f]
mov r9, rdi
mov qword [rsp + 0x38], rax
mov r8, rbx
lea rax, [rbp - 0x21]
mov rdx, r12
mov qword [rsp + 0x30], rax
mov rcx, r15
mov eax, dword [rbp - 0x31]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x29]
mov dword [rsp + 0x20], eax
call fcn.14017a8cc
jmp 0x140179bb6
mov r9d, dword [rbp - 0x29]
lea rax, [rbp - 0x21]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, r15
call fcn.14017b06c
mov r14d, eax
test eax, eax
jns 0x140179a37
jmp 0x1401798c0
mov r15, qword [rbp + 0x5f]
jmp 0x140179a3e