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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x450]
sub rsp, 0x550
mov rax, qword [0x14049f3c0]
xor rax, rsp
mov qword [rbp + 0x440], rax
mov rdi, rdx
mov r12, rcx
xor r15d, r15d
mov edx, r15d
movzx eax, word [rdi]
or eax, 0x20
sub eax, 0x61
lea r13d, [r15 + 2]
cmp eax, 0x19
ja 0x1400f4d67
cmp word [rdi + 2], 0x3a
cmove edx, r13d
mov rbx, 0xffffffffffffffff
mov esi, ebx
mov eax, edx
movzx ecx, word [rdi + rax*2]
test cx, cx
je 0x1400f523f
nop
mov eax, esi
cmp cx, 0x3a
jne 0x1400f4d91
mov esi, edx
test eax, eax
cmovns esi, eax
jmp 0x1400f4d9f
cmp cx, 0x5c
je 0x1400f4d9d
cmp cx, 0x2f
jne 0x1400f4d9f
mov esi, ebx
inc edx
movzx ecx, word [rdi + rdx*2]
test cx, cx
jne 0x1400f4d80
test esi, esi
js 0x1400f523f
lea eax, [rsi + 1]
cmp word [rdi + rax*2], r15w
je 0x1400f523f
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov eax, esi
lea r13, [rax + rax]
lea r14, [rdi + r13]
cmp word [r14], r15w
je 0x1400f4deb
nop dword [rax + rax]
inc r15d
cmp word [r14 + r15*2], 0
jne 0x1400f4de0
mov ecx, r15d
inc rcx
mov eax, 2
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1402bb024
mov rcx, rax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x4c], r15d
lea r8d, [r15 + 1]
add r8, r8
mov rdx, r14
call fcn.14030ac20
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xor edx, edx
mov r14d, edx
cmp word [rdi], dx
je 0x1400f4e4a
nop dword [rax]
inc r14d
cmp word [rdi + r14*2], dx
jne 0x1400f4e40
mov ecx, r14d
inc rcx
mov eax, 2
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1402bb024
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], r14d
mov dword [rsp + 0x5c], r14d
lea r8d, [r14 + 1]
add r8, r8
mov rdx, rdi
mov rcx, rax
call fcn.14030ac20
nop
cmp esi, r14d
jae 0x1400f4e9e
mov r14d, esi
mov dword [rsp + 0x58], esi
mov rcx, qword [rsp + 0x50]
xor eax, eax
mov word [rcx + r13], ax
cmp r15d, 6
jbe 0x1400f4ebd
mov eax, r15d
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + rax*2]
add rcx, 0xfffffffffffffff4
call fcn.1400f38e0
test al, al
jne 0x1400f4ec7
lea rcx, [rsp + 0x40]
call fcn.1400f3c80
mov r13, qword [rsp + 0x50]
movzx eax, word [r13]
or eax, 0x20
sub eax, 0x61
cmp eax, 0x19
ja 0x1400f4f8e
cmp word [r13 + 2], 0x3a
jne 0x1400f4f8e
cmp esi, 2
je 0x1400f4f06
cmp esi, 3
jne 0x1400f4f8e
cmp word [r13 + 4], 0x5c
jne 0x1400f4f8e
xor ecx, ecx
mov qword [r12], rcx
mov qword [r12 + 8], rcx
mov qword [r12 + 0x10], rcx
mov qword [r12 + 0x18], rcx
mov dword [r12 + 0x20], ecx
mov word [r12 + 0x24], cx
lea r15, [r12 + 0x28]
mov dword [r15 + 8], ecx
mov rax, qword [r15]
mov word [rax], cx
cmp esi, 2
jne 0x1400f4fa6
lea rax, [rsp + 0x50]
cmp rax, r15
je 0x1400f4fa6
cmp r14d, dword [r15 + 0xc]
jbe 0x1400f4f76
mov ecx, r14d
inc rcx
mov eax, 2
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1402bb024
mov rdi, rax
mov rcx, qword [r15]
call fcn.1402ba9fc
mov qword [r15], rdi
mov dword [r15 + 0xc], r14d
mov dword [r15 + 8], r14d
lea r8d, [r14 + 1]
add r8, r8
mov rdx, r13
mov rcx, qword [r15]
call fcn.14030ac20
jmp 0x1400f4fa4
xor r8d, r8d
mov rdx, r13
mov rcx, r12
call fcn.1400f4d10
test al, al
je 0x1400f5225
xor ecx, ecx
and dword [r12 + 0x20], 0xfffffbef
mov qword [r12], rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rcx
mov ecx, r14d
inc rcx
mov eax, 2
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1402bb024
mov rdi, rax
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x78], r14d
mov dword [rsp + 0x7c], r14d
lea r8d, [r14 + 1]
add r8, r8
mov rdx, r13
mov rcx, rax
call fcn.14030ac20
nop
mov eax, 8
mov ecx, eax
call fcn.1402bb024
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x34], 3
mov word [rax], cx
cmp rbx, 0xffffffffffffffff
je 0x1400f505e
mov rax, qword [0x1404b69a8]
test rax, rax
je 0x1400f51c4
lea rdx, [rbp - 0x80]
mov rcx, rbx
call rax
test eax, eax
je 0x1400f51cf
mov rax, qword [rbp - 0x80]
lea rdx, [rbp - 0x78]
jmp 0x1400f50be
cmp qword [0x1404b69a0], 0
je 0x1400f51c4
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor r9d, r9d
lea r8, [rbp + 0x1e0]
xor edx, edx
mov rcx, rdi
call qword [0x1404b69a0]
mov rbx, rax
mov qword [rsp + 0x68], rax
cmp rax, 0xffffffffffffffff
jne 0x1400f50a6
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x26
je 0x1400f51cf
cmp rbx, 0xffffffffffffffff
je 0x1400f51cf
mov rax, qword [rbp + 0x1e0]
lea rdx, [rbp + 0x1e8]
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x28]
call fcn.1400f3be0
mov r15, qword [rsp + 0x40]
mov r13, qword [rsp + 0x28]
sub r13, r15
nop word [rax + rax]
movzx esi, word [r15 + r13]
movzx edi, word [r15]
lea r15, [r15 + 2]
cmp si, di
je 0x1400f5146
cmp esi, 0x61
jae 0x1400f50fd
movzx r14d, si
jmp 0x1400f511f
cmp esi, 0x7a
ja 0x1400f5108
lea r14d, [rsi - 0x20]
jmp 0x1400f511f
cmp esi, 0x7f
ja 0x1400f5113
movzx r14d, si
jmp 0x1400f511f
mov rcx, rsi
call qword [sym.imp.USER32.dll_CharUpperW]
mov r14, rax
cmp edi, 0x61
jb 0x1400f5140
cmp edi, 0x7a
ja 0x1400f512f
sub di, 0x20
jmp 0x1400f5140
cmp edi, 0x7f
jbe 0x1400f5140
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharUpperW]
mov rdi, rax
cmp r14w, di
jne 0x1400f51b0
test si, si
jne 0x1400f50e0
mov esi, dword [rsp + 0x30]
cmp esi, 7
jbe 0x1400f516c
lea eax, [rsi - 6]
cmp eax, esi
jae 0x1400f516c
mov esi, eax
mov dword [rsp + 0x30], eax
mov rcx, qword [rsp + 0x28]
xor edx, edx
mov word [rcx + rax*2], dx
mov edx, esi
lea rcx, [r12 + 0x28]
call fcn.1400f39c0
lea r8d, [rsi + 1]
mov ecx, dword [r12 + 0x30]
mov rax, qword [r12 + 0x28]
lea rcx, [rax + rcx*2]
add r8, r8
mov rdx, qword [rsp + 0x28]
call fcn.14030ac20
add dword [r12 + 0x30], esi
mov rax, qword [rsp + 0x38]
mov qword [r12], rax
mov byte [r12 + 0x24], 1
mov dil, 1
jmp 0x1400f51e6
mov rcx, qword [rsp + 0x28]
call fcn.1402ba9fc
mov rdi, qword [rsp + 0x70]
jmp 0x1400f500b
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_SetLastError]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x26
jne 0x1400f51e3
lea ecx, [rax - 0x24]
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor dil, dil
mov rcx, qword [rsp + 0x28]
call fcn.1402ba9fc
nop
mov rcx, qword [rsp + 0x70]
call fcn.1402ba9fc
cmp rbx, 0xffffffffffffffff
je 0x1400f520b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rcx, qword [rsp + 0x50]
call fcn.1402ba9fc
nop
mov rcx, qword [rsp + 0x40]
call fcn.1402ba9fc
jmp 0x1400f55a7
mov rcx, r13
call fcn.1402ba9fc
nop
mov rcx, qword [rsp + 0x40]
call fcn.1402ba9fc
xor r15d, r15d
lea r13d, [r15 + 2]
mov qword [rsp + 0x60], rbx
movzx eax, word [rdi]
cmp ax, 0x5c
je 0x1400f5253
cmp ax, 0x2f
jne 0x1400f5287
movzx eax, word [rdi + 2]
cmp ax, 0x5c
je 0x1400f5263
cmp ax, 0x2f
jne 0x1400f5287
cmp word [rdi + 4], 0x3f
jne 0x1400f5287
movzx eax, word [rdi + 6]
cmp ax, 0x5c
je 0x1400f527a
cmp ax, 0x2f
jne 0x1400f5287
mov edx, 8
lea ecx, [rdx + 6]
mov r14d, edx
jmp 0x1400f5292
mov rdx, r15
mov ecx, 6
mov r14, r15
movzx eax, word [rdx + rdi]
or eax, 0x20
sub eax, 0x61
cmp eax, 0x19
ja 0x1400f534b
cmp word [rdx + rdi + 2], 0x3a
jne 0x1400f534b
movzx eax, word [rdx + rdi + 4]
cmp ax, 0x5c
je 0x1400f52c6
cmp ax, 0x2f
jne 0x1400f534b
cmp word [rdi + rcx], 0
jne 0x1400f534b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400f5580
test al, 0x10
je 0x1400f5580
mov qword [r12], r15
mov qword [r12 + 8], 0
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], 0
mov word [r12 + 0x24], 0
mov dword [r12 + 0x20], eax
lea rdx, [rdi + r14]
lea rcx, [r12 + 0x28]
call fcn.1400f3be0
cmp dword [r12 + 0x30], 2
jbe 0x1400f5338
mov dword [r12 + 0x30], r13d
mov rax, qword [r12 + 0x28]
mov word [rax + 4], r15w
mov rdx, rdi
mov rcx, r12
call fcn.1400f56a0
mov dil, 1
jmp 0x1400f5598
movzx eax, word [rdi]
cmp ax, 0x5c
je 0x1400f535e
cmp ax, 0x2f
jne 0x1400f5580
mov rcx, rdi
cmp word [rdi + 2], 0
jne 0x1400f53c4
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, eax
cmp eax, 0xffffffff
je 0x1400f5580
test cl, 0x10
je 0x1400f5580
mov qword [r12], r15
mov qword [r12 + 8], 0
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], 0
mov word [r12 + 0x24], 0
mov dword [r12 + 0x30], r15d
mov rax, qword [r12 + 0x28]
mov word [rax], r15w
mov dword [r12 + 0x20], ecx
mov dil, 1
jmp 0x1400f5598
call fcn.140105bf0
mov r14d, eax
test eax, eax
je 0x1400f5580
lea rax, [rdi + r14*2]
movzx ecx, word [rax]
test cx, cx
je 0x1400f5580
mov rdx, rax
cmp cx, 0x5c
je 0x1400f5401
cmp cx, 0x2f
je 0x1400f5401
add rdx, 2
movzx ecx, word [rdx]
test cx, cx
jne 0x1400f53e7
jmp 0x1400f540f
sub rdx, rax
sar rdx, 1
test edx, edx
jns 0x1400f5580
mov rdx, rdi
mov rcx, r12
call fcn.1400f56a0
test al, al
je 0x1400f5434
lea rcx, [r12 + 0x28]
lea rdx, [rdi + r14*2]
call fcn.1400f3be0
mov dil, 1
jmp 0x1400f5598
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov esi, r15d
cmp word [rdi], 0
je 0x1400f544e
inc esi
cmp word [rdi + rsi*2], 0
jne 0x1400f5445
mov ecx, esi
inc rcx
mov rax, r13
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1402bb024
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x4c], esi
lea r8d, [rsi + 1]
add r8, r8
mov rdx, rdi
mov rcx, rax
call fcn.14030ac20
nop
mov eax, esi
shr eax, 1
lea edx, [rsi + 0x10]
add edx, eax
and edx, 0xfffffff0
dec edx
cmp edx, esi
jb 0x1400f549f
cmp edx, 0x3ffffffe
jbe 0x1400f54a4
mov edx, 0x3ffffffe
cmp edx, esi
jbe 0x1400f5645
lea rcx, [rsp + 0x40]
call fcn.1400f3950
mov ecx, dword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov word [rbx + rcx*2], 0x5c
inc ecx
mov word [rbx + rcx*2], r15w
mov dword [rsp + 0x48], ecx
cmp dword [rsp + 0x4c], ecx
jne 0x1400f5510
mov edx, ecx
shr edx, 1
add edx, 0x10
add edx, ecx
and edx, 0xfffffff0
dec edx
cmp edx, ecx
jb 0x1400f54f0
cmp edx, 0x3ffffffe
jbe 0x1400f54f5
mov edx, 0x3ffffffe
cmp edx, ecx
jbe 0x1400f562b
lea rcx, [rsp + 0x40]
call fcn.1400f3950
mov ecx, dword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov eax, ecx
mov word [rbx + rax*2], 0x2a
inc ecx
mov word [rbx + rcx*2], r15w
mov dword [rsp + 0x48], ecx
xor sil, sil
mov r8, r12
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.1400f4c50
test al, al
je 0x1400f5556
lea rcx, [r12 + 0x28]
mov rax, qword [rcx]
cmp word [rax], 0x2e
jne 0x1400f5553
cmp word [rax + 2], 0
je 0x1400f5611
mov sil, 1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, 0xffffffff
cmp eax, ecx
cmovne ecx, eax
test sil, sil
jne 0x1400f55d5
cmp ecx, 0xffffffff
je 0x1400f5578
test cl, 0x10
jne 0x1400f55d5
mov rcx, rbx
call fcn.1402ba9fc
mov r8, r12
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.1400f4c50
movzx edi, al
mov rbx, qword [rsp + 0x60]
cmp rbx, 0xffffffffffffffff
je 0x1400f55a7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
movzx eax, dil
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.1402ba9b0
mov rbx, qword [rsp + 0x5a0]
add rsp, 0x550
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [r12], r15
mov qword [r12 + 8], 0
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], 0
mov word [r12 + 0x24], 0
mov eax, reloc.WS2_32.dll_recv
cmp ecx, 0xffffffff
cmovne eax, ecx
mov dword [r12 + 0x20], eax
lea rcx, [r12 + 0x28]
lea rdx, [rdi + r14*2]
call fcn.1400f3be0
nop
mov rcx, rbx
call fcn.1402ba9fc
mov dil, 1
jmp 0x1400f5593
mov dword [rsp + 0x20], 0x13329ac
lea rdx, [0x140493f50]
lea rcx, [rsp + 0x20]
call fcn.1402bd440
int3
mov dword [rsp + 0x20], 0x13329ac
lea rdx, [0x140493f50]
lea rcx, [rsp + 0x20]
call fcn.1402bd440
int3