Function at 0x140006268
Capabilities:
Check if file exists
Delete file
Move file
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x120
mov rax, qword [0x14000fd10]
mov rsi, rcx
movzx ebx, byte [rax + 8]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_malloc]
mov r8d, ebx
xor edx, edx
mov rcx, rax
mov r13, rax
mov r12b, 1
call sub.msvcrt.dll_memset
mov rdx, qword [0x14000fd70]
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x1400062b8
add rcx, 2
call fcn.140002124
mov r8, qword [0x14000fd70]
mov rdi, rax
mov qword [rsp + 0x168], rax
mov rax, r8
mov rdx, rdi
sub rdx, r8
mov cl, byte [rax]
mov byte [rdx + rax], cl
inc rax
test cl, cl
jne 0x1400062e5
lea rdx, [rdi - 1]
inc rdx
cmp byte [rdx], 0
jne 0x1400062f5
movzx eax, word [0x14000aef0]
mov rcx, r8
mov word [rdx], ax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsA]
mov rcx, rdi
test eax, eax
jne 0x14000639c
lea rdx, [0x14000aea8]
xor r12b, r12b
call qword [sym.imp.msvcrt.dll_fopen]
test rax, rax
jne 0x14000635b
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
lea rcx, str.Fatal:_Cannot_create__s:__s_n
mov rdx, rdi
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
mov rcx, rax
call qword [sym.imp.msvcrt.dll_fclose]
test eax, eax
je 0x1400063e1
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
lea rcx, str.Fatal:_Cannot_write_to__s:__s_n
mov rdx, rdi
mov r8, rax
call fcn.140003e6c
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, qword [0x14000fd70]
mov rdx, rdi
call qword [sym.imp.msvcrt.dll_rename]
test eax, eax
je 0x1400063e1
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
lea rcx, str.Fatal:_Cannot_create__s:__s_n
mov rdx, rdi
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
mov r8, qword [0x14000fd70]
lea rax, str.Updating
lea rdx, str.Creating
test r12b, r12b
lea rcx, str._n_s_file__s_n
cmovne rdx, rax
call qword [sym.imp.msvcrt.dll_printf]
lea rdx, [0x140008998]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_fopen]
mov rbp, rax
test rax, rax
jne 0x14000644d
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
lea rcx, str.Fatal:_Cannot_open__s:__s_n
mov rdx, rdi
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
mov rcx, qword [0x14000fd70]
lea rdx, [0x14000aea8]
call qword [sym.imp.msvcrt.dll_fopen]
mov r14, rax
test rax, rax
jne 0x140006498
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
mov rdx, qword [0x14000fd70]
lea rcx, str.Fatal:_Cannot_create__s:__s_n
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
mov r15d, 1
jmp 0x14000658f
mov rcx, qword [0x14000fd10]
xor r10d, r10d
xor bl, bl
cmp byte [rcx + 8], r10b
jbe 0x140006572
mov rax, qword [rsi]
movzx edx, bl
mov r9, qword [rax + rdx*8]
cmp byte [r9], r10b
je 0x14000650e
shl rdx, 5
mov r8, qword [rdx + rcx + 0x48]
or rdx, 0xffffffffffffffff
mov rax, rdx
inc rax
cmp byte [r8 + rax], r10b
jne 0x1400064d8
lea rcx, [rax + r8]
mov r8, rdx
inc r8
cmp byte [rcx + r8 + 1], r10b
jne 0x1400064e8
lea rcx, [rsp + 0x20]
mov rdx, r9
call qword [sym.imp.msvcrt.dll__strnicmp]
xor r10d, r10d
test eax, eax
je 0x140006517
mov rcx, qword [0x14000fd10]
inc bl
cmp bl, byte [rcx + 8]
jae 0x140006577
jmp 0x1400064b9
movzx esi, bl
cmp byte [rsi + r13], r10b
jne 0x140006563
mov r8, qword [rsp + 0x160]
lea rdx, [0x140008ca0]
mov rcx, r14
mov r8, qword [r8]
mov r8, qword [r8 + rsi*8]
call qword [sym.imp.msvcrt.dll_fprintf]
mov rax, qword [rsp + 0x160]
lea rcx, str.line__2i:__s
mov r8, qword [rax]
mov edx, r15d
mov r8, qword [r8 + rsi*8]
call qword [sym.imp.msvcrt.dll_printf]
mov byte [rsi + r13], 1
mov rsi, qword [rsp + 0x160]
mov rcx, qword [0x14000fd10]
cmp bl, byte [rcx + 8]
jb 0x14000658c
lea r8, [rsp + 0x20]
lea rdx, [0x140008ca0]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_fprintf]
inc r15d
lea rcx, [rsp + 0x20]
mov r8, rbp
mov edx, 0x100
call qword [sym.imp.msvcrt.dll_fgets]
test rax, rax
jne 0x1400064a3
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_ferror]
test eax, eax
je 0x1400065e3
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
lea rcx, str.Fatal:_Cannot_read_from__s:__s_n
mov rdx, rdi
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_fclose]
mov rcx, qword [0x14000fd10]
xor ebp, ebp
xor bl, bl
cmp byte [rcx + 8], bpl
jbe 0x14000665a
mov rdi, qword [rsp + 0x160]
movzx esi, bl
cmp byte [rsi + r13], bpl
jne 0x14000664b
mov rax, qword [rdi]
mov r8, qword [rax + rsi*8]
cmp byte [r8], bpl
je 0x14000664b
lea rdx, [0x140008ca0]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_fprintf]
mov r8, qword [rdi]
movzx edx, bl
mov r8, qword [r8 + rsi*8]
lea rcx, str.line__2i:__s
add edx, r15d
call qword [sym.imp.msvcrt.dll_printf]
mov rcx, qword [0x14000fd10]
inc bl
cmp bl, byte [rcx + 8]
jb 0x140006605
mov rdi, qword [rsp + 0x168]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_fclose]
test eax, eax
je 0x140006696
call qword [sym.imp.msvcrt.dll__errno]
mov ebx, dword [rax]
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_strerror]
mov rdx, qword [0x14000fd70]
lea rcx, str.Fatal:_Cannot_write_to__s:__s_n
mov r8, rax
call fcn.140003e6c
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
int3
test r12b, r12b
jne 0x1400066a4
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_free]
mov rbx, qword [rsp + 0x170]
add rsp, 0x120
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret