Function at 0x4aeafc
Capabilities:
Copy file
Enumerate files on windows
Enumerate files recursively

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc3c
push ebx
xor ebx, ebx
mov dword [ebp - 0x3c4], ebx
mov dword [ebp - 0x3c0], ebx
mov dword [ebp - 0x3b8], ebx
mov dword [ebp - 0x3bc], ebx
mov dword [ebp - 0x3b4], ebx
mov dword [ebp - 0x3b0], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ebx
mov byte [ebp - 9], cl
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404b58
mov eax, dword [ebp - 8]
call fcn.00404b58
lea eax, [ebp - 0x16c]
mov edx, dword [0x407d20]
call fcn.004051a0
xor eax, eax
push ebp
push 0x4aedbb
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x4b91a8], 0
jne 0x4aed72
lea eax, [ebp - 0x3b0]
call fcn.00409990
mov edx, dword [ebp - 0x3b0]
lea eax, [ebp - 0x26c]
mov ecx, 0xff
call fcn.00404944
mov eax, dword [ebp - 4]
call fcn.00402938
call fcn.004028fc
lea eax, [ebp - 0x3ac]
push eax
push 0x4aedcc
call sub.kernel32.dll_FindFirstFileA_1
mov ebx, eax
mov dword [ebp - 0x158], ebx
cmp ebx, 0xffffffff
je 0x4aed2a
mov eax, dword [ebp - 8]
call fcn.00409540
test al, al
jne 0x4aebdb
mov eax, dword [ebp - 8]
call fcn.00409564
lea eax, [ebp - 0x14]
lea edx, [ebp - 0x380]
mov ecx, 0x104
call fcn.00404918
mov eax, dword [ebp - 0x14]
mov edx, 0x4aedd8
call fcn.00404ab4
je 0x4aecfc
mov eax, dword [ebp - 0x14]
mov edx, 0x4aede4
call fcn.00404ab4
je 0x4aecfc
cmp dword [ebp - 0x3ac], 0x10
jne 0x4aecc5
push dword [ebp - 8]
push 0x4aedf0
push dword [ebp - 0x14]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00404a28
mov eax, dword [ebp - 0x10]
call fcn.00409540
test al, al
jne 0x4aec4d
mov eax, dword [ebp - 0x10]
call fcn.00409564
mov eax, dword [ebp - 4]
call fcn.00404968
mov edx, dword [ebp - 4]
cmp byte [edx + eax - 1], 0x5c
je 0x4aec8c
push dword [ebp - 4]
push 0x4aedf0
push dword [ebp - 0x14]
lea eax, [ebp - 0x3b4]
mov edx, 3
call fcn.00404a28
mov eax, dword [ebp - 0x3b4]
xor ecx, ecx
mov edx, dword [ebp - 0x10]
call fcn.004aeafc
jmp 0x4aecfc
lea eax, [ebp - 0x3b8]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 8]
call fcn.004049b4
mov eax, dword [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x3bc]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
call fcn.004049b4
mov eax, dword [ebp - 0x3bc]
xor ecx, ecx
pop edx
call fcn.004aeafc
jmp 0x4aecfc
push dword [ebp - 8]
push 0x4aedf0
push dword [ebp - 0x14]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00404a28
cmp byte [ebp - 9], 1
cmc
sbb eax, eax
push eax
mov eax, dword [ebp - 0x10]
call fcn.00404b68
push eax
mov eax, dword [ebp - 0x14]
call fcn.00404b68
push eax
call sub.kernel32.dll_CopyFileA
lea eax, [ebp - 0x3ac]
push eax
mov eax, dword [ebp - 0x158]
push eax
call sub.kernel32.dll_FindNextFileA
cmp eax, 1
sbb eax, eax
inc eax
test al, al
jne 0x4aebdb
lea eax, [ebp - 0x16c]
call fcn.00409724
jmp 0x4aed4f
lea eax, [ebp - 0x3c0]
lea edx, [ebp - 0x26c]
call fcn.0040490c
mov eax, dword [ebp - 0x3c0]
call fcn.00402938
call fcn.004028fc
xor ebx, ebx
jmp 0x4aed72
lea eax, [ebp - 0x3c4]
lea edx, [ebp - 0x26c]
call fcn.0040490c
mov eax, dword [ebp - 0x3c4]
call fcn.00402938
call fcn.004028fc
mov bl, 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4aedc2
lea eax, [ebp - 0x3c4]
mov edx, 6
call fcn.004046cc
lea eax, [ebp - 0x16c]
mov edx, dword [0x407d20]
call fcn.00405270
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004046cc
lea eax, [ebp - 8]
mov edx, 2
call fcn.004046cc
ret