Function at 0x4300eb
Capabilities:
Check if file exists
Enumerate files on windows
Enumerate files recursively
Get file attributes

Disassembly:
push 0x2b4
mov eax, 0x48018a
call fcn.00454305
mov esi, edx
mov edi, ecx
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x29c]
mov dword [ebp - 0x284], eax
xor ebx, ebx
lea eax, [ebp - 0x268]
mov dword [ebp - 0x268], ebx
push eax
push str.CopyFilesToDestDir
call fcn.0041e3a4
mov dword [ebp - 4], ebx
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.00435951
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x26c]
call fcn.0040aa2d
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x264]
call fcn.0040aa2d
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x270]
call fcn.0040aa2d
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x280]
call fcn.00432c13
mov byte [ebp - 4], 5
test edi, edi
je 0x430514
cmp word [edi], bx
je 0x430514
test esi, esi
je 0x430514
cmp word [esi], bx
je 0x430514
push 0x250
lea eax, [ebp - 0x260]
push ebx
push eax
call fcn.004557e0
add esp, 0xc
lea eax, [ebp - 0x260]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x430510
push edi
lea ecx, [ebp - 0x26c]
call fcn.0040a5c2
push 0x5c
push dword [ebp - 0x26c]
call fcn.00454aca
pop ecx
pop ecx
test eax, eax
je 0x4304ff
sub eax, dword [ebp - 0x26c]
sar eax, 1
cmp eax, 0xffffffff
je 0x4304ff
inc eax
lea ecx, [ebp - 0x26c]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.0040bbee
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x26c]
push eax
call fcn.0040943e
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x288]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x4302c3
mov edi, dword [ebp - 0x284]
mov edx, esi
lea ecx, [edi + 0x58]
call fcn.004305eb
test al, al
jne 0x4302cb
lea ecx, [ebp - 0x280]
call fcn.0040a2b2
lea ecx, [ebp - 0x27c]
call fcn.0040a2b2
lea ecx, [ebp - 0x278]
call fcn.0040a2b2
xor eax, eax
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x274], eax
push esi
mov byte [ebp - 0x271], 1
mov byte [ebp - 0x273], 1
call fcn.0040a5c2
mov ecx, edi
lea eax, [ebp - 0x280]
add ecx, 0x18
push eax
push dword [ecx]
call fcn.0043205e
mov edx, esi
lea ecx, [edi + 0x58]
call fcn.0043058e
mov dword [ebp - 0x268], eax
test eax, eax
jne 0x430509
jmp 0x4302cb
test al, 0x10
je 0x4304ff
mov edi, dword [ebp + 8]
push 0x2e
pop eax
cmp word [ebp - 0x234], ax
jne 0x4302ff
cmp word [ebp - 0x232], 0
je 0x4304ce
cmp word [ebp - 0x232], ax
jne 0x4302ff
cmp word [ebp - 0x230], 0
je 0x4304ce
test byte [ebp - 0x260], 0x10
je 0x4303b6
push esi
lea ecx, [ebp - 0x264]
call fcn.0040a5c2
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x264]
call fcn.0041cb18
push 0x491d74
lea ecx, [ebp - 0x264]
call fcn.0041cb18
lea eax, [ebp - 0x234]
push eax
lea edx, [ebp - 0x26c]
lea ecx, [ebp - 0x288]
call fcn.00409299
pop ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x270]
push eax
call fcn.0040943e
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x288]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
push 0x49221c
lea ecx, [ebp - 0x270]
call fcn.0041cb18
push dword [ebp + 0x10]
mov edx, dword [ebp - 0x264]
push dword [ebp - 0x284]
mov ecx, dword [ebp - 0x270]
push edi
call fcn.004300eb
add esp, 0xc
mov dword [ebp - 0x268], eax
test eax, eax
jne 0x430509
jmp 0x4304ce
lea eax, [ebp - 0x234]
push eax
lea edx, [ebp - 0x26c]
lea ecx, [ebp - 0x28c]
call fcn.00409299
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x270]
push eax
call fcn.0040943e
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x28c]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
push esi
lea ecx, [ebp - 0x264]
call fcn.0040a5c2
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x264]
call fcn.0041cb18
lea ecx, [ebp - 0x280]
call fcn.0040a2b2
lea ecx, [ebp - 0x27c]
call fcn.0040a2b2
lea ecx, [ebp - 0x278]
call fcn.0040a2b2
xor eax, eax
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp + 8]
mov byte [ebp - 0x271], al
lea eax, [ebp - 0x270]
push eax
call fcn.0040943e
lea eax, [ebp - 0x264]
push eax
lea ecx, [ebp - 0x278]
call fcn.0040943e
mov edi, dword [ebp - 0x284]
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x290]
lea eax, [edi + 8]
push eax
call fcn.0041ae36
pop ecx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c]
push eax
call fcn.0040943e
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x290]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
push dword [ebp + 0x10]
mov ecx, dword [ebp - 0x270]
mov edx, edi
call fcn.00430795
pop ecx
mov dword [ebp - 0x268], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x280]
push eax
push dword [ecx]
call fcn.0043205e
mov edi, dword [ebp + 8]
push 0x250
lea eax, [ebp - 0x260]
push 0
push eax
call fcn.004557e0
add esp, 0xc
lea eax, [ebp - 0x260]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
push 0x2e
test eax, eax
pop eax
jne 0x4302d1
jmp 0x430509
mov dword [ebp - 0x268], 0x57
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
xor ebx, ebx
jmp 0x43051e
mov dword [ebp - 0x268], 0x57
mov esi, dword [ebp - 0x268]
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x280]
call fcn.00432c55
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x270]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x264]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x26c]
lea ecx, [ecx - 0x10]
call fcn.0040aa0b
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x2c0]
call fcn.00435973
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x29c]
call fcn.0041e418
mov eax, esi
call fcn.004542b4
ret