Function at 0x140191f14
Capabilities:
Get system information on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
mov r12, r8
mov r15, rdx
mov rdi, rcx
xor r14d, r14d
xor r13d, r13d
call fcn.1401917fc
mov ebx, eax
test eax, eax
jns 0x140191f58
mov ecx, eax
jmp 0x140192149
lea r14, [rdi + 0x60]
test r14, r14
je 0x140191f6f
mov rcx, r14
call fcn.14006e234
mov r13d, 1
mov rcx, qword [rdi]
mov edx, dword [rcx + 4]
sub edx, 1
je 0x140191f8a
cmp edx, 1
je 0x140191f83
xor esi, esi
jmp 0x140191f8f
mov esi, 1
jmp 0x140191f8f
mov esi, reloc.OLEAUT32.dll_SafeArrayGetDim
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x140192134
cmp ecx, 1
jne 0x14019214e
cmp dword [r12], esi
jb 0x14019211c
cmp qword [r15], 0
je 0x14019211c
cmp dword [rdi + 0x38], esi
jae 0x140191ff5
mov r8d, dword [rdi + 0x38]
mov r9d, esi
sub r9d, dword [rdi + 0x38]
movzx ecx, byte [rdi + 0x37]
test ecx, ecx
je 0x140191fde
cmp ecx, 1
je 0x140191fd8
xor ecx, ecx
jmp 0x140191fe2
mov rcx, qword [rdi + 0x10]
jmp 0x140191fe2
lea rcx, [rdi + 0x10]
mov al, sil
sub al, byte [rdi + 0x38]
mov byte [r8 + rcx], al
inc r8
sub r9, 1
jne 0x140191fc7
test esi, esi
je 0x140192046
xor r8d, r8d
mov r11d, esi
movzx ecx, byte [rdi + 0x37]
test ecx, ecx
je 0x140192016
cmp ecx, 1
je 0x140192010
xor edx, edx
jmp 0x14019201a
mov rdx, qword [rdi + 0x10]
jmp 0x14019201a
lea rdx, [rdi + 0x10]
movzx ecx, byte [rdi + 0x57]
test ecx, ecx
je 0x140192031
cmp ecx, 1
je 0x14019202b
xor eax, eax
jmp 0x140192035
mov rax, qword [rdi + 0x40]
jmp 0x140192035
lea rax, [rdi + 0x40]
mov al, byte [r8 + rax]
xor byte [r8 + rdx], al
inc r8
sub r11, 1
jne 0x140191fff
movaps xmm0, xmmword [r15]
lea rcx, [rdi + 0x10]
movzx edx, byte [rcx + 0x27]
movdqa xmmword [rbp - 0x29], xmm0
test edx, edx
je 0x140192067
cmp edx, 1
je 0x140192064
xor ecx, ecx
jmp 0x140192067
mov rcx, qword [rcx]
and dword [rbp - 0x41], 0
mov qword [rbp - 0x49], rcx
test rcx, rcx
jne 0x140192078
xor eax, eax
jmp 0x140192088
mov rax, qword [0x140422958]
mov ecx, dword [rax]
lea rax, [rbp - 0x49]
add rax, rcx
and dword [rbp - 0x31], 0
lea rdx, [rbp - 0x19]
mov qword [rbp - 0x39], rax
xor r9d, r9d
movaps xmm0, xmmword [rbp - 0x39]
lea rax, [0x140007ca0]
mov qword [rbp - 0x11], rax
lea rax, [rbp + 0x7f]
mov qword [rbp - 9], rax
mov rax, qword [rdi]
lea r8d, [r9 + 0x48]
mov qword [rbp - 1], rax
lea ecx, [r8 + 0x71]
lea rax, [rbp - 0x39]
movdqa xmmword [rbp - 0x39], xmm0
mov qword [rbp + 0xf], rax
lea rax, [rbp - 0x29]
mov qword [rbp + 0x1f], rax
mov qword [rbp - 0x19], 3
mov dword [rbp + 7], 0x80
mov dword [rbp + 0x17], esi
mov qword [rbp + 0x27], r12
call sub.ntdll.dll_NtQuerySystemInformation
mov ebx, dword [rbp + 0x7f]
test ebx, ebx
js 0x140192147
and dword [rdi + 0x38], 0
lea rcx, [rdi + 0x40]
movzx edx, byte [rcx + 0x17]
test edx, edx
je 0x140192110
cmp edx, 1
je 0x14019210d
xor ecx, ecx
jmp 0x140192110
mov rcx, qword [rcx]
mov r8d, esi
xor edx, edx
call sub.msvcrt.dll_memset
jmp 0x14019214e
mov dword [r12], esi
mov rax, qword [r15]
neg rax
sbb ebx, ebx
and ebx, 0xc004d107
cmp qword [r15], 0
jmp 0x140192145
mov eax, dword [rdi + 0x38]
neg eax
sbb ebx, ebx
and ebx, 0x80004005
cmp dword [rdi + 0x38], 0
je 0x14019214e
mov ecx, ebx
call fcn.140078308
mov ecx, ebx
call fcn.140078324
test r14, r14
je 0x140192167
test r13d, r13d
je 0x140192167
mov rcx, r14
call fcn.140070e60
lea r11, [rsp + 0xa0]
mov eax, ebx
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret