Function at 0x100ebf9e
Capabilities:
Check if file exists
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Set file attributes

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x264
mov eax, dword [0x101dc354]
xor eax, esp
mov dword [esp + 0x260], eax
push ebx
push esi
mov esi, edx
push edi
test esi, esi
jne 0x100ebfd7
push 0x10031618
mov edx, 0x29d
mov ecx, 0x10031184
call fcn.100e970f
push esi
lea eax, [esp + 0x14]
xor edi, edi
push eax
mov dword [esp + 0x18], edi
call fcn.100a7590
mov esi, eax
test esi, esi
jns 0x100ec00c
push 0x10009f34
push 1
push esi
push 0x4000000
call fcn.100ab973
mov edi, dword [esp + 0x20]
add esp, 0x10
jmp 0x100ec243
lea ecx, [esp + 0x10]
call fcn.100b28e1
mov esi, eax
test esi, esi
jns 0x100ec022
push 0x10031624
jmp 0x100ebff3
lea ecx, [esp + 0x10]
call fcn.100b15f5
mov esi, eax
test esi, esi
jns 0x100ec038
push 0x10031634
jmp 0x100ebff3
mov ebx, dword [esp + 0x10]
lea ecx, [ebx + 2]
mov ax, word [ebx]
add ebx, 2
cmp ax, di
jne 0x100ec03f
sub ebx, ecx
mov edx, 0x10031664
lea ecx, [esp + 0x10]
sar ebx, 1
call fcn.100a8220
mov esi, eax
test esi, esi
jns 0x100ec069
push 0x1003166c
jmp 0x100ebff3
mov edi, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
push edi
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_FindFirstFileW]
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x100ec1d0
mov ecx, 0x100081c0
lea eax, [esp + 0x44]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x100ec0b5
test dx, dx
je 0x100ec0b1
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x100ec0b5
add eax, 4
add ecx, 4
test dx, dx
jne 0x100ec08f
xor eax, eax
jmp 0x100ec0ba
sbb eax, eax
or eax, 1
test eax, eax
je 0x100ec1aa
mov ecx, 0x1003169c
lea eax, [esp + 0x44]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x100ec0f1
test dx, dx
je 0x100ec0ed
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x100ec0f1
add eax, 4
add ecx, 4
test dx, dx
jne 0x100ec0cb
xor eax, eax
jmp 0x100ec0f6
sbb eax, eax
or eax, 1
test eax, eax
je 0x100ec1aa
xor eax, eax
lea edx, [esp + 0x44]
lea ecx, [esp + 0x10]
mov word [edi + ebx*2], ax
call fcn.100a8220
test eax, eax
jns 0x100ec136
test esi, esi
js 0x100ec11b
mov esi, eax
push 0x100316a4
push 1
push eax
push 0x4000000
call fcn.100ab973
mov edi, dword [esp + 0x20]
add esp, 0x10
jmp 0x100ec1aa
test byte [esp + 0x18], 0x10
mov edi, dword [esp + 0x10]
je 0x100ec15c
mov edx, edi
xor ecx, ecx
call fcn.100ebf9e
test eax, eax
jns 0x100ec1aa
test esi, esi
js 0x100ec154
mov esi, eax
push edi
push 0x100316d4
jmp 0x100ec19a
push 0x80
push edi
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
push edi
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_DeleteFileW]
test eax, eax
jne 0x100ec1aa
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
test eax, eax
jle 0x100ec187
movzx eax, ax
or eax, 0x80070000
test eax, eax
js 0x100ec18e
mov eax, 0x80004005
test esi, esi
js 0x100ec194
mov esi, eax
push edi
push 0x10031700
push 1
push eax
push 0x4000000
call fcn.100ab973
add esp, 0x14
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x18]
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_FindNextFileW]
test eax, eax
jne 0x100ec086
push dword [esp + 0x14]
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_FindClose]
or dword [esp + 0x14], 0xffffffff
push 0x80
xor eax, eax
push edi
mov word [edi + ebx*2 - 2], ax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
push edi
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_RemoveDirectoryW]
test eax, eax
jne 0x100ec231
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
cmp eax, 2
je 0x100ec231
cmp eax, 3
je 0x100ec231
test eax, eax
jle 0x100ec20c
movzx eax, ax
or eax, 0x80070000
test eax, eax
js 0x100ec213
mov eax, 0x80004005
test esi, esi
js 0x100ec219
mov esi, eax
push edi
push 0x1003171c
push 1
push eax
push 0x4000000
call fcn.100ab973
add esp, 0x14
jmp 0x100ec233
xor esi, esi
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
je 0x100ec243
push eax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_FindClose]
test edi, edi
je 0x100ec251
lea eax, [edi - 4]
push eax
call fcn.100b84f9
pop ecx
mov ecx, dword [esp + 0x26c]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100b88c0
mov esp, ebp
pop ebp
ret