Function at 0x41491d
Capabilities:
Copy file
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x423980
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x26c
mov dword [ebp - 0x278], ecx
and dword [ebp - 0x230], 0
and dword [ebp - 0x268], 0
lea ecx, [ebp - 0x260]
call fcn.00416c24
and dword [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.00401068
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1c]
call fcn.00401068
mov byte [ebp - 4], 2
mov byte [ebp - 0x1d], 0
push 1
push 1
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x270]
push eax
mov edx, 0xff00aaee
mov ecx, dword [ebp - 0x278]
call fcn.00417901
movzx eax, al
test eax, eax
je 0x414bce
cmp dword [ebp - 0x230], 0
je 0x4149c3
cmp dword [ebp - 0x268], 0
ja 0x4149ff
mov byte [ebp - 0x271], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1c]
call fcn.004010a3
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.004010a3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x260]
call fcn.00416bd2
mov al, byte [ebp - 0x271]
jmp 0x414c07
push 0
push dword [ebp - 0x268]
lea ecx, [ebp - 0x240]
call fcn.004105e1
push 0
push dword [ebp - 0x268]
push dword [ebp - 0x230]
lea ecx, [ebp - 0x240]
call fcn.00410811
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0x260]
call fcn.00416d22
push 1
lea eax, [ebp - 0x1c]
push eax
push 0x5a72b99
lea ecx, [ebp - 0x260]
call fcn.00416ccc
lea ecx, [ebp - 0x1c]
call fcn.00401000
test eax, eax
jle 0x414bb6
push 3
lea edx, [ebp - 0x22c]
mov ecx, dword [ebp - 0x278]
call fcn.00413bfd
push str..exe
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea edx, [ebp - 0x22c]
mov ecx, dword [ebp - 0x278]
call fcn.00411c67
mov dword [ebp - 0x264], eax
cmp dword [ebp - 0x264], 0
je 0x414bb6
push 1
lea ecx, [ebp - 0x1c]
call fcn.00401000
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040100f
push eax
mov edx, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x278]
call fcn.00412449
movzx eax, al
test eax, eax
je 0x414b32
push 1
push str..exe
push dword [ebp - 0x264]
xor edx, edx
mov ecx, dword [ebp - 0x278]
call fcn.004120dc
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 0
je 0x414b32
push 0
push 0
mov edx, dword [ebp - 0x26c]
mov ecx, dword [ebp - 0x278]
call fcn.004137e7
movzx eax, al
test eax, eax
je 0x414b21
mov byte [ebp - 0x1d], 1
mov edx, dword [ebp - 0x26c]
mov ecx, dword [ebp - 0x278]
call fcn.00417232
mov ecx, dword [ebp - 0x278]
call fcn.00415c32
push eax
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push str..csp
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [ebp - 0x22c]
push eax
mov ecx, dword [ebp - 0x278]
call fcn.00415c32
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x414ba5
push 0
mov ecx, dword [ebp - 0x278]
call fcn.00415c32
push eax
push dword [ebp - 0x264]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea edx, [ebp - 0x22c]
mov ecx, dword [ebp - 0x278]
call fcn.00415c5b
mov edx, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x278]
call fcn.00417232
mov edx, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x278]
call fcn.00417232
and dword [ebp - 0x230], 0
mov al, byte [ebp - 0x1d]
mov byte [ebp - 0x272], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1c]
call fcn.004010a3
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.004010a3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x260]
call fcn.00416bd2
mov al, byte [ebp - 0x272]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret