Function at 0x14015faf0
Capabilities:
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x1405f98c0]
xor rax, rsp
mov qword [rbp + 0xa8], rax
mov qword [rsp + 0x60], r8
xor eax, eax
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x48], eax
mov byte [rdx], 1
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rax
lea rcx, [rsp + 0x70]
call fcn.140188ad0
test al, al
jne 0x14015fb6c
lea r9, str.uninstaller:_failed_to_list_uninstalled_apps
lea r8, str.UNINSTALLERGAMEPROVIDER
mov edx, 4
call fcn.1400c6f10
xor bl, bl
jmp 0x140160283
mov r12, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x68], rax
cmp r12, rax
je 0x140160281
movzx ebx, byte [rsp + 0x40]
nop dword [rax]
lea rsi, [r12 + 0x60]
lea rdx, [rbp + 0x28]
mov rcx, rsi
call fcn.1400eb020
cmp qword [rax + 0x18], 7
jbe 0x14015fbab
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov edi, eax
mov rdx, qword [rbp + 0x40]
cmp rdx, 7
jbe 0x14015fbf6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015fbf1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602c6
call fcn.1403e3650
cmp edi, 0xffffffff
je 0x14016026f
mov r15, qword [0x140891308]
mov qword [rsp + 0x48], r15
mov rcx, qword [0x140891310]
mov qword [rsp + 0x58], rcx
cmp r15, rcx
je 0x14016026f
lea r13, [r15 + 0x38]
mov rax, rcx
nop word [rax + rax]
mov rcx, r12
cmp qword [r12 + 0x18], 7
jbe 0x14015fc3f
mov rcx, qword [r12]
mov rdx, qword [r13 - 8]
lea r8, [r13 - 0x18]
cmp qword [r13], 7
jbe 0x14015fc51
mov r8, qword [r8]
cmp rdx, qword [r12 + 0x10]
jne 0x140160253
test rdx, rdx
je 0x14015fc88
sub r8, rcx
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x14016024e
add rcx, 2
sub rdx, 1
jne 0x14015fc70
lea rcx, [r12 + 0xf0]
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 7
jbe 0x14015fc9e
mov rcx, qword [rcx]
mov rdx, qword [r13 + 0x18]
lea r8, [r13 + 8]
cmp qword [r13 + 0x20], 7
jbe 0x14015fcb0
mov r8, qword [r8]
cmp rdx, rax
jne 0x14016024e
test rdx, rdx
je 0x14015fcd9
sub r8, rcx
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x14016024e
add rcx, 2
sub rdx, 1
jne 0x14015fcc1
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
xor edi, edi
mov qword [rbp - 0x60], rdi
lea rdx, [r13 + 0x28]
lea rcx, [rbp - 0x78]
call fcn.1400eb140
nop
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.14010a990
nop
mov r14, qword [rbp - 0x70]
test r14, r14
je 0x14015fdc5
mov r15, qword [rbp - 0x68]
cmp r14, r15
je 0x14015fd7c
lea rdi, [r14 + 0x18]
mov rdx, qword [rdi]
cmp rdx, 0xf
jbe 0x14015fd5a
mov rcx, qword [rdi - 0x18]
inc rdx
cmp rdx, 0x1000
jb 0x14015fd55
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401602c0
mov rcx, r8
call fcn.1403e3650
mov qword [rdi - 8], 0
mov qword [rdi], recv
mov byte [rdi - 0x18], 0
add rdi, 0x20
lea rax, [rdi - 0x18]
cmp rax, r15
jne 0x14015fd20
xor edi, edi
mov rdx, qword [rbp - 0x60]
sub rdx, r14
and rdx, 0xffffffffffffffe0
mov rax, r14
cmp rdx, 0x1000
jb 0x14015fdac
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602c0
mov rcx, r14
call fcn.1403e3650
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], rdi
mov r15, qword [rsp + 0x48]
lea rdx, [r12 + 0x40]
lea rcx, [rbp + 0x68]
call fcn.1401844a0
mov rsi, rax
lea rdx, [rbp + 8]
lea rcx, [rbp - 0x40]
call fcn.1400eab80
nop
lea r8, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova r8, qword [rbp + 8]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, dword [rbp + 0x18]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rdi, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xor eax, eax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov r8, rdi
xor edx, edx
lea rcx, [rbp - 0x18]
call fcn.1400d1910
mov r14d, dword [rsp + 0x50]
or r14d, 2
lea rcx, [rbp - 0x18]
cmp qword [rbp], 7
cmova rcx, qword [rbp - 0x18]
lea r8, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova r8, qword [rbp + 8]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rcx
mov r9d, dword [rbp + 0x18]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x14015fea9
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015fea4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602cc
call fcn.1403e3650
xor edi, edi
mov qword [rbp + 0x18], rdi
mov qword [rbp + 0x20], recv
mov byte [rbp + 8], dil
lea rdx, [rbp - 0x18]
cmp qword [rbp], 7
cmova rdx, qword [rbp - 0x18]
lea rcx, [rbp + 0x48]
call fcn.140185800
mov rcx, rax
mov rdx, qword [rax + 0x10]
mov r9, qword [rax + 0x18]
mov rax, r9
sub rax, rdx
cmp rax, 1
jb 0x14015ff10
lea rax, [rdx + 1]
mov qword [rcx + 0x10], rax
mov r8, rcx
cmp r9, 0xf
jbe 0x14015fefd
mov r8, qword [rcx]
movzx eax, word [0x140574ca8]
mov byte [r8 + rdx], al
mov byte [r8 + rdx + 1], 0
jmp 0x14015ff2f
mov qword [rsp + 0x20], 1
lea r9, [0x140574ca8]
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.1400c7620
mov rcx, rax
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x28], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x38], xmm1
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], recv
mov byte [rcx], 0
or r14d, 4
mov r9, rsi
lea r8, [rbp + 0x28]
movzx edx, bl
lea rcx, [rbp + 0x88]
call fcn.1400e4f20
or r14d, 8
mov rdx, qword [rbp + 0x40]
cmp rdx, 0xf
jbe 0x14015ffa7
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015ffa1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602d2
call fcn.1403e3650
nop
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x14015ffe2
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015ffdd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602d8
call fcn.1403e3650
mov qword [rbp + 0x58], rdi
mov qword [rbp + 0x60], recv
mov byte [rbp + 0x48], 0
mov rdx, qword [rbp]
cmp rdx, 7
jbe 0x140160032
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016002d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602de
call fcn.1403e3650
mov qword [rbp - 8], rdi
mov qword [rbp], 7
mov word [rbp - 0x18], di
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x140160080
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016007b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602e4
call fcn.1403e3650
mov qword [rbp + 0x78], rdi
mov qword [rbp + 0x80], recv
mov byte [rbp + 0x68], 0
lea rdx, [r13 - 0x18]
lea rcx, [rbp + 0x28]
call fcn.1401844a0
mov rdi, rax
mov ecx, 0x150
call fcn.1403e3660
mov rsi, rax
mov qword [rbp - 0x50], rax
lea rax, [0x140573420]
mov qword [rsi + 8], rax
lea rcx, [rsi + 0x98]
lea rax, [r12 + 0x60]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xa
lea rax, [rbp + 0x88]
mov qword [rsp + 0x20], rax
mov r9, rdi
mov r8b, 8
mov rdx, r15
call fcn.1400eb4e0
nop
or r14d, 0x20
mov dword [rsp + 0x48], r14d
lea rax, vtable.ps::LaunchableGame.0
mov qword [rsi], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.ps::LaunchableGame.1.0
mov qword [rcx + rsi + 8], rax
xor edi, edi
mov qword [rsi + 0x10], rdi
lea rcx, [rsi + 0x18]
call fcn.1400ecd90
nop
lea rax, vtable.ps::UninstallerGame.0
mov qword [rsi], rax
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.ps::UninstallerGame.1.0
mov qword [rcx + rsi + 8], rax
lea rcx, [rsi + 0x58]
lea rdx, [r13 + 0x28]
call fcn.1400ed1c0
nop
lea rcx, [rsi + 0x78]
lea rdx, [r13 + 0x48]
call fcn.1400ed1c0
nop
or r14d, 0x10
mov dword [rsp + 0x50], r14d
mov qword [rbp - 0x48], rdi
mov rax, qword [rsi + 8]
movsxd rcx, dword [rax + 4]
lea rax, [rsi + 8]
add rax, rcx
mov qword [rsp + 0x48], rax
mov rsi, qword [rsp + 0x60]
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x1401601a0
mov ecx, edi
mov qword [rdx], rax
add qword [rsi + 8], 8
jmp 0x1401601b2
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14011e260
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1401601c2
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
nop
mov rdx, qword [rbp + 0x40]
cmp rdx, 0xf
jbe 0x1401601fe
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401601f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602ba
call fcn.1403e3650
nop
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x140160240
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016023a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401602c0
call fcn.1403e3650
nop
lea rcx, [rbp - 0x38]
call fcn.1400ed910
lea rsi, [r12 + 0x60]
mov rax, qword [rsp + 0x58]
add r15, 0xa0
mov qword [rsp + 0x48], r15
add r13, 0xa0
cmp r15, rax
jne 0x14015fc30
add r12, 0x110
cmp r12, qword [rsp + 0x68]
jne 0x14015fb90
mov bl, 1
lea rcx, [rsp + 0x70]
call fcn.1401304d0
movzx eax, bl
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.1403e3630
mov rbx, qword [rsp + 0x1f0]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
nop
call fcn.1403fd768
int3