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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1403aa6c8]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rsi, rdx
mov rdi, rcx
xor edx, edx
lea rcx, [rbp - 0x50]
call fcn.1400029da
nop
mov rbx, qword [rax]
test rbx, rbx
je 0x14009920b
mov rax, qword [rbx + 8]
movsxd rcx, dword [rax + 4]
add rcx, 8
add rcx, rbx
mov rax, qword [rcx]
call qword [rax]
mov rdx, qword [rsi]
mov qword [rsi], rbx
test rdx, rdx
je 0x14009922c
mov rax, qword [rdx + 8]
movsxd rcx, dword [rax + 4]
add rdx, 8
add rcx, rdx
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x14009924b
mov rcx, qword [rax + 8]
movsxd rdx, dword [rcx + 4]
lea rcx, [rax + 8]
add rcx, rdx
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rcx
sar rax, 3
cmp rax, 1
jne 0x140099430
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x140099430
mov rax, qword [rdi]
mov rcx, qword [rax]
mov rax, qword [rcx]
lea rdx, [rbp - 0x48]
call qword [rax + 0x98]
nop
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1400992ba
mov r8, qword [rdx + 8]
test r8, r8
je 0x1400992ba
mov rdx, qword [rdx]
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], bx
lea rcx, [rbp - 0x30]
call fcn.140082e10
jmp 0x1400992cc
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], bx
lea rax, vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov qword [rbp - 0x48], rax
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x140099301
cmp byte [rbp - 0x38], 0
je 0x1400992f9
call sub.libcef.dll_cef_string_utf16_clear
mov edx, 0x18
mov rcx, qword [rbp - 0x40]
call fcn.140229774
mov qword [rbp - 0x40], rbx
mov byte [rbp - 0x38], 0
lea rcx, [rbp - 0x30]
call fcn.140097290
lea rcx, [rbp - 0x30]
cmp rcx, rax
je 0x14009932d
mov rdx, rax
cmp qword [rax + 0x18], 8
jb 0x140099320
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp - 0x30]
call fcn.140082e10
mov rcx, qword [rbp - 0x20]
test rcx, rcx
jne 0x14009933e
lea ebx, [rcx + 2]
jmp 0x1400993e9
lea rax, [rbp - 0x30]
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x18]
cmp r8, 8
cmovae rax, rdx
lea rcx, [rax + rcx*2]
lea rax, [rbp - 0x30]
cmovae rax, rdx
cmp rax, rcx
je 0x140099382
mov edx, 0x5c
cmp word [rax], 0x2f
jne 0x140099371
mov word [rax], dx
add rax, 2
cmp rax, rcx
jne 0x140099368
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x30]
lea rcx, [rbp - 0x30]
cmp r8, 8
cmovae rcx, rdx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400993ac
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov dl, 1
call fcn.1400974e0
mov ebx, eax
jmp 0x1400993e9
shr eax, 4
and al, 1
movzx edx, al
lea rcx, [rbp - 0x50]
call fcn.1400029da
nop
mov rdx, rax
mov rcx, rsi
call fcn.1400612e0
nop
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1400993e9
mov rcx, qword [rax + 8]
movsxd rdx, dword [rcx + 4]
lea rcx, [rax + 8]
add rcx, rdx
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x14009942c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140099427
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140099427
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140229774
mov eax, ebx
jmp 0x140099435
mov eax, 2
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140229810
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop rdi
pop rsi
pop rbp
ret