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

Disassembly:
push 0x2b8
mov eax, 0x5e24d1
call fcn.0046dcba
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x28]
push eax
call fcn.00404060
and dword [ebp - 4], 0
lea eax, [ebp - 0x28]
push eax
call fcn.00456a37
mov ebx, 0x5e6bac
pop ecx
test eax, eax
jne 0x458daa
push ebx
call fcn.0048ed77
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x28]
call fcn.00405c20
call fcn.00452596
test al, al
je 0x458dc9
xor al, 2
mov al, byte [0x624735a7]
mov dword [0xc4421c5c], edi
invalid
and dword [ebp - 0x30], 0
xor eax, eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x70]
call fcn.00404030
mov esi, 0x5e8408
mov byte [ebp - 4], 2
push esi
call fcn.0048ed77
pop ecx
push eax
push esi
lea ecx, [ebp - 0x70]
call fcn.00405c20
cmp dword [ebp - 0x5c], 8
lea ecx, [ebp - 0x2c0]
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x2c4], eax
call fcn.0045250c
test al, al
je 0x458e4b
sbb eax, 0x57b35f53
test byte [edi - 0x29], ch
pop es
jmp 0x5f272e82
call fcn.00451fa8
test al, al
je 0x458e6d
mov bl, 0x31
ror bl, 0x2f
dec ecx
add byte [eax], bl
cdq
test ch, 0xa6
push ecx
sub dl, dh
bound edx, qword [edi + 0x52]
pop es
jns 0x458ee3
cmp al, 0xba
push esp
call fcn.0045225a
test al, al
je 0x458e92
or eax, 0x8b8a0daa
push 0x4a
mov ebp, 0x65548003
jbe 0x458efe
cmp eax, 0x4c1a479a
or al, 0xef
sbb al, 0x57
into
ror byte [edi], 1
inc esp
mov edi, 0xfd3cb58b
invalid
mov esi, dword [ebp - 0x2c4]
cmp esi, 0xffffffff
je 0x458fbc
push 0x2e
pop ebx
mov edi, 0x5e6bac
lea eax, [ebp - 0x2c0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x458fbc
cmp word [ebp - 0x294], bx
je 0x458ea9
cmp word [ebp - 0x292], 0
je 0x458ea9
cmp word [ebp - 0x292], bx
jne 0x458ee5
cmp word [ebp - 0x290], 0
je 0x458ea9
test byte [ebp - 0x2c0], 0x10
lea eax, [ebp - 0x28]
je 0x458f61
push eax
lea ecx, [ebp - 0x58]
call fcn.00404030
cmp word [ebp - 0x294], 0
mov byte [ebp - 4], 3
jne 0x458f0c
std
invalid
xor eax, eax
jmp 0x458f19
lea eax, [ebp - 0x294]
push eax
call fcn.0048ed77
pop ecx
push eax
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x58]
call fcn.00405c20
push edi
call fcn.0048ed77
pop ecx
push eax
push edi
lea ecx, [ebp - 0x58]
call fcn.00405c20
cmp dword [ebp - 0x44], 8
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push eax
call fcn.00458d67
pop ecx
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
call fcn.0041ece0
jmp 0x458ea9
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x40]
call fcn.004029a0
cmp word [ebp - 0x294], 0
jne 0x458f7c
xor eax, eax
jmp 0x458f89
lea eax, [ebp - 0x294]
push eax
call fcn.0048ed77
pop ecx
push eax
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x40]
call fcn.00405c20
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00404060
call int.0045a50c
add esp, 0x18
jmp 0x458ea9
call fcn.004520bc
test al, al
je 0x458fe4
iretd
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push 0x20
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
xor ebx, ebx
lea ecx, [ebp - 0x70]
push ebx
push 1
call fcn.0041ece0
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.0041ece0
push ebx
push 1
lea ecx, [ebp - 0x28]
call fcn.0041ece0
call fcn.0046dc64
ret