Function at 0x4027a7
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x564
push 0x40a2e0
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x4092a0
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0xffffffff
jne 0x4027fe
xor eax, eax
jmp 0x402f86
mov ecx, dword [ebp - 0x114]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea edx, [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
movsx ecx, byte [ebp + eax - 0x22d]
cmp ecx, 0x5f
jne 0x4028be
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x564]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x564]
push ecx
call fcn.00404d08
add esp, 4
push 0x4092b0
lea edx, [ebp - 0x35c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x35c]
push eax
call fcn.00404d08
add esp, 4
push 0x4092c0
lea ecx, [ebp - 0x10c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [ebp - 0x10c]
push edx
call fcn.00404d08
add esp, 4
push 1
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x35c]
push ecx
lea edx, [ebp - 0x564]
push edx
call fcn.00402f8a
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x40291b
push 0x4092d0
lea eax, [ebp - 0x35c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00404d08
add esp, 4
push 0x4092e0
lea edx, [ebp - 0x10c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x10c]
push eax
call fcn.00404d08
add esp, 4
push 1
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x35c]
push edx
call fcn.00403260
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x402928
xor eax, eax
jmp 0x402f86
push 0x40a2e0
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x4092f0
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0xffffffff
jne 0x402976
xor eax, eax
jmp 0x402f86
mov ecx, dword [ebp - 0x114]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea edx, [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
movsx ecx, byte [ebp + eax - 0x22d]
cmp ecx, 0x5f
jne 0x402a36
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x564]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x564]
push ecx
call fcn.00404d08
add esp, 4
push 0x409300
lea edx, [ebp - 0x35c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x35c]
push eax
call fcn.00404d08
add esp, 4
push 0x409310
lea ecx, [ebp - 0x10c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [ebp - 0x10c]
push edx
call fcn.00404d08
add esp, 4
push 0
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x35c]
push ecx
lea edx, [ebp - 0x564]
push edx
call fcn.00402f8a
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x402a93
push 0x409320
lea eax, [ebp - 0x35c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00404d08
add esp, 4
push 0x409330
lea edx, [ebp - 0x10c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x10c]
push eax
call fcn.00404d08
add esp, 4
push 0
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x35c]
push edx
call fcn.00403260
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x402aa0
xor eax, eax
jmp 0x402f86
push 0x40a2e0
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x409340
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0xffffffff
jne 0x402aee
xor eax, eax
jmp 0x402f86
mov ecx, dword [ebp - 0x114]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea edx, [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
movsx ecx, byte [ebp + eax - 0x22d]
cmp ecx, 0x5f
jne 0x402bae
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x564]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x564]
push ecx
call fcn.00404d08
add esp, 4
push 0x409350
lea edx, [ebp - 0x35c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x35c]
push eax
call fcn.00404d08
add esp, 4
push 0x409360
lea ecx, [ebp - 0x10c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [ebp - 0x10c]
push edx
call fcn.00404d08
add esp, 4
push 0
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x35c]
push ecx
lea edx, [ebp - 0x564]
push edx
call fcn.00402f8a
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x402c0b
push 0x409370
lea eax, [ebp - 0x35c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00404d08
add esp, 4
push 0x409380
lea edx, [ebp - 0x10c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x10c]
push eax
call fcn.00404d08
add esp, 4
push 0
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x35c]
push edx
call fcn.00403260
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x402c18
xor eax, eax
jmp 0x402f86
push 0x40a2e0
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x409390
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0xffffffff
jne 0x402c66
xor eax, eax
jmp 0x402f86
cmp dword [ebp - 0x114], 0xffffffff
je 0x402dc8
lea ecx, [ebp - 0x22c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x118], eax
mov edx, dword [ebp - 0x118]
movsx eax, byte [ebp + edx - 0x22d]
cmp eax, 0x5f
jne 0x402d29
lea ecx, [ebp - 0x22c]
push ecx
lea edx, [ebp - 0x564]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x564]
push eax
call fcn.00404d08
add esp, 4
lea ecx, [ebp - 0x564]
push ecx
lea edx, [ebp - 0x35c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp - 0x118]
mov byte [ebp + eax - 0x35d], 0x4c
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00404d08
add esp, 4
lea edx, [ebp - 0x35c]
push edx
lea eax, [ebp - 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x35c]
push edx
lea eax, [ebp - 0x564]
push eax
call fcn.00402f8a
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x402d7b
lea ecx, [ebp - 0x22c]
push ecx
lea edx, [ebp - 0x35c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x35c]
push eax
call fcn.00404d08
add esp, 4
lea ecx, [ebp - 0x35c]
push ecx
lea edx, [ebp - 0x10c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00403260
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x402d88
xor eax, eax
jmp 0x402f86
lea edx, [ebp - 0x258]
push edx
mov eax, dword [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x402dc3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0x12
jne 0x402dbc
jmp 0x402dc8
xor eax, eax
jmp 0x402f86
jmp 0x402c66
push 0x40a2e0
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x4093a0
lea edx, [ebp - 0x460]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0xffffffff
jne 0x402e16
xor eax, eax
jmp 0x402f86
cmp dword [ebp - 0x114], 0xffffffff
je 0x402f81
lea edx, [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
movsx ecx, byte [ebp + eax - 0x22d]
cmp ecx, 0x5f
jne 0x402ed9
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x564]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x564]
push ecx
call fcn.00404d08
add esp, 4
lea edx, [ebp - 0x564]
push edx
lea eax, [ebp - 0x35c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ecx, dword [ebp - 0x118]
mov byte [ebp + ecx - 0x35d], 0x50
lea edx, [ebp - 0x35c]
push edx
call fcn.00404d08
add esp, 4
lea eax, [ebp - 0x35c]
push eax
lea ecx, [ebp - 0x10c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
lea edx, [ebp - 0x10c]
push edx
lea eax, [ebp - 0x35c]
push eax
lea ecx, [ebp - 0x564]
push ecx
call fcn.004035b4
add esp, 0x10
mov dword [ebp - 8], eax
jmp 0x402f3a
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x35c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x35c]
push ecx
call fcn.00404d08
add esp, 4
lea edx, [ebp - 0x35c]
push edx
lea eax, [ebp - 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x10c]
push ecx
call fcn.00404d08
add esp, 4
push 0
lea edx, [ebp - 0x10c]
push edx
lea eax, [ebp - 0x35c]
push eax
call fcn.0040388a
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x402f44
xor eax, eax
jmp 0x402f86
lea ecx, [ebp - 0x258]
push ecx
mov edx, dword [ebp - 0x114]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x402f7c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0x12
jne 0x402f78
jmp 0x402f81
xor eax, eax
jmp 0x402f86
jmp 0x402e16
mov eax, 1
mov esp, ebp
pop ebp
ret