Function at 0x1401958c0
Capabilities:
Get system information on windows
Make suspicious ntquerysysteminformation call

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, 0x90
mov r12, r8
mov r15, rdx
mov rdi, rcx
xor r14d, r14d
xor r13d, r13d
call fcn.1401951d8
mov ebx, eax
test eax, eax
jns 0x140195904
mov ecx, eax
jmp 0x140195af5
lea r14, [rdi + 0x60]
test r14, r14
je 0x14019591b
mov rcx, r14
call fcn.14006ec14
mov r13d, 1
mov rcx, qword [rdi]
mov edx, dword [rcx + 4]
sub edx, 1
je 0x140195936
cmp edx, 1
je 0x14019592f
xor esi, esi
jmp 0x14019593b
mov esi, 1
jmp 0x14019593b
mov esi, reloc.OLEAUT32.dll_SafeArrayGetDim
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x140195ae0
cmp ecx, 1
jne 0x140195afa
cmp dword [r12], esi
jb 0x140195ac8
cmp qword [r15], 0
je 0x140195ac8
cmp dword [rdi + 0x38], esi
jae 0x1401959a1
mov r8d, dword [rdi + 0x38]
mov r9d, esi
sub r9d, dword [rdi + 0x38]
movzx ecx, byte [rdi + 0x37]
test ecx, ecx
je 0x14019598a
cmp ecx, 1
je 0x140195984
xor ecx, ecx
jmp 0x14019598e
mov rcx, qword [rdi + 0x10]
jmp 0x14019598e
lea rcx, [rdi + 0x10]
mov al, sil
sub al, byte [rdi + 0x38]
mov byte [r8 + rcx], al
inc r8
sub r9, 1
jne 0x140195973
test esi, esi
je 0x1401959f2
xor r8d, r8d
mov r11d, esi
movzx ecx, byte [rdi + 0x37]
test ecx, ecx
je 0x1401959c2
cmp ecx, 1
je 0x1401959bc
xor edx, edx
jmp 0x1401959c6
mov rdx, qword [rdi + 0x10]
jmp 0x1401959c6
lea rdx, [rdi + 0x10]
movzx ecx, byte [rdi + 0x57]
test ecx, ecx
je 0x1401959dd
cmp ecx, 1
je 0x1401959d7
xor eax, eax
jmp 0x1401959e1
mov rax, qword [rdi + 0x40]
jmp 0x1401959e1
lea rax, [rdi + 0x40]
mov al, byte [r8 + rax]
xor byte [r8 + rdx], al
inc r8
sub r11, 1
jne 0x1401959ab
movaps xmm0, xmmword [r15]
lea rcx, [rdi + 0x10]
movzx edx, byte [rcx + 0x27]
movdqa xmmword [rbp - 0x19], xmm0
test edx, edx
je 0x140195a13
cmp edx, 1
je 0x140195a10
xor ecx, ecx
jmp 0x140195a13
mov rcx, qword [rcx]
and dword [rbp - 0x31], 0
mov qword [rbp - 0x39], rcx
test rcx, rcx
jne 0x140195a24
xor eax, eax
jmp 0x140195a34
mov rax, qword [0x14042f758]
mov ecx, dword [rax]
lea rax, [rbp - 0x39]
add rax, rcx
and dword [rbp - 0x21], 0
lea rdx, [rbp - 9]
mov qword [rbp - 0x29], rax
xor r9d, r9d
movaps xmm0, xmmword [rbp - 0x29]
lea rax, [0x140034138]
mov qword [rbp - 1], rax
lea rax, [rbp + 0x7f]
mov qword [rbp + 7], rax
mov rax, qword [rdi]
lea r8d, [r9 + 0x40]
mov qword [rbp + 0xf], rax
lea ecx, [r8 + 0x79]
lea rax, [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
mov qword [rbp + 0x1b], rax
lea rax, [rbp - 0x19]
mov qword [rbp + 0x27], rax
mov qword [rbp - 9], 3
mov dword [rbp + 0x17], 0x80
mov dword [rbp + 0x23], esi
mov qword [rbp + 0x2f], r12
call sub.ntdll.dll_NtQuerySystemInformation
mov ebx, dword [rbp + 0x7f]
test ebx, ebx
js 0x140195af3
and dword [rdi + 0x38], 0
lea rcx, [rdi + 0x40]
movzx edx, byte [rcx + 0x17]
test edx, edx
je 0x140195abc
cmp edx, 1
je 0x140195ab9
xor ecx, ecx
jmp 0x140195abc
mov rcx, qword [rcx]
mov r8d, esi
xor edx, edx
call sub.msvcrt.dll_memset
jmp 0x140195afa
mov rax, qword [r15]
neg rax
mov dword [r12], esi
sbb ebx, ebx
and ebx, 0xc004d107
cmp qword [r15], 0
jmp 0x140195af1
mov eax, dword [rdi + 0x38]
neg eax
sbb ebx, ebx
and ebx, 0x80004005
cmp dword [rdi + 0x38], 0
je 0x140195afa
mov ecx, ebx
call fcn.1400790f8
mov ecx, ebx
call fcn.140079118
test r14, r14
je 0x140195b13
test r13d, r13d
je 0x140195b13
mov rcx, r14
call fcn.1400719a0
lea r11, [rsp + 0x90]
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