Function at 0x140140120
Capabilities:
Get file attributes

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov r14, rcx
lea rdx, [rbp - 0x40]
add rcx, 0x228
call fcn.1400f9700
mov rdx, qword [rax]
mov qword [rbp + 0x58], rdx
mov edx, 0x5c
lea rcx, [rbp + 0x58]
call fcn.140045a00
test eax, eax
setns bl
mov rcx, qword [rbp - 0x40]
add rcx, 0xfffffffffffffff0
lea r13, [0x1402901c8]
or edi, 0xffffffff
cmp rcx, r13
je 0x14014018d
mov eax, edi
lock xadd dword [rcx], eax
test eax, eax
jne 0x14014018d
call fcn.1400bd658
test bl, bl
je 0x14014035f
lea rdx, [rbp - 0x30]
lea rcx, [r14 + 0x228]
call fcn.1400f9700
nop
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
lea rcx, [r14 + 0x60]
lea r8, [rbp - 0x38]
lea rdx, [rbp + 0x40]
call fcn.140183610
nop
mov rcx, qword [rbp - 0x30]
add rcx, 0xfffffffffffffff0
cmp rcx, r13
je 0x1401401dc
mov eax, edi
lock xadd dword [rcx], eax
test eax, eax
jne 0x1401401dc
call fcn.1400bd658
nop
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 8]
call fcn.140040d80
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop
test al, 0x10
je 0x140140265
cmp eax, 0xffffffff
je 0x140140265
lea rcx, [r14 - 0xd0]
lea rdx, [rbp + 0x40]
call fcn.140140f30
lea rcx, [r14 + 0x68]
call fcn.140031aa0
xor esi, esi
cmp dword [r14 + 0x70], esi
je 0x14014022e
mov rcx, qword [r14 + 0x68]
call fcn.1400c1bd0
mov qword [r14 + 0x68], rsi
mov dword [r14 + 0x70], esi
mov dword [r14 + 0x78], esi
test dword [r14 + 0x58], 0x100
jne 0x140140359
lea rax, [r13 + 0x10]
mov qword [rbp + 0x50], rax
mov r8b, 1
lea rdx, [rbp + 0x50]
lea rcx, [r14 + 0x228]
call fcn.1400fda40
nop
mov rcx, qword [rbp + 0x50]
jmp 0x140140340
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x40]
call fcn.140183520
nop
lea rcx, [r14 - 0xd0]
mov rdx, rax
call fcn.140140f30
nop
mov rcx, qword [rbp - 0x28]
add rcx, 0xfffffffffffffff0
cmp rcx, r13
je 0x14014029f
mov eax, edi
lock xadd dword [rcx], eax
test eax, eax
jne 0x14014029f
call fcn.1400bd658
lea rcx, [r14 + 0x68]
call fcn.140031aa0
xor esi, esi
cmp dword [r14 + 0x70], esi
je 0x1401402c1
mov rcx, qword [r14 + 0x68]
call fcn.1400c1bd0
mov qword [r14 + 0x68], rsi
mov dword [r14 + 0x70], esi
mov dword [r14 + 0x78], esi
lea ecx, [rsi + 1]
cmp ecx, dword [r14 + 0x70]
jle 0x1401402e6
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
lea edx, [rcx + 8]
add edx, eax
and edx, 0xfffffff8
lea rcx, [r14 + 0x68]
call fcn.140030760
movsxd rcx, dword [r14 + 0x78]
lea eax, [rcx + 1]
mov dword [r14 + 0x78], eax
mov rax, qword [r14 + 0x68]
lea rdx, [rax + rcx*8]
test rdx, rdx
je 0x14014031b
mov rax, qword [rbp + 0x40]
mov qword [rdx], rax
mov rcx, qword [rbp + 0x40]
add rcx, 0xfffffffffffffff0
cmp rcx, r13
je 0x14014031b
mov eax, 1
lock xadd dword [rcx], eax
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x40]
call fcn.140184390
nop
mov r8b, 1
mov rdx, rax
lea rcx, [r14 + 0x228]
call fcn.1400fda40
nop
mov rcx, qword [rbp - 0x20]
add rcx, 0xfffffffffffffff0
cmp rcx, r13
je 0x140140359
mov eax, edi
lock xadd dword [rcx], eax
test eax, eax
jne 0x140140359
call fcn.1400bd658
nop
mov rcx, qword [rbp + 0x40]
jmp 0x140140389
lea rcx, [r14 - 0xd0]
xor r8d, r8d
lea rdx, [rbp - 0x18]
call fcn.140141730
nop
lea rcx, [r14 - 8]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x18]
mov rdx, rax
call r8
nop
mov rcx, qword [rbp - 0x18]
add rcx, 0xfffffffffffffff0
cmp rcx, r13
je 0x14014039f
lock xadd dword [rcx], edi
test edi, edi
jne 0x14014039f
call fcn.1400bd658
add rsp, 0x60
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret