Function at 0x140043c60
Capabilities:
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 - 0xe0]
sub rsp, 0x1e0
mov rax, qword [0x1400f40c0]
xor rax, rsp
mov qword [rbp + 0xd8], rax
mov r15, rdx
mov r13, rcx
xor ebx, ebx
mov dword [rsp + 0x44], ebx
mov qword [rbp + 0x50], rbx
lea rdi, [0x1400f4d20]
mov qword [rbp + 0x58], rdi
mov rcx, rdx
call fcn.140062170
mov byte [rsp + 0x40], bl
lea rdx, [rbp - 0x30]
mov rcx, r15
call fcn.140025690
nop
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.140011320
mov dword [rsp + 0x44], 8
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x140043d1b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043d16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004438b
call fcn.1400937a0
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], bx
cmp qword [rbp + 0x90], 0
jne 0x140043da0
mov rdx, r15
lea rcx, [rbp - 0x58]
call fcn.140011320
mov dword [rsp + 0x44], 0x48
mov rdx, qword [rbp + 0x98]
cmp rdx, 0xf
jbe 0x140043d8a
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043d85
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044391
call fcn.1400937a0
movups xmm0, xmmword [rbp - 0x58]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [rbp + 0x90], xmm1
mov rdx, r15
mov rcx, r13
call fcn.140040500
lea rcx, [rbp + 0x80]
cmp qword [rbp + 0x98], 0xf
cmova rcx, qword [rbp + 0x80]
lea r8, [rsp + 0x40]
mov rdx, rax
call fcn.1400371d0
test al, al
je 0x1400442dc
cmp byte [r15 + 0x28], 0
jne 0x1400442b6
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
lea r8, [rbp + 0x50]
mov rdx, r15
lea rcx, [rbp + 0xc0]
call fcn.1400140d0
mov rax, qword [rbp + 0xc0]
test eax, eax
je 0x1400442b1
mov dword [rbp + 0x50], ebx
mov qword [rbp + 0x58], rdi
cmp eax, 1
je 0x1400442b1
mov ecx, 0x2e0
call fcn.1400938c8
mov rbx, rax
xor edx, edx
mov r8d, 0x2e0
mov rcx, rax
call fcn.1400c3ff0
mov rdx, r15
mov rcx, rbx
call fcn.140018710
mov rsi, rax
mov ecx, 0x18
call fcn.1400938c8
mov r12, rax
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_class_ghc::filesystem::directory_iterator::impl_.0
mov qword [r12], rax
mov qword [r12 + 0x10], rsi
mov qword [rbp + 0xc8], rsi
mov qword [rbp + 0xd0], r12
cmp dword [rsi + 0x2d0], 0
je 0x140043ea8
movups xmm0, xmmword [rsi + 0x2d0]
movups xmmword [rbp + 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
lock inc dword [r12 + 8]
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x68], r12
movups xmmword [rbp + 0x70], xmm0
lea rcx, [rbp + 0x70]
call fcn.140019270
nop
mov r14, qword [rbp + 0x70]
add r14, 0x288
mov qword [rsp + 0x48], r14
add rsi, 0x288
mov rdx, r14
mov rcx, rsi
call fcn.140003310
test eax, eax
je 0x14004420f
mov edi, dword [rsp + 0x44]
nop dword [rax]
lea rdx, [rbp - 8]
mov rcx, rsi
call fcn.1400039a0
nop
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.140011320
or edi, 0x10
mov rdx, qword [rbp + 0x10]
cmp rdx, 7
jbe 0x140043f5f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043f5a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004439d
call fcn.1400937a0
xor eax, eax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], 7
mov word [rbp - 8], ax
mov rdx, rsi
lea rcx, [rbp - 0x78]
call fcn.14000fd10
or edi, 0x20
or edi, 1
mov dword [rsp + 0x44], edi
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 7
cmova rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 2
jne 0x140043ffb
mov rdx, rsi
lea rcx, [rsp + 0x58]
call fcn.14000fd10
or edi, 0x82
mov dword [rsp + 0x44], edi
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 7
cmova rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 4
jne 0x140043ffb
cmp qword [rbp + 0xb0], 0
je 0x140043ffb
lea rax, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0xf
cmova rax, qword [rbp + 0xa0]
cmp byte [rax], 0x2e
je 0x140043ffb
xor bl, bl
jmp 0x140043ffd
mov bl, 1
test dil, 2
je 0x140044061
and edi, 0xfffffffd
mov dword [rsp + 0x44], edi
mov rdx, qword [rsp + 0x70]
cmp rdx, 7
jbe 0x14004404c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140044047
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400443a3
call fcn.1400937a0
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], ax
test dil, 1
je 0x1400440ae
and edi, 0xfffffffe
mov dword [rsp + 0x44], edi
mov rdx, qword [rbp - 0x60]
cmp rdx, 7
jbe 0x1400440ae
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400440a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400443a9
call fcn.1400937a0
test bl, bl
jne 0x1400441a7
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x50]
mov rdx, rsi
lea rcx, [rsp + 0x78]
call fcn.1400140d0
cmp dword [rsp + 0x78], 3
jne 0x1400441a7
mov ecx, 0x48
call fcn.1400938c8
mov rbx, rax
mov qword [rbp - 0x80], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov rdx, rsi
lea rcx, [rbp + 0x20]
call fcn.140011320
bts edi, 8
or edi, 4
mov dword [rsp + 0x44], edi
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.1400266e0
nop
mov qword [rsp + 0x50], rax
mov rdx, qword [r15 + 0x38]
cmp rdx, qword [r15 + 0x40]
je 0x14004414b
mov qword [rdx], rax
add qword [r15 + 0x38], 8
jmp 0x14004415a
lea r8, [rsp + 0x50]
lea rcx, [r15 + 0x30]
call fcn.140052300
nop
test dil, 4
je 0x1400441a2
and edi, 0xfffffffb
mov dword [rsp + 0x44], edi
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x1400441a2
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004419d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400443af
call fcn.1400937a0
mov r14, qword [rsp + 0x48]
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x1400441e8
inc rdx
mov rcx, qword [rbp + 0xa0]
cmp rdx, 0x1000
mov rax, rcx
jb 0x1400441e3
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044385
call fcn.1400937a0
lea rcx, [rbp + 0x60]
call fcn.140026610
mov rsi, qword [rbp + 0x60]
add rsi, 0x288
mov rdx, r14
mov rcx, rsi
call fcn.140003310
test eax, eax
jne 0x140043f00
mov edi, 0xffffffff
mov rcx, qword [rbp + 0x78]
test rcx, rcx
je 0x14004424c
mov eax, edi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14004424c
mov rbx, qword [rbp + 0x78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14004424c
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x140044284
mov eax, edi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140044284
mov rbx, qword [rbp + 0x68]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140044284
mov rcx, qword [rbp + 0x68]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, edi
lock xadd dword [r12 + 8], eax
cmp eax, 1
jne 0x1400442b1
mov rax, qword [r12]
mov rcx, r12
call qword [rax]
lock xadd dword [r12 + 0xc], edi
cmp edi, 1
jne 0x1400442b1
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 8]
mov byte [r15 + 0x28], 1
mov rdi, qword [r15 + 0x38]
mov rbx, qword [r15 + 0x30]
cmp rbx, rdi
je 0x1400442d7
mov rdx, qword [rbx]
mov rcx, r13
call fcn.140043c60
add rbx, 8
cmp rbx, rdi
jne 0x1400442c3
call fcn.14008eed0
cmp byte [rsp + 0x40], 0
je 0x14004430a
mov rdx, r15
lea rcx, [rbp - 0x58]
call fcn.14000fd10
mov rax, qword [r15 + 0x20]
mov qword [rbp - 0x38], rax
mov r9b, 1
movzx r8d, r9b
lea rdx, [rbp - 0x58]
mov rcx, r13
call fcn.140041510
mov rax, qword [0x1400f85d8]
mov rcx, qword [rax + 0x1c20]
dec dword [rcx + 0xc8]
mov rdx, qword [rbp + 0x98]
cmp rdx, 0xf
jbe 0x14004435b
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140044356
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140044397
call fcn.1400937a0
mov rcx, qword [rbp + 0xd8]
xor rcx, rsp
call fcn.140093780
mov rbx, qword [rsp + 0x230]
add rsp, 0x1e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400a1c3c
nop
call fcn.1400a1c3c
int3
call fcn.1400a1c3c
nop
call fcn.1400a1c3c
nop
call fcn.1400a1c3c
nop
call fcn.1400a1c3c
nop
call fcn.1400a1c3c
int3
call fcn.1400a1c3c
int3