Function at 0x423294
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc40
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x423631
push dword fs:[eax]
mov dword fs:[eax], esp
or ebx, 0xffffffff
cmp byte [0x4c0e54], 0
jne 0x4232e5
push 0x4c0e54
push 0x4c0e74
mov ecx, 0x4c0e7c
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
call fcn.0042216c
test al, al
je 0x423623
lea eax, [ebp - 0x119]
mov edx, dword [ebp - 4]
call fcn.004b81b0
push 0x423644
lea eax, [ebp - 0x119]
push eax
call sub.kernel32.dll_lstrcatA
cmp byte [ebp - 5], 0
je 0x42336b
mov eax, dword [0x4c0e7c]
push eax
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov dword [0x4c0e4c], eax
cmp dword [0x4c0e4c], 0
jne 0x423347
fild qword [0x4c0e7c]
add esp, 0xfffffff8
fistp qword [esp]
wait
call fcn.004b1e30
mov edx, eax
mov ax, 0xb
call fcn.004acdac
jmp 0x423623
mov eax, dword [0x4c0e7c]
mov dword [0x4c0e50], eax
mov byte [ebp - 0xd], 1
mov dword [0x4c0e6c], 0
mov dword [0x4c0e70], 0
jmp 0x4233c8
push 0x1000000
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov dword [0x4c0e4c], eax
cmp dword [0x4c0e4c], 0
jne 0x4233ba
call sub.kernel32.dll_GetLastError_1
call fcn.004ae200
mov eax, dword [0x4bedb0]
mov edx, 1
call fcn.004b12a8
push 0
push 0x1000000
call fcn.004b1e30
mov edx, eax
mov ax, 0xb
call fcn.004acdac
jmp 0x423623
mov dword [0x4c0e50], 0x1000000
mov byte [ebp - 0xd], 0
mov byte [ebp - 0x230], 0
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x119]
push eax
call sub.kernel32.dll_FindFirstFileA
mov esi, eax
jmp 0x4235d9
test byte [ebp - 0x25c], 0x10
jne 0x4235b6
lea eax, [ebp - 0x230]
call fcn.004aecd8
mov edx, eax
lea eax, [ebp - 0x3c0]
call fcn.004b81b0
push 0x42364c
lea eax, [ebp - 0x3c0]
push eax
call sub.kernel32.dll_lstrcmpiA
test eax, eax
je 0x423466
push 0x423650
lea eax, [ebp - 0x3c0]
push eax
call sub.kernel32.dll_lstrcmpiA
test eax, eax
je 0x423466
push 0x423654
lea eax, [ebp - 0x3c0]
push eax
call sub.kernel32.dll_lstrcmpiA
test eax, eax
je 0x423466
mov byte [ebp - 0x230], 0
lea eax, [ebp - 0x25c]
push eax
push esi
call sub.kernel32.dll_FindNextFileA
jmp 0x4235d9
mov byte [ebp - 0x19], 0
cmp byte [0x4c0e54], 1
jne 0x4234b4
mov dword [ebp - 0x18], 5
mov edi, 0x4bd4d0
mov eax, dword [edi]
push eax
lea eax, [ebp - 0x230]
push eax
call sub.kernel32.dll_lstrcmpiA
test eax, eax
jne 0x4234ac
mov byte [ebp - 0x230], 0
lea eax, [ebp - 0x25c]
push eax
push esi
call sub.kernel32.dll_FindNextFileA
mov byte [ebp - 0x19], 1
jmp 0x4234b4
add edi, 4
dec dword [ebp - 0x18]
jne 0x42347f
cmp byte [ebp - 0x19], 0
jne 0x4235d9
mov eax, dword [ebp - 4]
push eax
lea eax, [ebp - 0x35c]
push eax
call sub.kernel32.dll_lstrcpyA
push 0x423658
lea eax, [ebp - 0x35c]
push eax
call sub.kernel32.dll_lstrcatA
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x35c]
push eax
call sub.kernel32.dll_lstrcatA
cmp byte [0x4c0e74], 0
je 0x423505
mov al, byte [0x4c0e74]
cmp al, byte [ebp + 8]
je 0x423561
lea eax, [ebp - 0x35c]
mov dl, byte [ebp - 0xd]
call fcn.004229fc
test al, al
jne 0x423534
mov eax, dword [0x4c0e4c]
push eax
call sub.kernel32.dll_GlobalFree
xor eax, eax
mov dword [0x4c0e4c], eax
push esi
call sub.kernel32.dll_FindClose
jmp 0x423623
cmp byte [ebp - 5], 0
jne 0x423556
mov dl, byte [ebp + 8]
mov eax, dword [ebp - 0xc]
call fcn.004228f0
mov ebx, eax
cmp bl, 1
je 0x4235b6
mov eax, dword [0x4bed48]
cmp byte [eax], 0
jne 0x4235b6
cmp byte [0x4c0e88], 0
jne 0x423505
jmp 0x4235b6
lea edx, [ebp - 0x35c]
mov eax, dword [ebp - 0xc]
call fcn.00422e84
movsx eax, al
test eax, eax
jne 0x42358f
mov eax, dword [0x4c0e4c]
cmp byte [eax], 0
je 0x4235b6
mov dl, byte [ebp + 8]
mov eax, dword [ebp - 0xc]
call fcn.004228f0
mov ebx, eax
jmp 0x4235b6
cmp eax, 0xffffffff
jne 0x4235b1
or ebx, 0xffffffff
mov eax, dword [0x4c0e4c]
push eax
call sub.kernel32.dll_GlobalFree
push esi
call sub.kernel32.dll_FindClose
xor eax, eax
mov dword [0x4c0e4c], eax
jmp 0x423623
dec eax
jne 0x4235b6
mov bl, 1
cmp bl, 1
je 0x4235e6
mov eax, dword [0x4bed48]
cmp byte [eax], 0
jne 0x4235e6
mov byte [ebp - 0x230], 0
lea eax, [ebp - 0x25c]
push eax
push esi
call sub.kernel32.dll_FindNextFileA
cmp byte [ebp - 0x230], 0
jne 0x4233e9
cmp byte [0x4c0e88], 0
je 0x423601
mov eax, dword [0x4c0e58]
push eax
call sub.kernel32.dll_CloseHandle_1
mov byte [0x4c0e88], 0
cmp byte [ebp - 5], 0
jne 0x42361b
mov eax, dword [0x4c0e4c]
push eax
call sub.kernel32.dll_GlobalFree
xor eax, eax
mov dword [0x4c0e4c], eax
jmp 0x42361d
mov bl, 1
push esi
call sub.kernel32.dll_FindClose
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x423638
ret