Function at 0x10d3c8a
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 [0x111127c]
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 [0x111124c]
cmp eax, 0x111124c
je 0x10d3cdb
test dword [eax + 0x1c], 0x200
je 0x10d3cdb
cmp byte [eax + 0x19], 4
jb 0x10d3cdb
push 0x100ffa4
push 0x50
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010189d0
xor ebx, ebx
mov edi, 0x100ffb4
cmp dword [ebp - 0x274], ebx
jne 0x10d3cfa
push 0x10075c0
push 0x64f
push edi
call fcn.0107b4be
cmp esi, ebx
jne 0x10d3d0e
push 0x10100dc
push 0x650
push edi
call fcn.0107b4be
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 0x10d3d66
sub eax, ecx
lea ecx, [ebp - 0x25c]
push ecx
sar eax, 1
push eax
push dword [ebp - 0x274]
call fcn.0107d0fc
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d403d
mov eax, dword [0x111124c]
mov edi, 0x111124c
cmp eax, edi
je 0x10d3dca
test dword [eax + 0x1c], 0x200
je 0x10d3dca
cmp byte [eax + 0x19], 4
jb 0x10d3dca
push dword [ebp - 0x25c]
push 0x100ffa4
push 0x51
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01019680
push dword [ebp - 0x25c]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x10d403d
lea eax, [ebp - 0x260]
push eax
push 0x100793c
push dword [ebp - 0x25c]
call fcn.0107c90e
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d403d
lea eax, [ebp - 0x270]
push eax
push 0x10019e4
push dword [ebp - 0x25c]
call fcn.0107c90e
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d403d
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 0x10d3ea0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov eax, dword [0x111124c]
cmp eax, edi
je 0x10d3e85
test dword [eax + 0x1c], 0x200
je 0x10d3e85
cmp byte [eax + 0x19], 2
jb 0x10d3e85
push esi
push dword [ebp - 0x260]
push 0x100ffa4
push 0x52
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010196ed
mov eax, dword [0x111124c]
cmp esi, ebx
jle 0x10d3e95
and esi, 0xffff
or esi, 0x80070000
mov dword [ebp - 0x264], esi
jmp 0x10d4042
cmp dword [ebp - 0x258], ebx
je 0x10d3eba
push dword [ebp - 0x258]
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov dword [ebp - 0x258], ebx
mov ecx, 0x1007938
lea eax, [ebp - 0x228]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10d3eeb
cmp dx, bx
je 0x10d3ee7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10d3eeb
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x10d3ec5
xor eax, eax
jmp 0x10d3ef0
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x10d3fc2
mov ecx, 0x1007930
lea eax, [ebp - 0x228]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10d3f29
cmp dx, bx
je 0x10d3f25
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10d3f29
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x10d3f03
xor eax, eax
jmp 0x10d3f2e
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x10d3fc2
lea eax, [ebp - 0x228]
push 0x1006724
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x10d3fc2
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x270]
call fcn.0107c90e
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d403d
test byte [ebp - 0x254], 0x10
je 0x10d3fb1
lea eax, [ebp - 0x27c]
push eax
push dword [ebp - 0x258]
call fcn.010d3c8a
cmp eax, ebx
mov dword [ebp - 0x264], eax
jl 0x10d403d
mov eax, dword [ebp - 0x27c]
add dword [esi], eax
mov eax, dword [ebp - 0x278]
adc dword [esi + 4], eax
jmp 0x10d3fc2
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 0x10d3ea0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp edi, 0x12
je 0x10d403d
mov eax, dword [0x111124c]
cmp eax, 0x111124c
je 0x10d4023
test dword [eax + 0x1c], 0x200
je 0x10d4023
cmp byte [eax + 0x19], 2
jb 0x10d4023
push edi
push dword [ebp - 0x260]
push 0x100ffa4
push 0x53
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010196ed
mov eax, dword [0x111124c]
cmp edi, ebx
jg 0x10d402f
mov dword [ebp - 0x264], edi
jmp 0x10d4042
and edi, 0xffff
or edi, 0x80070000
jmp 0x10d4027
mov eax, dword [0x111124c]
mov esi, dword [sym.imp.ole32.dll_CoTaskMemFree]
cmp dword [ebp - 0x258], ebx
je 0x10d4063
push dword [ebp - 0x258]
call esi
mov eax, dword [0x111124c]
mov dword [ebp - 0x258], ebx
cmp dword [ebp - 0x26c], 0xffffffff
je 0x10d407d
push dword [ebp - 0x26c]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [0x111124c]
cmp dword [ebp - 0x260], ebx
je 0x10d4092
push dword [ebp - 0x260]
call esi
mov eax, dword [0x111124c]
cmp dword [ebp - 0x270], ebx
je 0x10d40a7
push dword [ebp - 0x270]
call esi
mov eax, dword [0x111124c]
cmp dword [ebp - 0x25c], ebx
je 0x10d40bc
push dword [ebp - 0x25c]
call esi
mov eax, dword [0x111124c]
cmp dword [ebp - 0x264], ebx
pop edi
pop esi
pop ebx
jge 0x10d4100
cmp eax, 0x111124c
je 0x10d4128
test dword [eax + 0x1c], 0x200
je 0x10d4100
cmp byte [eax + 0x19], 2
jb 0x10d4100
push dword [ebp - 0x264]
push dword [ebp - 0x274]
push 0x100ffa4
push 0x54
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010196ed
mov eax, dword [0x111124c]
cmp eax, 0x111124c
je 0x10d4128
test dword [eax + 0x1c], 0x200
je 0x10d4128
cmp byte [eax + 0x19], 4
jb 0x10d4128
push 0x100ffa4
push 0x55
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010189d0
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x264]
xor ecx, ebp
call fcn.0106f5f8
leave
ret 8