Function at 0x437eb0
Capabilities:
Enumerate files on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x498197
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2d8
push ebx
push esi
xor esi, esi
push edi
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], esi
mov dword [esp + 0x2ec], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
push 0x20000
lea ecx, [esp + 0x10]
mov byte [esp + 0x2f0], 4
mov dword [esp + 0x54], 0x49b9e8
mov dword [esp + 0x58], 0x49b9e4
mov dword [esp + 0x5c], 0x49b9e0
mov dword [esp + 0x60], 0x49b9dc
mov dword [esp + 0x64], 0x49b9d8
mov dword [esp + 0x68], 0x49b9d4
mov dword [esp + 0x6c], 0x49b9d0
mov dword [esp + 0x70], 0x49b9cc
mov dword [esp + 0x74], 0x49b9c8
mov dword [esp + 0x78], 0x49b9c4
mov dword [esp + 0x7c], 0x49b9c0
mov dword [esp + 0x80], 0x49b9bc
call fcn.0047be00
push 0x8000
lea ecx, [esp + 0x20]
call fcn.0047caa0
mov eax, dword [esp + 0x10]
mov edi, dword [ebp + 8]
mov byte [eax], 0x2f
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
push 0x49998a
add ecx, 0xffffffff
push ecx
add edx, 1
push edx
push edi
mov dword [esp + 0x24], esi
call fcn.00437220
mov ebx, eax
add esp, 0x10
cmp ebx, esi
je 0x43833d
mov eax, dword [esp + 0x10]
add eax, 1
push eax
call fcn.00437310
mov edx, dword [esp + 0x14]
add esp, 4
add edx, 1
test eax, eax
je 0x43800c
mov ecx, dword [esp + 0xc]
push ebx
add ecx, 0xffffffff
push ecx
push edx
call fcn.00436c40
mov ecx, dword [esp + 0x1c]
push 0x49b9b8
push eax
mov eax, dword [esp + 0x20]
add eax, 0xffffffff
push eax
add ecx, 1
push ecx
call fcn.00434e70
add esp, 0x1c
jmp 0x43801d
push edx
call fcn.004373e0
add esp, 4
test eax, eax
je 0x43832d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push 0xffffffffffffffff
add eax, 1
push eax
push ecx
push edx
call fcn.0047a310
push edi
call fcn.00436fe0
add esp, 0x14
test eax, eax
je 0x4382c0
mov dword [esp + 0x18], esi
jmp 0x438050
cmp dword [esp + 0x14], esi
jne 0x438282
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x90]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [esp + 0x3c], eax
je 0x438282
lea ebx, [ebx]
lea edx, [esp + 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
movzx eax, word [esp + 0x2c]
movzx ecx, word [esp + 0x2e]
lea eax, [eax + eax*2]
lea edx, [esp + 0x2c]
lea esi, [ecx + eax*4 - 1]
push edx
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
movzx eax, word [esp + 0x2c]
movzx edx, word [esp + 0x2e]
lea ecx, [eax + eax*2]
lea ecx, [edx + ecx*4 - 1]
sub esi, ecx
cmp esi, 6
jg 0x4380ec
movzx eax, word [esp + 0x36]
movzx ecx, word [esp + 0x34]
push eax
push ecx
push str._02d:_02d
lea edx, [esp + 0x8c]
push 0x10
push edx
call fcn.00452ec0
add esp, 0x14
jmp 0x438104
push eax
push 0x49b9a8
lea eax, [esp + 0x88]
push 0x10
push eax
call fcn.00452ec0
add esp, 0x10
mov ecx, dword [esp + 0x10]
mov byte [ebx + ecx + 1], 0
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
push ebx
add edx, 0xffffffff
push edx
add eax, 1
push eax
call fcn.00436c40
mov ecx, dword [esp + 0x1c]
lea esi, [eax + ecx + 1]
mov ecx, dword [esp + 0x18]
push 0xffffffffffffffff
lea edx, [esp + 0xcc]
sub ecx, eax
push edx
sub ecx, 1
push ecx
push esi
call fcn.0047ba60
mov eax, dword [esp + 0x34]
add esp, 0x1c
test eax, eax
jne 0x4381c4
test byte [esp + 0x90], 0x10
je 0x438242
mov ecx, dword [esp + 0x10]
add ecx, 1
cmp byte [ecx], 0
mov eax, ecx
je 0x438178
lea esp, [esp]
add eax, 1
cmp byte [eax], 0
jne 0x438170
sub eax, ecx
push eax
push ecx
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x58]
push ecx
call fcn.00424800
add esp, 0x14
test eax, eax
je 0x438242
movzx eax, word [esp + 0x32]
movzx ecx, word [esp + 0x2e]
push esi
lea edx, [esp + 0x84]
push edx
mov edx, dword [esp + ecx*4 + 0x54]
push eax
push edx
push str.dr__r__r___1_ftp_ftp_____________0__s__02d__s__s_r_n
push edi
call fcn.00436d90
add esp, 0x18
jmp 0x43823e
cmp eax, 1
jne 0x438242
test byte [esp + 0x90], 0x10
jne 0x438242
mov ecx, dword [esp + 0x10]
add ecx, eax
cmp byte [ecx], 0
mov eax, ecx
je 0x4381e8
add eax, 1
cmp byte [eax], 0
jne 0x4381e0
sub eax, ecx
push eax
push ecx
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x58]
push edx
call fcn.00424a40
add esp, 0x14
test eax, eax
je 0x438242
mov ecx, dword [esp + 0xac]
mov eax, dword [esp + 0xb0]
push esi
lea edx, [esp + 0x84]
push edx
movzx edx, word [esp + 0x3a]
push edx
movzx edx, word [esp + 0x3a]
mov edx, dword [esp + edx*4 + 0x58]
push edx
push ecx
push eax
push str._r__r__r___1_ftp_ftp__13I64d__s__02d__s__s_r_n
push edi
call fcn.00436d90
add esp, 0x20
test eax, eax
je 0x43825f
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x90]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x438080
jmp 0x438275
push str.426_Connection_closed__transfer_aborted._r_n
push edi
call fcn.00436e90
mov dword [esp + 0x1c], 1
add esp, 8
mov edx, dword [esp + 0x3c]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
xor esi, esi
mov eax, dword [esp + 0x18]
add eax, 1
cmp eax, 2
mov dword [esp + 0x18], eax
jl 0x438050
cmp dword [esp + 0x14], esi
jne 0x4382aa
push str.226_Transfer_complete._r_n
push edi
call fcn.00436e90
add esp, 8
mov eax, dword [edi + 0x39]
cmp eax, 0xffffffff
je 0x4382c0
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [edi + 0x39], 0xffffffff
lea ecx, [esp + 0x24]
mov byte [esp + 0x2ec], 3
call fcn.0047ca90
lea ecx, [esp + 0x40]
mov byte [esp + 0x2ec], 2
call fcn.0047ca90
lea ecx, [esp + 0x48]
mov byte [esp + 0x2ec], 1
call fcn.0047ca90
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2ec], 0
call fcn.0047ca90
lea ecx, [esp + 0xc]
mov dword [esp + 0x2ec], 0xffffffff
call fcn.0047ca90
mov ecx, dword [esp + 0x2e4]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push str.550_No_such_file_or_directory._r_n
push edi
call fcn.00436e90
add esp, 8
jmp 0x4382c0
push edi
call fcn.00436fe0
add esp, 4
test eax, eax
je 0x4382c0
mov byte [esp + 0x15], 0x3a
xor ebx, ebx
push 2
mov al, bl
add al, 0x41
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x2c]
mov byte [esp + 0x1c], al
push edx
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x58]
push ecx
call fcn.00424800
add esp, 0x14
test eax, eax
je 0x438395
lea edx, [ebx + 0x41]
push edx
push str.dr__r__r___1_ftp_ftp_____________0_Jan_01__00:00__c:_r_n
push edi
call fcn.00436d90
add esp, 0xc
test eax, eax
je 0x4383a2
add ebx, 1
cmp ebx, 0x1a
jl 0x438355
jmp 0x43829c
push str.426_Connection_closed__transfer_aborted._r_n
jmp 0x4382a1