Function at 0x5014d0
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x3d0
mov esi, esp
mov dword [esi + 0x3b8], ebp
lea ecx, [ebp + 8]
lea eax, [esi + 0x3c0]
mov dword [eax - 4], esp
mov dword [eax + 8], 0xffffffff
mov dword [eax + 4], 0x501d00
mov edx, dword fs:[0]
mov dword [eax], edx
mov dword fs:[0], eax
mov dword [eax + 8], 0
call fcn.004af144
mov dword [esp], eax
call fcn.004feec0
test al, al
je 0x501999
pcmpeqd xmm0, xmm0
lea ecx, [esi + 0xa0]
movdqa xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xffffffff
lea eax, [ebp + 8]
mov dword [esp], eax
call fcn.004aeac0
sub esp, 4
mov dword [esi + 0x3c8], 1
mov dword [esp], 0x7320a0
lea ecx, [esi + 0xa0]
call fcn.004af348
sub esp, 4
test al, al
jne 0x501587
mov dword [esp], 0x7320a0
lea ecx, [esi + 0xa0]
call fcn.004af0aa
sub esp, 4
mov dword [esp], 0x73b65a
lea ecx, [esi + 0xa0]
call fcn.004af0aa
sub esp, 4
lea eax, [esi + 0x168]
mov dword [esp], eax
mov dword [esp + 8], 0x250
mov dword [esp + 4], 0xff
call fcn.006ccfc0
lea ecx, [esi + 0xa0]
call fcn.004af144
lea ecx, [esi + 0x168]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
sub esp, 8
mov dword [esi + 0x84], eax
cmp eax, 0xffffffff
je 0x501a2a
lea edi, [esi + 0x194]
test byte [esi + 0x168], 0x10
mov dword [esi + 0x3c8], 1
jne 0x5016a7
mov eax, dword [esi + 0x184]
mov ecx, dword [esi + 0x188]
mov byte [esi + 0xe0], 0
mov dword [esi + 0xec], eax
mov dword [esi + 0xe8], ecx
mov byte [esi + 0x100], 3
mov dword [esi + 0x108], edi
movups xmm0, xmmword [0x7a9568]
movups xmmword [esp + 0x68], xmm0
movups xmmword [esp + 0x58], xmm0
movups xmmword [esp + 0x48], xmm0
movups xmmword [esp + 0x38], xmm0
movups xmm0, xmmword [esi + 0xe0]
movups xmmword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0x100]
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str._s_is_a__FILE___size:__d_bytes
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x493
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 2
call fcn.004ee380
lea edi, [esi + 0x194]
jmp 0x5017a5
mov byte [esi + 0x110], 3
mov dword [esi + 0x118], edi
movups xmm0, xmmword [0x7a9568]
movups xmmword [esp + 0x68], xmm0
movups xmmword [esp + 0x58], xmm0
movups xmmword [esp + 0x48], xmm0
movups xmmword [esp + 0x38], xmm0
movups xmmword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0x110]
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str._s_is_a__DIR_
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x48b
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 2
call fcn.004ee380
lea edi, [esi + 0x194]
lea ebx, [esi + 0x8c]
mov dword [esp], edi
mov dword [esp + 4], 0x73b68c
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
sub esp, 8
test eax, eax
je 0x5017a5
mov dword [esp], edi
mov dword [esp + 4], 0x73b690
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
sub esp, 8
test eax, eax
je 0x5017a5
lea eax, [ebp + 8]
mov eax, dword [eax + 0x14]
mov dword [esi + 0x88], eax
mov dword [esp], edi
mov dword [esp + 4], 0xffffffff
mov ecx, ebx
call fcn.004aea40
sub esp, 8
lea eax, [esi + 0x8c]
mov dword [esi + 0x3c8], 2
mov dword [esp], eax
mov ecx, dword [esi + 0x88]
call fcn.00501390
sub esp, 4
lea ecx, [esi + 0x8c]
call fcn.004aeec0
lea edi, [esi + 0x194]
lea eax, [esi + 0x168]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x84]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
sub esp, 8
test eax, eax
jne 0x5015f0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0x3c8], 1
cmp eax, 0x12
sete cl
mov dword [esi + 0x88], ecx
je 0x501860
mov byte [esi + 0xd0], 0
mov dword [esi + 0xd8], eax
mov dword [esi + 0xdc], 0
movups xmm0, xmmword [0x7a9568]
movups xmmword [esp + 0x68], xmm0
movups xmmword [esp + 0x58], xmm0
movups xmmword [esp + 0x48], xmm0
movups xmmword [esp + 0x38], xmm0
movups xmmword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0xd0]
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str.unexcept_error_happen_in_the_enumerate_progress._error_code:__d
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x499
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 4
call fcn.004ee380
mov eax, dword [esi + 0x84]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_FindClose]
sub esp, 4
movdqu xmm0, xmmword [0x7a9568]
movdqa xmmword [esi + 0x150], xmm0
movdqa xmmword [esi + 0x140], xmm0
movdqa xmmword [esi + 0x130], xmm0
movdqa xmmword [esi + 0x120], xmm0
lea eax, [ebp + 8]
mov dword [esp], eax
lea ecx, [esi + 0x8c]
call fcn.004aeac0
sub esp, 4
mov dword [esi + 0x3c8], 3
mov dword [esp], 0
lea ecx, [esi + 0x8c]
call fcn.004af666
sub esp, 4
mov byte [esi + 0xf0], 2
mov dword [esi + 0xf8], eax
lea eax, [ebp + 8]
mov eax, dword [eax + 0x14]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
imul eax, ecx, 0xcccccccd
mov byte [esi + 0xc0], 0
mov dword [esi + 0xc8], eax
mov dword [esi + 0xcc], 0
movaps xmm0, xmmword [esi + 0x150]
movups xmmword [esp + 0x68], xmm0
movaps xmm0, xmmword [esi + 0x140]
movups xmmword [esp + 0x58], xmm0
movaps xmm0, xmmword [esi + 0x130]
movups xmmword [esp + 0x48], xmm0
movaps xmm0, xmmword [esi + 0x120]
movups xmmword [esp + 0x38], xmm0
movups xmm0, xmmword [esi + 0xf0]
movups xmmword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0xc0]
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str.Totally_find__d_files_in_the__s
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x49d
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 2
call fcn.004ee380
lea ecx, [esi + 0x8c]
call fcn.004aeec0
mov ebx, dword [esi + 0x88]
jmp 0x501ab6
movdqu xmm0, xmmword [0x7a9568]
movdqu xmmword [esp + 0x68], xmm0
movdqu xmmword [esp + 0x58], xmm0
movdqu xmmword [esp + 0x48], xmm0
movdqu xmmword [esp + 0x38], xmm0
movdqu xmmword [esp + 0x28], xmm0
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str.dir_not_exist
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x46f
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 4
call fcn.004ee380
lea eax, [ebp + 8]
mov eax, dword [eax + 0x14]
mov ebx, dword [eax]
mov dword [esi + 0x84], eax
mov edi, dword [eax + 4]
cmp edi, ebx
je 0x501a1a
add edi, 0xffffffec
mov ecx, edi
call fcn.004aeec0
jmp 0x501a0a
mov eax, dword [esi + 0x84]
mov dword [eax + 4], ebx
xor ebx, ebx
jmp 0x501ac1
movdqu xmm0, xmmword [0x7a9568]
movdqu xmmword [esp + 0x68], xmm0
movdqu xmmword [esp + 0x58], xmm0
movdqu xmmword [esp + 0x48], xmm0
movdqu xmmword [esp + 0x38], xmm0
movdqu xmmword [esp + 0x28], xmm0
movdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x14], str.FindFirstFile_in_dir_error
mov dword [esp + 0x10], str.FileUtils
mov dword [esp + 0xc], str.listDirsInDir
mov dword [esp + 8], 0x484
mov dword [esp + 4], str..._.._applet_third_party_xplugin_src_base_FileUtils.cpp
mov dword [esp], 4
call fcn.004ee380
lea eax, [ebp + 8]
mov eax, dword [eax + 0x14]
mov ebx, dword [eax]
mov dword [esi + 0x84], eax
mov edi, dword [eax + 4]
cmp edi, ebx
je 0x501aab
add edi, 0xffffffec
mov ecx, edi
call fcn.004aeec0
jmp 0x501a9b
mov eax, dword [esi + 0x84]
mov dword [eax + 4], ebx
xor ebx, ebx
lea ecx, [esi + 0xa0]
call fcn.004aeec0
lea ecx, [ebp + 8]
call fcn.004aeec0
mov eax, dword [esi + 0x3c0]
mov dword fs:[0], eax
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret