Function at 0x180008f2c
Capabilities:
Get file attributes

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x60], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
mov rsi, rdx
mov rbx, rcx
mov rcx, rdx
call fcn.180009dd0
mov edi, eax
mov r15d, 2
lea r13d, [r15 + 0x5a]
xor r12d, r12d
test eax, eax
js 0x18000914b
lea r8d, [rdi + 1]
cmp word [rsi + r8*2], r12w
je 0x18000914b
lea rdx, [rsi + rdi*2]
lea rcx, [rbp - 0x48]
call fcn.180002860
nop
mov rdx, rsi
lea rcx, [rbp - 0x58]
call fcn.180002860
nop
cmp edi, dword [rbp - 0x50]
jae 0x180008fb6
mov dword [rbp - 0x50], edi
mov rax, qword [rbp - 0x58]
mov word [rax + rdi*2], r12w
cmp dword [rbp - 0x40], 6
jbe 0x180008fdb
mov ecx, dword [rbp - 0x40]
mov rax, qword [rbp - 0x48]
add rax, 0xfffffffffffffff4
lea rcx, [rax + rcx*2]
lea rdx, str.:_DATA
call fcn.180004748
test al, al
jne 0x180008feb
lea rdx, str.:_DATA
lea rcx, [rbp - 0x48]
call fcn.1800030a8
mov rcx, qword [rbp - 0x58]
call fcn.18000a448
mov rdx, qword [rbp - 0x58]
test al, al
je 0x180009044
cmp edi, r15d
je 0x18000900d
cmp edi, 3
jne 0x180009044
cmp word [rdx + 4], r13w
jne 0x180009044
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r12
mov dword [rbx + 0x20], r12d
mov word [rbx + 0x24], r12w
lea rcx, [rbx + 0x28]
mov dword [rcx + 8], r12d
mov rax, qword [rcx]
mov word [rax], r12w
cmp edi, r15d
jne 0x180009054
lea rdx, [rbp - 0x58]
call fcn.180002bb0
jmp 0x180009054
mov rcx, rbx
call fcn.180008f2c
test al, al
je 0x180009138
and dword [rbx + 0x20], 0xfffffbef
mov qword [rbx], r12
or qword [rbp - 0x20], 0xffffffffffffffff
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x18]
call fcn.18000277c
nop
lea rcx, [rbp - 0x38]
call fcn.1800028b8
jmp 0x1800090a6
cmp byte [rbp + 0x40], r12b
je 0x1800090f7
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
call fcn.1800045f0
test al, al
jne 0x1800090bd
mov rcx, qword [rbp - 0x38]
call fcn.1800129dc
lea rcx, [rbp - 0x38]
call fcn.1800028b8
nop
lea r8, [rbp + 0x40]
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x20]
call fcn.180009894
test al, al
jne 0x18000907c
jmp 0x180009100
mov eax, dword [rbp - 0x30]
cmp eax, 7
jbe 0x1800090d8
lea ecx, [rax - 6]
cmp ecx, eax
jae 0x1800090d8
mov dword [rbp - 0x30], ecx
mov rax, qword [rbp - 0x38]
mov word [rax + rcx*2], r12w
lea rcx, [rbx + 0x28]
lea rdx, [rbp - 0x38]
call fcn.18000305c
mov rax, qword [rbp - 0x28]
mov qword [rbx], rax
mov edi, 1
mov byte [rbx + 0x24], dil
jmp 0x180009103
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov dil, r12b
mov rcx, qword [rbp - 0x38]
call fcn.1800129dc
nop
mov rcx, qword [rbp - 0x18]
call fcn.1800129dc
lea rcx, [rbp - 0x20]
call fcn.180008da4
nop
mov rcx, qword [rbp - 0x58]
call fcn.1800129dc
nop
mov rcx, qword [rbp - 0x48]
call fcn.1800129dc
jmp 0x18000936a
mov rcx, qword [rbp - 0x58]
call fcn.1800129dc
nop
mov rcx, qword [rbp - 0x48]
call fcn.1800129dc
or qword [rbp + 0x40], 0xffffffffffffffff
mov rcx, rsi
call fcn.18000a5e0
mov edi, r12d
mov ecx, 4
test al, al
cmovne edi, ecx
lea r14, [rsi + rdi*2]
mov rcx, r14
call fcn.18000a46c
test al, al
je 0x1800091e4
lea eax, [rdi + 3]
cmp word [rsi + rax*2], r12w
jne 0x1800091e4
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or ecx, 0xffffffff
mov r8d, ecx
cmp eax, ecx
cmovne r8d, eax
cmp r8d, ecx
je 0x18000934f
mov eax, 0x10
test al, r8b
je 0x18000934f
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r12
mov word [rbx + 0x24], r12w
mov dword [rbx + 0x20], r8d
mov rdx, r14
lea rcx, [rbx + 0x28]
call fcn.180002cf8
cmp dword [rbx + 0x30], r15d
jbe 0x18000924a
mov dword [rbx + 0x30], r15d
mov rax, qword [rbx + 0x28]
mov word [rax + 4], r12w
jmp 0x18000924a
cmp word [rsi], r13w
je 0x1800091f4
cmp word [rsi], 0x2f
jne 0x18000934f
mov rcx, rsi
cmp word [rsi + 2], r12w
jne 0x180009254
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or ecx, 0xffffffff
mov edx, ecx
cmp eax, ecx
cmovne edx, eax
cmp edx, ecx
je 0x18000934f
mov eax, 0x10
test al, dl
je 0x18000934f
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r12
mov dword [rbx + 0x20], r12d
mov word [rbx + 0x24], r12w
mov dword [rbx + 0x30], r12d
mov rax, qword [rbx + 0x28]
mov word [rax], r12w
mov dword [rbx + 0x20], edx
mov edi, 1
jmp 0x180009361
call fcn.18000a128
test eax, eax
je 0x18000934f
mov eax, eax
lea r14, [rsi + rax*2]
cmp word [r14], r12w
je 0x18000934f
mov rcx, r14
call fcn.180009e2c
test eax, eax
jns 0x18000934f
mov rdx, rsi
lea rcx, [rbp - 0x58]
call fcn.180002860
nop
mov edx, dword [rbp - 0x50]
cmp dword [rbp - 0x4c], edx
jne 0x1800092a2
lea rcx, [rbp - 0x58]
call fcn.180003638
mov edx, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
mov eax, edx
mov word [rcx + rax*2], r13w
mov edi, 1
add edx, edi
mov word [rcx + rdx*2], r12w
mov dword [rbp - 0x50], edx
cmp dword [rbp - 0x4c], edx
jne 0x1800092cd
lea rcx, [rbp - 0x58]
call fcn.180003638
mov edx, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
mov eax, edx
mov r8d, 0x2a
mov word [rcx + rax*2], r8w
add edx, edi
mov word [rcx + rdx*2], r12w
mov dword [rbp - 0x50], edx
mov r15b, r12b
mov r8, rbx
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp + 0x40]
call fcn.1800093ec
test al, al
je 0x180009321
lea r15, [rbx + 0x28]
lea rdx, [0x18005cb4c]
mov rcx, qword [r15]
call fcn.18002261c
test eax, eax
jne 0x18000931e
mov rcx, r15
jmp 0x1800093ae
mov r15b, dil
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or ecx, 0xffffffff
mov edx, ecx
cmp eax, ecx
cmovne edx, eax
mov eax, 0x10
test r15b, r15b
jne 0x18000938e
cmp edx, ecx
je 0x180009346
test al, dl
jne 0x18000938e
mov rcx, qword [rbp - 0x58]
call fcn.1800129dc
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp + 0x40]
call fcn.1800093ec
mov dil, al
lea rcx, [rbp + 0x40]
call fcn.180008da4
mov al, dil
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r12
mov word [rbx + 0x24], r12w
cmp edx, ecx
cmovne eax, edx
mov dword [rbx + 0x20], eax
lea rcx, [rbx + 0x28]
mov rdx, r14
call fcn.180002cf8
nop
mov rcx, qword [rbp - 0x58]
call fcn.1800129dc
jmp 0x180009361