Function at 0x1800052f0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0xbb0]
sub rsp, 0xcb0
mov rax, qword [0x18004f0b0]
xor rax, rsp
mov qword [rbp + 0xba0], rax
mov rdi, qword [rbp + 0xc08]
lea rcx, [rsp + 0x60]
mov r15, qword [rbp + 0xc20]
mov rsi, r8
mov r12, rdx
mov r8d, 0x200
xor edx, edx
mov rbx, r9
call fcn.18001c150
xor edx, edx
lea rcx, [rbp + 0x160]
mov r8d, 0x200
call fcn.18001c150
xor edx, edx
lea rcx, [rbp + 0x360]
mov r8d, 0x208
call fcn.18001c150
xor edx, edx
lea rcx, [rbp + 0x570]
mov r8d, 0x208
call fcn.18001c150
xor edx, edx
lea rcx, [rbp + 0x780]
mov r8d, 0x208
call fcn.18001c150
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
movzx r14d, byte [rbp + 0xc18]
test eax, eax
jne 0x1800053b9
test r14b, r14b
jne 0x180005659
lea rcx, [rbp + 0x360]
sub rcx, rdi
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rdi]
mov word [rcx + rdi], ax
lea rdi, [rdi + 2]
test ax, ax
jne 0x1800053d0
lea rcx, [rbp + 0x160]
sub rcx, rbx
nop word [rax + rax]
movzx eax, word [rbx]
mov word [rcx + rbx], ax
lea rbx, [rbx + 2]
test ax, ax
jne 0x1800053f0
xor edi, edi
mov ecx, edi
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rbp + rcx + 0x160]
lea rcx, [rcx + 2]
test ax, ax
jne 0x180005410
lea rcx, [rsp + 0x60]
sub rcx, rsi
nop dword [rax]
movzx eax, word [rsi]
mov word [rcx + rsi], ax
lea rsi, [rsi + 2]
test ax, ax
jne 0x180005430
mov rcx, qword [rbp + 0xc10]
lea rdx, [rbp + 0x780]
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x180005460
lea rcx, [rsp + 0x60]
mov esi, 1
call fcn.18001d810
mov rdx, rdi
lea r8, [0x180035b50]
lea ebx, [rsi + 4]
nop dword [rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1800054ae
cmp rdx, rbx
jne 0x180005490
mov ebx, 2
jmp 0x1800055d2
lea rcx, [rsp + 0x60]
call fcn.18001d810
mov rdx, rdi
lea r8, str..gif
nop dword [rax]
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x1800054ee
cmp rdx, rbx
jne 0x1800054d0
mov ebx, 3
jmp 0x1800055d2
lea rcx, [rsp + 0x60]
call fcn.18001d810
mov rdx, rdi
lea r8, str..jpg
nop dword [rax]
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x18000552e
cmp rdx, rbx
jne 0x180005510
mov ebx, 4
jmp 0x1800055d2
lea rcx, [rsp + 0x60]
call fcn.18001d810
mov rdx, rdi
lea r8, str..png
nop dword [rax]
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x180005566
cmp rdx, rbx
jne 0x180005550
jmp 0x1800055d2
lea rcx, [rsp + 0x60]
call fcn.18001d810
mov rdx, rdi
lea r8, str..psd
nop word [rax + rax]
movzx ecx, word [rax + rdx*2]
inc rdx
cmp cx, word [r8 + rdx*2 - 2]
jne 0x18000559b
cmp rdx, rbx
jne 0x180005580
mov ebx, 6
jmp 0x1800055d2
lea rcx, [rsp + 0x60]
call fcn.18001d810
lea rdx, str..tif
nop dword [rax]
movzx ecx, word [rax + rdi*2]
inc rdi
cmp cx, word [rdx + rdi*2 - 2]
jne 0x1800055c8
cmp rdi, rbx
jne 0x1800055b0
cmp cx, word [rdx + rdi*2 - 2]
mov eax, 7
cmove esi, eax
mov ebx, esi
mov r9d, ebx
lea r8, [rbp + 0x360]
lea rdx, str.__s___d
lea rcx, [rbp + 0x570]
call fcn.180008b90
lea rax, [rsp + 0x50]
mov byte [rsp + 0x50], 0
mov qword [rsp + 0x48], rax
lea r9, [rbp + 0x780]
mov byte [rsp + 0x40], r14b
lea rax, str.42CA8D45_DC86_41CE_B701_EEF835F50DEA
mov qword [rsp + 0x38], rax
lea r8, [rbp + 0x160]
lea rax, [0x180035c10]
mov rcx, r12
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x60]
lea rax, [rbp + 0x990]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x570]
mov qword [rsp + 0x20], rax
call fcn.1800061f0
cmp byte [rsp + 0x50], 0
je 0x180005659
mov byte [r15], 1
mov rcx, qword [rbp + 0xba0]
xor rcx, rsp
call fcn.180019490
lea r11, [rsp + 0xcb0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret