Function at 0x1402c53bc
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1404e1800]
xor rax, rsp
mov qword [rbp - 8], rax
mov r15, rdx
mov r14, rcx
mov qword [rbp - 0x38], rdx
xor r12d, r12d
mov dword [rbp - 0x30], r12d
lea ecx, [r12 + 0x50]
call fcn.140112a2c
mov rsi, rax
mov qword [rbp - 0x40], rax
lea eax, [r12 + 1]
mov dword [rsi + 8], eax
mov dword [rsi + 0xc], eax
lea rax, vtable.std::_Ref_count_obj_class_sense::machineStateCollection::CodeIntegrityState_.0
mov qword [rsi], rax
lea rdi, [rsi + 0x10]
mov qword [rbp - 0x48], rdi
mov rcx, rdi
call fcn.1400ed530
nop
lea rcx, [rdi + 0x10]
call fcn.1400ed530
mov dword [rdi + 0x24], r12d
mov dword [rdi + 0x2c], r12d
mov dword [rdi + 0x34], r12d
mov dword [rdi + 0x3c], r12d
or eax, 0xffffffff
mov dword [rdi], eax
mov dword [rdi + 0x10], eax
mov dword [rdi + 0x20], eax
mov dword [rdi + 0x28], eax
mov dword [rdi + 0x30], eax
mov dword [rdi + 0x38], eax
mov qword [r15], r12
mov qword [r15 + 8], r12
mov r8, rsi
mov rdx, rdi
mov rcx, r15
call fcn.1400718e8
mov dword [rbp - 0x30], 3
mov rdx, r15
mov rcx, r14
call fcn.1400ac81c
add r14, 8
mov rdx, r14
lea rcx, [0x1404fda58]
call fcn.1400b23f0
mov edi, 0x10000000
test al, al
je 0x1402c551c
mov qword [rbp - 0x40], r12
lea r8d, [r12 + 8]
mov dword [rbp - 0x40], r8d
xor r9d, r9d
lea rdx, [rbp - 0x40]
lea ecx, [r12 + 0x67]
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jns 0x1402c550f
call fcn.140091ae4
cmp dword [rax], 3
jbe 0x1402c5505
mov dword [rbp - 0x48], ebx
lea rcx, str.Code_integrity_state_collection___failed_to_get_code_integrity_information
mov qword [rbp - 0x38], rcx
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp - 0x38]
mov qword [rsp + 0x20], rcx
xor r8d, r8d
lea rdx, [0x1404554c7]
mov rcx, rax
call fcn.14000615c
or ebx, edi
mov rax, qword [r15]
mov dword [rax + 0x28], ebx
jmp 0x1402c551c
mov ecx, dword [rbp - 0x3c]
mov rax, qword [r15]
mov dword [rax + 0x28], r12d
mov dword [rax + 0x2c], ecx
mov rdx, r14
lea rcx, [0x1404fda78]
call fcn.1400b23f0
test al, al
je 0x1402c55b3
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
movups xmmword [rbp - 0x18], xmm0
xor r9d, r9d
lea r8d, [r9 + 0x20]
lea rdx, [rbp - 0x28]
mov ecx, 0xa4
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jns 0x1402c55a6
call fcn.140091ae4
cmp dword [rax], 3
jbe 0x1402c559c
mov dword [rbp - 0x48], ebx
lea rcx, str.Code_integrity_state_collection___failed_to_get_code_integrity_policy_information
mov qword [rbp - 0x38], rcx
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp - 0x38]
mov qword [rsp + 0x20], rcx
xor r8d, r8d
lea rdx, [0x1404554c7]
mov rcx, rax
call fcn.14000615c
or ebx, edi
mov rax, qword [r15]
mov dword [rax + 0x30], ebx
jmp 0x1402c55b3
mov ecx, dword [rbp - 0x28]
mov rax, qword [r15]
mov dword [rax + 0x30], r12d
mov dword [rax + 0x34], ecx
mov rdx, r14
lea rcx, [0x1404fda98]
call fcn.1400b23f0
test al, al
je 0x1402c5605
mov qword [rsp + 0x20], 0xffffffff80000002
lea r9, [rbp - 0x50]
lea r8, [0x1404fd9b8]
or edx, 0xffffffff
lea rcx, [0x1404fd9d8]
call fcn.1400b2bdc
cmp byte [rbp - 0x50], r12b
je 0x1402c55fb
mov rax, qword [r15]
mov dword [rax + 0x38], 0x80004005
jmp 0x1402c5605
mov rcx, qword [r15]
mov dword [rcx + 0x38], r12d
mov dword [rcx + 0x3c], eax
mov rax, r15
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140112420
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret