Function at 0x140004760
Capabilities:
Move file

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
push rdi
push r14
mov eax, 0x1330
call fcn.140008650
sub rsp, rax
mov rax, qword [0x140030d00]
xor rax, rsp
mov qword [rsp + 0x1320], rax
movsxd r14, ecx
lea rax, [0x140032cc0]
mov rbx, rdx
lea rcx, [r14 + r14*4]
mov rdi, qword [rax + rcx*8]
lea rsi, [rax + rcx*8]
test rdi, rdi
jne 0x1400047b6
mov ecx, 0x800000
call fcn.140001920
mov rdi, rax
mov qword [rsi], rax
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1400062c0
cmp dword [rsp + 0x40], 0
jne 0x1400047d4
mov eax, 1
jmp 0x140004a6c
mov rdx, rdi
mov qword [rsp + 0x1360], rbp
sub rdx, rbx
mov rcx, rbx
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1400047f0
mov edx, 0x2e
mov rcx, rdi
call fcn.140005380
test eax, eax
jle 0x14000481c
movsxd rcx, eax
cmp word [rdi + rcx*2 + 2], 0x7e
je 0x140004824
mov rcx, rdi
call fcn.140005360
cdqe
mov esi, 1
lea rbp, [rdi + rax*2]
nop
mov r9d, esi
lea r8, str.._5.5d
mov edx, 0x10
mov rcx, rbp
call fcn.140002c00
mov rcx, rdi
inc esi
call fcn.140001fb0
test eax, eax
jne 0x140004830
mov rbp, qword [rsp + 0x1360]
lea r8d, [rax + 0xb]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
mov esi, eax
test eax, eax
jne 0x140004991
mov rcx, rdi
call fcn.140004180
lea r8d, [rsi + 0xb]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
mov esi, eax
test eax, eax
jne 0x140004991
lea rcx, [rsp + 0xb18]
sub rcx, rbx
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rbx]
mov word [rcx + rbx], ax
lea rbx, [rbx + 2]
test ax, ax
jne 0x1400048b0
call fcn.140006970
test eax, eax
je 0x140004984
call fcn.140005420
call fcn.140006a50
test eax, eax
lea rax, [rsp + 0xb18]
je 0x14000493e
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x128]
lea rax, str._to
mov edx, r14d
mov qword [rsp + 0x30], rax
lea r8, str.MoveErr:
lea rax, [rsp + 0x1a8]
mov qword [rsp + 0x28], rax
lea rcx, str._2.2d.__11s__s__s__s_s_s_n
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
call fcn.140002c60
call fcn.1400054e0
lock inc qword [0x140032c28]
jmp 0x140004a6a
mov qword [rsp + 0x30], rax
lea r9, [rsp + 0xa8]
lea rax, str._to
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x128]
lea rax, [rsp + 0x1a8]
lea rdx, str.MoveErr:
mov qword [rsp + 0x20], rax
lea rcx, str.__11s__s__s__s_s_s_n
call fcn.140002c60
call fcn.1400054e0
lock inc qword [0x140032c28]
jmp 0x140004a6a
lea rdx, [rsp + 0x9b0]
mov rcx, rdi
call fcn.1400062c0
lock inc qword [0x140032c70]
mov rax, qword [rsp + 0x48]
lock add qword [0x140032c78], rax
call fcn.140006970
test eax, eax
je 0x140004a6a
call fcn.140005420
call fcn.140006a50
test eax, eax
lea rax, [rsp + 0xb18]
je 0x140004a24
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x128]
lea rax, str._to
mov edx, r14d
mov qword [rsp + 0x30], rax
lea r8, str.Rename:
lea rax, [rsp + 0x1a8]
mov qword [rsp + 0x28], rax
lea rcx, str._2.2d.__11s__s__s__s_s_s_n
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
call fcn.140002c60
jmp 0x140004a65
mov qword [rsp + 0x30], rax
lea r9, [rsp + 0xa8]
lea rax, str._to
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x128]
lea rax, [rsp + 0x1a8]
lea rdx, str.Rename:
mov qword [rsp + 0x20], rax
lea rcx, str.__11s__s__s__s_s_s_n
call fcn.140002c60
call fcn.1400054e0
mov eax, esi
mov rcx, qword [rsp + 0x1320]
xor rcx, rsp
call fcn.1400086b0
mov rbx, qword [rsp + 0x1368]
add rsp, 0x1330
pop r14
pop rdi
pop rsi
ret