Function at 0x1400fd080
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
test rdx, rdx
je 0x1400fd2df
mov rdi, rdx
mov r15, rcx
mov r9, qword [rcx + 0x10]
cmp r9, rdx
ja 0x1400fd303
add rdi, rdi
mov rdx, qword [0x140d484d8]
test rdx, rdx
jne 0x1400fd0ce
lea rcx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov edx, dword [rsp + 0x2c]
mov qword [0x140d484d8], rdx
mov rcx, rdi
call fcn.140100550
mov r14, rax
xor ecx, ecx
mov rdx, rax
mov r8d, 0x3000
mov r9d, 4
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
test rax, rax
je 0x1400fd320
mov r12, rax
mov rcx, qword [r15]
mov r8, qword [r15 + 0x10]
mov r10, r8
add r10, r8
je 0x1400fd1a2
cmp r10, 8
jb 0x1400fd12f
lea rax, [rcx + r10]
cmp r12, rax
jae 0x1400fd1c0
lea rax, [r12 + r10]
cmp rcx, rax
jae 0x1400fd1c0
xor edx, edx
mov rdi, rdx
not rdi
add rdi, r10
mov rax, r10
and rax, 2
je 0x1400fd162
nop word cs:[rax + rax]
nop dword [rax]
movzx ebx, byte [rcx + rdx]
mov byte [r12 + rdx], bl
add rdx, 1
add rax, 0xffffffffffffffff
jne 0x1400fd150
cmp rdi, 3
jb 0x1400fd19f
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
mov byte [r12 + rdx], al
movzx eax, byte [rcx + rdx + 1]
mov byte [r12 + rdx + 1], al
movzx eax, byte [rcx + rdx + 2]
mov byte [r12 + rdx + 2], al
movzx eax, byte [rcx + rdx + 3]
mov byte [r12 + rdx + 3], al
add rdx, 4
cmp r10, rdx
jne 0x1400fd170
mov rcx, qword [r15]
mov rdx, qword [r15 + 8]
call fcn.1400be890
mov qword [r15], r12
mov qword [r15 + 8], r14
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
cmp r10, 0x20
jae 0x1400fd1cd
xor edx, edx
jmp 0x1400fd2ae
mov rdx, r10
and rdx, 0xffffffffffffffe0
lea rax, [rdx - 0x20]
mov rdi, rax
shr rdi, 5
add rdi, 1
mov r9d, edi
and r9d, 3
cmp rax, 0x60
jae 0x1400fd1f4
xor esi, esi
jmp 0x1400fd260
and rdi, 0xfffffffffffffffc
xor esi, esi
nop word [rax + rax]
movups xmm0, xmmword [rcx + rsi]
movups xmm1, xmmword [rcx + rsi + 0x10]
movups xmmword [r12 + rsi], xmm0
movups xmmword [r12 + rsi + 0x10], xmm1
movups xmm0, xmmword [rcx + rsi + 0x20]
movups xmm1, xmmword [rcx + rsi + 0x30]
movups xmmword [r12 + rsi + 0x20], xmm0
movups xmmword [r12 + rsi + 0x30], xmm1
movups xmm0, xmmword [rcx + rsi + 0x40]
movups xmm1, xmmword [rcx + rsi + 0x50]
movups xmmword [r12 + rsi + 0x40], xmm0
movups xmmword [r12 + rsi + 0x50], xmm1
movups xmm0, xmmword [rcx + rsi + 0x60]
movups xmm1, xmmword [rcx + rsi + 0x70]
movups xmmword [r12 + rsi + 0x60], xmm0
movups xmmword [r12 + rsi + 0x70], xmm1
sub rsi, 0xffffffffffffff80
add rdi, 0xfffffffffffffffc
jne 0x1400fd200
test r9, r9
je 0x1400fd29b
lea rax, [r12 + rsi]
add rax, 0x10
lea rdi, [rcx + rsi]
add rdi, 0x10
shl r9, 5
xor esi, esi
nop dword [rax + rax]
movups xmm0, xmmword [rdi + rsi - 0x10]
movups xmm1, xmmword [rdi + rsi]
movups xmmword [rax + rsi - 0x10], xmm0
movups xmmword [rax + rsi], xmm1
add rsi, 0x20
cmp r9, rsi
jne 0x1400fd280
cmp r10, rdx
je 0x1400fd19f
test r8b, 0xc
je 0x1400fd131
mov rax, rdx
mov rdx, r10
and rdx, 0xfffffffffffffff8
nop dword [rax + rax]
mov rdi, qword [rcx + rax]
mov qword [r12 + rax], rdi
add rax, 8
cmp rdx, rax
jne 0x1400fd2c0
cmp r10, rdx
je 0x1400fd19f
jmp 0x1400fd131
mov qword [rsp + 0x20], 0
lea rcx, str....._sanitizer_common_sanitizer_common.h
lea r8, str.__new_capacity_______0__
mov edx, 0x245
xor r9d, r9d
call fcn.1400a8e60
mov qword [rsp + 0x20], rdi
lea rcx, str....._sanitizer_common_sanitizer_common.h
lea r8, str.__size________new_capacity__
mov edx, 0x246
call fcn.1400a8e60
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov byte [rsp + 0x20], 0
lea rdx, str.InternalMmapVector
lea r8, str.allocate
mov rcx, r14
mov r9d, eax
call fcn.1400d5710
int3