Function at 0x180002a70
Capabilities:
Get memory capacity

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3c0]
sub rsp, 0x4c0
mov rax, qword [0x18005c020]
xor rax, rsp
mov qword [rbp + 0x3b0], rax
mov r12, rcx
mov qword [rsp + 0x38], rcx
movsd xmm3, qword [0x180055440]
movq r9, xmm3
movsd xmm2, qword [0x180055438]
movq r8, xmm2
movsd xmm1, qword [0x180055430]
movq rdx, xmm1
lea rcx, str.Product_of__.2f_and__.2f_is__.2f_n
call fcn.1800017e0
mov edx, 0x19
mov r9d, edx
lea r8d, [rdx + 5]
lea rcx, str.The_minimum_number_between__d_and__d_is__d_n
call fcn.1800017e0
mov edx, 0x19
mov r9d, edx
lea r8d, [rdx + 5]
lea rcx, str.The_minimum_number_between__d_and__d_is__d_n
call fcn.1800017e0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x40], 0x40
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea r13, str._MB_Available
lea r15, [0x180062260]
test eax, eax
je 0x180002b8c
mov rdi, qword [rsp + 0x50]
shr rdi, 0x14
mov rbx, qword [rsp + 0x48]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov rdx, rbx
call fcn.18000fc40
mov rcx, rax
lea rdx, str._MB_Total_
call fcn.1800128c0
mov rcx, rax
mov rdx, rdi
call fcn.18000fc40
mov rdx, r13
jmp 0x180002b96
mov rax, r15
lea rdx, str.Failed_to_get_memory_usage_
mov rcx, rax
call fcn.1800128c0
mov rcx, rax
call fcn.180012b30
mov edx, 0x20
lea rcx, str._c_is_a_whitespace_character._n
call fcn.1800017e0
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, str.Current_Time_2:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x20]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce8]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x22]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce8]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x26]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce4]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x28]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce0]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x2a]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce0]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x2c]
call fcn.18000ffa0
mov rcx, rax
call fcn.180012b30
mov ecx, 2
lea r8d, [rcx - 1]
nop dword [rax + rax]
mov eax, 0x11
cdq
idiv ecx
test edx, edx
je 0x180002c95
inc ecx
cmp ecx, 8
jle 0x180002c80
jmp 0x180002c98
xor r8d, r8d
lea rax, str._d_is_not_a_prime_number._n
lea rcx, str._d_is_a_prime_number._n
test r8d, r8d
cmove rcx, rax
mov edx, 0x11
call fcn.1800017e0
mov edx, 0xa
lea r9d, [rdx - 7]
lea r8d, [rdx - 3]
lea rcx, str.Difference_between__d_and__d_is__d_n
call fcn.1800017e0
mov edx, 8
lea r8d, [rdx + 0xd]
lea rcx, str.Fibonacci_number_at_position__d_is__d_n
call fcn.1800017e0
lea r8, [0x180054d90]
lea rdx, str.install.log
lea rcx, [rsp + 0x30]
call fcn.18002300c
mov edx, 0xf
mov r9d, 0x14
mov r8d, r9d
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
call fcn.1800017e0
mov edx, 6
mov r8d, 0x2d0
lea rcx, str.Factorial_of__d_is__d_n
call fcn.1800017e0
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov r14, rax
movabs rax, 0x8daea1d7f4cf721b
mul r14
mov rsi, r14
sub rsi, rdx
shr rsi, 1
add rsi, rdx
shr rsi, 0x1a
imul rax, rsi, 0x5265c00
mov rcx, r14
sub rcx, rax
movabs r8, 0x4a90be587de6e565
mov rax, r8
mul rcx
mov rdi, rdx
shr rdi, 0x14
mov rax, r8
mul r14
shr rdx, 0x14
imul rax, rdx, 0x36ee80
mov rbx, r14
sub rbx, rax
movabs rcx, 0x179ec9cbd821dc3b
mov rax, rcx
mul rbx
sub rbx, rdx
shr rbx, 1
add rbx, rdx
shr rbx, 0xf
mov rax, rcx
mul r14
mov rax, r14
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0xf
imul rax, rax, 0xea60
sub r14, rax
movabs rax, 0x624dd2f1a9fbe77
mul r14
sub r14, rdx
shr r14, 1
add r14, rdx
shr r14, 9
lea rdx, str.System_Uptime:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov edx, esi
call fcn.18000fdf0
mov rcx, rax
lea rdx, str._days_
call fcn.1800128c0
mov rcx, rax
mov edx, edi
call fcn.18000fdf0
mov rcx, rax
lea rdx, str._hours_
call fcn.1800128c0
mov rcx, rax
mov edx, ebx
call fcn.18000fdf0
mov rcx, rax
lea rdx, str._minutes_
call fcn.1800128c0
mov rcx, rax
mov edx, r14d
call fcn.18000fdf0
mov rcx, rax
lea rdx, str._seconds
call fcn.1800128c0
mov rcx, rax
call fcn.180012b30
xor esi, esi
mov ebx, esi
mov dword [rsp + 0x20], 8
lea rcx, [rsp + 0x20]
call qword [sym.imp.USER32.dll_GetLastInputInfo]
test eax, eax
je 0x180002e95
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rsp + 0x24]
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
lea rdx, str.Idle_Time:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov edx, ebx
call fcn.18000fdf0
mov rcx, rax
lea rdx, str._seconds
call fcn.1800128c0
mov rcx, rax
call fcn.180012b30
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800017e0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800017e0
mov dword [rbp + 0x60], 0x348
mov ebx, esi
xor r9d, r9d
lea r8, [rbp + 0x60]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x180003004
mov edi, 0xdc
nop
lea rdx, str.Display_Device_Name:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
lea rdx, [rbp + 0x64]
call fcn.18000fa90
mov rcx, rax
call fcn.180012b30
lea rdx, str.Display_Device_String:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
lea rdx, [rbp + 0xa4]
call fcn.18000fa90
mov rcx, rax
call fcn.180012b30
mov word [rbp - 0x3c], di
lea r8, [rbp - 0x80]
mov edx, 0xffffffff
lea rcx, [rbp + 0x64]
call qword [sym.imp.USER32.dll_EnumDisplaySettingsW]
test eax, eax
je 0x180002fe1
lea rdx, str.Display_Resolution:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov edx, dword [rbp + 0x2c]
call fcn.18000fdf0
mov rcx, rax
lea rdx, [0x180054e98]
call fcn.1800128c0
mov rcx, rax
mov edx, dword [rbp + 0x30]
call fcn.18000fdf0
mov rcx, rax
call fcn.180012b30
lea rdx, str.Display_Refresh_Rate:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov edx, dword [rbp + 0x38]
call fcn.18000fdf0
mov rcx, rax
lea rdx, [0x180054eb8]
call fcn.1800128c0
mov rcx, rax
call fcn.180012b30
mov rcx, r15
call fcn.180012b30
inc ebx
xor r9d, r9d
lea r8, [rbp + 0x60]
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
jne 0x180002f10
mov edx, 5
lea r9d, [rdx + 3]
lea r8d, [rdx - 2]
lea rcx, str.Sum_of__d_and__d_is__d_n
call fcn.1800017e0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800017e0
mov edx, 0x19
mov r9d, edx
lea r8d, [rdx + 5]
lea rcx, str.The_minimum_number_between__d_and__d_is__d_n
call fcn.1800017e0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1800031e7
mov r8, r12
cmp qword [r12 + 0x18], 0x10
jb 0x180003063
mov r8, qword [r12]
lea rdx, [0x180054ef0]
call fcn.180001790
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800017e0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800017e0
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, str.Current_Time_1:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x28]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce0]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x2a]
call fcn.18000ffa0
mov rcx, rax
lea rdx, [0x180054ce0]
call fcn.1800128c0
mov rcx, rax
movzx edx, word [rsp + 0x2c]
call fcn.18000ffa0
mov rcx, rax
call fcn.180012b30
mov rcx, qword [rsp + 0x30]
call fcn.180020220
mov dword [rsp + 0x40], 0x40
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x180003164
mov rdi, qword [rsp + 0x50]
shr rdi, 0x14
mov rbx, qword [rsp + 0x48]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
mov rdx, rbx
call fcn.18000fc40
mov rcx, rax
lea rdx, str._MB_Total_
call fcn.1800128c0
mov rcx, rax
mov rdx, rdi
call fcn.18000fc40
mov r15, rax
jmp 0x18000316b
lea r13, str.Failed_to_get_memory_usage_
mov rdx, r13
mov rcx, r15
call fcn.1800128c0
mov rcx, rax
call fcn.180012b30
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800017e0
mov edx, 6
mov r8d, 0x2d0
lea rcx, str.Factorial_of__d_is__d_n
call fcn.1800017e0
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x1800031e3
inc rdx
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x1800031de
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180003267
mov rcx, r8
call fcn.18001ae7c
xor eax, eax
jmp 0x180003224
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x18000321f
inc rdx
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x18000321a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180003267
mov rcx, r8
call fcn.18001ae7c
mov eax, 0xffffffff
mov qword [r12 + 0x10], rsi
mov qword [r12 + 0x18], 0xf
mov byte [r12], 0
mov rcx, qword [rbp + 0x3b0]
xor rcx, rsp
call fcn.18001ae20
lea r11, [rsp + 0x4c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.18001ff34
int3