Function at 0x42c827
Capabilities:
Enumerate files on windows

Disassembly:
push 0x284
mov eax, 0x43335c
call fcn.00430e67
cmp dword [ebp + 0x18], 0
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x288], ecx
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x278], ecx
ja 0x42c86a
cmp dword [ebp + 0x1c], 0
ja 0x42c86a
xor ebx, ebx
mov byte [ebp - 0x265], bl
jmp 0x42c873
mov byte [ebp - 0x265], 1
xor ebx, ebx
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x26c], eax
mov edx, eax
mov dword [ebp - 4], ebx
lea edi, [edx + 2]
mov cx, word [edx]
add edx, 2
cmp cx, bx
jne 0x42c888
sub edx, edi
sar edx, 1
push 0x5c
pop ecx
cmp word [eax + edx*2 - 2], cx
je 0x42c8b3
push 1
push 0x40e5b8
lea ecx, [ebp - 0x26c]
call fcn.004176dd
push esi
call fcn.0042405d
push eax
push esi
lea ecx, [ebp - 0x26c]
call fcn.004176dd
cmp byte [0x43821a], 0
mov esi, dword [ebp - 0x26c]
je 0x42c8e2
push esi
push 0x40bea8
call sub.msvcrt.dll_wprintf
pop ecx
pop ecx
lea eax, [ebp - 0x264]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x274], eax
cmp eax, 0xffffffff
jne 0x42c913
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x40bef0
call sub.msvcrt.dll_wprintf
pop ecx
pop ecx
jmp 0x42c9cd
mov edi, dword [ebp - 0x274]
mov byte [ebp - 4], 1
cmp byte [0x43821a], 0
je 0x42c940
push dword [ebp - 0x27c]
lea eax, [ebp - 0x238]
push eax
push 0x40bf48
call sub.msvcrt.dll_wprintf
add esp, 0xc
test byte [ebp - 0x264], 0x10
jne 0x42c9b0
cmp dword [ebp + 0x24], 0
je 0x42c973
sub esp, 0xc
lea eax, [ebp - 0x238]
mov ecx, esp
push ebx
push eax
push dword [ebp - 0x278]
call fcn.00427817
mov ecx, dword [ebp + 0x24]
call fcn.004291f4
test al, al
jne 0x42c99d
cmp dword [ebp + 0x20], 0
je 0x42c9dc
sub esp, 0xc
lea eax, [ebp - 0x238]
mov ecx, esp
push ebx
push eax
push dword [ebp - 0x278]
call fcn.00427817
mov ecx, dword [ebp + 0x20]
call fcn.004291f4
test al, al
je 0x42c9dc
lea eax, [ebp - 0x238]
push eax
push 0x40bf84
call sub.msvcrt.dll_wprintf
pop ecx
pop ecx
lea eax, [ebp - 0x264]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x42c91d
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
call fcn.00430db9
ret 0x20
push dword [ebp - 0x288]
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [ebp - 0x270], edi
push esi
mov byte [ebp - 4], 2
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [ebp - 0x27c]
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edx, eax
mov dword [ebp - 0x26c], eax
lea esi, [edx + 2]
mov cx, word [edx]
add edx, 2
cmp cx, bx
jne 0x42ca12
sub edx, esi
sar edx, 1
push 0x5c
pop esi
cmp word [eax + edx*2 - 2], si
je 0x42ca3d
push 1
push 0x40e5b8
lea ecx, [ebp - 0x26c]
call fcn.004176dd
lea ecx, [ebp - 0x238]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x42ca46
sub ecx, edx
lea eax, [ebp - 0x238]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x26c]
call fcn.004176dd
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x42ca6d
sub ecx, edx
sar ecx, 1
cmp word [edi + ecx*2 - 2], si
je 0x42ca95
push 1
push 0x40e5b8
lea ecx, [ebp - 0x270]
call fcn.004176dd
lea ecx, [ebp - 0x238]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x42ca9e
sub ecx, edx
lea eax, [ebp - 0x238]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x270]
call fcn.004176dd
cmp byte [ebp - 0x265], 0
mov esi, dword [ebp - 0x26c]
je 0x42cbc1
push ebx
push ebx
push 3
push ebx
push 1
push SysReAllocStringLen
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
mov dword [ebp - 0x284], 0x40e59c
mov dword [ebp - 0x280], edi
mov byte [ebp - 4], 3
cmp edi, 0xffffffff
jne 0x42cb20
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x42cb13
movzx eax, ax
or eax, 0x80070000
push 0x40bfb0
push eax
call fcn.004241bf
pop ecx
pop ecx
lea eax, [ebp - 0x290]
push eax
push ebx
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x42cb53
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x42cb46
movzx eax, ax
or eax, 0x80070000
push 0x40bfb0
push eax
call fcn.004241bf
pop ecx
pop ecx
lea eax, [ebp + 0x18]
push eax
lea eax, [ebp - 0x290]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jns 0x42cba0
cmp edi, 0xffffffff
je 0x42cb74
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [ebp - 0x280], 0xffffffff
push dword [ebp - 0x270]
mov dword [ebp - 0x284], 0x40e53c
mov byte [ebp - 4], 1
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edi, dword [ebp - 0x274]
jmp 0x42c9b0
mov byte [ebp - 4], 2
cmp edi, 0xffffffff
je 0x42cbb0
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [ebp - 0x280], 0xffffffff
mov dword [ebp - 0x284], 0x40e53c
cmp byte [0x43821a], 0
mov edi, dword [ebp - 0x270]
je 0x42cbdf
push edi
push esi
push 0x40c008
call sub.msvcrt.dll_wprintf
add esp, 0xc
push edi
push esi
call fcn.00428aa8
cmp byte [0x43821a], 0
je 0x42cbfe
push edi
push esi
push 0x40c038
call sub.msvcrt.dll_wprintf
add esp, 0xc
push edi
jmp 0x42cb8b