Function at 0x10023b53
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
sub esp, 0x8d8
lea ebp, [esp - 4]
mov eax, dword [0x101f1dd0]
xor eax, ebp
mov dword [ebp + 0x8d8], eax
push 0x24
mov eax, 0x1016c332
call fcn.10075e22
mov eax, dword [ebp + 0x8e4]
mov edi, dword [ebp + 0x8e8]
push eax
lea ecx, [ebp + 0x250]
mov dword [ebp - 0x14], edi
call fcn.100015f0
xor esi, esi
push edi
lea ecx, [ebp + 0x26c]
mov dword [ebp - 4], esi
call fcn.100015f0
lea eax, [ebp + 0x26c]
push eax
xor ebx, ebx
lea eax, [ebp + 0x288]
inc ebx
push eax
mov byte [ebp - 4], bl
call fcn.1001fb72
lea eax, [ebp + 0x288]
push eax
mov byte [ebp - 4], 2
call fcn.1001f9c5
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp + 0x2a4]
push eax
call fcn.100201b9
add esp, 0x14
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x26c]
mov byte [ebp - 4], 3
call fcn.10001d60
push esi
push ebx
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 2
call fcn.100017f0
push 0x10179b40
lea ecx, [ebp + 0x250]
call fcn.10003540
cmp dword [ebp + 0x268], 8
mov eax, dword [ebp + 0x254]
jae 0x10023c2b
lea eax, [ebp + 0x254]
lea ecx, [ebp]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [ebp - 0x10], eax
je 0x10023e71
mov edi, 0x206
lea eax, [ebp]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
cmp eax, esi
je 0x10023e71
lea eax, [ebp + 0x2c]
push eax
lea ecx, [ebp + 0x2a4]
call fcn.100015f0
lea eax, [ebp + 0x2a4]
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 4
call fcn.1001fb72
pop ecx
pop ecx
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x288]
mov byte [ebp - 4], 5
call fcn.10001660
push esi
push ebx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.10001770
lea eax, [ebp + 0x288]
push eax
call fcn.1001f9c5
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.100201b9
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 6
call fcn.10001d60
push esi
push ebx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.100017f0
cmp word [ebp + 0x2c], 0x2e
je 0x10023de4
cmp word [ebp + 0x2e], si
je 0x10023de4
cmp word [ebp + 0x2e], 0x2e
jne 0x10023d08
cmp word [ebp + 0x30], si
je 0x10023de4
test byte [ebp], 0x10
jne 0x10023de4
push edi
lea eax, [ebp + 0x2c2]
push esi
push eax
mov word [ebp + 0x2c0], si
call fcn.10076580
push edi
lea eax, [ebp + 0x4ca]
push esi
push eax
mov word [ebp + 0x4c8], si
call fcn.10076580
mov eax, dword [ebp + 0x2a8]
add esp, 0x18
cmp dword [ebp + 0x2bc], 8
jae 0x10023d54
lea eax, [ebp + 0x2a8]
push eax
lea eax, [ebp + 0x4c8]
push 0x10175610
push eax
call fcn.100048d5
lea eax, [ebp + 0x2c0]
push eax
lea eax, [ebp + 0x4c8]
push eax
call fcn.1001e26b
lea eax, [ebp + 0x2c0]
push str..lnk
push eax
call fcn.10076c97
add esp, 0x1c
test eax, eax
jne 0x10023de4
push edi
lea eax, [ebp + 0x6d2]
push esi
push eax
mov word [ebp + 0x6d0], si
call fcn.10076580
lea eax, [ebp + 0x6d0]
push eax
lea eax, [ebp + 0x4c8]
push eax
call fcn.1001e1f2
mov eax, dword [ebp + 0x270]
add esp, 0x14
cmp dword [ebp + 0x284], 8
jae 0x10023dd1
lea eax, [ebp + 0x270]
push eax
lea eax, [ebp + 0x6d0]
push eax
call fcn.1001e6f1
test eax, eax
pop ecx
pop ecx
jne 0x10023dfa
push esi
push ebx
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 2
call fcn.100017f0
jmp 0x10023c47
lea eax, [ebp + 0x6d0]
push eax
push dword [ebp - 0x14]
call fcn.10076c97
test eax, eax
pop ecx
pop ecx
je 0x10023e6d
push 2
pop edi
push esi
push ebx
lea ecx, [ebp + 0x2a4]
call fcn.100017f0
push esi
push ebx
lea ecx, [ebp + 0x288]
call fcn.10001770
push esi
push ebx
lea ecx, [ebp + 0x26c]
call fcn.100017f0
push esi
push ebx
lea ecx, [ebp + 0x250]
call fcn.100017f0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x8d8]
xor ecx, ebp
call fcn.10075e13
add ebp, 0x8dc
leave
ret 8
mov edi, ebx
jmp 0x10023e12
xor edi, edi
jmp 0x10023e1f