Function at 0x180004830
Capabilities:
Check for time delay via gettickcount
Get disk size
Get hostname
Get memory capacity
Get system information on windows
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2d8]
sub rsp, 0x3a0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov rax, qword [0x180057040]
xor rax, rsp
mov qword [rbp + 0x270], rax
mov r13, r9
mov rsi, r8
mov qword [rsp + 0x38], r8
mov r12, rcx
mov qword [rbp + 0x260], rcx
mov qword [rbp + 0x70], r8
mov qword [rbp + 0x78], r9
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 dword [rbp - 0x70], 0x40
lea rcx, [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
lea r15, [0x18005d270]
test eax, eax
je 0x180004908
mov rdi, qword [rbp - 0x60]
shr rdi, 0x14
mov rbx, qword [rbp - 0x68]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
mov rcx, r15
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
lea rdx, str._MB_Available
jmp 0x180004912
mov rax, r15
lea rdx, str.Failed_to_get_memory_usage_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 4
lea r8d, [rdx + 0xc]
lea rcx, str.Square_of__d_is__d_n
call fcn.1800011b0
xor edi, edi
mov qword [rbp + 0x88], rdi
mov qword [rbp + 0x98], rdi
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], dil
lea edx, [rdi + 0x48]
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
lea edx, [rdi + 0x48]
lea rcx, str._c_is_an_uppercase_letter._n
call fcn.1800011b0
mov ebx, 2
lea r8d, [rdi + 1]
mov ecx, ebx
mov eax, 0x11
cdq
idiv ecx
test edx, edx
je 0x180004997
inc ecx
cmp ecx, 8
jle 0x180004982
jmp 0x18000499a
mov r8d, edi
lea r14, str._d_is_not_a_prime_number._n
lea rcx, str._d_is_a_prime_number._n
test r8d, r8d
cmove rcx, r14
mov edx, 0x11
call fcn.1800011b0
xorps xmm0, 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
movups xmmword [rbp + 0x44], xmm0
movups xmmword [rbp + 0x54], xmm0
mov dword [rbp - 0x30], 0x94
lea rcx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x180004a4c
lea rdx, str.Operating_System_Version:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x2c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e94]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x28]
call fcn.1800157a0
mov rcx, rax
lea rdx, str.__Build
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x24]
call fcn.1800157a0
lea rdx, [0x180050e84]
jmp 0x180004a56
mov rax, r15
lea rdx, str.Failed_to_get_operating_system_version_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov r8d, 1
mov ecx, ebx
nop
mov eax, 0x11
cdq
idiv ecx
test edx, edx
je 0x180004a85
inc ecx
cmp ecx, 8
jle 0x180004a70
jmp 0x180004a88
mov r8d, edi
lea rcx, str._d_is_a_prime_number._n
test r8d, r8d
cmove rcx, r14
mov edx, 0x11
call fcn.1800011b0
mov edx, 5
lea r9d, [rdx + 3]
lea r8d, [rdx - 2]
lea rcx, str.Sum_of__d_and__d_is__d_n
call fcn.1800011b0
mov dword [rsp + 0x48], 0x3fff
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
mov rcx, r15
call fcn.180018200
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x180004b17
sub ecx, 5
je 0x180004b0e
sub ecx, 1
je 0x180004b05
cmp ecx, 3
je 0x180004afc
lea rdx, str.Unknown
jmp 0x180004b1e
lea rdx, str.AMD64
jmp 0x180004b1e
lea rdx, str.IA64
jmp 0x180004b1e
lea rdx, [0x180050bb4]
jmp 0x180004b1e
lea rdx, [0x180050bc0]
mov rcx, r15
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
mov rcx, r15
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:
mov rcx, r15
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:
mov rcx, r15
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:
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7e]
call fcn.180015950
mov rcx, rax
call fcn.180018470
mov dword [rbp + 0x80], 0x10
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x180004bff
lea rdx, str.Computer_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180004c16
lea rdx, str.Failed_to_get_computer_name_
mov rcx, r15
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rbp + 0x80], 0x10
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x260]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
je 0x180004c5f
lea rdx, str.Domain_Name:
call fcn.180018520
mov rcx, rax
lea rdx, [rbp + 0x260]
call fcn.1800187c0
mov rcx, rax
call fcn.180018af0
jmp 0x180004c76
lea rdx, str.Failed_to_get_domain_name_
mov rcx, r15
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
mov edx, dword [rsp + 0x48]
mov ecx, 1
call fcn.180023598
mov r14, rax
mov qword [rsp + 0x30], rax
mov edx, 0x20
lea rcx, str._c_is_a_whitespace_character._n
call fcn.1800011b0
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
mov rcx, r15
call fcn.180018200
movzx ecx, word [rsp + 0x50]
test ecx, ecx
je 0x180004d04
sub ecx, 5
je 0x180004cfb
sub ecx, 1
je 0x180004cf2
cmp ecx, 3
je 0x180004ce9
lea rdx, str.Unknown
jmp 0x180004d0b
lea rdx, str.AMD64
jmp 0x180004d0b
lea rdx, str.IA64
jmp 0x180004d0b
lea rdx, [0x180050bb4]
jmp 0x180004d0b
lea rdx, [0x180050bc0]
mov rcx, r15
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
mov rcx, r15
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:
mov rcx, r15
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:
mov rcx, r15
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:
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x7e]
call fcn.180015950
mov rcx, rax
call fcn.180018470
mov dword [rbp - 0x70], 0x40
lea rcx, [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x180004e0d
mov rdi, qword [rbp - 0x60]
shr rdi, 0x14
mov rbx, qword [rbp - 0x68]
shr rbx, 0x14
lea rdx, str.Memory_Usage:
mov rcx, r15
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
lea rdx, str._MB_Available
xor edi, edi
jmp 0x180004e17
mov rax, r15
lea rdx, str.Failed_to_get_memory_usage_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
test r14, r14
jne 0x180004f15
movups xmm0, xmmword [rbp + 0x88]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rbp + 0x98]
movups xmmword [r12 + 0x10], xmm1
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x180004e83
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x180004e7e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005b9c
mov rcx, r8
call fcn.18001e910
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [r13 + 0x18]
cmp rdx, 0x10
jb 0x180004ecd
inc rdx
mov rcx, qword [r13]
cmp rdx, 0x1000
jb 0x180004ec8
add rdx, 0x27
mov rax, qword [rcx - 8]
sub rcx, rax
add rcx, 0xfffffffffffffff8
cmp rcx, 0x1f
ja 0x180005ba2
mov rcx, rax
call fcn.18001e910
mov qword [r13 + 0x10], rdi
mov qword [r13 + 0x18], 0xf
mov byte [r13], 0
mov rax, r12
mov rcx, qword [rbp + 0x270]
xor rcx, rsp
call fcn.18001e8f0
lea r11, [rsp + 0x3a0]
mov rbx, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov edx, 8
lea r8d, [rdx + 0xd]
lea rcx, str.Fibonacci_number_at_position__d_is__d_n
call fcn.1800011b0
mov edx, 0x7e4
lea rcx, str._d_is_a_leap_year._n
call fcn.1800011b0
mov edx, 0x35
lea rcx, str._c_is_a_digit._n
call fcn.1800011b0
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x180004f59
mov rdx, qword [rsi]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [rbp + 0x80], eax
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.180018200
mov rcx, rax
mov edx, esi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._days_
call fcn.180018200
mov rcx, rax
mov edx, edi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._hours_
call fcn.180018200
mov rcx, rax
mov edx, ebx
call fcn.1800157a0
mov rcx, rax
lea rdx, str._minutes_
call fcn.180018200
mov rcx, rax
mov edx, r14d
call fcn.1800157a0
mov rcx, rax
lea rdx, str._seconds
call fcn.180018200
mov rcx, rax
call fcn.180018470
xor r14d, r14d
mov ebx, r14d
mov dword [rsp + 0x40], 8
lea rcx, [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetLastInputInfo]
test eax, eax
je 0x1800050e7
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rsp + 0x44]
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
lea rdx, str.Idle_Time:
mov rcx, r15
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
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x260]
lea rdx, [rsp + 0x50]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
test eax, eax
je 0x180005185
mov rdi, qword [rsp + 0x40]
shr rdi, 0x1e
mov rbx, qword [rbp + 0x260]
shr rbx, 0x1e
lea rdx, str.Disk_Usage:
mov rcx, r15
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
jmp 0x18000518f
mov rax, r15
lea rdx, str.Failed_to_get_disk_usage_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 4
lea r8d, [rdx + 0xc]
lea rcx, str.Square_of__d_is__d_n
call fcn.1800011b0
cmp dword [rbp + 0x80], r14d
je 0x18000526c
movups xmm0, xmmword [rbp + 0x88]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rbp + 0x98]
movups xmmword [r12 + 0x10], xmm1
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x180005219
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x180005214
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005b9c
mov rcx, r8
call fcn.18001e910
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [r13 + 0x18]
cmp rdx, 0x10
jb 0x180005263
inc rdx
mov rcx, qword [r13]
cmp rdx, 0x1000
jb 0x18000525e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005ba2
mov rcx, r8
call fcn.18001e910
mov qword [r13 + 0x10], r14
jmp 0x180004ed1
xorps xmm0, 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
movups xmmword [rbp + 0x44], xmm0
movups xmmword [rbp + 0x54], xmm0
mov dword [rbp - 0x30], 0x94
lea rcx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x1800052ff
lea rdx, str.Operating_System_Version:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x2c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050e94]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x28]
call fcn.1800157a0
mov rcx, rax
lea rdx, str.__Build
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x24]
call fcn.1800157a0
lea rdx, [0x180050e84]
jmp 0x180005309
mov rax, r15
lea rdx, str.Failed_to_get_operating_system_version_
mov rcx, rax
call fcn.180018200
mov rcx, rax
call fcn.180018470
xor ecx, ecx
call fcn.1800264b0
mov qword [rbp + 0x260], rax
lea rcx, [rbp + 0x260]
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]
mov rcx, r15
call fcn.180018200
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov dword [rbp + 0xb0], 0x1a8
mov ebx, r14d
xor r9d, r9d
lea r8, [rbp + 0xb0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
je 0x18000549d
mov edi, 0x9c
nop
lea rdx, str.Display_Device_Name:
mov rcx, r15
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0xb4]
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Device_String:
mov rcx, r15
call fcn.180018200
mov rcx, rax
lea rdx, [rbp + 0xd4]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov word [rbp - 0xc], di
lea r8, [rbp - 0x30]
mov edx, 0xffffffff
lea rcx, [rbp + 0xb4]
call qword [sym.imp.USER32.dll_EnumDisplaySettingsA]
test eax, eax
je 0x180005477
lea rdx, str.Display_Resolution:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x3c]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f10]
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x40]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Display_Refresh_Rate:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp + 0x48]
call fcn.1800157a0
mov rcx, rax
lea rdx, [0x180050f30]
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov rcx, r15
call fcn.180018470
inc ebx
xor r9d, r9d
lea r8, [rbp + 0xb0]
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
jne 0x1800053a0
mov dword [rbp + 0x84], 1
mov edx, 5
lea r9d, [rdx + 3]
lea r8d, [rdx - 2]
lea rcx, str.Sum_of__d_and__d_is__d_n
call fcn.1800011b0
lea r9, [rbp + 0x260]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
mov rcx, r15
test eax, eax
je 0x180005531
mov rdi, qword [rbp + 0x260]
shr rdi, 0x1e
mov rbx, qword [rsp + 0x40]
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 0x180005538
lea rdx, str.Failed_to_get_disk_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov edx, 7
lea rcx, str._d_is_odd_n
call fcn.1800011b0
mov rdx, r13
cmp qword [r13 + 0x18], 0x10
jb 0x180005564
mov rdx, qword [r13]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov rsi, qword [rsp + 0x30]
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x84]
xor r8d, r8d
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, [0x180050d08]
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x50]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d04]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x52]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d04]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x56]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050d00]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x58]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x5a]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x5c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
mov edx, 0x35
lea rcx, str._c_is_a_digit._n
call fcn.1800011b0
mov dword [rbp - 0x70], 0x40
lea rcx, [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov rcx, r15
test eax, eax
je 0x1800056bd
mov rdi, qword [rbp - 0x60]
shr rdi, 0x14
mov rbx, qword [rbp - 0x68]
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 0x1800056c4
lea rdx, str.Failed_to_get_memory_usage_
call fcn.180018200
mov rcx, rax
call fcn.180018470
mov r8d, dword [rsp + 0x48]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0xf
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.180016eb0
movups xmm6, xmmword [rsp + 0x50]
movups xmmword [rbp + 0x88], xmm6
movups xmm7, xmmword [rsp + 0x60]
movups xmmword [rbp + 0x98], xmm7
mov edx, 6
mov r8d, 0x2d0
lea rcx, str.Factorial_of__d_is__d_n
call fcn.1800011b0
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 rcx, rsi, 0x5265c00
mov rdx, r14
sub rdx, rcx
movabs rcx, 0x4a90be587de6e565
mov rax, rcx
mul rdx
mov rdi, rdx
shr rdi, 0x14
mov rax, rcx
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 rcx, r14
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 0xf
imul rcx, rcx, 0xea60
sub r14, rcx
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.180018200
mov rcx, rax
mov edx, esi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._days_
call fcn.180018200
mov rcx, rax
mov edx, edi
call fcn.1800157a0
mov rcx, rax
lea rdx, str._hours_
call fcn.180018200
mov rcx, rax
mov edx, ebx
call fcn.1800157a0
mov rcx, rax
lea rdx, str._minutes_
call fcn.180018200
mov rcx, rax
mov edx, r14d
call fcn.1800157a0
mov rcx, rax
lea rdx, str._seconds
call fcn.180018200
mov rcx, rax
call fcn.180018470
xor edi, edi
mov ebx, edi
mov dword [rsp + 0x40], 8
lea rcx, [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetLastInputInfo]
test eax, eax
je 0x18000588c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rsp + 0x44]
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
lea rdx, str.Idle_Time:
mov rcx, r15
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
mov ebx, 2
mov ecx, ebx
mov eax, 0x11
cdq
idiv ecx
test edx, edx
je 0x1800058df
inc ecx
cmp ecx, 8
jle 0x1800058c3
lea rcx, str._d_is_a_prime_number._n
jmp 0x1800058e6
lea rcx, str._d_is_not_a_prime_number._n
mov edx, 0x11
call fcn.1800011b0
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop word [rax + rax]
mov eax, 0x11
cdq
idiv ebx
test edx, edx
je 0x18000591c
inc ebx
cmp ebx, 8
jle 0x180005900
lea rcx, str._d_is_a_prime_number._n
jmp 0x180005923
lea rcx, str._d_is_not_a_prime_number._n
mov edx, 0x11
call fcn.1800011b0
mov edx, 4
lea r8d, [rdx + 0xc]
lea rcx, str.Square_of__d_is__d_n
call fcn.1800011b0
mov edx, 0x35
lea rcx, str._c_is_a_digit._n
call fcn.1800011b0
mov rcx, qword [rsp + 0x30]
call fcn.180026854
lea rcx, [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea rdx, str.Processor_Architecture:
mov rcx, r15
call fcn.180018200
movzx ecx, word [rbp - 0x70]
test ecx, ecx
je 0x1800059b4
sub ecx, 5
je 0x1800059ab
sub ecx, 1
je 0x1800059a2
cmp ecx, 3
mov rcx, r15
je 0x180005999
lea rdx, str.Unknown
jmp 0x1800059be
lea rdx, str.AMD64
jmp 0x1800059be
lea rdx, str.IA64
jmp 0x1800059bb
lea rdx, [0x180050bb4]
jmp 0x1800059bb
lea rdx, [0x180050bc0]
mov rcx, r15
call fcn.180018200
mov rcx, rax
call fcn.180018470
lea rdx, str.Number_of_Processors:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x50]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Type:
mov rcx, r15
call fcn.180018200
mov rcx, rax
mov edx, dword [rbp - 0x4c]
call fcn.1800157a0
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Level:
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp - 0x44]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rdx, str.Processor_Revision:
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rbp - 0x42]
call fcn.180015950
mov rcx, rax
call fcn.180018470
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rdx, str.Current_Time_1:
mov rcx, r15
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x58]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x5a]
call fcn.180015950
mov rcx, rax
lea rdx, [0x180050cfc]
call fcn.180018200
mov rcx, rax
movzx edx, word [rsp + 0x5c]
call fcn.180015950
mov rcx, rax
call fcn.180018470
xorps xmm0, xmm0
movsd xmm1, qword [0x1800510f0]
ucomisd xmm0, xmm1
ja 0x180005ad3
sqrtpd xmm0, xmm1
jmp 0x180005adb
movaps xmm0, xmm1
call fcn.180040a3c
cvtsd2ss xmm0, xmm0
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
movq r8, xmm2
mov edx, 9
lea rcx, str.Square_root_of__d_is__.2f_n
call fcn.1800011b0
movups xmmword [r12], xmm6
movups xmmword [r12 + 0x10], xmm7
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x180005b42
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x180005b3d
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005b90
mov rcx, r8
call fcn.18001e910
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [r13 + 0x18]
cmp rdx, 0x10
jb 0x180004ecd
inc rdx
mov rcx, qword [r13]
cmp rdx, 0x1000
jb 0x180004ec8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005b96
mov rcx, r8
jmp 0x180004ec8
call fcn.180026134
nop
call fcn.180026134
nop
call fcn.180026134
nop
call fcn.180026134
int3