Function at 0x180008c80
Capabilities:
Create new key via cryptacquirecontext
Encrypt data using aes via winapi
Get disk size
Get hostname
Get memory capacity
Get system information on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x290]
sub rsp, 0x390
movaps xmmword [rsp + 0x380], xmm6
mov rax, qword [0x180057040]
xor rax, rsp
mov qword [rbp + 0x278], rax
mov rsi, r9
mov edi, r8d
mov dword [rbp + 0x50], r8d
mov r14, rdx
mov r13, rcx
mov qword [rbp - 0x70], rcx
mov qword [rsp + 0x38], rcx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp + 4], xmm0
movups xmmword [rbp + 0x14], xmm0
movups xmmword [rbp + 0x24], xmm0
movups xmmword [rbp + 0x34], xmm0
mov dword [rbp - 0x50], 0x94
lea rcx, [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x180008d6b
lea rdx, str.Operating_System_Version:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x4c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e94]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x48]
call fcn.1800157a0
mov rcx, rax
lea rdx, str.__Build
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x44]
call fcn.1800157a0
lea rdx, [0x180050e84]
jmp 0x180008d79
lea rax, [0x18005d270]
lea rdx, str.Failed_to_get_operating_system_version_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov qword [r13], r12
mov qword [r13 + 0x10], r12
mov qword [r13 + 0x18], 0xf
mov byte [r13], r12b
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x40], 0x10
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x180008e0a
lea rdx, str.Computer_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x240]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180008e25
lea rdx, str.Failed_to_get_computer_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rsp + 0x40], 0x10
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x268]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
je 0x180008e6d
lea rdx, str.Domain_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x268]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180008e88
lea rdx, str.Failed_to_get_domain_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
xorps xmm0, xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp + 4], xmm0
movups xmmword [rbp + 0x14], xmm0
movups xmmword [rbp + 0x24], xmm0
movups xmmword [rbp + 0x34], xmm0
mov dword [rbp - 0x50], 0x94
lea rcx, [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x180008f1f
lea rdx, str.Operating_System_Version:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x4c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e94]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x48]
call fcn.1800157a0
mov rcx, rax
lea rdx, str.__Build
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x44]
call fcn.1800157a0
lea rdx, [0x180050e84]
jmp 0x180008f2d
lea rax, [0x18005d270]
lea rdx, str.Failed_to_get_operating_system_version_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
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.1800011b0
mov qword [rbp - 0x60], r12
mov edx, 0x20
lea rcx, str._c_is_a_whitespace_character._n
call fcn.1800011b0
mov dword [rbp + 0x90], 0x1a8
mov ebx, r12d
xor r9d, r9d
lea r8, [rbp + 0x90]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
je 0x1800090b6
mov r13d, 0x9c
nop dword [rax]
lea rdx, str.Display_Device_Name:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0x94]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Device_String:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0xb4]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov word [rbp - 0x2c], r13w
lea r8, [rbp - 0x50]
mov edx, 0xffffffff
lea rcx, [rbp + 0x94]
call qword [sym.imp.USER32.dll_EnumDisplaySettingsA]
test eax, eax
je 0x180009088
lea rdx, str.Display_Resolution:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x1c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f10]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x20]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Refresh_Rate:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x28]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f30]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rcx, [0x18005d270]
call fcn.180018470
inc ebx
xor r9d, r9d
lea r8, [rbp + 0x90]
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
jne 0x180008fa0
mov r13, qword [rbp - 0x70]
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x268]
lea rdx, [rbp + 0x240]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
test eax, eax
je 0x18000912d
mov rdi, qword [rsp + 0x40]
shr rdi, 0x1e
mov rbx, qword [rbp + 0x268]
shr rbx, 0x1e
lea rdx, str.Disk_Usage:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov rdx, rbx
call fcn.1800155f0
mov rcx, rax
lea rdx, str._GB_Total_
call fcn.180018200
mov rcx, rax
mov rdx, rdi
call fcn.1800155f0
lea rdx, str._GB_Free
mov edi, dword [rbp + 0x50]
jmp 0x18000913b
lea rax, [0x18005d270]
lea rdx, str.Failed_to_get_disk_usage_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
xor ecx, ecx
call fcn.1800264b0
mov qword [rbp + 0x268], rax
lea rcx, [rbp + 0x268]
call fcn.18002680c
mov r9, rax
lea r8, str._Y__m__d__H:_M:_S
mov edx, 0x14
lea rcx, [rbp + 0x240]
call fcn.180023bf4
lea rdx, [0x180050d08]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0x240]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
mov edx, 0xf
mov r9d, 0x14
mov r8d, r9d
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
call fcn.1800011b0
mov dword [rsp + 0x40], 0x10
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x180009218
lea rdx, str.Computer_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x240]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180009233
lea rdx, str.Failed_to_get_computer_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rsp + 0x40], 0x10
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x268]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
je 0x18000927b
lea rdx, str.Domain_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x268]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180009296
lea rdx, str.Failed_to_get_domain_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 0x20
lea rcx, str._c_is_a_whitespace_character._n
call fcn.1800011b0
mov edx, 0x35
lea rcx, str._c_is_a_digit._n
call fcn.1800011b0
mov qword [rbp + 0x258], 0
mov qword [rbp + 0x260], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x80], eax
mov qword [rbp + 0x60], r12
movsd xmm1, qword [0x1800510f0]
ucomisd xmm0, xmm1
ja 0x1800092f9
sqrtpd xmm0, xmm1
jmp 0x180009301
movaps xmm0, xmm1
call fcn.180040a3c
cvtsd2ss xmm0, xmm0
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
movaps xmm2, xmm6
movq r8, xmm6
mov edx, 9
lea rcx, str.Square_root_of__d_is__.2f_n
call fcn.1800011b0
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.1800011b0
mov edx, 4
lea r8d, [rdx + 0xc]
lea rcx, str.Square_of__d_is__d_n
call fcn.1800011b0
mov qword [rbp + 0x58], r12
mov edx, 0xa
lea r9d, [rdx - 7]
lea r8d, [rdx - 3]
lea rcx, str.Difference_between__d_and__d_is__d_n
call fcn.1800011b0
mov edx, 6
mov r8d, 0x2d0
lea rcx, str.Factorial_of__d_is__d_n
call fcn.1800011b0
xor ecx, ecx
call fcn.1800264b0
mov qword [rbp + 0x268], rax
lea rcx, [rbp + 0x268]
call fcn.18002680c
mov r9, rax
lea r8, str._Y__m__d__H:_M:_S
mov edx, 0x14
lea rcx, [rbp + 0x240]
call fcn.180023bf4
lea rdx, [0x180050d08]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0x240]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, [0x180050d08]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x240]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d04]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x242]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d04]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x246]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d00]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x248]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24a]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
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.1800011b0
mov dword [rsp + 0x20], 0xf0000000
mov r9d, 0x18
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
test eax, eax
je 0x18000a12a
mov byte [rbp + 0x68], 8
mov ecx, 2
lea r8d, [rcx - 1]
nop dword [rax]
mov eax, 0x11
cdq
idiv ecx
test edx, edx
je 0x180009525
inc ecx
cmp ecx, 8
jle 0x180009510
jmp 0x180009528
mov r8d, r12d
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.1800011b0
mov edx, 0x65
lea rcx, str._c_is_a_lowercase_letter._n
call fcn.1800011b0
mov edx, 6
mov r8d, 0x2d0
lea rcx, str.Factorial_of__d_is__d_n
call fcn.1800011b0
mov byte [rbp + 0x69], 2
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
lea rcx, [0x18005d270]
call fcn.180018200
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x1800095cd
sub ecx, 5
je 0x1800095c4
sub ecx, 1
je 0x1800095bb
cmp ecx, 3
je 0x1800095b2
lea rdx, str.Unknown
jmp 0x1800095d4
lea rdx, str.AMD64
jmp 0x1800095d4
lea rdx, str.IA64
jmp 0x1800095d4
lea rdx, [0x180050bb4]
jmp 0x1800095d4
lea rdx, [0x180050bc0]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x70]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Type:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x74]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Level:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Revision:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7e]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
lea rcx, [0x18005d270]
call fcn.180018200
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x1800096e0
sub ecx, 5
je 0x1800096d7
sub ecx, 1
je 0x1800096ce
cmp ecx, 3
je 0x1800096c5
lea rdx, str.Unknown
jmp 0x1800096e7
lea rdx, str.AMD64
jmp 0x1800096e7
lea rdx, str.IA64
jmp 0x1800096e7
lea rdx, [0x180050bb4]
jmp 0x1800096e7
lea rdx, [0x180050bc0]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x70]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Type:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x74]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Level:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Revision:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7e]
call fcn.180015950
mov rcx, rax
call fcn.180018470
mov dword [rsp + 0x40], 0x10
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x1800097dc
lea rdx, str.Computer_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x240]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x1800097f7
lea rdx, str.Failed_to_get_computer_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rsp + 0x40], 0x10
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x268]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
je 0x18000983f
lea rdx, str.Domain_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x268]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x18000985a
lea rdx, str.Failed_to_get_domain_name_
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov word [rbp + 0x6a], r12w
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
lea rcx, [0x18005d270]
call fcn.180018200
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x1800098c0
sub ecx, 5
je 0x1800098b7
sub ecx, 1
je 0x1800098ae
cmp ecx, 3
lea rcx, [0x18005d270]
je 0x1800098a5
lea rdx, str.Unknown
jmp 0x1800098ce
lea rdx, str.AMD64
jmp 0x1800098ce
lea rdx, str.IA64
jmp 0x1800098c7
lea rdx, [0x180050bb4]
jmp 0x1800098c7
lea rdx, [0x180050bc0]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x70]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Type:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rsp + 0x74]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Level:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Revision:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7e]
call fcn.180015950
mov rcx, rax
call fcn.180018470
movsd xmm3, qword [0x1800510e8]
movq r9, xmm3
movsd xmm2, qword [0x1800510e0]
movq r8, xmm2
movsd xmm1, qword [0x1800510d8]
movq rdx, xmm1
lea rcx, str.Product_of__.2f_and__.2f_is__.2f_n
call fcn.1800011b0
mov edx, 0x2c
lea rcx, str._c_is_a_punctuation_mark._n
call fcn.1800011b0
mov dword [rbp + 0x6c], 0x660e
mov edx, 0x7e4
lea rcx, str._d_is_a_leap_year._n
call fcn.1800011b0
mov edx, 0x7e4
lea rcx, str._d_is_a_leap_year._n
call fcn.1800011b0
mov edx, 8
lea r8d, [rdx + 0xd]
lea rcx, str.Fibonacci_number_at_position__d_is__d_n
call fcn.1800011b0
mov dword [rbp + 0x70], 0x10
xor ecx, ecx
call fcn.1800264b0
mov qword [rbp + 0x268], rax
lea rcx, [rbp + 0x268]
call fcn.18002680c
mov r9, rax
lea r8, str._Y__m__d__H:_M:_S
mov edx, 0x14
lea rcx, [rsp + 0x50]
call fcn.180023bf4
lea rdx, [0x180050d08]
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.180018200
mov rcx, rax
call fcn.180018470
movaps xmm2, xmm6
movq r8, xmm6
mov edx, 9
lea rcx, str.Square_root_of__d_is__.2f_n
call fcn.1800011b0
mov edx, 0xf
mov r9d, 0x14
mov r8d, r9d
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
call fcn.1800011b0
mov r8d, edi
mov rdx, r14
lea rcx, [rbp + 0x74]
call fcn.1800203a0
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov edx, 0x35
lea rcx, str._c_is_a_digit._n
call fcn.1800011b0
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, str.Current_Time_1:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x248]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24a]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
mov edx, 8
lea r8d, [rdx + 0xd]
lea rcx, str.Fibonacci_number_at_position__d_is__d_n
call fcn.1800011b0
mov dword [rsp + 0x50], 0x40
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea rcx, [0x18005d270]
test eax, eax
je 0x180009bc7
mov rdi, qword [rsp + 0x60]
shr rdi, 0x14
mov rbx, qword [rsp + 0x58]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
call fcn.180018200
mov rcx, rax
mov rdx, rbx
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Total_
call fcn.180018200
mov rcx, rax
mov rdx, rdi
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Available
jmp 0x180009bce
lea rdx, str.Failed_to_get_memory_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rax, [rbp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
xor r9d, r9d
lea r8d, [r9 + 0x1c]
lea rdx, [rbp + 0x68]
mov rcx, qword [rbp + 0x60]
call qword [sym.imp.ADVAPI32.dll_CryptImportKey]
test eax, eax
je 0x180009fc3
xor r9d, r9d
lea r8, [rbp + 0x258]
lea edx, [r9 + 1]
mov rcx, qword [rbp + 0x58]
call qword [sym.imp.ADVAPI32.dll_CryptSetKeyParam]
test eax, eax
je 0x180009fc3
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
mov r8d, dword [rbp + 0x2f0]
mov rdx, rsi
mov rcx, qword [rbp + 0x58]
call fcn.180007f10
test al, al
je 0x180009fc3
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 0xf
mov r8d, dword [rbp - 0x68]
mov rdx, qword [rbp - 0x60]
lea rcx, [rsp + 0x50]
call fcn.180016eb0
lea rax, [rsp + 0x50]
cmp r13, rax
je 0x180009cdb
mov rdx, qword [r13 + 0x18]
cmp rdx, 0x10
jb 0x180009cb8
inc rdx
mov rcx, qword [r13]
cmp rdx, 0x1000
jb 0x180009cb3
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18000a3fe
mov rcx, r8
call fcn.18001e910
mov qword [r13 + 0x18], 0xf
mov byte [r13], 0
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [r13 + 0x10], xmm1
jmp 0x180009d18
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x180009d18
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009d13
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a3fe
call fcn.18001e910
mov edx, 4
lea r8d, [rdx + 0xc]
lea rcx, str.Square_of__d_is__d_n
call fcn.1800011b0
mov edx, 0xf
mov r9d, 0x14
mov r8d, r9d
lea rcx, str.The_maximum_number_between__d_and__d_is__d_n
call fcn.1800011b0
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov rcx, qword [rbp - 0x60]
call fcn.180026854
mov edx, 0xa
lea r9d, [rdx - 7]
lea r8d, [rdx - 3]
lea rcx, str.Difference_between__d_and__d_is__d_n
call fcn.1800011b0
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
movabs rax, 0x8daea1d7f4cf721b
mul rcx
mov r14, rcx
sub r14, rdx
shr r14, 1
add r14, rdx
shr r14, 0x1a
movabs r9, 0x179ec9cbd821dc3b
mov rax, r9
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0xf
imul rax, rax, 0xea60
mov rsi, rcx
sub rsi, rax
movabs rax, 0x624dd2f1a9fbe77
mul rsi
sub rsi, rdx
shr rsi, 1
add rsi, rdx
shr rsi, 9
movabs r8, 0x4a90be587de6e565
mov rax, r8
mul rcx
shr rdx, 0x14
imul rax, rdx, 0x36ee80
mov rdi, rcx
sub rdi, rax
mov rax, r9
mul rdi
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 0xf
imul rax, r14, 0x5265c00
sub rcx, rax
mov rax, r8
mul rcx
mov rbx, rdx
shr rbx, 0x14
lea rdx, str.System_Uptime:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, r14d
call fcn.1800157a0
mov rcx, rax
lea rdx, str._days_
call fcn.180018200
mov rcx, rax
mov edx, ebx
call fcn.1800157a0
mov rcx, rax
lea rdx, str._hours_
call fcn.180018200
mov rcx, rax
mov edx, edi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._minutes_
call fcn.180018200
mov rcx, rax
mov edx, esi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._seconds
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov ebx, r12d
mov dword [rbp + 0x50], 8
lea rcx, [rbp + 0x50]
call qword [sym.imp.USER32.dll_GetLastInputInfo]
test eax, eax
je 0x180009ee1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rbp + 0x54]
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
lea rdx, str.Idle_Time:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, ebx
call fcn.1800157a0
mov rcx, rax
lea rdx, str._seconds
call fcn.180018200
mov rcx, rax
call fcn.180018470
xorps xmm0, xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp + 4], xmm0
movups xmmword [rbp + 0x14], xmm0
movups xmmword [rbp + 0x24], xmm0
movups xmmword [rbp + 0x34], xmm0
mov dword [rbp - 0x50], 0x94
lea rcx, [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
lea rcx, [0x18005d270]
test eax, eax
je 0x180009faf
lea rdx, str.Operating_System_Version:
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x4c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e94]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x48]
call fcn.1800157a0
mov rcx, rax
lea rdx, str.__Build
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x44]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e84]
jmp 0x180009fb6
lea rdx, str.Failed_to_get_operating_system_version_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rbp + 0x90], 0x1a8
xor r9d, r9d
lea r8, [rbp + 0x90]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
je 0x18000a108
mov r13d, 0x9c
nop
lea rdx, str.Display_Device_Name:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0x94]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Device_String:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0xb4]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov word [rbp - 0x2c], r13w
lea r8, [rbp - 0x50]
mov edx, 0xffffffff
lea rcx, [rbp + 0x94]
call qword [sym.imp.USER32.dll_EnumDisplaySettingsA]
test eax, eax
je 0x18000a0d8
lea rdx, str.Display_Resolution:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x1c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f10]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x20]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Refresh_Rate:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x28]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f30]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rcx, [0x18005d270]
call fcn.180018470
inc r12d
xor r9d, r9d
lea r8, [rbp + 0x90]
mov edx, r12d
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
jne 0x180009ff0
mov r13, qword [rbp - 0x70]
mov edx, 0x20
lea rcx, str._c_is_a_whitespace_character._n
call fcn.1800011b0
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x18000a1fd
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
movsd xmm3, qword [0x1800510e8]
movq r9, xmm3
movsd xmm2, qword [0x1800510e0]
movq r8, xmm2
movsd xmm1, qword [0x1800510d8]
movq rdx, xmm1
lea rcx, str.Product_of__.2f_and__.2f_is__.2f_n
call fcn.1800011b0
lea rcx, [rbp + 0x240]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, str.Current_Time_1:
lea rcx, [0x18005d270]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x248]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24a]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp + 0x24c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
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.1800011b0
mov dword [rsp + 0x50], 0x40
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea rcx, [0x18005d270]
test eax, eax
je 0x18000a26a
mov rdi, qword [rsp + 0x60]
shr rdi, 0x14
mov rbx, qword [rsp + 0x58]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
call fcn.180018200
mov rcx, rax
mov rdx, rbx
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Total_
call fcn.180018200
mov rcx, rax
mov rdx, rdi
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Available
jmp 0x18000a271
lea rdx, str.Failed_to_get_memory_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rsp + 0x50], 0x40
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea rcx, [0x18005d270]
test eax, eax
je 0x18000a2eb
mov rdi, qword [rsp + 0x60]
shr rdi, 0x14
mov rbx, qword [rsp + 0x58]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
call fcn.180018200
mov rcx, rax
mov rdx, rbx
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Total_
call fcn.180018200
mov rcx, rax
mov rdx, rdi
call fcn.1800155f0
mov rcx, rax
lea rdx, str._MB_Available
jmp 0x18000a2f2
lea rdx, str.Failed_to_get_memory_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 0x2c
lea rcx, str._c_is_a_punctuation_mark._n
call fcn.1800011b0
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x18000a3d2
call qword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
lea r9, [rbp + 0x268]
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x240]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
lea rcx, [0x18005d270]
test eax, eax
je 0x18000a398
mov rdi, qword [rbp + 0x268]
shr rdi, 0x1e
mov rbx, qword [rbp - 0x70]
shr rbx, 0x1e
lea rdx, str.Disk_Usage:
call fcn.180018200
mov rcx, rax
mov rdx, rbx
call fcn.1800155f0
mov rcx, rax
lea rdx, str._GB_Total_
call fcn.180018200
mov rcx, rax
mov rdx, rdi
call fcn.1800155f0
mov rcx, rax
lea rdx, str._GB_Free
jmp 0x18000a39f
lea rdx, str.Failed_to_get_disk_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 0x48
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov edx, 8
lea r8d, [rdx + 0xd]
lea rcx, str.Fibonacci_number_at_position__d_is__d_n
call fcn.1800011b0
mov rax, r13
mov rcx, qword [rbp + 0x278]
xor rcx, rsp
call fcn.18001e8f0
movaps xmm6, xmmword [rsp + 0x380]
add rsp, 0x390
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.180026134
int3