Function at 0x140004380
Capabilities:
Accept command line arguments
Get common file path
Get memory capacity
Get system information on windows
Terminate process

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2c8
movaps xmmword [rsp + 0x2b0], xmm6
mov rdi, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor ecx, ecx
call rdi
mov qword [rsp + 0x38], rax
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov rsi, rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
xor ecx, ecx
call rdi
mov rdi, rax
mov ecx, 0x100
mov edx, 0x56
mov r8d, 0x2e
mov r9d, 0x2c218cc0
call fcn.140002bc0
lea rbx, [rsp + 0x40]
mov rcx, rdi
mov rdx, rbx
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov ebp, eax
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rsi, rax
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
mov ecx, 5
call fcn.140002bc0
mov rbx, rax
add ebx, edi
mov ecx, 0xfffffffb
mov edx, ebp
mov r8d, ebp
mov r9d, ebp
call fcn.140002bc0
cmp ebx, esi
jl 0x14000454f
add edi, eax
cmp edi, esi
jg 0x14000454f
lea rcx, [rsp + 0x140]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov esi, dword [rsp + 0x160]
mov qword [rsp + 0x28], 0xd6
mov qword [rsp + 0x20], 0xe5b836
mov ecx, 2
mov r8d, 0x1ceca7
mov r9d, 0x890025
mov edx, esi
call fcn.140002bc0
cmp esi, eax
jb 0x14000454f
mov ecx, 0x40
call fcn.140002bc0
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov esi, eax
mov rbx, qword [rsp + 0x48]
movabs rcx, 0xfffff80000000
mov edx, 2
mov r9d, 0x55
mov r8d, eax
call fcn.140002bc0
mov rdi, rax
and rdi, rbx
mov dword [rsp + 0x20], esi
mov r8d, 0xad5c63
xor ecx, ecx
mov edx, esi
mov r9d, esi
call fcn.140002bc0
cmp rdi, rax
je 0x14000454f
mov rcx, qword [rsp + 0x38]
call fcn.1400032d0
mov ecx, 0x3e8
mov edx, 0x9c
mov r8d, 0x33
mov r9d, 0xf5
call fcn.140002bc0
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, [0x14000622d]
lea r8, str.s7C9rrGnvbK0vaenqaevp6f
lea rdi, [rsp + 0x240]
mov rcx, rdi
call qword [sym.imp.USER32.dll_wsprintfA]
mov esi, eax
mov ecx, 4
mov edx, eax
mov r8d, eax
call fcn.140002bc0
mov rbx, rax
mov r8d, 0x86
xor ecx, ecx
mov edx, esi
call fcn.140002bc0
mov rbp, rax
mov dword [rsp + 0x20], esi
mov ecx, 0x1000
mov r9d, 0x7e
mov edx, esi
mov r8d, esi
call fcn.140002bc0
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], eax
mov rcx, 0xffffffffffffffff
xor edx, edx
mov r8d, ebx
mov r9d, ebp
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov qword [rsp + 0x30], rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rbx, qword [rsp + 0x30]
mov ecx, 0xb7
mov edx, 0x3b
mov r8d, esi
call fcn.140002bc0
test rbx, rbx
je 0x1400047d5
cmp edi, eax
je 0x1400047d5
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, eax
lea rcx, [rsp + 0x140]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov edi, dword [rsp + 0x160]
mov ecx, 2
mov edx, 0x60
mov r8d, esi
call fcn.140002bc0
cmp edi, eax
jb 0x1400047e0
mov ecx, 0x40
mov edx, 0xe8
mov r8d, 0x15885607
mov r9d, 0x1cd33b94
call fcn.140002bc0
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov rdi, qword [rsp + 0x48]
movabs rcx, 0xfffff80000000
call fcn.140002bc0
mov rsi, rax
and rsi, rdi
xor ecx, ecx
call fcn.140002bc0
cmp rsi, rax
je 0x1400047e0
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov rsi, rax
xorps xmm6, xmm6
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x120], xmm6
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdi, [rsp + 0x40]
mov rcx, rax
mov rdx, rdi
mov r8d, 0x100
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov ebx, eax
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rsi, rax
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
mov ecx, 5
mov edx, ebx
mov r8d, ebx
mov r9d, ebx
call fcn.140002bc0
mov rbp, rax
add ebp, edi
mov ecx, 0xfffffffb
mov edx, ebx
mov r8d, ebx
mov r9d, ebx
call fcn.140002bc0
cmp ebp, esi
jl 0x140004800
add edi, eax
cmp edi, esi
jg 0x140004800
mov ecx, 1
mov edx, 0x72
mov r8d, 0x50
call fcn.140002bc0
and al, 1
mov ecx, eax
call fcn.140003f20
mov edx, 0x15af1a0f
mov r8d, 0xd2
xor ecx, ecx
call fcn.140002bc0
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, 0xa4
mov r8d, 0xf6
mov r9d, 0x1a7b4923
xor ecx, ecx
call fcn.140002bc0
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_ExitProcess]
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x120], xmm6
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rsi, rax
mov qword [rsp + 0x28], 0x7f
mov qword [rsp + 0x20], 0xe4
mov ecx, 0x100
mov edx, 0x2c
mov r8d, 0x4c
mov r9d, 0x5a
call fcn.140002bc0
lea rdx, [rsp + 0x40]
mov rcx, rsi
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov esi, eax
mov ecx, 0x100
mov edx, eax
mov r8d, eax
mov r9d, eax
call fcn.140002bc0
lea rdx, [rsp + 0x140]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmm2, xmmword [rsp + 0x60]
movaps xmm3, xmmword [rsp + 0x70]
movups xmmword [0x14000714c], xmm0
movups xmmword [0x14000715c], xmm1
movups xmmword [0x14000716c], xmm2
movups xmmword [0x14000717c], xmm3
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [0x14000718c], xmm0
movaps xmm0, xmmword [rsp + 0x90]
movups xmmword [0x14000719c], xmm0
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [0x1400071ac], xmm0
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [0x1400071bc], xmm0
mov dword [rsp + 0x20], esi
mov ecx, 0x3e8
mov edx, esi
mov r8d, esi
mov r9d, esi
call fcn.140002bc0
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rsp + 0x38]
call fcn.140002d90
jmp 0x1400047e0