Function at 0x42f7c3
Capabilities:
Send file using ftp

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
mov esi, eax
xor ebx, ebx
xor eax, eax
cmp esi, ebx
mov dword [ebp - 0x20], ebx
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 4], ebx
je 0x42f970
mov edx, dword [ebp + 8]
call fcn.004ccc0d
test eax, eax
jne 0x42f970
mov edi, dword [ebp + 0xc]
mov edx, edi
call fcn.004ccc0d
test eax, eax
jne 0x42f970
cmp dword [ebp + 0x10], ebx
jne 0x42f826
cmp dword [ebp + 0x14], ebx
jne 0x42f826
push ebx
push 2
push edi
push dword [ebp + 8]
push esi
call dword [sym.imp.WININET.dll_FtpPutFileA]
jmp 0x42f972
mov eax, dword [ebp + 8]
push 2
mov dword [ebp - 0x18], edi
pop edi
push 0x57a
push str..File.c
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x20]
push eax
push 0x42f977
push ebx
mov ecx, str.FtpPutFileTimeOut
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], ebx
call fcn.0043556e
cmp eax, ebx
mov dword [ebp - 8], eax
jne 0x42f881
push str._GetLastError_
push ecx
call fcn.00412e07
pop ecx
push eax
push str.:9:FtpPutFileTimeOut___encountered_a_problem__but_is_continuing_anyway:_CreateThread___FAILED:_FtpPutFile___must_now_be_called_manually_without_the_possibility_of_a_time_out._NumThreads_d:__s
call fcn.0042b70b
add esp, 0xc
push ebx
push edi
push dword [ebp + 0xc]
jmp 0x42f817
mov eax, dword [ebp + 0x10]
lea ecx, [eax - 1]
cmp ecx, 0x3e6
ja 0x42f8a3
push eax
push str.:8:FtpPutFileTimeOut___was_given_a_timeout_of_only__ldms___The_timeout_is_being_set_to_2_seconds.
call fcn.0042bd38
pop ecx
pop ecx
mov dword [ebp + 0x10], 0x7d0
call fcn.004fa8e4
mov esi, dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], ebx
jmp 0x42f8e8
cmp dword [ebp - 4], 0x103
jne 0x42f957
cmp dword [ebp + 0x10], ebx
jbe 0x42f8d5
call fcn.004fa8e4
sub eax, dword [ebp - 0xc]
cmp eax, dword [ebp + 0x10]
ja 0x42f8f7
mov edi, dword [ebp + 0x14]
cmp edi, ebx
je 0x42f8e0
cmp dword [edi], ebx
jne 0x42f8fa
push 0x37
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 4]
push eax
push dword [ebp - 8]
call esi
test eax, eax
jne 0x42f8b6
jmp 0x42f957
mov edi, dword [ebp + 0x14]
push dword [ebp - 8]
call fcn.004356c2
test eax, eax
jne 0x42f917
push str._GetLastError_
push str.:2:TerminateThread___FAILED_within_FtpPutFileTimeOut__:__s
call fcn.0042bd38
pop ecx
pop ecx
cmp edi, ebx
je 0x42f934
cmp dword [edi], ebx
je 0x42f934
push dword [ebp + 0xc]
push dword [ebp + 8]
push str.:6:FtpPutFileTimeOut___had_to_forcabily_terminate_the_FtpPutFile___thread_while_uploading___s__to___s_:_A_time_out_was_requested_by_the_caller.
call fcn.0042bd38
add esp, 0xc
jmp 0x42f94a
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push str.:6:FtpPutFileTimeOut___had_to_forcabily_terminate_the_FtpPutFile___thread_while_uploading___s__to___s_:_More_than__ld_milli_seconds_have_passed_since_the_process_started:_time_out_has_occurred.
call fcn.0042bd38
add esp, 0x10
mov dword [ebp - 4], ebx
mov dword [0x60df3c], 0x5b4
mov edi, dword [ebp - 8]
call fcn.00435716
push dword [0x60df3c]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 4]
jmp 0x42f972
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret