Function at 0x61023890
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
xor edx, edx
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2ec
mov esi, dword [ebp + 8]
mov dword [ebp - 0x2d0], esp
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x610238c0
test al, 0x10
jne 0x610238d7
lea esi, [esi]
lea edi, [edi]
test edx, edx
je 0x610238ca
test byte [esi + 0x18], 1
je 0x610238de
mov eax, dword [ebp + 0xc]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 8
mov edx, 1
jmp 0x610238c0
lea ebx, [esi + 0x50]
mov dword [esp], ebx
call sym.cygwin1.dll__strlen
mov dword [ebp - 0x2cc], eax
add eax, 0x21
and eax, 0xfffffff0
call sym.cygwin1.dll__alloca
lea eax, [esp + 0x1f]
and eax, 0xfffffff0
mov dword [ebp - 0x2d4], eax
mov dword [esp + 4], ebx
mov dword [esp], eax
call sym.cygwin1.dll__strcpy
mov dword [esp], 0xa4
call sym.operator_new_unsigned_int_
mov ebx, eax
mov eax, dword [esi + 0x44]
lea edi, [ebx + 0x84]
mov dword [ebx + 4], eax
mov dword [esp], eax
call sym.cygwin1.dll__strlen
mov dword [ebx + 8], eax
lea eax, [ebx + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 8]
mov dword [esp + 8], eax
mov eax, dword [ebx + 4]
mov dword [esp + 4], eax
mov eax, dword [0x61107518]
add eax, 0x6600
mov dword [esp], eax
call method.mount_info.get_mounts_here_char_const__int__char_
mov dword [ebx], eax
cld
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
mov edx, dword [ebp + 0xc]
mov ecx, 0x6111cd50
cmp edx, 1
mov dword [ebp - 0x2d8], edx
ja 0x6102398b
xor edi, edi
mov ecx, 0x6111cd54
mov dword [ebp - 0x2d8], edi
mov esi, dword [ebp - 0x2cc]
test esi, esi
je 0x610239b8
mov edx, dword [ebp - 0x2d4]
mov esi, dword [ebp - 0x2cc]
movzx eax, byte [esi + edx - 1]
cmp al, 0x2f
sete dl
cmp al, 0x5c
sete al
or dl, al
je 0x61023d54
lea eax, [ecx + 1]
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x2cc]
mov eax, dword [ebp - 0x2d4]
add eax, ecx
mov dword [esp], eax
call sym.cygwin1.dll__strcpy
lea ecx, [ebp - 0x158]
mov dword [esp + 4], ecx
mov esi, dword [ebp - 0x2d4]
mov dword [esp], esi
call sub.KERNEL32.dll_FindFirstFileA
mov dword [ebp - 0x2dc], eax
sub esp, 8
mov edx, 2
mov dword [ebp - 0x2e0], edx
inc eax
je 0x61023a2a
cmp dword [ebp + 0xc], 1
jbe 0x61023b4b
mov eax, 1
mov dword [ebp - 0x2e0], eax
mov eax, dword [ebp - 0x2dc]
mov dword [esp], eax
call sub.KERNEL32.dll_FindClose
sub esp, 4
cmp dword [ebp + 0xc], 1
ja 0x61023d14
lea esi, [esi]
lea edi, [edi]
mov edx, dword [ebx]
xor eax, eax
cmp edx, 0
jmp 0x61023a61
cmp byte [eax + ebx + 0x84], 0
je 0x61023ca0
inc eax
cmp edx, eax
jg 0x61023a50
cmp dword [ebx + 8], 1
je 0x61023bbe
mov dword [esp], ebx
call sym.operator_delete_void_
mov esi, dword [ebp - 0x2e0]
mov ecx, dword [ebp - 0x2d8]
mov esp, dword [ebp - 0x2d0]
lea esp, [ebp - 0xc]
lea eax, [ecx + esi]
pop ebx
pop esi
pop edi
pop ebp
ret 8
mov edi, str.proc
lea esi, [ebp - 0x12c]
cld
and eax, 0xff
lodsb al, byte [esi]
scasb al, byte es:[edi]
je 0x61023ab4
xor al, byte [eax + 0x61106b3c]
cmp al, byte [edi - 1]
jne 0x61023abf
test al, al
jne 0x61023aa5
mov eax, 1
jmp 0x61023ac1
xor eax, eax
test eax, eax
jne 0x61023cf5
lea esi, [ebp - 0x12c]
mov dword [esp], esi
call sym.cygwin1.dll__strlen
mov ecx, dword [0x61107518]
mov edx, eax
mov eax, dword [ecx + 0xa564]
sub eax, 2
cmp edx, eax
jne 0x61023b76
lea edi, [ecx + 0xa461]
mov ecx, edx
cld
and eax, 0xff
dec ecx
js 0x61023b14
lodsb al, byte [esi]
scasb al, byte es:[edi]
je 0x61023b10
xor al, byte [eax + 0x61106b3c]
cmp al, byte [edi - 1]
jne 0x61023b1b
test al, al
jne 0x61023afe
mov eax, 1
jmp 0x61023b1d
xor eax, eax
test eax, eax
je 0x61023b76
mov byte [ebx + 0xa3], 1
lea edx, [ebp - 0x158]
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x2dc]
mov dword [esp], ecx
call sub.KERNEL32.dll_FindNextFileA
sub esp, 8
test eax, eax
je 0x61023a19
mov eax, dword [ebp - 0x158]
shr eax, 4
and al, 1
cmp al, 1
sbb dword [ebp - 0x2d8], 0xffffffff
cmp byte [ebp - 0x12c], 0x2e
je 0x61023c00
cmp dword [ebx + 8], 1
je 0x61023a94
mov edx, dword [ebx]
xor ecx, ecx
cmp edx, 0
jmp 0x61023bb7
mov edi, dword [ebx + ecx*4 + 0xc]
lea esi, [ebp - 0x12c]
cld
and eax, 0xff
lodsb al, byte [esi]
scasb al, byte es:[edi]
je 0x61023b9f
xor al, byte [eax + 0x61106b3c]
cmp al, byte [edi - 1]
jne 0x61023baa
test al, al
jne 0x61023b90
mov eax, 1
jmp 0x61023bac
xor eax, eax
test eax, eax
jne 0x61023cc4
inc ecx
cmp edx, ecx
jg 0x61023b80
jmp 0x61023b28
cmp byte [ebx + 0xa2], 0
je 0x61023c2a
cmp byte [ebx + 0xa3], 0
jne 0x61023be7
mov byte [ebx + 0xa3], 1
mov eax, dword [0x61107518]
mov eax, dword [eax + 0xa564]
cmp eax, 1
ja 0x61023c58
xor eax, eax
xor edx, edx
mov esi, edx
or esi, eax
je 0x61023a6d
inc dword [ebp - 0x2d8]
jmp 0x61023a40
cmp byte [ebp - 0x12b], 0
je 0x61023c1f
mov eax, dword [ebp - 0x12c]
and eax, 0xffff00
cmp eax, 0x2e00
jne 0x61023b6c
dec dword [ebp - 0x2e0]
jmp 0x61023b6c
mov byte [ebx + 0xa2], 1
mov esi, 0x636f7270
xor eax, eax
mov dword [ebp - 0x12c], esi
xor edx, edx
mov byte [ebp - 0x128], 0
mov dword [esp], 0x6111cd5c
call sym.__Z14hash_path_nameyPKc_12
sub esp, 4
jmp 0x61023beb
sub eax, 2
mov dword [esp + 8], eax
mov eax, dword [0x61107518]
add eax, 0xa461
mov dword [esp + 4], eax
lea eax, [ebp - 0x12c]
mov dword [esp], eax
call sym.cygwin1.dll__strncpy
mov eax, dword [0x61107518]
xor ecx, ecx
mov eax, dword [eax + 0xa564]
mov byte [eax + ebp - 0x12e], cl
mov eax, 2
jmp 0x61023be9
mov dl, 1
mov byte [eax + ebx + 0x84], dl
mov eax, dword [ebx + eax*4 + 0xc]
lea edx, [ebp - 0x12c]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.cygwin1.dll__strcpy
jmp 0x61023bf5
mov al, 1
lea edx, [ebp - 0x158]
mov byte [ecx + ebx + 0x84], al
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x2dc]
mov dword [esp], ecx
call sub.KERNEL32.dll_FindNextFileA
sub esp, 8
test eax, eax
jne 0x61023b4b
jmp 0x61023a19
mov byte [ebx + 0xa2], 1
xor eax, eax
xor edx, edx
mov dword [esp], 0x6111cd5c
call sym.__Z14hash_path_nameyPKc_12
sub esp, 4
jmp 0x61023b28
mov edx, dword [ebp - 0x2d4]
lea ecx, [ebp - 0x158]
mov eax, dword [ebp - 0x2cc]
mov byte [eax + edx + 2], 0
mov dword [esp + 4], ecx
mov dword [esp], edx
call sub.KERNEL32.dll_FindFirstFileA
sub esp, 8
cmp eax, 1
adc dword [ebp - 0x2e0], 0xffffffff
mov dword [esp], eax
call sub.KERNEL32.dll_FindClose
sub esp, 4
jmp 0x61023a40
mov dword [esp + 4], ecx
jmp 0x610239bf