Function at 0x14017df80
Capabilities:
Create directory
Get file attributes

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
mov rbp, rsp
sub rsp, 0x50
mov r14, rdx
mov rbx, rcx
mov dword [rbp - 0x30], 0
mov rdx, rcx
lea rcx, [rbp - 0x10]
call fcn.140014d10
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop
test al, 0x10
je 0x14017dfd2
cmp eax, 0xffffffff
je 0x14017dfd2
lea rsi, [0x140370a58]
mov qword [r14], rsi
mov rax, r14
add rsp, 0x50
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.14017a620
nop
mov rdx, qword [rbx]
mov rcx, qword [rbp + 0x40]
cmp rcx, rdx
je 0x14017e158
call fcn.140018f90
test eax, eax
je 0x14017e158
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x40]
call fcn.14017df80
nop
lea rsi, [0x140370a58]
mov edi, 0xffffffff
mov rax, qword [rbp + 0x30]
cmp byte [rax], 0
jne 0x14017e125
lea r8, [0x140370004]
lea rdx, [rbp - 0x18]
mov rcx, rbx
call fcn.140168a00
nop
mov rdx, rax
lea rcx, [rbp - 8]
call fcn.140014d10
xor edx, edx
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x14017e062
mov qword [rbp + 0x48], rsi
lea rcx, [rbp + 0x48]
lea eax, [rdi + 3]
mov rbx, rsi
jmp 0x14017e076
lea rcx, [rbp - 0x20]
call fcn.14014f920
mov rcx, rax
mov eax, 4
mov rbx, qword [rcx]
mov qword [rcx], rsi
or eax, 8
mov dword [rbp - 0x30], eax
test al, 4
je 0x14017e0b0
and eax, 0xfffffffb
mov dword [rbp - 0x30], eax
mov rcx, qword [rbp - 0x20]
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
nop
test eax, 0x30000000
jne 0x14017e0ad
mov eax, edi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x14017e0ad
call fcn.1400daaa8
mov eax, dword [rbp - 0x30]
test al, 2
je 0x14017e0d8
mov rcx, qword [rbp + 0x48]
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
nop
test eax, 0x30000000
jne 0x14017e0d8
mov eax, edi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x14017e0d8
call fcn.1400daaa8
mov rcx, qword [rbp + 0x30]
mov qword [rbp + 0x30], rbx
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
nop
test eax, 0x30000000
jne 0x14017e101
mov eax, edi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x14017e101
call fcn.1400daaa8
nop
mov rcx, qword [rbp - 0x18]
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
nop
test eax, 0x30000000
jne 0x14017e125
mov eax, edi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x14017e125
call fcn.1400daaa8
mov rax, qword [rbp + 0x30]
mov qword [r14], rax
mov qword [rbp + 0x30], rsi
mov eax, dword [0x140370a48]
nop
test eax, 0x30000000
jne 0x14017e19d
mov eax, edi
lock xadd dword [0x140370a48], eax
dec eax
cmp eax, 0xffffffff
jne 0x14017e19d
lea rcx, [0x140370a48]
jmp 0x14017e197
lea rdx, [0x14036f5f0]
lea rcx, [rbp - 0x28]
call fcn.1400199a0
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1401734d0
mov rcx, qword [rbp - 0x28]
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
nop
mov edi, 0xffffffff
test eax, 0x30000000
jne 0x14017e19d
mov eax, edi
lock xadd dword [rcx], eax
dec eax
cmp eax, edi
jne 0x14017e19d
call fcn.1400daaa8
nop
mov rcx, qword [rbp + 0x40]
add rcx, 0xfffffffffffffff0
mov eax, dword [rcx]
test eax, 0x30000000
nop
jne 0x14017e1bf
lock xadd dword [rcx], edi
dec edi
cmp edi, 0xffffffff
jne 0x14017e1bf
call fcn.1400daaa8
mov rax, r14
add rsp, 0x50
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret