Function at 0x1400af660
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.14014bec8
test eax, eax
jne 0x1400af8cc
mov qword [rsp + 0x70], rsi
mov rdx, rbx
mov rcx, rbp
mov qword [rsp + 0x78], r14
call fcn.1400adba0
xor esi, esi
test eax, eax
je 0x1400af6a7
mov ebp, dword [rbp + 0x10e54]
jmp 0x1400af6a9
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 0x1400af8b8
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 0x1400af8b8
test ebp, ebp
jne 0x1400af847
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 0x1400af75e
mov rdx, rsi
jmp 0x1400af775
cmp rcx, r9
jbe 0x1400af768
mov rdx, r8
jmp 0x1400af775
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 0x1400af790
test ecx, ecx
je 0x1400af7be
mov rdx, rcx
mov ecx, eax
shl rdx, 0x20
add rdx, rcx
cmp rdx, rbp
jae 0x1400af7a6
mov rdx, rsi
jmp 0x1400af7be
cmp rdx, r9
jbe 0x1400af7b0
mov rdx, r8
jmp 0x1400af7be
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 0x1400af7ed
test ecx, ecx
jne 0x1400af7ed
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 0x1400af82f
cmp rdx, r9
jbe 0x1400af81e
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.1400ad360
cmp dword [rsp + 0x88], esi
jne 0x1400af871
cmp dword [rsp + 0x8c], esi
jne 0x1400af871
mov rax, qword [rdi + 0x20]
mov qword [rdi + 0x18], rax
jmp 0x1400af882
lea rdx, [rdi + 0x18]
lea rcx, [rsp + 0x88]
call fcn.1400ad360
cmp dword [rsp + 0x40], esi
jne 0x1400af8aa
cmp dword [rsp + 0x44], esi
jne 0x1400af8aa
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.1400ad360
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 0x1400af930
test bl, 0x10
je 0x1400af930
xorps xmm0, xmm0
mov ecx, 0x210000
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
call fcn.1400b1d40
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