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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x27c
mov eax, dword [0x111027c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x274], eax
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10d3c41
test dword [eax + 0x1c], 0x200
je 0x10d3c41
cmp byte [eax + 0x19], 4
jb 0x10d3c41
push 0x100ffa4
push 0x50
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0101894a
xor ebx, ebx
mov edi, 0x100ffb4
cmp dword [ebp - 0x274], ebx
jne 0x10d3c60
push 0x10075d0
push 0x64f
push edi
call fcn.0107b644
cmp esi, ebx
jne 0x10d3c74
push 0x10100dc
push 0x650
push edi
call fcn.0107b644
or dword [ebp - 0x26c], 0xffffffff
push 0x250
lea eax, [ebp - 0x254]
push ebx
push eax
mov dword [ebp - 0x27c], ebx
mov dword [ebp - 0x278], ebx
mov dword [ebp - 0x260], ebx
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x270], ebx
mov dword [ebp - 0x258], ebx
mov dword [esi], ebx
mov dword [esi + 4], ebx
call sub.msvcrt.dll_memset
add esp, 0xc
xor eax, eax
lea edi, [ebp - 0x268]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x274]
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
cmp dx, bx
jne 0x10d3ccc
sub eax, ecx
lea ecx, [ebp - 0x25c]
push ecx
sar eax, 1
push eax
push dword [ebp - 0x274]
call fcn.0107d287
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d3fa3
mov eax, dword [0x111024c]
mov edi, 0x111024c
cmp eax, edi
je 0x10d3d30
test dword [eax + 0x1c], 0x200
je 0x10d3d30
cmp byte [eax + 0x19], 4
jb 0x10d3d30
push dword [ebp - 0x25c]
push 0x100ffa4
push 0x51
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019633
push dword [ebp - 0x25c]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x10d3fa3
lea eax, [ebp - 0x260]
push eax
push 0x100794c
push dword [ebp - 0x25c]
call fcn.0107ca99
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d3fa3
lea eax, [ebp - 0x270]
push eax
push 0x10019e4
push dword [ebp - 0x25c]
call fcn.0107ca99
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d3fa3
lea eax, [ebp - 0x254]
push eax
push dword [ebp - 0x260]
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x26c], eax
cmp eax, 0xffffffff
jne 0x10d3e06
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov eax, dword [0x111024c]
cmp eax, edi
je 0x10d3deb
test dword [eax + 0x1c], 0x200
je 0x10d3deb
cmp byte [eax + 0x19], 2
jb 0x10d3deb
push esi
push dword [ebp - 0x260]
push 0x100ffa4
push 0x52
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01048c37
mov eax, dword [0x111024c]
cmp esi, ebx
jle 0x10d3dfb
and esi, 0xffff
or esi, 0x80070000
mov dword [ebp - 0x264], esi
jmp 0x10d3fa8
cmp dword [ebp - 0x258], ebx
je 0x10d3e20
push dword [ebp - 0x258]
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov dword [ebp - 0x258], ebx
mov ecx, 0x1007948
lea eax, [ebp - 0x228]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10d3e51
cmp dx, bx
je 0x10d3e4d
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10d3e51
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x10d3e2b
xor eax, eax
jmp 0x10d3e56
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x10d3f28
mov ecx, 0x1007940
lea eax, [ebp - 0x228]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10d3e8f
cmp dx, bx
je 0x10d3e8b
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10d3e8f
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x10d3e69
xor eax, eax
jmp 0x10d3e94
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x10d3f28
lea eax, [ebp - 0x228]
push 0x1006724
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x10d3f28
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x270]
call fcn.0107ca99
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d3fa3
test byte [ebp - 0x254], 0x10
je 0x10d3f17
lea eax, [ebp - 0x27c]
push eax
push dword [ebp - 0x258]
call fcn.010d3bf0
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d3fa3
mov eax, dword [ebp - 0x27c]
add dword [esi], eax
mov eax, dword [ebp - 0x278]
adc dword [esi + 4], eax
jmp 0x10d3f28
mov eax, dword [ebp - 0x234]
add dword [esi], eax
mov ecx, dword [ebp - 0x238]
adc dword [esi + 4], ecx
lea eax, [ebp - 0x254]
push eax
push dword [ebp - 0x26c]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x10d3e06
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp edi, 0x12
je 0x10d3fa3
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10d3f89
test dword [eax + 0x1c], 0x200
je 0x10d3f89
cmp byte [eax + 0x19], 2
jb 0x10d3f89
push edi
push dword [ebp - 0x260]
push 0x100ffa4
push 0x53
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01048c37
mov eax, dword [0x111024c]
cmp edi, ebx
jg 0x10d3f95
mov dword [ebp - 0x264], edi
jmp 0x10d3fa8
and edi, 0xffff
or edi, 0x80070000
jmp 0x10d3f8d
mov eax, dword [0x111024c]
mov esi, dword [sym.imp.ole32.dll_CoTaskMemFree]
cmp dword [ebp - 0x258], ebx
je 0x10d3fc9
push dword [ebp - 0x258]
call esi
mov eax, dword [0x111024c]
mov dword [ebp - 0x258], ebx
cmp dword [ebp - 0x26c], 0xffffffff
je 0x10d3fe3
push dword [ebp - 0x26c]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [0x111024c]
cmp dword [ebp - 0x260], ebx
je 0x10d3ff8
push dword [ebp - 0x260]
call esi
mov eax, dword [0x111024c]
cmp dword [ebp - 0x270], ebx
je 0x10d400d
push dword [ebp - 0x270]
call esi
mov eax, dword [0x111024c]
cmp dword [ebp - 0x25c], ebx
je 0x10d4022
push dword [ebp - 0x25c]
call esi
mov eax, dword [0x111024c]
cmp dword [ebp - 0x264], ebx
pop edi
pop esi
pop ebx
jge 0x10d4066
cmp eax, 0x111024c
je 0x10d408e
test dword [eax + 0x1c], 0x200
je 0x10d4066
cmp byte [eax + 0x19], 2
jb 0x10d4066
push dword [ebp - 0x264]
push dword [ebp - 0x274]
push 0x100ffa4
push 0x54
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01048c37
mov eax, dword [0x111024c]
cmp eax, 0x111024c
je 0x10d408e
test dword [eax + 0x1c], 0x200
je 0x10d408e
cmp byte [eax + 0x19], 4
jb 0x10d408e
push 0x100ffa4
push 0x55
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0101894a
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x264]
xor ecx, ebp
call fcn.0106f798
leave
ret 8