Function at 0x14000c160
Capabilities:
Get common file path
Query environment variable

Disassembly:
push rbx
push rbp
push r14
sub rsp, 0x840
mov rax, qword [0x1400284a0]
xor rax, rsp
mov qword [rsp + 0x820], rax
mov rbp, rdx
mov r14, rcx
lea rdx, [rsp + 0x420]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
jne 0x14000c1e3
lea rcx, str.could_not_identify_current_directory:__m
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
mov rdx, rbx
call fcn.14000ecc0
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov ecx, 0xa
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
mov eax, 0xffffffff
jmp 0x14000c3df
mov qword [rsp + 0x870], rsi
mov rcx, r14
mov qword [rsp + 0x838], rdi
mov qword [rsp + 0x830], r15
call fcn.140011100
test rax, rax
je 0x14000c2a1
movzx eax, byte [r14]
cmp al, 0x2f
je 0x14000c24e
cmp al, 0x5c
je 0x14000c24e
movzx ecx, al
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
test eax, eax
je 0x14000c239
cmp byte [r14 + 1], 0x3a
jne 0x14000c239
movzx eax, byte [r14 + 2]
cmp al, 0x2f
je 0x14000c24e
cmp al, 0x5c
je 0x14000c24e
mov r8, r14
lea rdx, [rsp + 0x420]
mov rcx, rbp
call fcn.1400111b0
jmp 0x14000c267
mov r8d, 0x400
mov rdx, r14
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbp + 0x3ff], 0
mov rcx, rbp
call fcn.140011270
mov rcx, rbp
call fcn.14000c950
test eax, eax
je 0x14000c3c5
lea rcx, str.invalid_binary___s_
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, rbp
jmp 0x14000c462
mov r8, r14
lea rdx, [rsp + 0x420]
mov rcx, rbp
call fcn.1400111b0
mov rcx, rbp
call fcn.14000c950
test eax, eax
je 0x14000c3c5
lea rcx, str.PATH
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov r15, rax
test rax, rax
je 0x14000c445
cmp byte [rax], 0
je 0x14000c445
xor esi, esi
mov ebx, esi
nop word [rax + rax]
test rsi, rsi
mov rsi, r15
je 0x14000c2fc
lea rsi, [rbx + 1]
mov rcx, rsi
call fcn.140011180
mov rbx, rax
test rax, rax
jne 0x14000c31f
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], 0
jne 0x14000c313
add rbx, rsi
mov rax, rbx
sub rax, rsi
lea rdi, [rax + 1]
cmp rdi, 0x400
jge 0x14000c339
test rdi, rdi
je 0x14000c354
jmp 0x14000c33e
mov edi, 0x400
mov r8, rdi
lea rcx, [rsp + 0x20]
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rsp + rdi + 0x1f], 0
movzx eax, byte [rsp + 0x20]
cmp al, 0x2f
je 0x14000c39c
cmp al, 0x5c
je 0x14000c39c
movzx ecx, al
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
test eax, eax
je 0x14000c382
cmp byte [rsp + 0x21], 0x3a
jne 0x14000c382
movzx eax, byte [rsp + 0x22]
cmp al, 0x2f
je 0x14000c39c
cmp al, 0x5c
je 0x14000c39c
lea r8, [rsp + 0x20]
mov rcx, rbp
lea rdx, [rsp + 0x420]
call fcn.1400111b0
mov rdx, rbp
jmp 0x14000c3a1
lea rdx, [rsp + 0x20]
mov r8, r14
mov rcx, rbp
call fcn.1400111b0
mov rcx, rbp
call fcn.140011270
mov rcx, rbp
call fcn.14000c950
cmp eax, 0xfffffffe
je 0x14000c3fb
test eax, eax
jne 0x14000c43c
xor eax, eax
mov rdi, qword [rsp + 0x838]
mov rsi, qword [rsp + 0x870]
mov r15, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x820]
xor rcx, rsp
call fcn.140014dd0
add rsp, 0x840
pop r14
pop rbp
pop rbx
ret
lea rcx, str.could_not_read_binary___s_
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rdi, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, rbp
mov rdx, rdi
mov rcx, rax
call fcn.14000ecc0
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov ecx, 0xa
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
cmp byte [rbx], 0
jne 0x14000c2f0
lea rcx, str.could_not_find_a___s__to_execute
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, r14
mov rcx, rax
mov rdx, rbx
call fcn.14000ecc0
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov ecx, 0xa
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
mov eax, 0xffffffff
jmp 0x14000c3c7