Function at 0x1400f1ba0
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, 0x138
movaps xmmword [rsp + 0x120], xmm6
mov rsi, rcx
mov rax, qword [0x1401c2c08]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xd0], rdx
lea rcx, [rsp + 0xd0]
call fcn.1400029f0
mov rdi, qword [rsp + 0xd0]
mov rax, qword [0x1401c8ba0]
test rax, rax
je 0x1400f1c0a
mov rcx, qword [0x1401c8ba8]
cmp rcx, rdi
jbe 0x1400f1c4c
jmp 0x1400f1da9
movaps xmm0, xmmword [section..rdata]
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov qword [0x1401c8ba0], rax
mov qword [0x1401c8ba8], rcx
cmp rcx, rdi
ja 0x1400f1da9
cmp rax, rdi
jb 0x1400f1da9
mov qword [rsp + 0x30], 0
mov rdx, qword [rsp + 0xd0]
lea r8, [rsp + 0x30]
mov ecx, 4
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x1400f1c80
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdi, qword [rsp + 0x30]
test rdi, rdi
je 0x1400f1da9
mov rbp, qword [sym.imp.KERNEL32.dll_GetLastError]
call rbp
mov ebx, eax
call fcn.140054d90
mov r14, qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, ebx
call r14
call fcn.140054d90
call rbp
mov ebx, eax
call fcn.140054d90
mov ecx, ebx
call r14
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x70], r15
movaps xmm6, xmmword [section..rdata]
movaps xmmword [rsp + 0x60], xmm6
lea rcx, [rsp + 0x60]
call fcn.140040d10
movaps xmmword [rsp + 0x100], xmm6
mov dword [rsp + 0xfc], 0xaaaaaaaa
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xe8], 0
lea rax, [0x140182d20]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x100]
lea r8, [rsp + 0xfc]
lea r9, [rsp + 0xf0]
call fcn.1400630d0
test al, al
je 0x1400f1db1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xf0]
lea r8, [rsp + 0x30]
call fcn.1400452d0
test al, al
je 0x1400f1dbe
movzx eax, byte [rsp + 0x30]
test al, 1
jne 0x1400f1f65
shr eax, 1
lea rcx, [rsp + 0x32]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rax
jmp 0x1400f1f88
xor r15d, r15d
jmp 0x1400f1f33
xor r12d, r12d
xor r14d, r14d
xor ebx, ebx
xor r13d, r13d
jmp 0x1400f1dda
xor r12d, r12d
xor r14d, r14d
xor ebx, ebx
xor r13d, r13d
test byte [rsp + 0x30], 1
je 0x1400f1dda
mov rcx, qword [rsp + 0x40]
call fcn.1401438d8
mov qword [rsp + 0xe0], r15
movaps xmmword [rsp + 0xd0], xmm6
call sub.KERNEL32.dll_GetCurrentProcess
lea r8, [rsp + 0xd0]
mov rcx, rax
mov rdx, rdi
mov r9d, 0x18
call sub.KERNEL32.dll_K32GetModuleInformation
test eax, eax
je 0x1400f1ed4
mov qword [rsp + 0x28], rbx
mov rbx, r14
mov ecx, 0x58
call fcn.140143888
mov r15, rax
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x30], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x40], rax
call fcn.140054d90
call rbp
mov r14, rbp
mov ebp, eax
call fcn.140054d90
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rax, [0x14019a950]
mov qword [r15], rax
mov qword [r15 + 8], 0
call fcn.140054d90
call r14
mov ebp, eax
cmp qword [r15 + 8], 0
je 0x1400f1e8a
call fcn.140054d90
mov rcx, qword [r15 + 8]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [r15 + 8], rdi
call fcn.140054d90
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, qword [rsp + 0x40]
mov qword [r15 + 0x20], rax
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [r15 + 0x10], xmm0
mov ebp, r13d
and bpl, 1
mov r8, rbx
jne 0x1400f1ee5
movzx eax, r13b
or r12, rax
mov qword [r15 + 0x28], r12
mov qword [r15 + 0x30], r8
mov rbx, qword [rsp + 0x28]
mov qword [r15 + 0x38], rbx
jmp 0x1400f1ef6
and r13b, 1
xor r15d, r15d
mov ebp, r13d
test bpl, bpl
jne 0x1400f1f0e
jmp 0x1400f1f16
lea rcx, [r15 + 0x28]
mov rbx, qword [rsp + 0x28]
mov rdx, rbx
call fcn.140004ee8
mov rcx, r15
add rcx, 0x40
lea rdx, [rsp + 0x60]
call fcn.140056790
xor edi, edi
test bpl, bpl
je 0x1400f1f16
mov rcx, rbx
call fcn.1401438d8
lea rcx, [rsp + 0x60]
call fcn.1400568a0
test rdi, rdi
je 0x1400f1f33
call fcn.140054d90
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsi], r15
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.140143c30
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x120]
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rax
test rax, rax
js 0x1400f21a8
test rcx, rcx
jne 0x1400f1f96
test rax, rax
jne 0x1400f21bb
lea rbx, [rsp + 0xb8]
lea rdx, [rsp + 0xa8]
mov rcx, rbx
call fcn.1400567f0
lea r14, [rsp + 0xd0]
mov rcx, rbx
mov rdx, r14
call fcn.140057550
lea rcx, [rsp + 0x60]
mov rdx, r14
call fcn.140056920
mov rcx, r14
call fcn.1400568a0
mov rcx, rbx
call fcn.1400568a0
mov qword [rsp + 0xe0], r15
movaps xmmword [rsp + 0xd0], xmm6
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x100]
call fcn.140093ad0
lea rax, [0x14019a940]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], 3
movzx eax, byte [rsp + 0xd0]
test al, 1
jne 0x1400f2046
shr eax, 1
lea rcx, [rsp + 0xd2]
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
jmp 0x1400f206f
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
test rax, rax
js 0x1400f21a8
test rcx, rcx
jne 0x1400f207d
test rax, rax
jne 0x1400f21bb
lea rcx, [rsp + 0x88]
lea rdx, [rsp + 0x98]
lea rbx, [rsp + 0xd0]
mov r8, rbx
call fcn.140037490
mov edx, dword [rsp + 0xfc]
lea rcx, [rsp + 0xb8]
call fcn.1400f1430
movzx r8d, byte [rsp + 0xb8]
test r8b, 1
je 0x1400f20d2
mov r8, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xc8]
jmp 0x1400f20dd
shr r8d, 1
lea rdx, [rsp + 0xba]
mov rcx, rbx
call fcn.14002b8a8
test byte [rsp + 0xb8], 1
je 0x1400f20fc
mov rcx, qword [rsp + 0xc8]
call fcn.1401438d8
movzx eax, byte [rsp + 0xd0]
test al, 1
jne 0x1400f2121
shr eax, 1
lea rcx, [rsp + 0xd2]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
jmp 0x1400f2143
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
test rax, rax
js 0x1400f21a8
test rcx, rcx
jne 0x1400f214d
test rax, rax
jne 0x1400f21bb
lea rcx, [rsp + 0xb8]
lea rdx, [rsp + 0x78]
call fcn.1400457b0
mov r13, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xc8]
test byte [rsp + 0xd0], 1
je 0x1400f218e
mov rcx, qword [rsp + 0xe0]
call fcn.1401438d8
mov r12, r13
and r12, 0xffffffffffffff00
test byte [rsp + 0x30], 1
jne 0x1400f1dd0
jmp 0x1400f1dda
lea rcx, [0x140180113]
lea rdx, str....._third_partylibc_srcinclude_string_view:311:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
call fcn.140005804
lea rcx, [0x140180113]
lea rdx, str....._third_partylibc_srcinclude_string_view:313:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
call fcn.140005804
int3