Function at 0x14000d40c
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x14002f008]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov rcx, qword [rcx + 0x70]
xor r15d, r15d
movsxd r14, r8d
mov r12d, r15d
mov dword [rsp + 0x34], r14d
mov edi, r15d
mov r13, rdx
call fcn.14000e400
mov rbx, rax
mov esi, 0x104
test rax, rax
je 0x14000d47d
or rdi, 0xffffffffffffffff
inc rdi
cmp word [rax + rdi*2], r15w
jne 0x14000d46a
cmp rdi, rsi
jae 0x14001a18e
cmp byte [0x140046d39], r15b
je 0x14000d4ad
test rax, rax
je 0x14001a19d
mov r8d, 4
lea rdx, str.cmd
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wcsnicmp]
test eax, eax
je 0x14001a19d
xor edx, edx
lea rcx, [rsp + 0x60]
mov r8d, 0x208
call sub.msvcrt.dll_memset
mov r8, rbx
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.14000dc10
lea rcx, [rsp + 0x60]
mov ebx, 0x5c
mov edx, 0x2f
call fcn.140008434
test rax, rax
jne 0x14001a1c4
lea rdx, [rsp + 0x50]
mov dword [rsp + 0x50], 0x3a005c
lea rcx, [rsp + 0x60]
mov word [rsp + 0x54], r15w
call fcn.140011210
mov word [rsp + 0x52], r15w
cmp rax, rdi
jae 0x14000da36
mov esi, 1
lea rcx, [rsp + 0x60]
mov edx, ebx
mov dword [rsp + 0x30], esi
call fcn.14000e3dc
mov rbx, rax
test rax, rax
je 0x14001a1d0
add rbx, 2
cmp word [rbx], r15w
je 0x14001a252
movzx ecx, word [rbx]
movzx eax, word [0x140028848]
sub ecx, eax
jne 0x14000d562
movzx ecx, word [rbx + 2]
movzx eax, word [0x14002884a]
sub ecx, eax
test ecx, ecx
je 0x14001a252
movzx ecx, word [rbx]
movzx eax, word [0x140028840]
sub ecx, eax
jne 0x14000d594
movzx ecx, word [rbx + 2]
movzx eax, word [0x140028842]
sub ecx, eax
jne 0x14000d594
movzx ecx, word [rbx + 4]
movzx eax, word [0x140028844]
sub ecx, eax
test ecx, ecx
je 0x14001a252
mov ecx, 0x410
call fcn.14000b530
mov rdi, rax
test rax, rax
je 0x14001a1e7
lea r8, [rsp + 0x60]
mov qword [rsp + 0x38], r14
mov rdx, r14
mov rcx, r13
call fcn.14000dc10
lea rcx, [rsp + 0x60]
mov rax, rbx
sub rax, rcx
lea r8, [0x140028848]
sar rax, 1
mov rdx, r14
mov rcx, r13
mov word [r13 + rax*2], r15w
call fcn.14000db30
mov r14d, 0x208
mov r8, r13
mov edx, r14d
mov rcx, rdi
call fcn.14000f654
test eax, eax
jne 0x14001a1fb
mov rcx, rdi
call fcn.14000e900
mov ecx, 0x5c
cmp word [rax], cx
je 0x14000d62d
lea r8, [0x1400288e0]
mov edx, r14d
mov rcx, rdi
call fcn.14000db30
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.14000db30
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r15w
jne 0x14000d63f
lea edx, [rax*2 + 2]
mov rcx, rdi
call fcn.14000d360
mov r14, rax
test rax, rax
je 0x14001a1e7
mov edx, 0x5c
mov rcx, rax
call fcn.14000e3dc
mov word [rax], r15w
lea rbx, [rax + 2]
mov qword [rsp + 0x40], rbx
test esi, esi
je 0x14000da48
mov rcx, r13
call qword [sym.imp.api_ms_win_core_processenvironment_l1_2_0.dll_NeedCurrentDirectoryForExePathW]
xor edx, edx
mov r15d, eax
test eax, eax
je 0x14001a22c
or rcx, 0xffffffffffffffff
inc rcx
cmp word [r14 + rcx*2], dx
jne 0x14000d6a0
add rcx, 2
lea esi, [rcx + 2]
test r12, r12
jne 0x14000da21
lea ecx, [rsi + rsi]
call fcn.14000b530
mov rdi, rax
xor eax, eax
test rdi, rdi
je 0x14001a1e7
test r15d, r15d
je 0x14000d711
movsxd rbx, esi
lea r8, [0x140028850]
mov rdx, rbx
mov rcx, rdi
call fcn.14000db30
mov r8, r14
mov rdx, rbx
mov rcx, rdi
call fcn.14000db30
lea r8, [0x140028850]
mov rdx, rbx
mov rcx, rdi
call fcn.14000db30
mov rbx, qword [rsp + 0x40]
xor eax, eax
cmp dword [rsp + 0x30], eax
je 0x14000da5c
mov rcx, rdi
call fcn.14000ec10
mov r8d, 1
lea rdx, [0x14002884c]
mov rcx, rdi
call fcn.140008fa0
or r15, 0xffffffffffffffff
mov r14, rax
xor edi, edi
inc r15
cmp word [rbx + r15*2], di
jne 0x14000d741
inc r15
cmp byte [0x140046d39], dil
je 0x14001a234
lea rcx, str.PATHEXT
call fcn.1400086f4
mov r10, rax
test rax, rax
je 0x14001a234
mov rcx, rax
call fcn.14000ec10
mov r8d, 1
lea rdx, [0x14002884c]
mov rcx, r10
call fcn.140008fa0
mov r12, qword [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x48], rax
or rdi, 0xffffffffffffffff
mov rbx, rdi
inc rbx
cmp word [r14 + rbx*2], r8w
jne 0x14000d7a4
mov rcx, r14
lea esi, [rbx + 1]
call fcn.14000e400
mov r8, rax
movsxd rdx, esi
mov rcx, r14
call fcn.14000dc10
mov rdx, rdi
xor r8d, r8d
inc rdx
cmp word [r14 + rdx*2], r8w
jne 0x14000d7cd
mov rcx, r14
call fcn.14000e900
mov ecx, 0x5c
cmp word [rax], cx
je 0x14000dacb
lea edi, [rcx - 0x5b]
mov ebx, esi
inc edx
cmp word [r14], r8w
je 0x14000dada
mov esi, edx
lea rax, [rsi + r15]
cmp rax, 0x104
ja 0x14001a240
mov rdx, qword [rsp + 0x38]
mov r8, r14
mov rcx, r13
call fcn.14000dc10
test edi, edi
je 0x14000dad3
movsxd rax, ebx
mov rbx, qword [rsp + 0x38]
lea r14, [r14 + rax*2]
test edi, edi
je 0x14000d848
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, r13
call fcn.14000db30
mov r8, r12
mov rdx, rbx
mov rcx, r13
call fcn.14000db30
mov rcx, r13
call fcn.14000e400
mov r8, rax
mov rdx, rbx
mov rcx, r13
call fcn.14000dc10
or rdi, 0xffffffffffffffff
xor ecx, ecx
inc rdi
cmp word [r13 + rdi*2], cx
jne 0x14000d872
mov eax, 0x3a
cmp word [r13 + 2], ax
jne 0x14000d89e
movzx ecx, word [r13]
call fcn.14000f994
xor r8d, r8d
test eax, eax
je 0x14000d79d
mov ebx, 0x2e
mov rcx, r12
mov edx, ebx
call fcn.14000e3dc
xor ecx, ecx
test rax, rax
je 0x14000d962
cmp word [rax + 2], cx
je 0x14000d962
mov edx, dword [rsp + 0x34]
lea r8d, [rbx - 0x2d]
mov rcx, r13
call fcn.140007668
xor r8d, r8d
test eax, eax
je 0x14000d947
mov edx, ebx
mov rcx, r13
call fcn.14000e3dc
xor r8d, r8d
mov rbx, rax
test rax, rax
je 0x14000d953
lea rdx, str..CMD
mov rcx, rax
call qword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x14000dac1
lea rdx, str..BAT
mov rcx, rbx
call qword [sym.imp.msvcrt.dll__wcsicmp]
neg eax
sbb eax, eax
add eax, 2
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.1400151c0
mov rbx, qword [rsp + 0x2d8]
add rsp, 0x280
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [rsp + 0x30]
test ecx, ecx
jne 0x14000daf2
mov eax, dword [0x140046d88]
cmp eax, 2
jne 0x14000db14
mov edx, 0x2a
mov rcx, r12
call fcn.140008434
test rax, rax
jne 0x14000dae1
lea edx, [rax + 0x3f]
mov rcx, r12
call fcn.140008434
xor ecx, ecx
test rax, rax
jne 0x14000dae1
mov edx, dword [rsp + 0x34]
lea r9, [0x140028b34]
mov rbx, qword [rsp + 0x48]
mov r8d, edi
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.140006a00
xor r8d, r8d
test eax, eax
je 0x14000d79d
cmp word [rbx], r8w
je 0x14000d79d
or rax, 0xffffffffffffffff
inc rax
cmp word [rbx + rax*2], r8w
jne 0x14000d9c6
add rax, rsi
add rax, r15
cmp rax, 0x104
ja 0x14000da13
mov edx, dword [rsp + 0x34]
mov r9, rbx
mov r8d, edi
mov dword [rsp + 0x20], 1
mov rcx, r13
call fcn.140006a00
xor r8d, r8d
test eax, eax
jne 0x14000da8f
test dword [0x140046d88], 0xfffffffd
jne 0x14000d79d
movzx eax, word [rbx]
add rbx, 2
test ax, ax
jne 0x14000da13
jmp 0x14000d9b8
or rax, 0xffffffffffffffff
inc rax
cmp word [r12 + rax*2], dx
jne 0x14000da25
add esi, eax
jmp 0x14000d6ba
mov esi, r15d
mov dword [rsp + 0x30], r15d
lea rbx, [rsp + 0x60]
jmp 0x14000d53d
lea rcx, [0x1400285d0]
call fcn.1400086f4
mov r12, rax
jmp 0x14000d686
test r12, r12
je 0x14000d71b
test r15d, r15d
je 0x14000da7c
movsxd rdx, esi
lea r8, [0x14002884c]
mov rcx, rdi
call fcn.14000db30
movsxd rdx, esi
mov r8, r12
mov rcx, rdi
call fcn.14000db30
jmp 0x14000d71b
lea rdx, str..BAT
mov rcx, rbx
call qword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x14000dac1
lea rdx, str..CMD
mov rcx, rbx
call qword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x14000dac1
mov eax, 1
jmp 0x14000d91d
mov eax, 2
jmp 0x14000d91d
mov edi, r8d
jmp 0x14000d7f4
inc ebx
jmp 0x14000d828
cmp dword [rsp + 0x30], r8d
jne 0x14000db06
mov dword [0x140046d88], 0x2331
xor eax, eax
jmp 0x14000d91d
mov eax, dword [0x140046d88]
cmp eax, 5
jne 0x14000d959
jmp 0x14000d8d9
test dword [0x140046d88], 0xfffffffd
jne 0x14000daeb
jmp 0x14000dae1
test eax, eax
jne 0x14000d79d
jmp 0x14000d962
mov dword [0x140046d88], 0x233f
jmp 0x14000daeb
lea rcx, str.COMSPEC
call fcn.1400086f4
mov rbx, rax
test rax, rax
jne 0x14000d4ad
mov dword [0x140046d88], 0x400023d2
jmp 0x14000daeb
mov word [rax], bx
lea rcx, [rax + 2]
jmp 0x14000d4d9
mov edx, 0x3a
lea rcx, [rsp + 0x60]
call fcn.140008434
mov rbx, rax
jmp 0x14000d539
mov dword [0x140046d88], 8
mov eax, 3
jmp 0x14000d91d
cmp byte [0x140046d39], r15b
je 0x14000dae1
mov rcx, r13
call qword [sym.imp.api_ms_win_core_file_l1_2_1.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14000dae1
test al, 0x10
je 0x14000dae1
mov eax, 5
jmp 0x14000d91d
mov rcx, rdx
jmp 0x14000d6ae
lea r10, str..COM_.EXE_.BAT_.CMD_.VBS_.JS_.WS_.MSC
jmp 0x14000d77b
test edi, edi
jne 0x14001a246
inc ebx
movsxd rax, ebx
lea r14, [r14 + rax*2]
jmp 0x14000d79d
cmp byte [0x140046d39], r15b
je 0x14000dae1
mov rcx, r13
call qword [sym.imp.api_ms_win_core_file_l1_2_1.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001a21a
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_GetLastError]
cmp eax, 0x15
jne 0x14000dae1
mov dword [0x140046d88], eax
jmp 0x14001a1f1