Function at 0x411fc3b0
Capabilities:
Check if file exists

Disassembly:
mov r11, rsp
push rsi
push rdi
push r12
sub rsp, 0x180
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov rax, qword [0x41359af8]
xor rax, rsp
mov qword [rsp + 0x170], rax
mov rbx, rdx
mov r12, rcx
mov qword [r11 - 0xa8], rdx
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x411fc421
cmp qword [rbx + 0x20], 8
jb 0x411fc408
mov rcx, qword [rbx + 8]
call fcn.41210d60
mov qword [rbx + 0x20], 7
xor esi, esi
mov qword [rbx + 0x18], rsi
mov word [rbx + 8], si
xor eax, eax
jmp 0x411fc74c
mov edx, 7
mov qword [rsp + 0x40], rdx
xor esi, esi
mov r8, rsi
mov qword [rsp + 0x38], rsi
mov word [rsp + 0x28], si
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
mov rbp, rcx
movabs rax, 0x7ffffffffffffffe
cmp rcx, rax
jbe 0x411fc46e
call fcn.4120fbc0
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rdx, rbp
jae 0x411fc487
mov rdx, rbp
lea rcx, [rsp + 0x20]
call fcn.41022ab0
mov rdx, qword [rsp + 0x40]
jmp 0x411fc4a5
test rbp, rbp
jne 0x411fc4a5
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp rdx, 8
cmovae rax, qword [rsp + 0x28]
mov word [rax], si
jmp 0x411fc4e6
test rbp, rbp
je 0x411fc4e6
lea rcx, [rsp + 0x28]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x28]
lea rdi, [rbp + rbp]
add rdx, rdx
mov r9, rdi
mov r8, r12
call fcn.412118b0
mov qword [rsp + 0x38], rbp
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rax, qword [rsp + 0x28]
mov word [rdi + rax], si
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0xa0]
call fcn.4103ba50
nop
cmp qword [rsp + 0x40], 8
jb 0x411fc50b
mov rcx, qword [rsp + 0x28]
call fcn.41210d60
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], rsi
mov word [rsp + 0x28], 0
lea rcx, [rsp + 0x100]
call fcn.4113c7a0
mov qword [rsp + 0x68], 0xf
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x48]
call fcn.41001b20
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x100]
call fcn.4113d6f0
nop
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x78]
call fcn.4103b960
lea rdx, [rsp + 0x80]
cmp qword [rsp + 0x98], 8
cmovae rdx, qword [rsp + 0x80]
cmp qword [rbx + 0x20], 8
jb 0x411fc5b0
lea rdi, [rbx + 8]
mov rcx, qword [rdi]
jmp 0x411fc5b7
lea rdi, [rbx + 8]
mov rcx, rdi
call fcn.41213c60
test eax, eax
je 0x411fc689
cmp qword [rsp + 0x98], 8
jb 0x411fc5dc
mov rcx, qword [rsp + 0x80]
call fcn.41210d60
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rsi
mov word [rsp + 0x80], 0
cmp qword [rsp + 0xe8], 0x10
jb 0x411fc612
mov rcx, qword [rsp + 0xd0]
call fcn.41210d60
mov qword [rsp + 0xe8], 0xf
mov qword [rsp + 0xe0], rsi
mov byte [rsp + 0xd0], 0
cmp qword [rsp + 0xc0], 0x10
jb 0x411fc646
mov rcx, qword [rsp + 0xa8]
call fcn.41210d60
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0xb8], rsi
mov byte [rsp + 0xa8], 0
cmp qword [rbx + 0x20], 8
jb 0x411fc671
mov rcx, qword [rdi]
call fcn.41210d60
mov qword [rbx + 0x20], 7
mov qword [rbx + 0x18], rsi
mov word [rdi], 0
xor eax, eax
jmp 0x411fc74c
cmp qword [rsp + 0x98], 8
jb 0x411fc6a1
mov rcx, qword [rsp + 0x80]
call fcn.41210d60
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rsi
mov word [rsp + 0x80], 0
cmp qword [rsp + 0xe8], 0x10
jb 0x411fc6d7
mov rcx, qword [rsp + 0xd0]
call fcn.41210d60
mov qword [rsp + 0xe8], 0xf
mov qword [rsp + 0xe0], rsi
mov byte [rsp + 0xd0], 0
cmp qword [rsp + 0xc0], 0x10
jb 0x411fc70b
mov rcx, qword [rsp + 0xa8]
call fcn.41210d60
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0xb8], rsi
mov byte [rsp + 0xa8], 0
cmp qword [rbx + 0x20], 8
jb 0x411fc736
mov rcx, qword [rdi]
call fcn.41210d60
mov qword [rbx + 0x20], 7
mov qword [rbx + 0x18], rsi
mov word [rdi], 0
mov eax, 1
mov rcx, qword [rsp + 0x170]
xor rcx, rsp
call fcn.41211b80
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret