Function at 0x140050850
Capabilities:
Copy file

Disassembly:
mov qword [rsp + 8], rcx
push rbx
mov eax, 0x24d0
call fcn.140054680
sub rsp, rax
mov qword [rsp + 0x24c0], 0xfffffffffffffffe
mov rax, qword [0x140079ca0]
xor rax, rsp
mov qword [rsp + 0x24c8], rax
call fcn.140005fb0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
add rax, 0x140
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x20]
add rax, 0x15b48
mov qword [rsp + 0x2268], rax
mov dword [rsp + 0x2c], 0
mov rax, qword [rsp + 0x24e0]
add rax, 0xe8
mov qword [rsp + 0x2260], rax
lea rcx, [rsp + 0x250]
call fcn.140045240
nop
mov rdx, qword [rsp + 0x2268]
add rdx, 4
lea rcx, [rsp + 0x250]
call fcn.140045180
mov r11d, eax
mov rax, qword [rsp + 0x24e0]
mov dword [rax + 0x7b8], r11d
mov rax, qword [rsp + 0x24e0]
cmp dword [rax + 0x7b8], 0
jne 0x14005093a
mov dword [rsp + 0x24a8], 9
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24a8]
jmp 0x140050db2
lea rdx, [rsp + 0x2270]
mov rcx, qword [rsp + 0x24e0]
call fcn.140050490
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
je 0x14005097e
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24ac], eax
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24ac]
jmp 0x140050db2
mov dword [rsp + 0x2280], 0
mov rdx, qword [rsp + 0x30]
add rdx, 0x3e88
mov rcx, qword [rsp + 0x30]
add rcx, 0x3a78
call fcn.1400301f8
test eax, eax
jne 0x1400509b5
mov dword [rsp + 0x2280], 1
mov rax, qword [rsp + 0x24e0]
mov eax, dword [rax + 0x7b8]
add eax, dword [rsp + 0x2270]
mov dword [rsp + 0x24a0], eax
cmp dword [rsp + 0x2280], 0
je 0x1400509e9
mov eax, dword [rsp + 0x2270]
mov dword [rsp + 0x24a0], eax
mov eax, dword [rsp + 0x24a0]
imul eax, eax, 0x64
movzx r8d, ax
xor edx, edx
mov rcx, qword [rsp + 0x2260]
call fcn.140006320
mov edx, 0x64
mov rcx, qword [rsp + 0x2260]
call fcn.1400062f0
xor edx, edx
mov rcx, qword [rsp + 0x2260]
call fcn.1400062c0
mov rcx, qword [rsp + 0x24e0]
call fcn.14004cdd0
lea rcx, [rsp + 0x2278]
call fcn.140003710
nop
cmp dword [rsp + 0x2280], 1
je 0x140050cb8
mov dword [rsp + 0x28], 0
jmp 0x140050a65
mov eax, dword [rsp + 0x28]
add eax, 1
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x24e0]
mov eax, dword [rax + 0x7b8]
cmp dword [rsp + 0x28], eax
jge 0x140050cb8
mov r9, qword [rsp + 0x2268]
add r9, 4
mov r8d, dword [rsp + 0x28]
add r8d, 1
lea rdx, [rsp + 0x2278]
lea rcx, [rsp + 0x250]
call fcn.1400467a0
cmp eax, 1
je 0x140050ade
mov dword [rsp + 0x24b0], 9
lea rcx, [rsp + 0x2278]
call fcn.140003760
nop
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24b0]
jmp 0x140050db2
mov rbx, qword [rsp + 0x24e0]
add rbx, 0x194
lea rcx, [rsp + 0x2278]
call fcn.140003700
mov r8, rbx
mov rdx, rax
mov rcx, qword [rsp + 0x24e0]
call fcn.14004f400
mov dword [rsp + 0x24a4], eax
cmp dword [rsp + 0x24a4], 0
jne 0x140050b23
jmp 0x140050a5a
lea rdx, [0x140064ea0]
lea rcx, [rsp + 0x40]
call fcn.140004cf0
lea rdx, [0x140064ea4]
lea rcx, [rsp + 0x2290]
call fcn.140004cf0
mov rax, qword [rsp + 0x24e0]
cmp dword [rax + 0x7b4], 8
jne 0x140050b8a
mov rdx, qword [rsp + 0x30]
add rdx, 0x3e88
lea rcx, [rsp + 0x40]
call fcn.140004cf0
mov rdx, qword [rsp + 0x24e0]
add rdx, 0x198
lea rcx, [rsp + 0x40]
call fcn.140004d20
jmp 0x140050bb9
mov rdx, qword [rsp + 0x30]
add rdx, 0x3870
lea rcx, [rsp + 0x40]
call fcn.140004cf0
mov rdx, qword [rsp + 0x24e0]
add rdx, 0x198
lea rcx, [rsp + 0x40]
call fcn.140004d20
mov rdx, qword [rsp + 0x30]
add rdx, 0x3a78
lea rcx, [rsp + 0x2290]
call fcn.140004cf0
mov rdx, qword [rsp + 0x24e0]
add rdx, 0x198
lea rcx, [rsp + 0x2290]
call fcn.140004d20
xor r9d, r9d
lea r8, [rsp + 0x2290]
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x24e0]
call fcn.14004dec0
xor r8d, r8d
lea rdx, [rsp + 0x2290]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x140050c5a
mov dword [rsp + 0x24b4], 9
lea rcx, [rsp + 0x2278]
call fcn.140003760
nop
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24b4]
jmp 0x140050db2
xor r9d, r9d
lea r8, [rsp + 0x2290]
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 4]
mov rcx, qword [rsp + 0x24e0]
call fcn.14004dec0
mov rcx, qword [rsp + 0x24e0]
call fcn.14004cdd0
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [rsp + 0x28]
imul edx, edx, 0x64
mov rcx, qword [rsp + 0x2260]
call fcn.1400062c0
mov rcx, qword [rsp + 0x24e0]
call fcn.14004cdd0
jmp 0x140050a5a
mov r8, qword [rsp + 0x30]
add r8, 0x429c
mov rdx, qword [rsp + 0x2260]
mov rcx, qword [rsp + 0x24e0]
call fcn.14004fd40
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
je 0x140050d16
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24b8], eax
lea rcx, [rsp + 0x2278]
call fcn.140003760
nop
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24b8]
jmp 0x140050db2
mov r8, qword [rsp + 0x30]
add r8, 0x429c
mov rdx, qword [rsp + 0x2260]
mov rcx, qword [rsp + 0x24e0]
call fcn.14004f650
mov dword [rsp + 0x2c], eax
mov rcx, qword [rsp + 0x2260]
call fcn.140006290
mov dword [rsp + 0x28], eax
mov rcx, qword [rsp + 0x24e0]
call fcn.14004cdd0
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [rsp + 0x28]
add edx, 0x64
mov rcx, qword [rsp + 0x2260]
call fcn.1400062c0
mov rcx, qword [rsp + 0x24e0]
call fcn.14004cdd0
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24bc], eax
lea rcx, [rsp + 0x2278]
call fcn.140003760
nop
lea rcx, [rsp + 0x250]
call fcn.140045220
mov eax, dword [rsp + 0x24bc]
mov rcx, qword [rsp + 0x24c8]
xor rcx, rsp
call fcn.14002f9d0
add rsp, 0x24d0
pop rbx
ret