Function at 0x14000b090
Capabilities:
Check if file exists
Copy file
Delete file
Get common file path
Move file

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x6c8]
sub rsp, 0x7b0
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14003b7a0]
xor rax, rsp
mov qword [rbp + 0x6a0], rax
mov rbx, rcx
lea rdx, str.Path
call fcn.14000c300
mov rdi, rax
lea rdx, str.Name
mov rcx, rbx
call fcn.14000c300
mov rsi, rax
lea rdx, str.Time
mov rcx, rbx
call fcn.14000c300
mov r14, rax
test rdi, rdi
je 0x14000b82a
test rsi, rsi
je 0x14000b82a
call fcn.14000c580
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x70]
call fcn.140011c00
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x490]
call fcn.140011c00
xor r15d, r15d
mov rax, qword [0x14003cd20]
test rax, rax
jne 0x14000b175
mov ecx, 0x190
call fcn.14000e6e0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14000b16b
mov rcx, rax
call fcn.14000ae80
jmp 0x14000b16e
mov rax, r15
mov qword [0x14003cd20], rax
mov rcx, rax
call fcn.140002290
lea rdx, [rbp + 0x490]
sub rdx, rax
nop word [rax + rax]
movzx ecx, word [rax]
mov word [rdx + rax], cx
lea rax, [rax + 2]
test cx, cx
jne 0x14000b190
mov qword [rbp - 0x18], 7
mov qword [rbp - 0x20], r15
mov word [rbp - 0x30], r15w
mov r8d, 0xf
lea rdx, str.WnZipMenu64.dll
lea rcx, [rbp - 0x30]
call fcn.140005c10
nop
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r15
mov word [rbp - 0x70], r15w
mov r8d, 0xf
lea rdx, str.WnZipMenu32.dll
lea rcx, [rbp - 0x70]
call fcn.140005c10
nop
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x280]
call fcn.140011c00
mov edx, 0x104
lea rcx, [rbp + 0x280]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea rcx, [rbp + 0x280]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b221
mov eax, dword [0x1400267bc]
mov dword [rcx], eax
lea rcx, [rsp + 0x40]
call fcn.14000a990
nop
lea rcx, [rsp + 0x40]
call fcn.14000aa10
mov rcx, r15
test eax, eax
je 0x14000b350
movzx eax, word [rbp + rcx + 0x490]
mov word [rbp + rcx + 0x70], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14000b253
lea r8, [rbp - 0x70]
cmp qword [rbp - 0x58], 8
cmovae r8, qword [rbp - 0x70]
lea rcx, [rbp + 0x70]
sub rcx, 2
nop
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b280
xor edx, edx
nop dword [rax]
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b290
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rcx, r15
nop
movzx eax, word [rbp + rcx + 0x490]
mov word [rbp + rcx + 0x70], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14000b2b0
lea r8, [rbp - 0x30]
mov r9, qword [rbp - 0x30]
mov r10, qword [rbp - 0x18]
cmp r10, 8
cmovae r8, r9
lea rcx, [rbp + 0x70]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b2e2
xor edx, edx
nop
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b2f0
lea r8, [rbp - 0x30]
cmp r10, 8
cmovae r8, r9
lea rcx, [rbp + 0x280]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b320
xor edx, edx
nop dword [rax]
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b330
jmp 0x14000b442
movzx eax, word [rbp + rcx + 0x490]
mov word [rbp + rcx + 0x70], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14000b350
lea r8, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae r8, qword [rbp - 0x30]
lea rcx, [rbp + 0x70]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b380
xor edx, edx
nop dword [rax]
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b390
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rcx, r15
nop
movzx eax, word [rbp + rcx + 0x490]
mov word [rbp + rcx + 0x70], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14000b3b0
lea r8, [rbp - 0x70]
mov r9, qword [rbp - 0x70]
mov r10, qword [rbp - 0x58]
cmp r10, 8
cmovae r8, r9
lea rcx, [rbp + 0x70]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b3e2
xor edx, edx
nop
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b3f0
lea r8, [rbp - 0x70]
cmp r10, 8
cmovae r8, r9
lea rcx, [rbp + 0x280]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x14000b420
xor edx, edx
nop dword [rax]
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x14000b430
mov ebx, r15d
xor r8d, r8d
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x14000b50f
lea rcx, [rbp + 0x70]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14000b50f
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x70]
call fcn.140007d70
mov edx, ebx
lea rcx, str.RegisterIME_nCopyTimes1:_d
call fcn.14000abb0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x490]
call fcn.140011c00
mov r9d, ebx
lea r8, [rbp + 0x280]
lea rdx, str._s.bak_d
lea rcx, [rbp + 0x490]
call fcn.1400060d0
lea rdx, [rbp + 0x490]
lea rcx, [rbp + 0x280]
call fcn.1400155d8
xor edx, edx
lea r8d, [rdx + 5]
lea rcx, [rbp + 0x490]
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
cmp ebx, 0xa
jge 0x14000b596
inc ebx
xor r8d, r8d
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x14000b461
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rcx, r15
nop dword [rax]
movzx eax, word [rbp + rcx + 0x280]
mov word [rbp + rcx + 0x70], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14000b520
lea rdx, [rbp + 0x70]
lea rcx, str.Install_Ico__s
call fcn.14000abb0
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rbx, rax
test rax, rax
jne 0x14000b566
lea rcx, str.LoadLibrary_err
call fcn.14000abb0
jmp 0x14000b596
lea rdx, str.DllRegisterServer
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14000b59e
call rax
test eax, eax
jns 0x14000b59e
lea rcx, str.GetProcAddress_err
call fcn.14000abb0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ebx, r15d
jmp 0x14000b7d6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rbp + 0x48], 7
mov qword [rbp + 0x40], r15
mov word [rbp + 0x30], r15w
or rbx, 0xffffffffffffffff
cmp word [rdi], 0
jne 0x14000b5c7
mov r8, r15
jmp 0x14000b5db
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [rdi + r8*2], 0
jne 0x14000b5d0
mov rdx, rdi
lea rcx, [rbp + 0x30]
call fcn.140005c10
nop
call fcn.14000c530
mov rcx, rax
lea rdx, [rbp + 0x30]
call fcn.14000aec0
call fcn.14000c530
mov rcx, rax
call fcn.1400022a0
mov qword [rbp + 0x28], 7
mov qword [rbp + 0x20], r15
mov word [rbp + 0x10], r15w
cmp word [rax], 0
jne 0x14000b622
mov rbx, r15
jmp 0x14000b62c
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14000b622
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140005c10
nop
mov r8d, 0x10
lea rdx, str.WnZipSvcHost.exe
lea rcx, [rbp + 0x10]
call fcn.140005960
mov r8, rsi
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x50]
call fcn.140006130
nop
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rdx, qword [rbp - 0x50]
lea rcx, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae rcx, qword [rbp + 0x10]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14000b6a8
mov ebx, r15d
jmp 0x14000b7b8
lea r8, str.WnZipOverlayout.ini
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.140006130
nop
call fcn.14000c530
mov rcx, rax
lea rdx, [rbp + 0x50]
call fcn.1400022c0
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r9, qword [rbp - 0x10]
cmp qword [rax + 0x18], 8
jb 0x14000b6e6
mov rax, qword [rax]
mov r8, rax
lea rdx, str.Spreader
lea rcx, str.AppInfo
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rbp + 0x50]
call fcn.140001d30
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r9, qword [rbp - 0x10]
lea r8, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae r8, qword [rbp - 0x50]
lea rdx, [0x140027dc8]
lea rcx, str.OverlayIcon
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r9, qword [rbp - 0x10]
mov r8, r14
lea rdx, str.OverlayIconDelayTime
lea rcx, str.OverlayIcon
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rbp + 0x50]
call fcn.140006a20
nop
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
cmp qword [rax + 0x18], 8
jb 0x14000b77d
mov rax, qword [rax]
mov qword [rsp + 0x20], rcx
lea r9, [0x140027dc8]
lea r8, str.OverlayIcon
mov rdx, rax
lea rcx, str.WanNengZip
call fcn.140007e80
nop
lea rcx, [rbp + 0x50]
call fcn.140001d30
mov ebx, 1
lea rcx, [rbp - 0x10]
call fcn.140001d30
nop
lea rcx, [rbp - 0x50]
call fcn.140001d30
nop
lea rcx, [rbp + 0x10]
call fcn.140001d30
nop
lea rcx, [rbp + 0x30]
call fcn.140001d30
nop
lea rcx, [rsp + 0x40]
call fcn.14000a9d0
nop
mov r8, qword [rbp - 0x58]
cmp r8, 8
jb 0x14000b7fb
inc r8
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
call fcn.140005d60
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r15
mov word [rbp - 0x70], r15w
mov r8, qword [rbp - 0x18]
cmp r8, 8
jb 0x14000b826
inc r8
mov rdx, qword [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.140005d60
mov eax, ebx
jmp 0x14000b82c
xor eax, eax
mov rcx, qword [rbp + 0x6a0]
xor rcx, rsp
call fcn.14000e8a0
lea r11, [rsp + 0x7b0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret