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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x15c4
call fcn.0041b8a0
mov eax, dword [0x4464d0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, ecx
lea eax, [ebp - 0x6e8]
push edi
push 0x43f8f8
push 0x104
push eax
call fcn.00404050
add esp, 0x10
lea eax, [ebp - 0x15b8]
push eax
lea eax, [ebp - 0x6e8]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4051de
jmp 0x404d70
cmp dword [0x449ff4], 1
je 0x4051c6
push 0xffffffffffffffff
push dword [0x449ff8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [ebp - 0x15b8]
test al, 0x10
je 0x404dfe
lea eax, [ebp - 0x158c]
push 0x43fb78
push eax
call fcn.00419c07
add esp, 8
test eax, eax
je 0x405198
lea eax, [ebp - 0x158c]
push 0x43fb7c
push eax
call fcn.00419c07
add esp, 8
test eax, eax
je 0x405198
lea eax, [ebp - 0x158c]
push eax
push edi
push str._s_s
lea eax, [ebp - 0x6e8]
push 0x104
push eax
call fcn.00404050
add esp, 0x14
lea ecx, [ebp - 0x6e8]
call fcn.00404d10
jmp 0x405198
test al, 4
jne 0x405198
test eax, 0x2002
jne 0x405198
push edi
call fcn.004040e0
lea eax, [ebp - 0x158c]
push eax
call fcn.00404140
inc dword [0x44a6b0]
lea eax, [ebp - 0x158c]
push eax
push edi
push str._s_s
lea eax, [ebp - 0x358]
push 0x104
push eax
call fcn.00404050
add esp, 0x14
lea eax, [ebp - 0x88]
push 0x80
push 0
push eax
call fcn.0041bd20
add esp, 0xc
lea eax, [ebp - 0x8e8]
push 0x200
push 0
push eax
call fcn.0041bd20
add esp, 0xc
lea eax, [ebp - 0x150]
push 0x82
push 0
push eax
call fcn.0041bd20
add esp, 0xc
lea eax, [ebp - 0x4e0]
push 0x102
push 0
push eax
call fcn.0041bd20
add esp, 0xc
lea eax, [ebp - 0xc8]
push 0x40
push 0
push eax
call fcn.0041bd20
add esp, 0xc
lea eax, [ebp - 0x3d8]
push 0x80
push 0
push eax
call fcn.0041bd20
add esp, 0xc
mov dword [ebp - 0x15c4], 0
lea eax, [ebp - 0x15c0]
mov dword [ebp - 0x15c0], 0
push eax
lea eax, [ebp - 0x3d8]
push eax
lea eax, [ebp - 0x15c4]
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x4e0]
push eax
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x8e8]
push eax
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x358]
push eax
call dword [0x44aef0]
add esp, 0x24
cmp eax, reloc.OLEAUT32.dll_SysReAllocString
je 0x405193
cmp eax, 0x80000019
je 0x405193
inc dword [0x44a6b4]
cmp eax, 1
jne 0x405179
push 0x184
lea eax, [ebp - 0x1368]
push 0
push eax
call fcn.0041bd20
lea eax, [ebp - 0x1368]
mov esi, 0x44af00
mov ecx, eax
add esp, 0xc
mov edx, 0x41
sub esi, ecx
lea ecx, [edx + 0x7fffffbd]
test ecx, ecx
je 0x404f94
movzx ecx, word [esi + eax]
test cx, cx
je 0x404f94
mov word [eax], cx
add eax, 2
dec edx
jne 0x404f76
jmp 0x404f98
test edx, edx
jne 0x404f9b
sub eax, 2
push 0x2710
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
mov word [eax], cx
lea eax, [ebp - 0x15bc]
push eax
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
lea eax, [ebp - 0x1368]
mov dword [ebp - 0x15bc], ecx
push eax
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x8e8]
push eax
call dword [0x44aef4]
add esp, 0x64
cmp eax, 1
jne 0x405163
mov eax, dword [ebp - 0x15bc]
cmp eax, 2
je 0x405031
cmp eax, 3
je 0x405031
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x1368]
push eax
push 0x43f990
lea eax, [ebp - 0x10e8]
push 0x400
push eax
call fcn.00404050
add esp, 0x14
lea edx, [ebp - 0x10e8]
push 0xffffffffffffffff
jmp 0x405180
push 0xf4
lea eax, [ebp - 0x11e0]
push 0
push eax
call fcn.0041bd20
add esp, 0xc
mov dword [ebp - 0x11e0], 1
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x11dc]
push 0x30
push eax
call fcn.0041a048
add esp, 0xc
lea eax, [ebp - 0x1368]
push eax
lea eax, [ebp - 0x117c]
push 0x40
push eax
call fcn.0041a048
add esp, 0xc
lea eax, [ebp - 0x11e0]
push 0
push eax
push str.Wrapsody_Sync
call dword [0x44aeec]
mov esi, dword [0x44a6b8]
add esp, 0xc
cmp eax, 0x50000023
jne 0x405119
lea eax, [ebp - 0x11e0]
mov dword [ebp - 0x11e0], 0xf
push eax
push str.Wrapsody_Sync
push 0x43f92c
mov dword [ebp - 0x10f8], 1
call dword [0x44aee8]
add esp, 0xc
lea eax, [esi + 1]
mov dword [0x44a6b8], eax
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x1368]
push eax
push 0x43f938
lea eax, [ebp - 0x10e8]
push 0x400
push eax
call fcn.00404050
add esp, 0x14
lea edx, [ebp - 0x10e8]
mov ecx, 0x44a250
push 0xffffffffffffffff
call fcn.00408660
add esp, 4
jmp 0x405193
test eax, eax
jne 0x405179
lea eax, [esi + 1]
mov dword [0x44a6b8], eax
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x1368]
push eax
push 0x43f938
lea eax, [ebp - 0x10e8]
push 0x400
push eax
call fcn.00404050
add esp, 0x14
lea edx, [ebp - 0x10e8]
mov ecx, 0x44a250
push 0xffffffffffffffff
call fcn.00408660
add esp, 4
jmp 0x405193
push eax
lea edx, [ebp - 0x358]
mov ecx, 0x44a048
call fcn.00408660
add esp, 4
jmp 0x405193
lea edx, [ebp - 0x358]
push eax
mov ecx, 0x44a048
call fcn.00408660
add esp, 4
inc dword [0x44a6bc]
call fcn.00404b30
lea eax, [ebp - 0x15b8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x404d70
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00418fae
mov esp, ebp
pop ebp
ret
push dword [0x449ff8]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push dword [0x449ffc]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00418fae
mov esp, ebp
pop ebp
ret