Function at 0x1802900e0
Capabilities:
Get file attributes

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
mov r15, rdx
mov r12, rcx
mov dword [rbp + 0x48], 0
xor r13b, r13b
lea rsi, [rcx + 0x140]
mov rdx, qword [rdx]
mov r14d, 0xffffffff
cmp qword [rsi], rdx
je 0x180290355
mov rcx, qword [rsi]
call fcn.18001c500
test eax, eax
je 0x180290355
mov r13b, 1
mov byte [rbp + 0x48], r13b
mov rcx, qword [r12 + 0x178]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rbx, qword [r15]
mov qword [rbp + 0x58], rbx
lea rdi, [rbx - 0x10]
lea rsi, [0x180660020]
cmp rdi, rsi
je 0x180290164
lock inc dword [rdi]
mov rbx, qword [rbp + 0x58]
cmp byte [rbx], 0
jne 0x1802901a0
lea rdx, [0x1803acd8c]
lea rcx, [rbp + 0x60]
call fcn.18001d410
mov rbx, qword [rbp + 0x60]
mov qword [rbp + 0x58], rbx
cmp rdi, rsi
je 0x1802901a0
mov eax, r14d
lock xadd dword [rdi], eax
dec eax
cmp eax, 0xffffffff
jne 0x18029019c
mov rcx, rdi
call fcn.18011d9c0
mov rbx, qword [rbp + 0x58]
xor edi, edi
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x10], rdi
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rdi
mov rax, qword [r12]
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x18]
mov rcx, r12
call qword [rax + 0x178]
mov esi, dword [rbp - 0x1c]
test esi, esi
jle 0x1802901f7
nop
movsxd rcx, edi
mov rax, qword [rbp - 0x28]
mov rdx, rbx
mov rcx, qword [rax + rcx*8]
call fcn.18001c500
test eax, eax
je 0x1802901ef
inc edi
cmp edi, esi
jl 0x1802901d0
jmp 0x1802901f7
test edi, edi
jns 0x180290304
lea rcx, [r12 + 0x188]
call fcn.1802bbe40
mov r15d, eax
sub r15d, 1
js 0x1802902ac
nop dword [rax]
nop word [rax + rax]
mov edx, r15d
lea rcx, [r12 + 0x188]
call fcn.180250dd0
test rax, rax
je 0x180290251
mov rdi, qword [rax]
lea rax, [rdi - 0x10]
lea rcx, [0x180660020]
cmp rax, rcx
je 0x180290258
lock inc dword [rax]
mov rbx, qword [rbp + 0x58]
jmp 0x180290258
lea rdi, [0x180660030]
cmp rdi, rbx
je 0x180290271
mov rdx, rbx
mov rcx, rdi
call fcn.18001c500
test eax, eax
je 0x180290271
xor sil, sil
jmp 0x180290274
mov sil, 1
lea rcx, [rdi - 0x10]
lea rdi, [0x180660020]
cmp rcx, rdi
je 0x18029029b
mov eax, r14d
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180290297
call fcn.18011d9c0
mov rbx, qword [rbp + 0x58]
test sil, sil
jne 0x1802902fb
sub r15d, 1
jns 0x180290220
jmp 0x1802902b3
lea rdi, [0x180660020]
lea rcx, [r12 + 0x188]
call fcn.1802bbe40
add eax, 2
cmp byte [rbx], 0
je 0x1802902fb
test eax, eax
je 0x1802902fb
lea rcx, [r12 + 0x2d8]
mov qword [rbp + 0x60], rbx
lea rdx, [rbx - 0x10]
cmp rdx, rdi
je 0x1802902e8
lock inc dword [rdx]
mov rbx, qword [rbp + 0x58]
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp + 0x60]
mov edx, eax
call fcn.1802b9aa0
movzx r13d, byte [rbp + 0x48]
mov r15, qword [rbp + 0x50]
lea rcx, [rbp - 0x28]
call fcn.180009780
mov rcx, qword [rbp - 0x28]
call fcn.180124068
nop
lea rcx, [rbp - 0x18]
call fcn.180009780
mov rcx, qword [rbp - 0x18]
call fcn.180124068
nop
lea rcx, [rbx - 0x10]
lea rax, [0x180660020]
cmp rcx, rax
je 0x18029034d
mov eax, r14d
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x18029034d
call fcn.18011d9c0
lea rsi, [r12 + 0x140]
mov rax, qword [r15]
add rax, 0xfffffffffffffff0
lea rcx, [0x180660020]
cmp rax, rcx
je 0x18029036b
lock inc dword [rax]
mov rcx, qword [r15]
xchg qword [rsi], rcx
add rcx, 0xfffffffffffffff0
lea r15, [0x180660020]
cmp rcx, r15
je 0x180290394
mov eax, r14d
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180290394
call fcn.18011d9c0
mov rdx, rsi
mov rcx, qword [r12 + 0x128]
call fcn.1802921e0
mov dword [rsp + 0x20], 0
lea r9, vtable.type_info.0
lea r8, vtable.type_info.0
xor edx, edx
mov rcx, qword [r12 + 0x178]
call fcn.180120224
test rax, rax
je 0x1802903de
mov rcx, qword [rax + 0x170]
mov rcx, qword [rcx + 0x28]
call fcn.180291f40
mov rax, qword [rsi]
mov qword [rbp + 0x58], rax
lea rbx, [rax - 0x10]
cmp rbx, r15
je 0x1802903f5
lock inc dword [rbx]
mov rax, qword [rbp + 0x58]
cmp byte [rax], 0
jne 0x18029042d
lea rdx, [0x1803acd8c]
lea rcx, [rbp + 0x50]
call fcn.18001d410
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x58], rax
cmp rbx, r15
je 0x18029042d
mov eax, r14d
lock xadd dword [rbx], eax
dec eax
cmp eax, 0xffffffff
jne 0x18029042d
mov rcx, rbx
call fcn.18011d9c0
lea rcx, [r12 + 0x188]
lea rdx, [rbp + 0x58]
call fcn.1802504c0
mov rdi, qword [r12 + 0x968]
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.180190bc0
nop
mov ebx, 1
mov dword [rbp + 0x48], ebx
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.180017f90
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop
test al, 0x10
je 0x1802904a7
cmp eax, 0xffffffff
je 0x1802904a7
lea rdx, [rbp + 0x50]
mov rcx, rsi
call fcn.180190bc0
nop
mov ebx, 3
mov dword [rbp + 0x48], ebx
mov rdx, qword [rsi]
cmp qword [rax], rdx
je 0x1802904a7
mov rcx, qword [rax]
call fcn.18001c500
test eax, eax
je 0x1802904a7
mov dl, 1
jmp 0x1802904a9
xor edx, edx
mov rcx, rdi
call fcn.18029c740
nop
test bl, 2
je 0x1802904e0
and ebx, 0xfffffffd
mov dword [rbp + 0x48], ebx
mov rcx, qword [rbp + 0x50]
add rcx, 0xfffffffffffffff0
cmp rcx, r15
je 0x1802904e0
mov eax, r14d
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x1802904dd
call fcn.18011d9c0
mov ebx, dword [rbp + 0x48]
test bl, 1
je 0x180290505
mov rcx, qword [rbp + 0x60]
add rcx, 0xfffffffffffffff0
cmp rcx, r15
je 0x180290505
mov eax, r14d
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x180290505
call fcn.18011d9c0
test r13b, r13b
je 0x180290556
mov rdx, r12
lea rcx, [rbp + 0x48]
call fcn.180067e60
nop
lea rcx, [r12 + 0x158]
mov qword [rbp + 0x50], r12
lea r9, [rbp + 0x50]
lea r8, [rbp + 0x48]
call fcn.1800d0150
nop
mov rax, qword [rbp + 0x48]
test rax, rax
je 0x180290556
mov ecx, r14d
lock xadd dword [rax + 8], ecx
cmp ecx, 1
jne 0x180290556
mov rcx, qword [rbp + 0x48]
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rcx, qword [rbp + 0x58]
add rcx, 0xfffffffffffffff0
cmp rcx, r15
je 0x180290576
lock xadd dword [rcx], r14d
dec r14d
cmp r14d, 0xffffffff
jne 0x180290576
call fcn.18011d9c0
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret