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

Disassembly:
push 0x2ec
mov eax, 0x447366
call fcn.0042f3f0
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp + 0x18]
push 7
mov dword [ebp - 0x2f4], eax
pop edi
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x2c], cx
mov dword [ebp - 4], eax
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x38], eax
mov word [ebp - 0x48], ax
push esi
mov byte [ebp - 4], 1
call fcn.0040bf13
pop ecx
test al, al
je 0x40defe
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040b36d
jmp 0x40df6b
push esi
push 0x402b18
push dword [0x450100]
call fcn.0040ad06
lea eax, [ebp - 0x2c]
push eax
push esi
call fcn.0042da53
add esp, 0x14
test al, al
jne 0x40df3e
mov ecx, dword [0x450100]
push 0x402adc
mov esi, ecx
call fcn.0040a9c9
push 0x4013e0
mov ecx, esi
call fcn.0040a9c9
test ebx, ebx
je 0x40df6b
mov eax, ebx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40df47
sub eax, edx
sar eax, 1
je 0x40df6b
lea eax, [ebp - 0x2c]
push eax
call fcn.0042b569
pop ecx
push ebx
lea ecx, [ebp - 0x2c]
call fcn.0040cf83
mov eax, dword [ebp - 0x2c]
push 8
pop esi
cmp dword [ebp - 0x18], esi
jae 0x40df79
lea eax, [ebp - 0x2c]
push dword [ebp - 0x2f0]
push eax
push 0x402a80
push dword [0x450100]
call fcn.0040ad06
mov eax, dword [ebp - 0x2c]
add esp, 0x10
cmp dword [ebp - 0x18], esi
jae 0x40df9e
lea eax, [ebp - 0x2c]
push eax
call fcn.0042a119
test al, al
mov eax, dword [ebp - 0x2c]
pop ecx
jne 0x40dfea
cmp dword [ebp - 0x18], esi
jae 0x40dfb4
lea eax, [ebp - 0x2c]
push eax
push 0x402a40
push dword [0x450100]
call fcn.0040ad06
add esp, 0xc
xor bl, bl
push 0
push 1
lea ecx, [ebp - 0x48]
call fcn.0040aa24
push 0
push 1
lea ecx, [ebp - 0x2c]
call fcn.0040aa24
mov al, bl
call fcn.0042f482
ret
cmp dword [ebp - 0x18], esi
jae 0x40dff2
lea eax, [ebp - 0x2c]
push 0
push dword [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x48]
push 0
push eax
call fcn.0042bf95
add esp, 0x14
test al, al
jne 0x40e037
mov eax, dword [ebp - 0x1c]
add eax, eax
cmp eax, 0x104
jbe 0x40e037
mov ecx, dword [0x450100]
push 0x4029b8
mov ebx, ecx
call fcn.0040a9c9
push 0x4013e0
mov ecx, ebx
call fcn.0040a9c9
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x34], esi
jae 0x40e042
lea eax, [ebp - 0x48]
push eax
push 0x402978
push dword [0x450100]
call fcn.0040ad06
mov eax, dword [ebp - 0x48]
add esp, 0xc
cmp dword [ebp - 0x34], esi
jae 0x40e061
lea eax, [ebp - 0x48]
push eax
call fcn.0042a0e5
pop ecx
test al, al
je 0x40e113
and dword [ebp - 0x54], 0
xor eax, eax
mov dword [ebp - 0x50], edi
mov word [ebp - 0x64], ax
mov edi, dword [ebp - 0x2f4]
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 2
mov dword [edi], 4
cmp dword [ebp - 0x34], esi
jae 0x40e098
lea eax, [ebp - 0x48]
lea ecx, [ebp - 0x64]
push ecx
push eax
call fcn.0042bac9
pop ecx
pop ecx
test al, al
je 0x40e0d5
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], esi
jae 0x40e0b3
lea eax, [ebp - 0x64]
push eax
push 0x40294c
push dword [0x450100]
call fcn.0040ad06
mov eax, dword [ebp - 0x64]
add esp, 0xc
cmp dword [ebp - 0x50], esi
jae 0x40e0d2
lea eax, [ebp - 0x64]
push eax
jmp 0x40e0f8
mov ecx, dword [0x450100]
push 0x402908
mov ebx, ecx
call fcn.0040a9c9
push 0x4013e0
mov ecx, ebx
call fcn.0040a9c9
push 0x402900
lea ecx, [edi + 0x28]
call fcn.0040dd20
lea ecx, [ebp - 0x64]
push 0
push 1
call fcn.0040aa24
mov bl, 1
jmp 0x40dfca
mov esi, dword [ebp + 0x14]
test esi, esi
jg 0x40e145
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x40e126
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x2f0]
push 0x4028b0
push dword [0x450100]
call fcn.0040ad06
add esp, 0x10
jmp 0x40dfc8
and dword [ebp - 0x8c], 0
xor eax, eax
mov dword [ebp - 0x88], edi
mov word [ebp - 0x9c], ax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 3
call fcn.0042b569
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
pop ecx
jae 0x40e175
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x9c]
push 0x40289c
push eax
call fcn.0042c0b9
mov eax, dword [ebp - 0x9c]
add esp, 0xc
cmp dword [ebp - 0x88], 8
jae 0x40e19f
lea eax, [ebp - 0x9c]
lea ecx, [ebp - 0x2ec]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x40e24b
test byte [ebp - 0x2ec], 0x10
je 0x40e235
cmp word [ebp - 0x2c0], 0x2e
je 0x40e235
and dword [ebp - 0x70], 0
xor eax, eax
push 0xffffffffffffffff
push eax
mov word [ebp - 0x80], ax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x6c], edi
call fcn.0040b217
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 4
call fcn.0040cf83
cmp dword [ebp - 0x6c], 8
mov eax, dword [ebp - 0x80]
jae 0x40e206
lea eax, [ebp - 0x80]
push dword [ebp - 0x2f4]
lea ecx, [esi - 1]
push ecx
push 0
push eax
push dword [ebp - 0x2f0]
call fcn.0040de9f
add esp, 0x14
test al, al
jne 0x40e266
push 0
push 1
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.0040aa24
lea eax, [ebp - 0x2ec]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x40e1b8
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0
push 1
lea ecx, [ebp - 0x9c]
call fcn.0040aa24
jmp 0x40dfc8
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0
push 1
lea ecx, [ebp - 0x80]
call fcn.0040aa24
lea ecx, [ebp - 0x9c]
jmp 0x40e103