Function at 0x1400c3a90
Capabilities:
Get file attributes

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov rdi, rdx
mov rbx, rcx
call fcn.14014b2b8
mov rcx, rbx
test eax, eax
jne 0x1400c3cf6
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], r14
call fcn.1400c3860
xor esi, esi
xor r9d, r9d
mov qword [rsp + 0x30], rsi
mov edx, 0x80
mov dword [rsp + 0x28], 0x2000000
mov rcx, rbx
mov r14d, eax
mov dword [rsp + 0x20], 3
lea r8d, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbp, rax
cmp rax, 0xffffffffffffffff
je 0x1400c3ce2
lea r9, [rsp + 0x40]
mov rcx, rax
lea r8, [rsp + 0x80]
lea rdx, [rsp + 0x88]
call qword [sym.imp.KERNEL32.dll_GetFileTime]
mov rcx, rbp
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x1400c3ce2
test r14d, r14d
jne 0x1400c3c68
mov ecx, dword [rsp + 0x44]
movabs rbp, 0x19db1ded53e8000
mov eax, dword [rsp + 0x40]
movabs r9, 0x236485ed4a5e980
shl rcx, 0x20
mov r8d, 0xffffffff
add rcx, rax
movabs r11, 0xfe624e212ac18000
movabs r10, 0xd6bf94d5e57a42bd
cmp rcx, rbp
jae 0x1400c3b79
mov edx, esi
jmp 0x1400c3b90
cmp rcx, r9
jbe 0x1400c3b83
mov rdx, r8
jmp 0x1400c3b90
add rcx, r11
mov rax, r10
mul rcx
shr rdx, 0x17
mov qword [rdi + 0x20], rdx
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x84]
test eax, eax
jne 0x1400c3bab
test ecx, ecx
je 0x1400c3bd9
mov rdx, rcx
mov ecx, eax
shl rdx, 0x20
add rdx, rcx
cmp rdx, rbp
jae 0x1400c3bc1
mov rdx, rsi
jmp 0x1400c3bd9
cmp rdx, r9
jbe 0x1400c3bcb
mov rdx, r8
jmp 0x1400c3bd9
lea rcx, [rdx + r11]
mov rax, r10
mul rcx
shr rdx, 0x17
mov qword [rdi + 0x18], rdx
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x8c]
test eax, eax
jne 0x1400c3c0e
test ecx, ecx
jne 0x1400c3c0e
mov rsi, qword [rdi + 0x20]
mov qword [rdi + 0x28], rsi
mov r14, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
mov rdx, rcx
mov ecx, eax
shl rdx, 0x20
add rdx, rcx
cmp rdx, rbp
jb 0x1400c3c50
cmp rdx, r9
jbe 0x1400c3c3f
mov qword [rdi + 0x28], r8
mov rsi, r8
mov r14, qword [rsp + 0x78]
xor eax, eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rsi
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 rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
lea rdx, [rdi + 0x20]
lea rcx, [rsp + 0x40]
call fcn.1400c3990
cmp dword [rsp + 0x80], esi
jne 0x1400c3c92
cmp dword [rsp + 0x84], esi
jne 0x1400c3c92
mov rax, qword [rdi + 0x20]
mov qword [rdi + 0x18], rax
jmp 0x1400c3ca3
lea rdx, [rdi + 0x18]
lea rcx, [rsp + 0x80]
call fcn.1400c3990
cmp dword [rsp + 0x88], esi
jne 0x1400c3cd1
cmp dword [rsp + 0x8c], esi
jne 0x1400c3cd1
mov rax, qword [rdi + 0x20]
mov r14, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov qword [rdi + 0x28], rax
xor eax, eax
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
lea rdx, [rdi + 0x28]
lea rcx, [rsp + 0x88]
call fcn.1400c3990
mov r14, qword [rsp + 0x78]
xor eax, eax
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov r8d, 0xffffffff
mov ebx, eax
cmp eax, r8d
je 0x1400c3d97
test bl, 0x10
je 0x1400c3d97
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
call fcn.14013a110
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x80], rax
call fcn.140151184
xor esi, esi
mov rcx, rax
mov dword [rax + 0x20], 0xffffffff
mov qword [rax], rsi
mov dword [rax + 8], esi
mov qword [rax + 0xc], 1
mov dword [rax + 0x14], 0x50
call fcn.140150178
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 rsi
pop rbx
ret
mov eax, 0xffffffff
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret