Function at 0x1000eaa4
Capabilities:
Enumerate files on windows
Enumerate files recursively
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x778
push edi
mov byte [ebp - 0x34c], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x34b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x668], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x667]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x55c], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x55b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x104], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x103]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x454], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x453]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x770], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x76f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x140
push 0
lea eax, [ebp - 0x248]
push eax
call fcn.1001bb10
add esp, 0xc
push 0x104
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x770]
push edx
call fcn.1001c570
add esp, 0xc
mov eax, dword [ebp + 8]
push eax
call fcn.1001c8b0
add esp, 4
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + eax - 1]
cmp edx, 0x5c
je 0x1000ebb4
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x34c]
push ecx
call fcn.1001bd70
add esp, 8
push 0x1002c0b4
lea edx, [ebp - 0x34c]
push edx
call fcn.1001bd80
add esp, 8
jmp 0x1000ebc7
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x34c]
push ecx
call fcn.1001bd70
add esp, 8
mov dword [ebp - 0x350], 0
lea edx, [ebp - 0x34c]
mov dword [ebp - 0x774], edx
mov dword [ebp - 0x560], 0
jmp 0x1000ebf8
mov eax, dword [ebp - 0x560]
add eax, 1
mov dword [ebp - 0x560], eax
lea ecx, [ebp - 0x34c]
push ecx
call fcn.1001c8b0
add esp, 4
sub eax, 1
cmp dword [ebp - 0x560], eax
jae 0x1000ec27
mov edx, dword [ebp - 0x560]
lea eax, [ebp + edx - 0x34c]
mov dword [ebp - 0x774], eax
jmp 0x1000ebe9
mov ecx, dword [ebp - 0x774]
movsx edx, byte [ecx]
cmp edx, 0x5c
je 0x1000ec46
mov eax, dword [ebp - 0x774]
sub eax, 1
mov dword [ebp - 0x774], eax
jmp 0x1000ec27
mov ecx, dword [ebp - 0x774]
add ecx, 1
mov dword [ebp - 0x774], ecx
lea edx, [ebp - 0x770]
push edx
call fcn.1001c8b0
add esp, 4
movsx eax, byte [ebp + eax - 0x771]
cmp eax, 0x2f
jne 0x1000ec89
mov ecx, dword [ebp - 0x774]
push ecx
lea edx, [ebp - 0x770]
push edx
call fcn.1001bd80
add esp, 8
jmp 0x1000ecb3
push 0x1002c0b8
lea eax, [ebp - 0x770]
push eax
call fcn.1001bd80
add esp, 8
mov ecx, dword [ebp - 0x774]
push ecx
lea edx, [ebp - 0x770]
push edx
call fcn.1001bd80
add esp, 8
lea eax, [ebp - 0x770]
push eax
call fcn.1001c8b0
add esp, 4
mov byte [ebp + eax - 0x771], 0
push 0x104
lea ecx, [ebp - 0x454]
push ecx
push 0xffffffffffffffff
lea edx, [ebp - 0x770]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0
push 0
push 0x104
lea eax, [ebp - 0x104]
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x454]
push ecx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea edx, [ebp - 0x104]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0x10]
call dword [ecx + 0xc]
add esp, 8
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
jge 0x1000ed3d
mov eax, dword [ebp - 0x458]
jmp 0x1000f1c3
push 0x1002c0bc
lea edx, [ebp - 0x34c]
push edx
call fcn.1001bd80
add esp, 8
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x34c]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x564], eax
cmp dword [ebp - 0x350], 0
jne 0x1000f1b4
mov edx, dword [ebp - 0x248]
and edx, 0x10
test edx, edx
je 0x1000ee7b
push 0x1002c0c0
lea eax, [ebp - 0x21c]
push eax
call fcn.1001c4e0
add esp, 8
test eax, eax
je 0x1000ee7b
push 0x1002c0c4
lea ecx, [ebp - 0x21c]
push ecx
call fcn.1001c4e0
add esp, 8
test eax, eax
je 0x1000ee7b
mov edx, dword [ebp + 8]
push edx
call fcn.1001c8b0
add esp, 4
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + eax - 1]
cmp edx, 0x5c
je 0x1000ee19
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x668]
push ecx
call fcn.1001bd70
add esp, 8
push 0x1002c0c8
lea edx, [ebp - 0x668]
push edx
call fcn.1001bd80
add esp, 8
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x668]
push ecx
call fcn.1001bd80
add esp, 8
jmp 0x1000ee42
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x668]
push eax
call fcn.1001bd70
add esp, 8
lea ecx, [ebp - 0x21c]
push ecx
lea edx, [ebp - 0x668]
push edx
call fcn.1001bd80
add esp, 8
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x770]
push ecx
lea edx, [ebp - 0x668]
push edx
call fcn.1000eaa4
add esp, 0xc
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
jge 0x1000ee76
mov eax, dword [ebp - 0x458]
jmp 0x1000f1c3
jmp 0x1000f17e
push 0x1002c0cc
lea eax, [ebp - 0x21c]
push eax
call fcn.1001c4e0
add esp, 8
test eax, eax
je 0x1000f17e
push 0x1002c0d0
lea ecx, [ebp - 0x21c]
push ecx
call fcn.1001c4e0
add esp, 8
test eax, eax
je 0x1000f17e
mov edx, dword [ebp + 8]
push edx
call fcn.1001c8b0
add esp, 4
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + eax - 1]
cmp edx, 0x5c
je 0x1000ef0b
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x668]
push ecx
call fcn.1001bd70
add esp, 8
push 0x1002c0d4
lea edx, [ebp - 0x668]
push edx
call fcn.1001bd80
add esp, 8
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x668]
push ecx
call fcn.1001bd80
add esp, 8
jmp 0x1000ef34
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x668]
push eax
call fcn.1001bd70
add esp, 8
lea ecx, [ebp - 0x21c]
push ecx
lea edx, [ebp - 0x668]
push edx
call fcn.1001bd80
add esp, 8
lea eax, [ebp - 0x770]
push eax
call fcn.1001c8b0
add esp, 4
movsx ecx, byte [ebp + eax - 0x771]
cmp ecx, 0x2f
je 0x1000ef92
lea edx, [ebp - 0x770]
push edx
lea eax, [ebp - 0x55c]
push eax
call fcn.1001bd70
add esp, 8
push 0x1002c0d8
lea ecx, [ebp - 0x55c]
push ecx
call fcn.1001bd80
add esp, 8
lea edx, [ebp - 0x21c]
push edx
lea eax, [ebp - 0x55c]
push eax
call fcn.1001bd80
add esp, 8
jmp 0x1000efbe
lea ecx, [ebp - 0x770]
push ecx
lea edx, [ebp - 0x55c]
push edx
call fcn.1001bd70
add esp, 8
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x55c]
push ecx
call fcn.1001bd80
add esp, 8
push 0x104
push 0
lea edx, [ebp - 0x104]
push edx
call fcn.1001bb10
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x454]
push eax
call fcn.1001bb10
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x454]
push ecx
push 0xffffffffffffffff
lea edx, [ebp - 0x55c]
push edx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0
push 0
push 0x104
lea eax, [ebp - 0x104]
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x454]
push ecx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
lea edx, [ebp - 0x668]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x66c], eax
cmp dword [ebp - 0x66c], 0xffffffff
jne 0x1000f067
mov eax, 0xffffffc0
jmp 0x1000f1c3
push 0
mov eax, dword [ebp - 0x66c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0xffffffff
jne 0x1000f08f
mov eax, 0xffffffc0
jmp 0x1000f1c3
push 0x4b4
push 0x1002c0dc
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x108]
add ecx, 1
push ecx
call sub.BaseLib.dll_MemBuf_new__
add esp, 0x10
mov dword [ebp - 0x778], eax
mov edx, dword [ebp - 0x66c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x668]
push eax
mov ecx, dword [ebp - 0x778]
push ecx
call sub.BaseLib.dll_AbsFile_fromFile
add esp, 8
mov dword [0x10031560], 0
mov dword [0x10031564], 0
lea edx, [ebp - 0x668]
mov dword [0x1003155c], edx
mov eax, dword [ebp - 0x108]
mov dword [0x10031568], eax
mov dword [0x1003156c], 0
mov dword [0x10031560], 1
push 0x1002bc48
mov ecx, dword [ebp - 0x778]
push ecx
lea edx, [ebp - 0x104]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0x10]
call dword [ecx + 0x2c]
add esp, 0x10
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
jge 0x1000f165
mov edx, dword [ebp - 0x778]
push edx
call sub.BaseLib.dll_MemBuf_delete
add esp, 4
mov dword [ebp - 0x778], 0
mov eax, dword [ebp - 0x458]
jmp 0x1000f1c3
mov eax, dword [ebp - 0x778]
push eax
call sub.BaseLib.dll_MemBuf_delete
add esp, 4
mov dword [ebp - 0x778], 0
lea ecx, [ebp - 0x248]
push ecx
mov edx, dword [ebp - 0x564]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x1000f1a5
mov dword [ebp - 0x350], 0
jmp 0x1000ed6b
mov dword [ebp - 0x350], 1
jmp 0x1000ed6b
mov eax, dword [ebp - 0x564]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret