Function at 0x18000b430
Capabilities:
Get disk size
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x180053028]
xor rax, rsp
mov qword [rbp + 8], rax
mov r12, rcx
lea rcx, str.Array_sum:__d_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b481
mov edx, reloc.WS2_32.dll_ntohs
lea rcx, str.Array_sum:__d_n
call fcn.180001120
lea rcx, str.Character:__c_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b4a3
mov edx, 0x41
lea rcx, str.Character:__c_n
call fcn.180001120
xorps xmm0, xmm0
mov dword [rsp + 0x50], 0x9c
xor eax, eax
lea rcx, [rsp + 0x50]
movups xmmword [rsp + 0x54], xmm0
mov qword [rbp - 0x1c], rax
movups xmmword [rsp + 0x64], xmm0
movups xmmword [rsp + 0x74], xmm0
movups xmmword [rbp - 0x7c], xmm0
movups xmmword [rbp - 0x6c], xmm0
movups xmmword [rbp - 0x5c], xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x18000b521
lea rcx, str.Operating_System_Version:__d._d._d__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b52d
mov r9d, dword [rsp + 0x5c]
lea rax, [rsp + 0x64]
mov r8d, dword [rsp + 0x58]
lea rcx, str.Operating_System_Version:__d._d._d__s_n
mov edx, dword [rsp + 0x54]
mov qword [rsp + 0x20], rax
call fcn.180001120
jmp 0x18000b52d
lea rcx, str.Error_getting_OS_version
call fcn.18001db60
lea rcx, str.Unsigned_long_integer:__lu_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b550
mov edx, 0xffffffff
lea rcx, str.Unsigned_long_integer:__lu_n
call fcn.180001120
nop
lea rcx, str.Array_sum:__d_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b572
mov edx, reloc.WS2_32.dll_ntohs
lea rcx, str.Array_sum:__d_n
call fcn.180001120
mov r14d, 9
xor r15d, r15d
mov ebx, r14d
mov esi, 1
nop dword [rax]
nop word [rax + rax]
lea edi, [rsi + r15]
lea r15d, [rsi]
mov esi, edi
lea rcx, [0x18004c408]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b5b8
mov edx, edi
lea rcx, [0x18004c408]
call fcn.180001120
sub rbx, 1
jne 0x18000b590
lea rcx, [0x18004bd68]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b5db
lea rcx, [0x18004bd68]
call fcn.180001120
xor ecx, ecx
call fcn.180020884
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rax
call fcn.180020be0
mov r9, rax
lea r8, str._Y__m__d__H:_M:_S
mov edx, 0x14
lea rcx, [rbp - 0x10]
call fcn.18001e084
lea rcx, str.Current_Time_3:__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b62a
lea rdx, [rbp - 0x10]
lea rcx, str.Current_Time_3:__s_n
call fcn.180001120
xorps xmm0, xmm0
mov dword [rsp + 0x50], 0x9c
xor eax, eax
lea rcx, [rsp + 0x50]
movups xmmword [rsp + 0x54], xmm0
mov qword [rbp - 0x1c], rax
movups xmmword [rsp + 0x64], xmm0
movups xmmword [rsp + 0x74], xmm0
movups xmmword [rbp - 0x7c], xmm0
movups xmmword [rbp - 0x6c], xmm0
movups xmmword [rbp - 0x5c], xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x18000b6a8
lea rcx, str.Operating_System_Version:__d._d._d__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b6b4
mov r9d, dword [rsp + 0x5c]
lea rax, [rsp + 0x64]
mov r8d, dword [rsp + 0x58]
lea rcx, str.Operating_System_Version:__d._d._d__s_n
mov edx, dword [rsp + 0x54]
mov qword [rsp + 0x20], rax
call fcn.180001120
jmp 0x18000b6b4
lea rcx, str.Error_getting_OS_version
call fcn.18001db60
lea rcx, str.Current_date:_2024_04_07_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b6d1
lea rcx, str.Current_date:_2024_04_07_n
call fcn.180001120
xor eax, eax
lea rdi, [rsp + 0x30]
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b70a
mov r9d, 0x14
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
mov r8d, r9d
mov edx, reloc.WS2_32.dll_ntohs
call fcn.180001120
lea rcx, str.Unsigned_long_integer:__lu_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b72c
mov edx, 0xffffffff
lea rcx, str.Unsigned_long_integer:__lu_n
call fcn.180001120
lea rcx, str.Eulers_Number:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b75e
movsd xmm0, qword [0x18004d210]
call fcn.180039fa0
movaps xmm1, xmm0
lea rcx, str.Eulers_Number:__lf_n
movq rdx, xmm0
call fcn.180001120
lea r9, [rsp + 0x38]
xor ecx, ecx
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
test eax, eax
je 0x18000b7aa
lea rcx, str.Disk_Usage:__d_MB_Total___d_MB_Free_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b7c7
mov r8, qword [rsp + 0x38]
lea rcx, str.Disk_Usage:__d_MB_Total___d_MB_Free_n
mov rdx, qword [rsp + 0x48]
shr r8, 0x14
shr rdx, 0x14
call fcn.180001120
jmp 0x18000b7c7
lea rcx, str.Failed_to_get_disk_usage__n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b7c7
lea rcx, str.Failed_to_get_disk_usage__n
call fcn.180001120
xor esi, esi
mov ebx, 1
nop
lea edi, [rbx + rsi]
lea esi, [rbx]
mov ebx, edi
lea rcx, [0x18004c408]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b7f6
mov edx, edi
lea rcx, [0x18004c408]
call fcn.180001120
sub r14, 1
jne 0x18000b7d0
lea rcx, [0x18004bd68]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b819
lea rcx, [0x18004bd68]
call fcn.180001120
lea rcx, str.Long_integer:__ld_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b83b
mov edx, 0x499602d2
lea rcx, str.Long_integer:__ld_n
call fcn.180001120
mov byte [rsp + 0x30], 1
xor ebx, ebx
xor edi, edi
lea eax, [rdi + rbx]
test al, 1
jne 0x18000b865
lea rcx, [0x18004cf28]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b882
lea rcx, [0x18004cf28]
jmp 0x18000b87d
lea rcx, [0x18004cf2c]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b882
lea rcx, [0x18004cf2c]
call fcn.180001120
inc edi
cmp edi, 8
jl 0x18000b844
lea rcx, [0x18004bd68]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b8a6
lea rcx, [0x18004bd68]
call fcn.180001120
inc ebx
cmp ebx, 8
jl 0x18000b842
lea rax, [rsp + 0x38]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x18000b95c
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x48]
lea rax, [rbp - 0x10]
mov dword [rsp + 0x40], 0x14
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.InstallDate
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x18000b943
lea rcx, str.Operating_System_Install_Date:__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b94f
lea rdx, [rbp - 0x10]
lea rcx, str.Operating_System_Install_Date:__s_n
call fcn.180001120
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x18000b968
lea rcx, str.Error_getting_OS_install_date
call fcn.18001db60
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x18000b968
lea rcx, str.Error_opening_registry_key
call fcn.18001db60
lea rcx, str.Product_of__d_and__d_is:__d_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b992
mov edx, 5
lea rcx, str.Product_of__d_and__d_is:__d_n
lea r9d, [rdx + 0x19]
lea r8d, [rdx + 1]
call fcn.180001120
lea rcx, str.The_minimum_number_between__d_and__d_is__d_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b9bb
mov edx, 0x19
lea rcx, str.The_minimum_number_between__d_and__d_is__d_n
mov r9d, edx
lea r8d, [rdx + 5]
call fcn.180001120
lea rcx, str.The_value_of_pi_is:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000b9e5
movsd xmm1, qword [0x18004d240]
lea rcx, str.The_value_of_pi_is:__lf_n
movq rdx, xmm1
call fcn.180001120
lea rcx, str._c_is_an_uppercase_letter._n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x18000ba07
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.180001120
mov r9d, 1
lea r8, [rsp + 0x30]
mov rcx, r12
lea edx, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_SetFileInformationByHandle]
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.180018ca0
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret