Function at 0x1400af7a0
Capabilities:
Get file attributes

Disassembly:
push rbx
push rbp
push rdi
sub rsp, 0x50
mov rbx, rdx
mov rbp, rcx
mov rcx, rbx
mov rdx, r8
mov rdi, r8
call fcn.14014b298
test eax, eax
jne 0x1400afa0c
mov qword [rsp + 0x70], rsi
mov rdx, rbx
mov rcx, rbp
mov qword [rsp + 0x78], r14
call fcn.1400adce0
xor esi, esi
test eax, eax
je 0x1400af7e7
mov ebp, dword [rbp + 0x10e54]
jmp 0x1400af7e9
mov ebp, esi
mov eax, 0x80
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], eax
xor r9d, r9d
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
mov rcx, rbx
lea r8d, [rax - 0x7d]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x1400af9f8
lea r9, [rsp + 0x48]
mov rcx, rax
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetFileTime]
mov rcx, r14
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x1400af9f8
test ebp, ebp
jne 0x1400af987
mov ecx, dword [rsp + 0x4c]
movabs rbp, 0x19db1ded53e8000
mov eax, dword [rsp + 0x48]
movabs r9, 0x236485ed4a5e980
shl rcx, 0x20
mov r8d, 0xffffffff
add rcx, rax
movabs r11, 0xfe624e212ac18000
movabs r10, 0xd6bf94d5e57a42bd
cmp rcx, rbp
jae 0x1400af89e
mov rdx, rsi
jmp 0x1400af8b5
cmp rcx, r9
jbe 0x1400af8a8
mov rdx, r8
jmp 0x1400af8b5
add rcx, r11
mov rax, r10
mul rcx
shr rdx, 0x17
mov qword [rdi + 0x20], rdx
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x8c]
test eax, eax
jne 0x1400af8d0
test ecx, ecx
je 0x1400af8fe
mov rdx, rcx
mov ecx, eax
shl rdx, 0x20
add rdx, rcx
cmp rdx, rbp
jae 0x1400af8e6
mov rdx, rsi
jmp 0x1400af8fe
cmp rdx, r9
jbe 0x1400af8f0
mov rdx, r8
jmp 0x1400af8fe
lea rcx, [rdx + r11]
mov rax, r10
mul rcx
shr rdx, 0x17
mov qword [rdi + 0x18], rdx
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
test eax, eax
jne 0x1400af92d
test ecx, ecx
jne 0x1400af92d
mov rsi, qword [rdi + 0x20]
mov qword [rdi + 0x28], rsi
mov r14, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
mov rdx, rcx
mov ecx, eax
shl rdx, 0x20
add rdx, rcx
cmp rdx, rbp
jb 0x1400af96f
cmp rdx, r9
jbe 0x1400af95e
mov qword [rdi + 0x28], r8
mov rsi, r8
mov rsi, qword [rsp + 0x70]
xor eax, eax
mov r14, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
lea rcx, [rdx + r11]
mov rax, r10
mul rcx
mov rsi, rdx
shr rsi, 0x17
mov qword [rdi + 0x28], rsi
xor eax, eax
mov r14, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
lea rdx, [rdi + 0x20]
lea rcx, [rsp + 0x48]
call fcn.1400ad4a0
cmp dword [rsp + 0x88], esi
jne 0x1400af9b1
cmp dword [rsp + 0x8c], esi
jne 0x1400af9b1
mov rax, qword [rdi + 0x20]
mov qword [rdi + 0x18], rax
jmp 0x1400af9c2
lea rdx, [rdi + 0x18]
lea rcx, [rsp + 0x88]
call fcn.1400ad4a0
cmp dword [rsp + 0x40], esi
jne 0x1400af9ea
cmp dword [rsp + 0x44], esi
jne 0x1400af9ea
mov rax, qword [rdi + 0x20]
mov r14, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
mov qword [rdi + 0x28], rax
xor eax, eax
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
lea rdx, [rdi + 0x28]
lea rcx, [rsp + 0x40]
call fcn.1400ad4a0
mov r14, qword [rsp + 0x78]
xor eax, eax
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov r8d, 0xffffffff
mov ebx, eax
cmp eax, r8d
je 0x1400afa70
test bl, 0x10
je 0x1400afa70
xorps xmm0, xmm0
mov ecx, 0x210000
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
call fcn.1400b1e80
shl bx, 7
mov qword [rdi + 0x20], rax
not bx
mov qword [rdi + 0x28], rax
mov qword [rdi + 0x18], rax
mov eax, 0x80
and bx, ax
mov eax, 0x4100
or bx, ax
mov word [rdi + 6], bx
xor eax, eax
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret
mov eax, 0xffffffff
add rsp, 0x50
pop rdi
pop rbp
pop rbx
ret