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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov rsi, rdx
mov rdi, rcx
test rdx, rdx
je 0x1401fb894
xorps xmm0, xmm0
mov qword [rsp + 0x50], 0
movups xmmword [rdx], xmm0
movsd xmm0, qword [rsp + 0x50]
movsd qword [rdx + 0x10], xmm0
mov eax, dword [0x140650070]
nop
test eax, eax
je 0x1401fb9c5
cmp qword [rcx + 0x18], 7
jbe 0x1401fb8ad
mov rcx, qword [rcx]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2200000
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x110199
mov r8d, 7
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rsp + 0x78], rax
inc rax
test rax, 0xfffffffffffffffe
jne 0x1401fb995
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x35
ja 0x1401fb90c
movabs rdx, 0x2000000020800c
bt rdx, rax
jb 0x1401fb92b
lea ecx, [rax - 0x43]
cmp ecx, 0x38
ja 0x1401fb924
movabs rdx, 0x100000000100001
bt rdx, rcx
jb 0x1401fb92b
cmp eax, 0xa1
jne 0x1401fb953
lea rcx, [rbx - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x1401fb93e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret
lea r9, str.boost::filesystem::remove_all
mov r8, rsi
mov rdx, rdi
mov ecx, eax
call fcn.1401ffaa0
nop
lea rax, [rbx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1401fb97b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, 0xffffffffffffffff
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret
mov r8, rsi
mov rdx, rdi
mov rcx, rbx
call fcn.1401fbef0
mov rdi, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rdi
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
jmp 0x1401fb9e0
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov rbx, rdx
mov r15, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xor esi, esi
mov qword [rsp + 0x40], rsi
mov r12d, esi
lea r13, section..data
lea rdi, [0x140640050]
mov rcx, r15
cmp qword [r15 + 0x18], 7
jbe 0x1401fba2f
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r14d, eax
cmp eax, 0xffffffff
je 0x1401fbe0c
and eax, 0x410
cmp eax, 0x10
jne 0x1401fbddd
mov qword [rbp + 0x77], rsi
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, reloc.WS2_32.dll_recv
mov rdx, r15
lea rcx, [rbp + 0x77]
call fcn.140200b80
mov rdx, qword [rsp + 0x40]
test dl, 1
je 0x1401fbcf1
mov r9d, dword [rsp + 0x30]
cmp rdx, 1
jne 0x1401fba99
test r9d, r9d
setne al
test al, al
je 0x1401fbcf1
mov dword [rbp - 0x59], reloc.WS2_32.dll_sendto
mov qword [rbp - 0x51], r13
cmp rdx, 1
jne 0x1401fbb3a
mov rcx, r13
call fcn.1401fab70
mov rcx, rax
mov eax, dword [rbp - 0x59]
mov dword [rbp - 0x29], eax
mov qword [rbp - 0x21], rcx
mov rax, qword [rsp + 0x40]
cmp rax, 1
jne 0x1401fbae7
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbp - 0x69], xmm0
movd edx, xmm0
psrldq xmm0, 8
movq rcx, xmm0
jmp 0x1401fbb12
test rax, rax
jne 0x1401fbafa
mov dword [rbp - 0x69], esi
mov rcx, rdi
mov qword [rbp - 0x61], rcx
mov edx, esi
jmp 0x1401fbb12
mov rcx, qword [rsp + 0x38]
call fcn.1401fab70
mov rcx, rax
mov edx, dword [rsp + 0x30]
mov dword [rbp - 0x69], edx
mov qword [rbp - 0x61], rax
mov rax, qword [rcx]
lea r8, [rbp - 0x29]
call qword [rax + 0x28]
test al, al
jne 0x1401fbb36
mov rcx, qword [rbp - 0x21]
mov rax, qword [rcx]
mov r8d, dword [rbp - 0x29]
lea rdx, [rbp - 0x69]
call qword [rax + 0x20]
test al, al
je 0x1401fbb7c
mov al, 1
jmp 0x1401fbb7c
lea rcx, [0x140648f60]
test rdx, rdx
cmovne rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
lea r8, [rbp - 0x59]
mov edx, r9d
call qword [rax + 0x18]
test al, al
jne 0x1401fbc72
mov rcx, r13
mov rax, qword [rbp - 0x51]
test rax, rax
cmovne rcx, rax
mov rax, qword [rcx]
mov r8d, dword [rbp - 0x59]
lea rdx, [rsp + 0x30]
call qword [rax + reloc.WS2_32.dll_recv]
test al, al
jne 0x1401fbc72
mov dword [rbp - 0x39], WSAStartup
mov qword [rbp - 0x31], r13
mov rax, qword [rsp + 0x40]
cmp rax, 1
jne 0x1401fbc2f
mov rcx, r13
call fcn.1401fab70
mov rcx, rax
mov eax, dword [rbp - 0x39]
mov dword [rsp + 0x50], eax
mov qword [rsp + 0x58], rcx
mov rax, qword [rsp + 0x40]
cmp rax, 1
jne 0x1401fbbd9
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbp - 0x49], xmm0
movd edx, xmm0
psrldq xmm0, 8
movq rcx, xmm0
jmp 0x1401fbc04
test rax, rax
jne 0x1401fbbec
mov dword [rbp - 0x49], esi
mov rcx, rdi
mov qword [rbp - 0x41], rcx
mov edx, esi
jmp 0x1401fbc04
mov rcx, qword [rsp + 0x38]
call fcn.1401fab70
mov rcx, rax
mov edx, dword [rsp + 0x30]
mov dword [rbp - 0x49], edx
mov qword [rbp - 0x41], rax
mov rax, qword [rcx]
lea r8, [rsp + 0x50]
call qword [rax + 0x28]
test al, al
jne 0x1401fbc2b
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov r8d, dword [rsp + 0x50]
lea rdx, [rbp - 0x49]
call qword [rax + 0x20]
test al, al
je 0x1401fbc6e
mov al, 1
jmp 0x1401fbc6e
lea rcx, [0x140648f60]
test rax, rax
cmovne rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
lea r8, [rbp - 0x39]
mov edx, dword [rsp + 0x30]
call qword [rax + 0x18]
test al, al
jne 0x1401fbc72
mov rcx, r13
mov rax, qword [rbp - 0x31]
test rax, rax
cmovne rcx, rax
mov rax, qword [rcx]
mov r8d, dword [rbp - 0x39]
lea rdx, [rsp + 0x30]
call qword [rax + reloc.WS2_32.dll_recv]
test al, al
je 0x1401fbcd3
mov rdi, qword [rbp + 0x77]
test rdi, rdi
je 0x1401fbc9e
mov eax, 0xffffffff
lock xadd dword [rdi], eax
cmp eax, 1
jne 0x1401fbc9e
test rdi, rdi
je 0x1401fbc9e
mov rcx, rdi
call fcn.140200060
mov rcx, rdi
call fcn.14012e970
inc r12d
cmp r12d, 5
jb 0x1401fba1b
movups xmm0, xmmword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
test rbx, rbx
je 0x1401fbeb3
movups xmmword [rbx], xmm0
movsd qword [rbx + 0x10], xmm1
mov rax, 0xffffffffffffffff
jmp 0x1401fbe65
movups xmm0, xmmword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
test rbx, rbx
je 0x1401fbe80
movups xmmword [rbx], xmm0
movsd qword [rbx + 0x10], xmm1
jmp 0x1401fbd63
mov qword [rbp + 0x7f], rsi
nop word [rax + rax]
mov rdi, qword [rbp + 0x77]
test rdi, rdi
je 0x1401fbdb5
cmp qword [rdi + 0x40], 0
je 0x1401fbdb5
lea rcx, [rdi + 0x10]
mov rdx, rbx
call 0x1401fb9e0
add rsi, rax
test rbx, rbx
je 0x1401fbd3f
mov rax, qword [rbx + 0x10]
test al, 1
je 0x1401fbda7
cmp rax, 1
jne 0x1401fbd63
cmp dword [rbx], 0
jne 0x1401fbd63
mov rdx, rbx
lea rcx, [rbp + 0x77]
call fcn.140201260
test rbx, rbx
je 0x1401fbd00
mov rax, qword [rbx + 0x10]
test al, 1
je 0x1401fbd00
cmp rax, 1
jne 0x1401fbd63
cmp dword [rbx], 0
je 0x1401fbd00
mov rbx, qword [rbp + 0x77]
test rbx, rbx
je 0x1401fbe5a
mov eax, 0xffffffff
lock xadd dword [rbx], eax
cmp eax, 1
jne 0x1401fbe5a
test rbx, rbx
je 0x1401fbe5a
mov rcx, rbx
call fcn.140200060
mov rcx, rbx
call fcn.14012e970
mov rax, 0xffffffffffffffff
jmp 0x1401fbe65
mov rdx, rbx
lea rcx, [rbp + 0x77]
call fcn.140201260
jmp 0x1401fbd50
test rdi, rdi
je 0x1401fbddd
mov eax, 0xffffffff
lock xadd dword [rdi], eax
cmp eax, 1
jne 0x1401fbddd
test rdi, rdi
je 0x1401fbddd
mov rcx, rdi
call fcn.140200060
mov rcx, rdi
call fcn.14012e970
mov r8, rbx
mov edx, r14d
mov rcx, r15
call fcn.1401fc730
test rbx, rbx
je 0x1401fbe04
mov rcx, qword [rbx + 0x10]
test cl, 1
je 0x1401fbe04
cmp rcx, 1
jne 0x1401fbe5a
cmp dword [rbx], 0
jne 0x1401fbe5a
movzx eax, al
add rax, rsi
jmp 0x1401fbe65
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x35
ja 0x1401fbe27
movabs rdx, 0x2000000020800c
bt rdx, rax
jb 0x1401fbe63
lea ecx, [rax - 0x43]
cmp ecx, 0x38
ja 0x1401fbe3f
movabs rdx, 0x100000000100001
bt rdx, rcx
jb 0x1401fbe63
cmp eax, 0xa1
je 0x1401fbe63
lea r9, str.boost::filesystem::remove_all
mov r8, rbx
mov rdx, r15
mov ecx, eax
call fcn.1401ffaa0
mov rax, 0xffffffffffffffff
jmp 0x1401fbe65
xor eax, eax
mov rbx, qword [rsp + 0x140]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movaps xmmword [rsp + 0x50], xmm0
movsd qword [rbp - 0x79], xmm1
lea r9, [rsp + 0x50]
mov r8, r15
lea rdx, str.boost::filesystem::remove_all
lea rcx, [rbp - 0x19]
call fcn.1401ff4e0
lea rdx, [0x14063be20]
lea rcx, [rbp - 0x19]
call fcn.1404a7388
nop
movaps xmmword [rsp + 0x50], xmm0
movsd qword [rbp - 0x79], xmm1
lea r9, [rsp + 0x50]
mov r8, r15
lea rdx, str.boost::filesystem::remove_all:_path_cannot_be_opened_as_a_directory
lea rcx, [rbp - 0x19]
call fcn.1401ff4e0
lea rdx, [0x14063be20]
lea rcx, [rbp - 0x19]
call fcn.1404a7388
int3