Function at 0x4c2a40
Capabilities:
Copy file
Delete file
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4f83c5
mov eax, dword fs:[0]
push eax
sub esp, 0x340
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x338], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x354]
mov dword fs:[0], eax
mov ebp, ecx
mov al, byte [ebp + 0x164]
mov dword [esp + 0x38], ebp
mov byte [esp + 0x17], al
mov byte [esp + 0x34], al
mov byte [ebp + 0x164], 0
mov dword [esp + 0x35c], 0
xorps xmm0, xmm0
movq qword [esp + 0x68], xmm0
mov dword [esp + 0x70], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
lea eax, [esp + 0x68]
mov byte [esp + 0x35c], 1
push eax
call fcn.004bcea0
mov ebx, dword [esp + 0x6c]
test ebx, ebx
je 0x4c3034
lea ecx, [esp + 0x8c]
call fcn.0048c0c0
lea eax, [esp + 0x8c]
mov byte [esp + 0x35c], 2
push eax
mov ecx, ebp
call fcn.004bc0b0
push str.FSFolder
mov ecx, ebp
call fcn.004abd10
test al, al
je 0x4c2d89
cmp byte [esp + 0x364], 0
je 0x4c2d89
xorps xmm0, xmm0
mov dword [esp + 0x64], 0
xor esi, esi
movq qword [esp + 0x5c], xmm0
xor ebx, ebx
mov dword [esp + 0x18], esi
xor edi, edi
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], edi
lea eax, [esp + 0x80]
mov byte [esp + 0x35c], 3
push eax
mov ecx, ebp
mov dword [esp + 0x20], edi
movq qword [esp + 0x84], xmm0
mov dword [esp + 0x8c], edi
call fcn.004abd60
xor eax, eax
mov byte [esp + 0x35c], 4
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x6c], eax
jbe 0x4c2c70
jmp 0x4c2ba0
mov ecx, dword [esp + 0x68]
xorps xmm0, xmm0
movq qword [esp + 0x74], xmm0
mov dword [esp + 0x7c], 0
push dword [ecx + eax*4]
lea eax, [esp + 0x24]
mov ecx, ebp
push eax
call fcn.004bd8c0
push eax
lea edx, [esp + 0x84]
mov byte [esp + 0x360], 5
lea ecx, [esp + 0x78]
call fcn.004124b0
mov byte [esp + 0x35c], 7
push dword [esp + 0x20]
call fcn.004df97b
mov eax, dword [esp + 0x7c]
add esp, 4
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
cmova ecx, eax
mov dword [esp + 0x1c], ecx
lea esi, [eax + 1]
mov ecx, dword [esp + 0x18]
sub ecx, edi
cmp ecx, esi
jae 0x4c2c2d
mov eax, esi
sub eax, ecx
lea ecx, [esp + 0x5c]
push eax
call fcn.004c40b0
mov eax, dword [esp + 0x60]
mov edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x18], eax
lea eax, [esi + esi]
lea ecx, [ebx + edi*2]
add edi, esi
mov esi, dword [esp + 0x74]
push eax
push esi
push ecx
mov dword [esp + 0x70], edi
call fcn.004e4930
add esp, 0xc
mov byte [esp + 0x35c], 4
push esi
call fcn.004df97b
mov eax, dword [esp + 0x30]
add esp, 4
inc eax
mov dword [esp + 0x2c], eax
cmp eax, dword [esp + 0x6c]
jb 0x4c2ba0
mov esi, dword [esp + 0x18]
sub esi, edi
cmp esi, 1
jae 0x4c2c90
mov eax, 1
lea ecx, [esp + 0x5c]
sub eax, esi
push eax
call fcn.004c40b0
mov edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x5c]
lea eax, [ebx + edi*2]
xor ecx, ecx
inc edi
mov word [eax], cx
cmp dword [esp + 0x1c], 0x104
mov dword [esp + 0x64], edi
jb 0x4c2cf8
mov edx, 0x17dc
lea ecx, [esp + 0x20]
call fcn.004a1ed0
push 0x10
push 0x502ee0
push dword [eax]
push dword [ebp + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [esp + 0x20]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 3
push dword [esp + 0x80]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 2
push ebx
jmp 0x4c3009
push dword [ebp + 4]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
jne 0x4c2d08
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x3c], eax
mov eax, 0x40
mov word [esp + 0x4c], ax
lea eax, [esp + 0x3c]
push eax
mov dword [esp + 0x44], 3
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x52], 0
mov dword [esp + 0x56], 0
mov dword [esp + 0x5a], 0
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
mov byte [esp + 0x35c], 3
push dword [esp + 0x80]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 2
push ebx
call fcn.004df97b
add esp, 4
lea eax, [esp + 0x8c]
mov ecx, ebp
push eax
call fcn.004bc220
jmp 0x4c3011
push 0x17db
mov ecx, ebp
call fcn.004c1be0
test al, al
je 0x4c3011
xorps xmm0, xmm0
mov dword [esp + 0x64], 0
lea ecx, [esp + 0x5c]
movq qword [esp + 0x5c], xmm0
call fcn.00412560
mov byte [esp + 0x35c], 8
cmp ebx, 1
jne 0x4c2e24
mov eax, dword [esp + 0x68]
mov ecx, ebp
mov esi, dword [eax]
lea eax, [esp + 0x20]
push esi
push eax
call fcn.004bd8c0
push eax
lea ecx, [esp + 0x60]
mov byte [esp + 0x360], 9
call fcn.004128e0
mov byte [esp + 0x35c], 8
push dword [esp + 0x20]
call fcn.004df97b
add esp, 4
cmp esi, 0xffffffff
je 0x4c2e1a
push 6
push esi
mov ecx, ebp
call fcn.004bda30
test al, al
jne 0x4c2e1a
mov esi, 0x17d4
lea edi, [esi + 3]
jmp 0x4c2e5e
mov esi, 0x17d5
lea edi, [esi + 3]
jmp 0x4c2e5e
mov esi, 0x17d6
lea ecx, [esp + 0x20]
push 0
push ebx
lea edi, [esi + 3]
call fcn.0049b460
push eax
lea ecx, [esp + 0x60]
mov byte [esp + 0x360], 0xa
call fcn.004128e0
mov byte [esp + 0x35c], 8
push dword [esp + 0x20]
call fcn.004df97b
add esp, 4
mov edx, esi
lea ecx, [esp + 0x74]
call fcn.004a1ed0
mov esi, eax
lea eax, [esp + 0x5c]
mov byte [esp + 0x35c], 0xb
push eax
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.0049b560
push dword [ebp + 4]
mov esi, dword [esi]
mov edi, dword [eax]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
jne 0x4c2e97
mov eax, dword [ebp + 0x38]
push 0x21
push esi
push edi
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [esp + 0x20]
cmp eax, 1
setne bl
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 8
push dword [esp + 0x74]
call fcn.004df97b
add esp, 4
test bl, bl
jne 0x4c2ffd
mov bl, byte [ebp + 0x165]
mov bh, byte [ebp + 0x166]
mov dword [esp + 0x30], ebp
mov byte [esp + 0x2c], bl
mov byte [esp + 0x2d], bh
mov word [ebp + 0x165], 0
push 0x2a0
lea eax, [esp + 0xb0]
mov byte [esp + 0x360], 0xc
push 0
push eax
call fcn.004e3fe0
add esp, 0xc
lea ecx, [esp + 0xac]
push 1
call fcn.004c2610
mov byte [esp + 0x35c], 0xd
mov esi, dword [ebp + 0xf8]
test esi, esi
je 0x4c2f36
mov eax, dword [esi]
push esi
call dword [eax + 4]
mov ecx, dword [esp + 0x33c]
test ecx, ecx
je 0x4c2f47
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea eax, [esp + 0x68]
mov dword [esp + 0x33c], esi
push eax
lea ecx, [esp + 0x334]
call fcn.00420f30
mov edx, 0x17db
lea ecx, [esp + 0x74]
call fcn.004a1ed0
mov esi, eax
mov edx, 0x17da
mov byte [esp + 0x35c], 0xe
lea ecx, [esp + 0x20]
call fcn.004a1ed0
push esi
push eax
push ebp
lea ecx, [esp + 0xb8]
mov byte [esp + 0x368], 0xf
call fcn.004c28b0
mov byte [esp + 0x35c], 0xe
push dword [esp + 0x20]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 0xd
push dword [esp + 0x74]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 0xc
lea ecx, [esp + 0xac]
call fcn.004c2700
mov ecx, dword [ebp + 0x3c]
push 1
mov eax, dword [ecx]
call dword [eax + 0x20]
lea eax, [esp + 0x8c]
mov ecx, ebp
push eax
call fcn.004bc220
mov byte [ebp + 0x165], bl
mov byte [ebp + 0x166], bh
mov byte [esp + 0x35c], 2
push dword [esp + 0x5c]
call fcn.004df97b
add esp, 4
lea ecx, [esp + 0xa0]
mov byte [esp + 0x35c], 1
call fcn.00410a70
push dword [esp + 0x94]
call fcn.004df97b
add esp, 4
mov byte [esp + 0x35c], 0
push dword [esp + 0x68]
call fcn.004df97b
mov al, byte [esp + 0x1b]
add esp, 4
mov byte [ebp + 0x164], al
mov ecx, dword [esp + 0x354]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x338]
xor ecx, esp
call fcn.004df96c
add esp, 0x34c
ret 4