Function at 0x1000db30
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ccf6f
mov eax, dword fs:[0]
push eax
sub esp, 0x2bc
mov eax, dword [0x101025ec]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 4], 0
push 0xff
lea eax, [ebp - 0x117]
mov byte [ebp - 4], 2
push 0
push eax
mov byte [ebp - 0x118], 0
call fcn.10034ae0
add esp, 0xc
lea eax, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
cmovae eax, dword [ebp + 8]
push 0x100
push eax
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea ecx, [ebp - 0x118]
cmp byte [eax + ecx - 1], 0x5c
je 0x1000dbd7
push 0x100f1800
mov eax, ecx
push eax
call edi
push 0xffffffffffffffff
push 0
lea eax, [ebp + 8]
mov dword [ebp - 0x11c], 0xf
push eax
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x130], 0
call fcn.10007a70
mov byte [ebp - 4], 3
lea eax, [ebp - 0x130]
cmp dword [ebp - 0x11c], 0x10
mov ecx, dword [ebp - 0x120]
cmovae eax, dword [ebp - 0x130]
cmp byte [eax + ecx - 1], 0x5c
jne 0x1000dca9
lea eax, [ecx - 1]
push eax
push 0
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x130]
call fcn.10007550
mov esi, eax
lea eax, [ebp - 0x130]
cmp eax, esi
je 0x1000dc8c
cmp dword [ebp - 0x11c], 0x10
jb 0x1000dc65
push dword [ebp - 0x130]
call fcn.1002f7b8
add esp, 4
push esi
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x11c], 0xf
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x130], 0
call fcn.10007950
cmp dword [ebp - 0x14c], 0x10
jb 0x1000dca3
push dword [ebp - 0x160]
call fcn.1002f7b8
add esp, 4
mov ecx, dword [ebp - 0x120]
push 1
push ecx
push ecx
lea ecx, [ebp - 0x130]
call fcn.1000a440
mov ecx, dword [ebp - 0x120]
sub ecx, eax
inc eax
push ecx
push eax
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x130]
call fcn.10007550
mov esi, eax
lea eax, [ebp - 0x130]
cmp eax, esi
je 0x1000dd1f
cmp dword [ebp - 0x11c], 0x10
jb 0x1000dcf8
push dword [ebp - 0x130]
call fcn.1002f7b8
add esp, 4
push esi
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x11c], 0xf
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x130], 0
call fcn.10007950
cmp dword [ebp - 0x14c], 0x10
jb 0x1000dd36
push dword [ebp - 0x160]
call fcn.1002f7b8
add esp, 4
cmp dword [ebp + 0x34], 0x10
lea ecx, [ebp + 0x20]
mov esi, dword [ebp + 0x30]
mov eax, 1
cmovae ecx, dword [ebp + 0x20]
mov edx, 0x100f1c40
cmp esi, eax
cmovb eax, esi
push eax
call fcn.100043b0
add esp, 4
test eax, eax
jne 0x1000dd74
cmp esi, 1
jae 0x1000dd6a
or eax, 0xffffffff
jmp 0x1000dd72
xor eax, eax
cmp esi, 1
setne al
test eax, eax
sete al
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x2c4], esp
mov byte [esi + 8], 4
or dword [esi + 8], 0x100
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
test al, al
je 0x1000ddbb
or edx, 0xffffffff
mov ecx, 0x100f1358
call fcn.10027b70
mov dword [esi], eax
mov byte [ebp - 4], 4
jmp 0x1000dde0
cmp dword [ebp - 0x11c], 0x10
lea ecx, [ebp - 0x130]
mov edx, dword [ebp - 0x120]
cmovae ecx, dword [ebp - 0x130]
call fcn.10027b70
mov dword [esi], eax
mov byte [ebp - 4], 5
mov esi, dword [ebp - 0x2c0]
push ecx
push str.name
mov ecx, esi
call fcn.10028a90
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.10027f90
push 0x100f1c3c
lea eax, [ebp - 0x118]
push eax
call edi
push 0x140
lea eax, [ebp - 0x2b8]
push 0
push eax
call fcn.10034ae0
add esp, 0xc
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x2c4], eax
cmp eax, 0xffffffff
je 0x1000e2f4
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
jmp 0x1000de50
push 0x100f1c40
lea eax, [ebp - 0x28c]
push eax
call edi
test eax, eax
je 0x1000e2c7
push 0x100f1ae4
lea eax, [ebp - 0x28c]
push eax
call edi
test eax, eax
je 0x1000e2c7
mov eax, dword [ebp - 0x2b8]
test al, 6
jne 0x1000e2c7
test al, 0x10
je 0x1000e050
push 0xffffffffffffffff
push 0
lea eax, [ebp + 8]
mov dword [ebp - 0x134], 0xf
push eax
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x138], 0
mov byte [ebp - 0x148], 0
call fcn.10007a70
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x148]
cmp dword [ebp - 0x134], 0x10
mov eax, dword [ebp - 0x138]
cmovae ecx, dword [ebp - 0x148]
cmp byte [ecx + eax - 1], 0x5c
je 0x1000def7
push 1
push 0x100f1800
lea ecx, [ebp - 0x148]
call fcn.1000a350
cmp byte [ebp - 0x28c], 0
jne 0x1000df04
xor ecx, ecx
jmp 0x1000df19
lea ecx, [ebp - 0x28c]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000df10
sub ecx, edx
push ecx
lea eax, [ebp - 0x28c]
push eax
lea ecx, [ebp - 0x148]
call fcn.1000a350
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x154], 0
movq qword [ebp - 0x150], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0
and eax, 0xfffffe00
mov dword [ebp - 0x158], eax
sub esp, 0x18
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x2c8], esp
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x100f1358
mov byte [ecx], 0
call fcn.10007fb0
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, esp
lea eax, [ebp - 0x148]
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push eax
mov byte [ecx], 0
call fcn.10007a70
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 8
call fcn.1000db30
add esp, 0x30
push ecx
push str.subdirs
mov ecx, esi
call fcn.10028a90
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x160]
mov dword [ebp - 0x2bc], esp
mov ecx, esp
push eax
call fcn.10027d30
mov ecx, esi
mov byte [ebp - 4], 0xa
call fcn.100286c0
push eax
mov ecx, esi
call fcn.10028750
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.10027f90
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 6
call fcn.10027f10
mov byte [ebp - 4], 3
cmp dword [ebp - 0x134], 0x10
jb 0x1000e2c7
push dword [ebp - 0x148]
call fcn.1002f7b8
add esp, 4
jmp 0x1000e2c7
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x178], xmm0
mov dword [ebp - 0x16c], 0
movq qword [ebp - 0x168], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0
and eax, 0xfffffe00
mov dword [ebp - 0x170], eax
sub esp, 0x18
mov byte [ebp - 4], 0xc
mov esi, esp
mov dword [ebp - 0x2bc], esp
or edx, 0xffffffff
lea ecx, [ebp - 0x28c]
mov byte [esi + 8], 4
or dword [esi + 8], 0x100
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.10027b70
mov dword [esi], eax
push ecx
push str.name
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0xd
call fcn.10028a90
mov ecx, eax
mov byte [ebp - 4], 0xc
call fcn.10027f90
push 0xffffffffffffffff
push 0
lea eax, [ebp + 8]
mov dword [ebp - 0x134], 0xf
push eax
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x138], 0
mov byte [ebp - 0x148], 0
call fcn.10007a70
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x148]
cmp dword [ebp - 0x134], 0x10
mov eax, dword [ebp - 0x138]
cmovae ecx, dword [ebp - 0x148]
cmp byte [eax + ecx - 1], 0x5c
je 0x1000e159
push 1
push 0x100f1800
lea ecx, [ebp - 0x148]
call fcn.1000a350
cmp byte [ebp - 0x28c], 0
jne 0x1000e166
xor ecx, ecx
jmp 0x1000e179
lea ecx, [ebp - 0x28c]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000e170
sub ecx, edx
push ecx
lea eax, [ebp - 0x28c]
push eax
lea ecx, [ebp - 0x148]
call fcn.1000a350
sub esp, 0x18
lea eax, [ebp - 0x148]
mov ecx, esp
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push eax
mov byte [ecx], 0
call fcn.10007a70
lea ecx, [ebp - 0x160]
call fcn.1000c010
add esp, 0x18
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov esi, esp
mov dword [ebp - 0x2bc], esp
mov byte [esi + 8], 4
or dword [esi + 8], 0x100
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
cmp dword [eax + 0x14], 0x10
mov edx, dword [eax + 0x10]
jb 0x1000e1fa
mov eax, dword [eax]
mov ecx, eax
call fcn.10027b70
mov dword [esi], eax
push ecx
push 0x100f1af0
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x10
call fcn.10028a90
mov ecx, eax
mov byte [ebp - 4], 0xf
call fcn.10027f90
mov byte [ebp - 4], 0xe
cmp dword [ebp - 0x14c], 0x10
jb 0x1000e23e
push dword [ebp - 0x160]
call fcn.1002f7b8
add esp, 4
push ecx
mov ecx, dword [ebp - 0x2c0]
push str.files
call fcn.10028a90
sub esp, 0x18
mov esi, eax
lea eax, [ebp - 0x178]
mov dword [ebp - 0x2bc], esp
mov ecx, esp
push eax
call fcn.10027d30
mov ecx, esi
mov byte [ebp - 4], 0x11
call fcn.100286c0
push eax
mov ecx, esi
call fcn.10028750
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.10027f90
cmp dword [ebp - 0x134], 0x10
jb 0x1000e29d
push dword [ebp - 0x148]
call fcn.1002f7b8
add esp, 4
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x134], 0xf
mov dword [ebp - 0x138], 0
mov byte [ebp - 0x148], 0
mov byte [ebp - 4], 3
call fcn.10027f10
lea eax, [ebp - 0x2b8]
push eax
push dword [ebp - 0x2c4]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov esi, dword [ebp - 0x2c0]
test eax, eax
jne 0x1000de50
push dword [ebp - 0x2c4]
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [ebp - 0x11c], 0x10
jb 0x1000e30b
push dword [ebp - 0x130]
call fcn.1002f7b8
add esp, 4
cmp dword [ebp + 0x1c], 0x10
mov dword [ebp - 0x11c], 0xf
mov dword [ebp - 0x120], 0
mov byte [ebp - 0x130], 0
jb 0x1000e337
push dword [ebp + 8]
call fcn.1002f7b8
add esp, 4
cmp dword [ebp + 0x34], 0x10
mov dword [ebp + 0x1c], 0xf
mov dword [ebp + 0x18], 0
mov byte [ebp + 8], 0
jb 0x1000e35a
push dword [ebp + 0x20]
call fcn.1002f7b8
add esp, 4
mov al, 1
jmp 0x1000e376
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1002f7bd
mov esp, ebp
pop ebp
ret