Function at 0x14020dd95
Capabilities:
Get system information on windows

Disassembly:
jmp 0x140378280
push rbp
push rdi
sub rsp, 0x1f8
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x42
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x140961e80]
xor rax, rbp
mov qword [rbp + 0x1b8], rax
mov qword [rbp + 8], 0
movzx eax, byte [0x14096b430]
test eax, eax
je 0x14037834d
mov eax, dword [0x14096a8d0]
imul rax, rax, 0x18
xor r9d, r9d
mov r8d, eax
mov rdx, qword [0x14096a8d8]
mov ecx, 0x17
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
test eax, eax
jge 0x14037830a
mov eax, dword [0x14096a8d0]
imul rax, rax, 0x18
mov r8, rax
xor edx, edx
mov rcx, qword [0x14096a8d8]
call fcn.1402118af
nop
mov dword [rbp + 0x24], 0
jmp 0x14037831b
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
mov eax, dword [0x14096a8d0]
cmp dword [rbp + 0x24], eax
jae 0x140378348
mov eax, dword [rbp + 0x24]
imul rax, rax, 0x18
mov rcx, qword [0x14096a8d8]
mov eax, dword [rcx + rax + 4]
mov rcx, qword [rbp + 8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 8], rax
jmp 0x140378313
jmp 0x140378453
xor eax, eax
mov word [rbp + 0x44], ax
xor eax, eax
mov word [rbp + 0x64], ax
jmp 0x140378366
movzx eax, word [rbp + 0x64]
inc ax
mov word [rbp + 0x64], ax
movzx eax, word [rbp + 0x64]
movzx ecx, word [0x14096b434]
cmp eax, ecx
jge 0x140378415
movzx ecx, word [rbp + 0x64]
call sym.SystemInformer.exe_PhGetActiveProcessorCount
mov word [rbp + 0x84], ax
movzx eax, word [rbp + 0x84]
imul rax, rax, 0x18
movzx ecx, word [rbp + 0x44]
imul rcx, rcx, 0x18
mov rdx, qword [0x14096a8d8]
add rdx, rcx
mov rcx, rdx
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], eax
mov r9, rcx
mov r8d, 2
lea rdx, [rbp + 0x64]
mov ecx, 0x17
call qword [sym.imp.ntdll.dll_NtQuerySystemInformationEx]
test eax, eax
jge 0x1403783fd
movzx eax, word [rbp + 0x84]
imul rax, rax, 0x18
movzx ecx, word [rbp + 0x44]
imul rcx, rcx, 0x18
mov rdx, qword [0x14096a8d8]
add rdx, rcx
mov rcx, rdx
mov r8, rax
xor edx, edx
call fcn.1402118af
nop
movzx eax, word [rbp + 0x84]
movzx ecx, word [rbp + 0x44]
add ecx, eax
mov eax, ecx
mov word [rbp + 0x44], ax
jmp 0x14037835b
mov dword [rbp + 0x24], 0
jmp 0x140378426
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
mov eax, dword [0x14096a8d0]
cmp dword [rbp + 0x24], eax
jae 0x140378453
mov eax, dword [rbp + 0x24]
imul rax, rax, 0x18
mov rcx, qword [0x14096a8d8]
mov eax, dword [rcx + rax + 4]
mov rcx, qword [rbp + 8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 8], rax
jmp 0x14037841e
mov eax, dword [0x14096a908]
mov ecx, dword [0x14096f388]
sub ecx, eax
mov eax, ecx
mov dword [0x14096a90c], eax
mov eax, dword [0x14096f388]
mov dword [0x14096a908], eax
mov eax, dword [0x14096a910]
mov ecx, dword [0x14096f248]
sub ecx, eax
mov eax, ecx
mov dword [0x14096a914], eax
mov eax, dword [0x14096f248]
mov dword [0x14096a910], eax
mov rax, qword [0x14096a918]
mov rcx, qword [rbp + 8]
sub rcx, rax
mov rax, rcx
mov qword [0x14096a920], rax
mov rax, qword [rbp + 8]
mov qword [0x14096a918], rax
mov eax, dword [0x14096a928]
mov ecx, dword [0x14096f394]
sub ecx, eax
mov eax, ecx
mov dword [0x14096a92c], eax
mov eax, dword [0x14096f394]
mov dword [0x14096a928], eax
movzx eax, byte [0x14096b430]
test eax, eax
je 0x140378531
mov eax, dword [0x14096a8d0]
imul rax, rax, 0x18
mov dword [rsp + 0x20], eax
mov r9, qword [0x14096a8e0]
xor r8d, r8d
xor edx, edx
mov ecx, 0xb
call qword [sym.imp.ntdll.dll_NtPowerInformation]
test eax, eax
jge 0x14037852c
mov eax, dword [0x14096a8d0]
imul rax, rax, 0x18
mov r8, rax
xor edx, edx
mov rcx, qword [0x14096a8e0]
call fcn.1402118af
nop
jmp 0x140378611
xor eax, eax
mov word [rbp + 0xa4], ax
xor eax, eax
mov word [rbp + 0xc4], ax
jmp 0x140378556
movzx eax, word [rbp + 0xc4]
inc ax
mov word [rbp + 0xc4], ax
movzx eax, word [rbp + 0xc4]
movzx ecx, word [0x14096b434]
cmp eax, ecx
jge 0x140378611
movzx ecx, word [rbp + 0xc4]
call sym.SystemInformer.exe_PhGetActiveProcessorCount
mov word [rbp + 0xe4], ax
movzx eax, word [rbp + 0xe4]
imul rax, rax, 0x18
movzx ecx, word [rbp + 0xa4]
imul rcx, rcx, 0x18
mov rdx, qword [0x14096a8e0]
add rdx, rcx
mov rcx, rdx
mov dword [rsp + 0x20], eax
mov r9, rcx
mov r8d, 2
lea rdx, [rbp + 0xc4]
mov ecx, 0x2e
call qword [sym.imp.ntdll.dll_NtPowerInformation]
test eax, eax
jge 0x1403785f3
movzx eax, word [rbp + 0xe4]
imul rax, rax, 0x18
movzx ecx, word [rbp + 0xa4]
imul rcx, rcx, 0x18
mov rdx, qword [0x14096a8e0]
add rdx, rcx
mov rcx, rdx
mov r8, rax
xor edx, edx
call fcn.1402118af
nop
movzx eax, word [rbp + 0xe4]
movzx ecx, word [rbp + 0xa4]
add ecx, eax
mov eax, ecx
mov word [rbp + 0xa4], ax
jmp 0x140378545
cmp qword [0x14096a8f0], 0
je 0x140378628
mov rcx, qword [0x14096a8f0]
call sym.SystemInformer.exe_PhFree
nop
mov rax, qword [0x14096a8e8]
mov qword [0x14096a8f0], rax
mov qword [0x14096a8e8], 0
lea rcx, [0x14096a8e8]
call fcn.14020db88
nop
cmp dword [0x14096a8c8], 2
jae 0x140378665
mov eax, dword [0x14096a8c8]
inc eax
mov dword [0x14096a8c8], eax
call fcn.140211f6c
nop
call fcn.140211c4c
nop
lea rcx, [rbp - 0x30]
lea rdx, [0x140779f70]
call fcn.1402124fd
mov rcx, qword [rbp + 0x1b8]
xor rcx, rbp
call fcn.14020ee98
lea rsp, [rbp + 0x1c8]
pop rdi
pop rbp
ret