Function at 0x42ab30
Capabilities:
Check if file exists
Enumerate files on windows
Enumerate files recursively
Get file attributes

Disassembly:
push 0xffffffffffffffff
push 0x44f790
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x340
mov eax, dword [0x464b24]
xor eax, esp
push ebx
mov ebx, dword [esp + 0x35c]
push ebp
mov ebp, dword [esp + 0x35c]
push edi
mov edi, dword [esp + 0x35c]
push 0x45439c
mov dword [esp + 0x34c], eax
lea eax, [esp + 0xc4]
push edi
push eax
mov dword [esp + 0x18], ebx
call fcn.00429c10
add esp, 0xc
lea ecx, [esp + 0xf8]
push ecx
lea ecx, [esp + 0xc4]
mov dword [esp + 0x358], 0
call dword [sym.imp.MSVCP71.dll_public:_unsigned_short_int_const____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [esp + 0x14], eax
jne 0x42abd6
lea ecx, [esp + 0xc0]
mov dword [esp + 0x354], eax
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
xor eax, eax
jmp 0x42ae70
push esi
jmp 0x42abe0
lea edx, [esp + 0x128]
push edx
lea ecx, [esp + 0xac]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::constructor_unsigned_short_int_const__]
mov esi, dword [sym.imp.MSVCP71.dll_bool___cdecl_std::operator_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const___unsigned_short_int_const__]
lea eax, [esp + 0xa8]
push 0x454398
push eax
mov byte [esp + 0x360], 1
call esi
add esp, 8
test al, al
jne 0x42ae1b
lea ecx, [esp + 0xa8]
push 0x454390
push ecx
call esi
add esp, 8
test al, al
jne 0x42ae1b
mov eax, dword [ebx + 0x14]
test eax, eax
je 0x42acc8
mov edx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::npos]
mov eax, dword [edx]
push eax
push 0x2e
lea ecx, [esp + 0xb0]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::find_last_of_unsigned_short_int__unsigned_int_const]
push eax
push ebx
lea ecx, [esp + 0xb0]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::find_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::npos]
mov esi, eax
cmp esi, dword [ecx]
je 0x42ad06
lea ecx, [esp + 0xa8]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::length_void_const]
sub eax, esi
mov ecx, ebx
mov dword [esp + 0x14], eax
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::length_void_const]
mov ecx, dword [esp + 0x14]
cmp ecx, eax
ja 0x42ad06
lea edx, [esp + 0xa8]
push edx
lea eax, [esp + 0x74]
push edi
push eax
call fcn.00429b90
add esp, 0xc
push eax
mov ecx, ebp
mov byte [esp + 0x35c], 2
call fcn.0042a9e0
lea ecx, [esp + 0x70]
jmp 0x42acf8
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x90]
push edi
push edx
call fcn.00429b90
add esp, 0xc
push eax
mov ecx, ebp
mov byte [esp + 0x35c], 3
call fcn.0042a9e0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x358], 1
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
mov al, byte [esp + 0x36c]
test al, al
je 0x42ae1b
lea eax, [esp + 0xa8]
push eax
lea ecx, [esp + 0x58]
push edi
push ecx
call fcn.00429b90
add esp, 0xc
mov ecx, eax
mov byte [esp + 0x358], 4
call dword [sym.imp.MSVCP71.dll_public:_unsigned_short_int_const____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea ecx, [esp + 0x54]
mov ebx, eax
mov byte [esp + 0x358], 1
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
cmp ebx, 0xffffffff
je 0x42ae96
test bl, 0x10
je 0x42ae17
lea edx, [esp + 0xa8]
push edx
lea eax, [esp + 0x3c]
push edi
push eax
call fcn.00429b90
push 0x451940
push eax
lea ecx, [esp + 0xf4]
push ecx
mov byte [esp + 0x370], 5
call fcn.00429c10
add esp, 0x18
lea ecx, [esp + 0x38]
mov byte [esp + 0x358], 7
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
lea ecx, [esp + 0xe0]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_short_int_const____thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::c_str_void_const]
push eax
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::constructor_unsigned_short_int_const__]
mov edx, dword [esp + 0x36c]
mov eax, dword [esp + 0x10]
push edx
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
mov byte [esp + 0x368], 8
call fcn.0042ab30
add esp, 0x10
lea ecx, [esp + 0x1c]
mov esi, eax
mov byte [esp + 0x358], 7
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
lea ecx, [esp + 0xe0]
mov byte [esp + 0x358], 1
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
test esi, esi
je 0x42ae9c
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0xa8]
mov byte [esp + 0x358], 0
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
mov esi, dword [esp + 0x18]
lea edx, [esp + 0xfc]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x42abe0
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [esp + 0xc4]
mov dword [esp + 0x358], 0xffffffff
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
mov eax, 1
pop esi
mov ecx, dword [esp + 0x34c]
pop edi
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x340]
pop ebx
xor ecx, esp
call fcn.0044b2c4
add esp, 0x34c
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0xa8]
mov byte [esp + 0x358], 0
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
lea ecx, [esp + 0xc4]
mov dword [esp + 0x358], 0xffffffff
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
xor eax, eax
jmp 0x42ae6f