Function at 0x10052eb0
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10158a36
mov eax, dword fs:[0]
push eax
sub esp, 0x68c
mov eax, dword [0x101ba0ec]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0x698], edi
push ecx
lea eax, [ebp - 0x420]
push 0x10184a18
push eax
call fcn.10041b40
add esp, 0xc
lea eax, [ebp - 0x690]
push eax
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
mov dword [ebp - 0x694], ebx
cmp ebx, 0xffffffff
je 0x10053171
lea eax, [ebp - 0x690]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x10053171
cmp word [ebp - 0x664], 0x2e
je 0x10052f20
mov ax, word [ebp - 0x662]
test ax, ax
je 0x10052f20
cmp ax, 0x2e
jne 0x10052f5c
cmp word [ebp - 0x660], 0
je 0x10052f20
test byte [ebp - 0x690], 0x10
jne 0x10052f20
xor eax, eax
mov dword [ebp - 0x428], 7
xor bl, bl
mov dword [ebp - 0x42c], 0
mov word [ebp - 0x43c], ax
push eax
push 0x1018444c
lea ecx, [ebp - 0x43c]
mov dword [ebp - 4], eax
call fcn.10041f80
mov word [ebp - 0x424], 0
lea eax, [ebp - 0x664]
mov dword [ebp - 4], 1
push str..wnpf
push eax
call fcn.1012af37
add esp, 8
test eax, eax
je 0x1005301c
lea eax, [ebp - 0x664]
mov byte [ebp - 0x424], bl
push eax
lea eax, [ebp - 0x218]
mov bl, 1
push 0x10184498
push eax
call fcn.10041b40
lea ecx, [ebp - 0x218]
add esp, 0xc
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10052ff0
sub ecx, edx
sar ecx, 1
lea ecx, [ecx*2 - 0xa]
cmp ecx, 0x208
jae 0x1005316c
xor eax, eax
mov word [ebp + ecx - 0x218], ax
lea eax, [ebp - 0x664]
push str..swnpf
push eax
call fcn.1012af37
add esp, 8
test eax, eax
je 0x1005308e
lea eax, [ebp - 0x664]
mov byte [ebp - 0x424], 1
push eax
lea eax, [ebp - 0x218]
push 0x10184498
push eax
call fcn.10041b40
lea ecx, [ebp - 0x218]
add esp, 0xc
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10053060
sub ecx, edx
sar ecx, 1
lea ecx, [ecx*2 - 0xc]
cmp ecx, 0x208
jae 0x1005316c
xor eax, eax
mov word [ebp + ecx - 0x218], ax
jmp 0x10053096
test bl, bl
je 0x10053138
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x43c]
call fcn.10042080
lea ecx, [ebp - 0x218]
call fcn.100529e0
mov esi, dword [edi]
cmp eax, 1
mov edi, dword [edi + 4]
sete byte [ebp - 0x423]
cmp esi, edi
je 0x1005311c
mov bx, word [ebp - 0x218]
nop dword [eax]
test bx, bx
jne 0x100530d9
xor eax, eax
jmp 0x100530f1
lea eax, [ebp - 0x218]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x100530e2
sub eax, edx
sar eax, 1
cmp dword [esi + 0x14], 8
jb 0x100530fb
mov ecx, dword [esi]
jmp 0x100530fd
mov ecx, esi
push eax
lea eax, [ebp - 0x218]
push eax
push dword [esi + 0x10]
push ecx
call fcn.1004b100
add esp, 0x10
test eax, eax
je 0x10053132
add esi, 0x1c
cmp esi, edi
jne 0x100530d0
mov edi, dword [ebp - 0x698]
lea eax, [ebp - 0x43c]
push eax
mov ecx, edi
call fcn.100531a0
jmp 0x10053138
mov edi, dword [ebp - 0x698]
mov ebx, dword [ebp - 0x694]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x428]
cmp eax, 8
jb 0x10052f20
inc eax
lea ecx, [ebp - 0x43c]
push eax
push dword [ebp - 0x43c]
call fcn.10042120
jmp 0x10052f20
call fcn.1010afe7
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1010a7f2
mov esp, ebp
pop ebp
ret