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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5f2b3e
mov eax, dword fs:[0]
push eax
sub esp, 0x2d8
mov eax, dword [0x70f200]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2d8], ecx
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x2e4], ebx
mov eax, dword [edi]
cmp byte [eax + 4], 0
je 0x4bddbf
xor al, al
jmp 0x4be1c9
push 0x4c
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.00420090
add esp, 0xc
lea ecx, [ebp - 0x74]
call fcn.005e9520
xor ecx, ecx
mov dword [ebp - 4], 0
xor eax, eax
mov dword [ebp - 0x2dc], ecx
xorps xmm0, xmm0
mov dword [ebp - 0x2e0], eax
lea ecx, [ebp - 0x28]
movq qword [ebp - 0x28], xmm0
mov dword [ebp - 0x20], eax
call fcn.005dc5e0
sub esp, 8
mov byte [ebp - 4], 1
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x1c]
movq qword [ebp - 0x1c], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6249f8
push ebx
call fcn.005dc520
push 0x260
lea eax, [ebp - 0x2d4]
mov byte [ebp - 4], 2
push 0
push eax
call fcn.00420090
add esp, 0xc
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push 0x250
mov esi, eax
lea eax, [ebp - 0x2d4]
push 0
push eax
call fcn.00420090
add esp, 0xc
lea eax, [ebp - 0x2d4]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edx, eax
mov dword [ebp - 0x84], edx
cmp edx, 0xffffffff
je 0x4bdea2
lea ecx, [ebp - 0x2d4]
mov dword [ebp - 0x80], 1
call fcn.004011a0
mov edx, dword [ebp - 0x84]
mov byte [ebp - 4], 3
cmp edx, 0xffffffff
je 0x4be19f
mov esi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, dword [ebp - 0x2d4]
mov ebx, dword [ebp - 0x2d8]
inc dword [ebp - 0x2e0]
lea eax, [ebp - 0x2a8]
test cl, 0x10
je 0x4bdf28
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
push 0x624284
push dword [ebp - 0x2e4]
lea ecx, [ebp - 0x1c]
call fcn.005dc200
push edi
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ecx, dword [ebp - 0x2d8]
push eax
call fcn.004bdd70
test al, al
jne 0x4be075
mov edx, dword [ebp - 0x84]
xor bl, bl
mov esi, dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x4be1a7
xor esi, esi
cmp word [ebp - 0x2a8], si
je 0x4bdf4f
movzx ecx, word [eax + 2]
add eax, 2
cmp ecx, 0x2e
jne 0x4bdf43
mov esi, eax
jmp 0x4bdf33
test cx, cx
jne 0x4bdf33
test esi, esi
je 0x4bdf4f
add esi, 2
push 0
mov edx, 0x66c890
mov ecx, esi
call fcn.005d8ad0
test eax, eax
jne 0x4be06f
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea eax, [ebp - 0x2a8]
push eax
push 0x624284
push dword [ebp - 0x2e4]
lea ecx, [ebp - 0x28]
call fcn.005dc200
push 0
lea ecx, [ebp - 0x28]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x74]
call fcn.005e93e0
test al, al
je 0x4be06f
push ecx
lea ecx, [ebp - 0x74]
call fcn.005e9390
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc510
lea ecx, [ebp - 0x1c]
call fcn.005dc3a0
test eax, eax
je 0x4be06f
mov eax, dword [edi]
cmp byte [eax + 4], 0
jne 0x4bdf15
xor ebx, ebx
cmp dword [edi + 0xc], ebx
jbe 0x4be06f
xor esi, esi
nop
mov eax, dword [edi + 0x10]
cmp dword [eax + ebx*4], 0
je 0x4be016
mov ecx, dword [edi + 4]
add ecx, esi
call fcn.005dc3a0
test eax, eax
je 0x4be016
mov ecx, dword [edi + 4]
push 0
push 1
push 1
push 0
add ecx, esi
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005daa70
test eax, eax
jne 0x4be021
inc ebx
add esi, 0xc
cmp ebx, dword [edi + 0xc]
jb 0x4bdfe0
jmp 0x4be06f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
push 0x68fb68
lea ecx, [ebp - 0x28]
call fcn.005da780
push dword [edi + 0x18]
mov ecx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x28]
push ebx
push dword [edi + 0x14]
push dword [edi + 0x10]
push dword [edi + 8]
push eax
push dword [edi]
call fcn.004bdc10
inc dword [ebp - 0x2dc]
mov esi, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov edx, dword [ebp - 0x84]
cmp edx, 0xffffffff
je 0x4be13a
lea eax, [ebp - 0x2d4]
push eax
push edx
call esi
test eax, eax
je 0x4be121
mov edx, dword [ebp - 0x84]
cmp edx, 0xffffffff
je 0x4be13a
cmp word [ebp - 0x2a8], 0x2e
jne 0x4be0cb
mov ax, word [ebp - 0x2a6]
test ax, ax
je 0x4be10b
cmp ax, 0x2e
jne 0x4be0cb
cmp word [ebp - 0x2a4], 0
je 0x4be10b
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x2d4]
test eax, eax
je 0x4bdec1
test al, 1
je 0x4be0e8
test ecx, 0x400
jne 0x4be10b
test al, 2
je 0x4be0f7
test cl, 0x10
je 0x4bdec1
jmp 0x4be10b
test al, 4
je 0x4bdec1
test ecx, 0x10
jne 0x4bdec1
lea eax, [ebp - 0x2d4]
push eax
push edx
call esi
test eax, eax
je 0x4be121
mov edx, dword [ebp - 0x84]
jmp 0x4be0a5
push dword [ebp - 0x84]
mov esi, dword [sym.imp.KERNEL32.dll_FindClose]
call esi
or edx, 0xffffffff
mov dword [ebp - 0x84], edx
jmp 0x4be140
mov esi, dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 0x2dc]
test ecx, ecx
je 0x4be1a5
cmp ecx, dword [ebp - 0x2e0]
jb 0x4be1a5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.____Orphan_Start_Menu_folder
push dword [ebp - 0x2e4]
lea ecx, [ebp - 0x28]
call fcn.005dc200
push dword [edi + 0x18]
mov ecx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x28]
push ebx
push dword [edi + 0x14]
push dword [edi + 0x10]
push dword [edi + 8]
push eax
push dword [edi]
call fcn.004bdc10
mov edx, dword [ebp - 0x84]
jmp 0x4be1a5
mov esi, dword [sym.imp.KERNEL32.dll_FindClose]
mov bl, 1
cmp edx, 0xffffffff
je 0x4be1af
push edx
call esi
lea ecx, [ebp - 0x1c]
call fcn.005dc430
lea ecx, [ebp - 0x28]
call fcn.005dc430
lea ecx, [ebp - 0x74]
call fcn.005e9080
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041e1b5
mov esp, ebp
pop ebp
ret 8