Function at 0x14001b190
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
xor eax, eax
mov dword [rbp + 0xc8], eax
lea rcx, [rsp + 0x60]
call fcn.14001a1d0
nop
lea rcx, [rsp + 0x58]
call fcn.1400198d0
nop
xor edx, edx
lea rcx, [rbp + 0xc8]
call fcn.1400038c0
nop
mov edx, 0x5c
mov rbx, qword [rbp + 0xc8]
mov rcx, rbx
call fcn.14001e9c8
mov rdi, rax
mov rsi, 0xffffffffffffffff
test rax, rax
jne 0x14001b200
mov edi, esi
jmp 0x14001b206
sub rdi, rbx
sar rdi, 1
mov edx, 0x2f
mov rcx, rbx
call fcn.14001e9c8
test rax, rax
jne 0x14001b21c
mov eax, esi
jmp 0x14001b222
sub rax, rbx
sar rax, 1
cmp edi, eax
cmovg eax, edi
lea r8d, [rax + 1]
mov r9d, dword [rbx - 0x10]
sub r9d, r8d
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0xc8]
call fcn.140004440
mov dword [rbp + 0xc8], 3
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b267
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140003800
mov r13, rax
mov rcx, qword [rax]
mov rcx, qword [rcx - 0x18]
test rcx, rcx
je 0x14001b290
mov rdx, qword [rcx]
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
jne 0x14001b2a1
call fcn.1400033f0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rcx, rcx
je 0x14001b9b4
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0xd8], rbx
mov dword [rbp + 0xc8], 7
lea r12, str.new_new_
mov rdi, rsi
nop
inc rdi
cmp word [r12 + rdi*2], 0
jne 0x14001b2d0
mov r13, qword [r13]
movsxd r15, dword [r13 - 0x10]
lea r14d, [r15 + rdi]
test r14d, r14d
js 0x14001b9a9
mov ecx, 1
sub ecx, dword [rax + 0x10]
mov eax, dword [rax + 0xc]
sub eax, r14d
or eax, ecx
jge 0x14001b318
mov edx, r14d
lea rcx, [rbp + 0xd8]
call fcn.1400045e0
mov rbx, qword [rbp + 0xd8]
add r15, r15
je 0x14001b34e
test rbx, rbx
je 0x14001b33e
mov r8, r15
mov rcx, rbx
test r13, r13
je 0x14001b337
mov rdx, r13
call fcn.14003f6b0
jmp 0x14001b34e
xor edx, edx
call fcn.14003fd50
call fcn.140023c08
mov dword [rax], 0x16
call fcn.140023ae4
movsxd r8, edi
add r8, r8
lea rcx, [r15 + rbx]
je 0x14001b379
test rcx, rcx
jne 0x14001b371
call fcn.140023c08
mov dword [rax], 0x16
call fcn.140023ae4
jmp 0x14001b379
mov rdx, r12
call fcn.14003f6b0
cmp r14d, dword [rbx - 0xc]
jg 0x14001b9a9
mov dword [rbx - 0x10], r14d
movsxd rax, r14d
xor r14d, r14d
mov word [rbx + rax*2], r14w
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0xd8]
lea rcx, [rsp + 0x50]
call fcn.14000c400
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b3c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b3e2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b400
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov dword [rbp + 0xd0], 8
lea rcx, [rsp + 0x68]
call fcn.140018880
nop
call fcn.1400033f0
mov rcx, rax
test rax, rax
je 0x14001b9bf
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xd8], rax
lea rdi, [0x1400458e4]
cmp rdi, 0x10000
jae 0x14001b458
movzx edx, di
lea rcx, [rbp + 0xd8]
call fcn.140007210
jmp 0x14001b47a
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rdi + r8*2], 0
jne 0x14001b460
mov rdx, rdi
lea rcx, [rbp + 0xd8]
call fcn.1400048b0
movzx ebx, di
call fcn.1400033f0
mov rcx, rax
test rax, rax
je 0x14001b9ca
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xc8], rax
cmp rdi, 0x10000
jae 0x14001b4b9
movzx edx, bx
lea rcx, [rbp + 0xc8]
call fcn.140007210
jmp 0x14001b4db
mov r8, rsi
nop dword [rax]
inc r8
cmp word [rdi + r8*2], 0
jne 0x14001b4c0
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.1400048b0
nop
lea r9, [rbp + 0xd0]
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0xc8]
lea rcx, [rsp + 0x68]
call fcn.140018c70
mov r15d, eax
mov rdx, qword [rbp + 0xc8]
add rdx, 0xffffffffffffffe8
mov ecx, esi
lock xadd dword [rdx + 0x10], ecx
sub ecx, 1
jg 0x14001b51f
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b53f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], r14
mov ecx, 0x20
call fcn.14001d5b0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x38]
call fcn.14001a6b0
cmp qword [rsp + 0x40], 1
setbe r14b
mov edx, 1
lea rcx, [rbp - 0x70]
call fcn.14000a600
nop
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14001b614
nop dword [rax]
mov edx, dword [rbx + 0x1c]
lea rcx, [rbp - 0x70]
call fcn.14000c100
lea rdx, [0x1400458e8]
lea rcx, [rbp - 0x70]
call fcn.140007d90
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x14001b5e8
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x14001b5e3
cmp rbx, qword [rax + 0x10]
jne 0x14001b5e3
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x14001b5d0
mov rbx, rax
jmp 0x14001b60f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14001b60f
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x14001b600
cmp rbx, rdi
jne 0x14001b5a0
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov r9d, eax
cmp eax, 1
jne 0x14001b672
test r14b, r14b
je 0x14001b672
test r15d, r15d
jne 0x14001b672
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14001b9d5
mov rax, qword [rsp + 0x60]
sub rcx, rax
nop word [rax + rax]
movzx r8d, word [rax]
movzx edx, word [rax + rcx]
sub r8d, edx
jne 0x14001b665
add rax, 2
test edx, edx
jne 0x14001b650
test r8d, r8d
je 0x14001b672
mov dil, 1
jmp 0x14001b869
xor edi, edi
cmp r9d, 1
jne 0x14001b869
call fcn.1400033f0
mov rcx, rax
test rax, rax
je 0x14001b9e0
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xc8], rax
lea rdx, str.NewReplaceResult.log
cmp rdx, 0x10000
jae 0x14001b6c1
movzx edx, dx
lea rcx, [rbp + 0xc8]
call fcn.140007210
jmp 0x14001b6dc
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x14001b6c4
lea rcx, [rbp + 0xc8]
call fcn.1400048b0
nop
mov r9d, 0x1388000
lea r8, [rbp + 0xc8]
xor edx, edx
lea rcx, [rsp + 0x78]
call fcn.14000a8f0
nop
mov rdx, qword [rbp + 0xc8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b717
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
call fcn.1400033f0
mov rcx, rax
test rax, rax
je 0x14001b99e
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xc8], rax
lea rcx, [rsp + 0x30]
call fcn.1400198d0
test r14b, r14b
je 0x14001b79a
mov rbx, qword [rax]
lea rcx, [rbp + 0xd8]
call fcn.14001a1d0
nop
mov dword [rsp + 0x20], r15d
mov r9, rbx
mov r8, qword [rax]
lea rdx, str._ls__ls_stateError__7__ld
lea rcx, [rbp + 0xc8]
call fcn.1400031a0
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b798
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
jmp 0x14001b7ea
mov rbx, qword [rax]
lea rcx, [rbp + 0xd8]
call fcn.14001a1d0
nop
mov dword [rsp + 0x20], r15d
mov r9, rbx
mov r8, qword [rax]
lea rdx, str._ls__ls_processError__6__ld
lea rcx, [rbp + 0xc8]
call fcn.1400031a0
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b7ea
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b808
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rbp + 0xc8]
lea rcx, [rsp + 0x78]
call fcn.140014530
nop
mov rdx, qword [rbp + 0xc8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b83b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b858
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x14001b869
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx - 0x70], rax
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx - 0x74], edx
lea rcx, [rbp - 0x68]
call fcn.14000ba70
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x70], rax
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx - 0x74], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x18], rax
lea rcx, [rbp + 0x18]
call fcn.14001d0a4
nop
mov rcx, qword [rsp + 0x38]
mov rbx, qword [rcx + 8]
cmp byte [rbx + 0x19], 0
jne 0x14001b90e
nop
mov r8, qword [rbx + 0x10]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.140018ce0
mov rcx, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.14001d5ec
cmp byte [rbx + 0x19], 0
je 0x14001b8e0
mov rcx, qword [rsp + 0x38]
mov edx, 0x20
call fcn.14001d5ec
nop
lea rcx, [rsp + 0x68]
call fcn.140018ae0
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b943
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001b962
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14001b97f
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
movzx eax, dil
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140002a90
nop
mov ecx, 0x80070057
call fcn.140002a90
nop
mov ecx, 0x80004005
call fcn.140002a90
nop
mov ecx, 0x80004005
call fcn.140002a90
nop
mov ecx, 0x80004005
call fcn.140002a90
nop
mov ecx, 0x80004005
call fcn.140002a90
nop
mov ecx, 0x80004005
call fcn.140002a90
int3