Function at 0x140040dd4
Capabilities:
Move file

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x410]
sub rsp, 0x510
mov rax, qword [0x1402142b0]
xor rax, rsp
mov qword [rbp + 0x400], rax
and qword [rbp + 0x68], 0
lea rax, [rbp + 0x78]
mov r13, r8
mov qword [rsp + 0x60], rdx
mov r14, rdx
mov qword [rbp + 0x60], rax
mov rsi, rcx
mov qword [rbp + 0x70], 0x80
mov rdx, r13
lea r8, [rbp + 0x60]
mov r9d, 0x104
lea rcx, [rsp + 0x40]
call fcn.14004260c
cmp dword [rsp + 0x40], 0
je 0x140040e53
movups xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsi], xmm0
jmp 0x1400413aa
xor r12d, r12d
call fcn.140004f44
mov r15, rax
mov qword [rsp + 0x68], rax
mov r9b, 1
lea rcx, [rsp + 0x40]
mov r8, r13
mov rdx, r14
call fcn.140041408
mov rax, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x40]
mov rdi, qword [rax + 8]
cmp rdi, qword [r15 + 8]
jne 0x140040e92
cmp ebx, 0x78
jne 0x140040e92
mov al, 1
jmp 0x140040e94
xor al, al
test al, al
jne 0x140041318
test ebx, ebx
je 0x140040e45
call fcn.140004f34
mov r15, rax
cmp rdi, qword [rax + 8]
jne 0x140040e45
cmp ebx, 0xd
jne 0x140040e45
and qword [rsp + 0x30], 0
lea r8d, [rbx - 6]
mov rcx, qword [rbp + 0x60]
xor r9d, r9d
mov dword [rsp + 0x28], 0x4000080
mov edx, 0x80010000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x140040f1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rsp + 0x70]
call fcn.14002c20c
mov rax, qword [rsp + 0x78]
mov rcx, qword [r15 + 8]
cmp qword [rax + 8], rcx
jne 0x140040f14
cmp dword [rsp + 0x70], 2
je 0x1400411e0
movups xmm0, xmmword [rsp + 0x70]
jmp 0x140040e4a
lea rdx, [rbp + 0x1a0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
je 0x140041303
xor r14d, r14d
mov edx, r14d
lea rcx, [rbp + 0x180]
xor r8d, r8d
call fcn.14003330c
mov qword [rbp - 0x70], rax
lea r8, [rbp - 0x48]
lea rax, str..tmp
mov word [rbp - 0x50], 0x104
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x48], rax
mov rcx, r13
mov word [rbp - 0x28], 0x103
call fcn.14000a6b0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x28]
lea rcx, [rbp - 0x20]
call fcn.14000a6b0
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x28]
call fcn.14002cd90
mov rdx, qword [rbp + 0x198]
mov ebx, 0x1000
cmp rdx, 0x10
jb 0x140040fd6
mov rcx, qword [rbp + 0x180]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x140040fd1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041401
call fcn.1400690f4
lea rax, [rbp + 8]
mov word [rbp - 0x50], 0x104
xor r9d, r9d
mov qword [rbp - 0x70], rax
lea r8, [rbp - 0x70]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.140041408
mov edx, dword [rsp + 0x50]
test edx, edx
je 0x14004119b
mov rax, qword [rsp + 0x58]
mov rcx, qword [r15 + 8]
cmp qword [rax + 8], rcx
jne 0x1400412ad
lea eax, [rdx - 0xd]
test eax, 0xfffffffb
jne 0x1400412ad
and qword [rsp + 0x30], 0
xor r9d, r9d
mov rcx, qword [rbp + 0x60]
xor edx, edx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140041136
lea rdx, [rbp + 0x28]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
je 0x1400411fa
mov eax, dword [rbp + 0x54]
cmp dword [rbp + 0x1cc], eax
jne 0x1400410ea
mov eax, dword [rbp + 0x58]
cmp dword [rbp + 0x1d0], eax
jne 0x1400410ea
mov eax, dword [rbp + 0x44]
cmp dword [rbp + 0x1bc], eax
jne 0x1400410ea
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1400410d5
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400410d0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413ef
call fcn.1400690f4
inc r14d
cmp r14d, 0xc8
jne 0x140040f39
jmp 0x1400411d2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1400411d2
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400411cd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413ef
jmp 0x1400411cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.14002c20c
mov rax, qword [rbp - 0x78]
mov rcx, qword [r15 + 8]
cmp qword [rax + 8], rcx
jne 0x14004126d
cmp dword [rbp - 0x80], 2
jne 0x14004126d
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1400411d2
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400411cd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413f5
jmp 0x1400411cd
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x1400411d2
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x1400411cd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413e9
call fcn.1400690f4
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r14, qword [rsp + 0x60]
inc r12d
cmp r12d, 0xc8
je 0x1400412f1
mov r15, qword [rsp + 0x68]
jmp 0x140040e63
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rsi
call fcn.14002c20c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x14004124e
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041249
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413ef
call fcn.1400690f4
and qword [rbp + 0x18], 0
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400413aa
movups xmm0, xmmword [rbp - 0x80]
mov rdx, qword [rbp + 0x20]
movdqu xmmword [rsi], xmm0
cmp rdx, 0x10
jb 0x14004124e
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041249
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413f5
jmp 0x140041249
movups xmm0, xmmword [rsp + 0x50]
mov rdx, qword [rbp + 0x20]
movdqu xmmword [rsi], xmm0
cmp rdx, 0x10
jb 0x14004124e
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x140041249
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400413fb
jmp 0x140041249
mov dword [rsp + 0x40], 0xd
mov qword [rsp + 0x48], r15
jmp 0x140040e45
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rsi
call fcn.14002c20c
jmp 0x14004125f
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0x1f0], 0x104
xor ebx, ebx
mov qword [rbp + 0x1e0], rax
lea r8, [rbp + 0x1e0]
mov qword [rbp + 0x1e8], rbx
mov rdx, r14
lea rcx, [rsp + 0x50]
call fcn.140040400
mov rcx, qword [rbp + 0x1e0]
cmp dword [rsp + 0x50], ebx
je 0x140041366
movups xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsi], xmm0
jmp 0x140041399
mov rdx, qword [rbp + 0x60]
mov r8d, 1
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
je 0x140041382
mov dword [rsi], ebx
mov qword [rsi + 8], r15
jmp 0x140041392
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rsi
call fcn.14002c20c
mov rcx, qword [rbp + 0x1e0]
lea rax, [rbp + 0x1f8]
cmp rcx, rax
je 0x1400413aa
call fcn.14011c590
mov rcx, qword [rbp + 0x60]
lea rax, [rbp + 0x78]
cmp rcx, rax
je 0x1400413bc
call fcn.14011c590
mov rax, rsi
mov rcx, qword [rbp + 0x400]
xor rcx, rsp
call fcn.140115e10
mov rbx, qword [rsp + 0x568]
add rsp, 0x510
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14011c518
int3
call fcn.14011c518
int3
call fcn.14011c518
int3
call fcn.14011c518
int3
call fcn.14011c518
int3