Function at 0x180001990
Capabilities:
Decode data using base64 via winapi
Get hostname
Get memory capacity

Disassembly:
push rbx
push rbp
push rsi
push r14
sub rsp, 0xd8
mov rax, qword [0x180053028]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov rbx, rcx
mov ebp, r9d
lea rcx, str.Null_pointer:__p_n
mov rsi, r8
mov r14, rdx
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x1800019da
xor edx, edx
lea rcx, str.Null_pointer:__p_n
call fcn.180001120
lea rcx, str.Eulers_Number:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001a0c
movsd xmm0, qword [0x18004d210]
call fcn.180039fa0
movaps xmm1, xmm0
lea rcx, str.Eulers_Number:__lf_n
movq rdx, xmm0
call fcn.180001120
lea rcx, [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetCursorPos]
test eax, eax
je 0x180001a43
lea rcx, str.Mouse_Position:__ld___ld_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001a4f
mov r8d, dword [rsp + 0x44]
lea rcx, str.Mouse_Position:__ld___ld_n
mov edx, dword [rsp + 0x40]
call fcn.180001120
jmp 0x180001a4f
lea rcx, str.Error_getting_mouse_position
call fcn.18001db60
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xc8], r15
test rsi, rsi
je 0x180001d2d
xor r15d, r15d
xor r9d, r9d
mov qword [rsp + 0x30], r15
mov edx, ebp
mov qword [rsp + 0x28], r15
mov rcx, rsi
mov qword [rsp + 0x20], r14
lea r8d, [r15 + 1]
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
je 0x180001d2d
mov ecx, dword [r14]
inc ecx
call fcn.180020ffc
lea rcx, [rsp + 0x50]
mov qword [rbx], rax
mov dword [rsp + 0x50], 0x40
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x180001ae0
lea rcx, str.Physical_Memory_Total:__llu_MB_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001aec
mov rdx, qword [rsp + 0x58]
lea rcx, str.Physical_Memory_Total:__llu_MB_n
shr rdx, 0x14
call fcn.180001120
jmp 0x180001aec
lea rcx, str.Error_getting_physical_memory
call fcn.18001db60
lea rcx, str._c_is_a_punctuation_mark._n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001b0e
mov edx, 0x2c
lea rcx, str._c_is_a_punctuation_mark._n
call fcn.180001120
lea rcx, str.Octal_integer:__o_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001b30
mov edx, 0x53
lea rcx, str.Octal_integer:__o_n
call fcn.180001120
mov rdi, qword [rbx]
test rdi, rdi
je 0x180001d2d
mov ecx, dword [r14]
xor eax, eax
inc ecx
rep stosb byte [rdi], al
lea rcx, str.The_value_of_pi_is:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001b6f
movsd xmm1, qword [0x18004d240]
lea rcx, str.The_value_of_pi_is:__lf_n
movq rdx, xmm1
call fcn.180001120
lea rcx, str.Environment_Variables:_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001b8c
lea rcx, str.Environment_Variables:_n
call fcn.180001120
call fcn.180020f78
mov rdi, qword [rax]
cmp qword [rdi], r15
je 0x180001bc9
nop dword [rax]
lea rcx, [0x18004bd88]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001bc0
mov rdx, qword [rdi]
lea rcx, [0x18004bd88]
call fcn.180001120
add rdi, 8
cmp qword [rdi], r15
jne 0x180001ba0
lea rcx, str.Pi:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001bf3
movsd xmm1, qword [0x18004d240]
lea rcx, str.Pi:__lf_n
movq rdx, xmm1
call fcn.180001120
mov r9, qword [rbx]
mov r8d, 1
mov qword [rsp + 0x30], r15
mov edx, ebp
mov qword [rsp + 0x28], r15
mov rcx, rsi
mov qword [rsp + 0x20], r14
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
jne 0x180001d7b
mov rcx, qword [rbx]
call fcn.180020c30
lea rcx, str.The_value_of_Eulers_number_e_is:__lf_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001c58
movsd xmm0, qword [0x18004d210]
call fcn.180039fa0
movaps xmm1, xmm0
lea rcx, str.The_value_of_Eulers_number_e_is:__lf_n
movq rdx, xmm0
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 0x180001c81
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 rdx, [rsp + 0x40]
mov dword [rsp + 0x40], 0x10
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
je 0x180001cc7
lea rcx, str.Computer_Name:__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001ce4
lea rdx, [rsp + 0x90]
lea rcx, str.Computer_Name:__s_n
call fcn.180001120
jmp 0x180001ce4
lea rcx, str.Failed_to_get_computer_name__n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001ce4
lea rcx, str.Failed_to_get_computer_name__n
call fcn.180001120
lea r8, [rsp + 0x40]
mov dword [rsp + 0x40], 0x10
lea rdx, [rsp + 0xa0]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GetComputerNameExA]
test eax, eax
je 0x180001d5c
lea rcx, str.Domain_Name:__s_n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001d2d
lea rdx, [rsp + 0xa0]
lea rcx, str.Domain_Name:__s_n
call fcn.180001120
xor al, al
mov r15, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.180018ca0
add rsp, 0xd8
pop r14
pop rsi
pop rbp
pop rbx
ret
lea rcx, str.Failed_to_get_domain_name__n
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jns 0x180001d2d
lea rcx, str.Failed_to_get_domain_name__n
call fcn.180001120
jmp 0x180001d2d
mov al, 1
jmp 0x180001d2f