Function at 0x1400ae7aa
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1e8
movaps xmmword [rsp + 0x1d0], xmm6
cmp qword [rcx + 0x80], 0
jne 0x1400aeee2
mov ebp, edx
mov r12, rcx
xorps xmm6, xmm6
lea rcx, [rsp + 0x1a0]
movaps xmmword [rcx + 0x20], xmm6
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
call sub.KERNEL32.dll_GetSystemInfo
mov esi, 0x80000000
xor r14d, r14d
xor ecx, ecx
mov eax, 0x80000000
mov r8, rbx
cpuid
xchg rbx, r8
cmp eax, 0x80000003
mov byte [rsp + 0x2f], bpl
mov qword [rsp + 0xb8], r12
jbe 0x1400ae8aa
mov edi, eax
mov ecx, 5
xor edx, edx
call fcn.1400a9a72
lea rbx, [rsp + 0x30]
mov qword [rbx], rax
mov qword [rbx + 8], rdx
mov r12b, 1
mov qword [rsp + 0x40], r14
test r12b, 1
je 0x1400ae8bd
cmp esi, edi
ja 0x1400ae8bd
setb r12b
xor ecx, ecx
mov eax, esi
mov r13, rbx
cpuid
xchg rbx, r13
mov r15d, eax
mov r14d, ecx
mov ebp, edx
mov rdx, qword [rsp + 0x40]
cmp rdx, qword [rsp + 0x38]
jne 0x1400ae87f
mov rcx, rbx
call fcn.1400aa19a
mov rdx, qword [rsp + 0x40]
movzx eax, r12b
add esi, eax
mov rax, qword [rsp + 0x30]
shl rdx, 4
mov dword [rax + rdx], r15d
mov dword [rax + rdx + 4], r13d
mov dword [rax + rdx + 8], r14d
mov dword [rax + rdx + 0xc], ebp
mov r14, qword [rsp + 0x40]
inc r14
jmp 0x1400ae83f
mov qword [rsp + 0x50], 1
movups xmmword [rsp + 0x58], xmm6
jmp 0x1400aea47
mov ecx, 0x30
xor edx, edx
call fcn.14002fd42
lea rsi, [rsp + 0x70]
mov qword [rsi], rax
mov qword [rsi + 8], rdx
and qword [rsi + 0x10], 0
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
shl rbx, 4
add rbx, rdi
mov eax, 2
mov r14d, 5
xor r15d, r15d
mov bpl, byte [rsp + 0x2f]
mov r12, qword [rsp + 0xb8]
test r15b, 1
je 0x1400ae91b
test r14, r14
je 0x1400ae975
cmp rdi, rbx
je 0x1400ae975
dec r14
jmp 0x1400ae93f
cmp r14, rax
jbe 0x1400ae975
mov rcx, rbx
sub rcx, rdi
shr rcx, 4
cmp rcx, rax
jbe 0x1400ae975
mov rcx, rax
not rcx
add r14, rcx
shl rax, 4
add rdi, rax
mov edx, dword [rdi]
mov rcx, rsi
call fcn.1400af019
mov edx, dword [rdi + 4]
mov rcx, rsi
call fcn.1400af019
mov edx, dword [rdi + 8]
mov rcx, rsi
call fcn.1400af019
mov edx, dword [rdi + 0xc]
add rdi, 0x10
mov r15b, 1
mov rcx, rsi
call fcn.1400af019
xor eax, eax
jmp 0x1400ae906
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x80]
xor ecx, ecx
cmp rdx, rcx
je 0x1400ae9b4
cmp byte [rax + rcx], 0
je 0x1400ae9b1
inc rcx
jne 0x1400ae984
lea rcx, [0x14013ac00]
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001f_sysinfo_0.29.7_srcwindowscpu.rsTotal_CPUunknownIntel_Itanium_based_x86ARMARM_x64_Intel_or_AMD__x64MSILRISC_Alpha_x64Intel_Itanium_based_x64SHXPPCRISC_AlphaMIPSIntel_x86
mov edx, 0x1c
call fcn.14000e4c0
jmp 0x1400aeacf
mov rdx, rcx
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001f_sysinfo_0.29.7_srcwindowscpu.rsTotal_CPUunknownIntel_Itanium_based_x86ARMARM_x64_Intel_or_AMD__x64MSILRISC_Alpha_x64Intel_Itanium_based_x64SHXPPCRISC_AlphaMIPSIntel_x86
lea rcx, [rsp + 0x70]
call fcn.1400ab3ac
mov r8, rdx
lea rcx, [rsp + 0x110]
mov rdx, rax
call fcn.1400134d0
cmp qword [rsp + 0x110], 0
je 0x1400ae9f6
mov qword [rsp + 0x50], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
jmp 0x1400aea33
mov rdi, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x120]
mov rcx, rsi
xor edx, edx
call fcn.14002fd42
mov rbx, rax
mov r14, rdx
mov rcx, rax
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x70]
call fcn.1400304a6
lea rcx, [rsp + 0x30]
call fcn.1400ab175
xor eax, eax
xor ecx, ecx
mov rbx, rbx
cpuid
xchg rbx, rbx
mov edi, edx
mov esi, ecx
mov ecx, 0xc
xor edx, edx
call fcn.14002fd42
lea rcx, [rsp + 0x70]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
and qword [rcx + 0x10], 0
mov edx, ebx
call fcn.1400af019
lea rcx, [rsp + 0x70]
mov edx, edi
call fcn.1400af019
lea rcx, [rsp + 0x70]
mov edx, esi
call fcn.1400af019
lea r15, [r12 + 0x70]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x80]
xor ecx, ecx
cmp rdx, rcx
je 0x1400aead4
cmp byte [rax + rcx], 0
je 0x1400aead1
inc rcx
jne 0x1400aeaa7
lea rcx, [0x14013ac00]
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001f_sysinfo_0.29.7_srcwindowscpu.rsTotal_CPUunknownIntel_Itanium_based_x86ARMARM_x64_Intel_or_AMD__x64MSILRISC_Alpha_x64Intel_Itanium_based_x64SHXPPCRISC_AlphaMIPSIntel_x86
mov edx, 0x1c
call fcn.14000e4c0
ud2
mov rdx, rcx
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001f_sysinfo_0.29.7_srcwindowscpu.rsTotal_CPUunknownIntel_Itanium_based_x86ARMARM_x64_Intel_or_AMD__x64MSILRISC_Alpha_x64Intel_Itanium_based_x64SHXPPCRISC_AlphaMIPSIntel_x86
lea rcx, [rsp + 0x70]
call fcn.1400ab3ac
mov r8, rdx
lea rcx, [rsp + 0x110]
mov rdx, rax
call fcn.1400134d0
cmp qword [rsp + 0x110], 0
je 0x1400aeb2d
movsx rax, word [rsp + 0x1a0]
cmp rax, 0xe
ja 0x1400aeb49
lea rcx, [0x14013be70]
mov rsi, qword [rcx + rax*8]
lea rcx, [0x14013bee8]
movsxd r14, dword [rcx + rax*4]
add r14, rcx
jmp 0x1400aeb55
mov r14, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x120]
mov rcx, rsi
xor edx, edx
call fcn.14002fd42
jmp 0x1400aeb5f
lea r14, [0x14013b605]
mov esi, 7
mov rcx, rsi
xor edx, edx
call fcn.14002fd42
mov rdi, rax
mov rbx, rdx
mov rcx, rax
mov rdx, r14
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0xf0], xmm0
lea rcx, [rsp + 0x70]
call fcn.1400304a6
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rsi
mov esi, dword [rsp + 0x1c0]
test bpl, bpl
je 0x1400aebcd
lea rcx, [rsp + 0xc0]
mov rdx, rsi
call fcn.1400af05e
jmp 0x1400aebef
mov rcx, rsi
mov dl, 1
call fcn.1400a9817
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x188], r15
inc rsi
mov rcx, rsi
xor edx, edx
call fcn.1400a9988
lea rcx, [rsp + 0xa0]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
and qword [rcx + 0x10], 0
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x190], rax
mov rbx, qword [rsp + 0xd0]
lea r15, [rsp + 0x128]
shl rbx, 3
mov r14d, 1
lea r13, [rsp + 0x30]
lea rbp, [rsp + 0x70]
mov r12d, 1
test rbx, rbx
je 0x1400aedac
mov qword [rsp + 0x198], r12
lea rax, str.CPU
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r14
and qword [rsp + 0x90], 0
lea rax, [rsp + 0x198]
mov qword [rsp + 0x50], rax
lea rax, [fcn.140017460]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r14
mov rcx, r13
mov rdx, rbp
call fcn.1400a8fe7
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov rcx, r13
lea rdx, [rsp + 0xd8]
call fcn.140004db0
mov rcx, rbp
lea rdx, [rsp + 0xf0]
call fcn.140004db0
mov rax, qword [rsp + 0x190]
mov rax, qword [rax + r12*8 - 8]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x120], rcx
movaps xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x110], xmm0
and dword [rsp + 0x178], 0
and qword [rsp + 0x158], 0
mov rcx, qword [rsp + 0x40]
mov qword [r15 + 0x10], rcx
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [r15], xmm0
mov rcx, qword [rsp + 0x80]
mov qword [r15 + 0x28], rcx
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [r15 + 0x18], xmm0
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0xb0]
cmp rdx, qword [rsp + 0xa8]
jne 0x1400aed79
lea rcx, [rsp + 0xa0]
call fcn.1400aa206
mov rdx, qword [rsp + 0xb0]
imul rdi, rdx, 0x70
add rdi, qword [rsp + 0xa0]
mov ecx, 0xe
lea rsi, [rsp + 0x110]
rep movsq qword [rdi], qword [rsi]
inc rdx
mov qword [rsp + 0xb0], rdx
inc r12
add rbx, 0xfffffffffffffff8
jmp 0x1400aec52
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x120], rax
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rsp + 0xd8]
movups xmmword [rsp + 0x128], xmm0
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x138], rax
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x140], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x150], rax
lea rcx, [rsp + 0xc0]
call fcn.1400ab219
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rsp + 0x128]
movaps xmmword [rsp + 0x30], xmm0
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x1b0], rax
movaps xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x1a0], xmm0
mov rdi, qword [rsp + 0x188]
mov rcx, rdi
call fcn.1400a8691
mov rax, qword [rsp + 0x80]
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [rsp + 0x70]
movups xmmword [rdi], xmm0
mov rsi, qword [rsp + 0xb8]
lea rcx, [rsi + 0x18]
call fcn.1400304a6
mov rax, qword [rsp + 0x40]
mov qword [rsi + 0x28], rax
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x18], xmm0
lea rcx, [rsi + 0x30]
call fcn.1400304a6
mov rax, qword [rsp + 0x1b0]
mov qword [rsi + 0x40], rax
movaps xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rsi + 0x30], xmm0
mov al, byte [rsp + 0x2f]
mov byte [rsi + 0x88], al
movaps xmm6, xmmword [rsp + 0x1d0]
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret