Function at 0x10044650
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x1b0
mov eax, dword [0x100b4208]
xor eax, esp
mov dword [esp + 0x1ac], eax
mov eax, dword [esp + 0x1b4]
mov edx, dword [edi + 0x154]
push ebx
mov ebx, dword [edi]
xor ecx, ecx
push ebp
mov ebp, dword [ebx + 0x128]
push esi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], ebp
lea esi, [edi + 0x420]
mov dword [esp + 0x30], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x2c], ecx
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
dec eax
cmp eax, 0x34
ja case.default.0x100446af
jmp dword [eax*4 + 0x100472a4]
xor eax, eax
push eax
mov dword [esi + 0xa4], eax
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0xac]
push eax
mov dword [esi + 0x18], 0xffffffff
call sym.EUFyncFtp.dll_libssh2_session_set_blocking
add esp, 8
mov eax, 2
mov ecx, edi
call fcn.10043d50
mov ecx, dword [esp + 0x30]
mov edx, dword [esi + 0xac]
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_session_startup
add esp, 8
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x1004472f
push str.Failure_establishing_ssh_session
push ebx
call fcn.10032f90
add esp, 8
mov eax, 0x35
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 2
jmp 0x100470c1
mov eax, 3
mov ecx, edi
call fcn.10043d50
push edi
call fcn.100440a0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
jne 0x100470c1
mov eax, 4
jmp 0x100470ba
mov eax, dword [edi + 0x120]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10044763
sub eax, edx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xac]
push eax
mov eax, dword [edi + 0x120]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_userauth_list
add esp, 0x10
mov dword [esi], eax
test eax, eax
jne 0x100447f6
mov edx, dword [esi + 0xac]
push edx
call sym.EUFyncFtp.dll_libssh2_userauth_authenticated
add esp, 4
test eax, eax
je 0x100447c1
push str.SSH_user_accepted_with_no_authentication_n
push ebx
mov dword [esi + 0x10], 1
call fcn.10032f00
add esp, 8
mov eax, 0x10
jmp 0x100470ba
mov eax, dword [esi + 0xac]
push eax
call sym.EUFyncFtp.dll_libssh2_session_last_errno
mov edx, eax
add esp, 4
cmp edx, 0xffffffdb
je 0x1004727d
mov eax, 0x35
mov ecx, edi
call fcn.10043d50
mov eax, edx
call fcn.10043c60
mov dword [esi + 0x1c], eax
jmp 0x100470c1
push eax
push str.SSH_authentication_methods_available:__s_n
push ebx
call fcn.10032f00
add esp, 0xc
mov eax, 5
jmp 0x100470ba
mov dword [esi + 0x10], 0
test byte [ebx + 0x374], 1
je 0x10044a3c
mov ecx, dword [esi]
push str.publickey
push ecx
call fcn.10076920
add esp, 8
test eax, eax
je 0x10044a3c
xor eax, eax
push str.HOME
mov dword [esi + 0xc], eax
mov dword [esi + 8], eax
call fcn.10056150
mov ebp, eax
mov eax, dword [ebx + 0x424]
add esp, 4
test eax, eax
je 0x10044875
cmp byte [eax], 0
je 0x100448c4
test eax, eax
je 0x10044875
push eax
push 0x1009a240
call fcn.100372c0
add esp, 8
jmp 0x10044897
test ebp, ebp
je 0x10044889
push ebp
push str._s_.ssh_id_dsa.pub
call fcn.100372c0
add esp, 8
jmp 0x10044897
push str.id_dsa.pub
call dword [0x100b400c]
add esp, 4
mov dword [esi + 8], eax
test eax, eax
jne 0x100448c4
test ebp, ebp
je 0x100448ac
push ebp
call dword [0x100b4004]
add esp, 4
mov eax, 0x35
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
mov eax, dword [ebx + 0x420]
test eax, eax
je 0x100448de
push eax
push 0x1009a240
call fcn.100372c0
add esp, 8
jmp 0x10044900
test ebp, ebp
je 0x100448f2
push ebp
push str._s_.ssh_id_dsa
call fcn.100372c0
add esp, 8
jmp 0x10044900
push str.id_dsa
call dword [0x100b400c]
add esp, 4
mov dword [esi + 0xc], eax
test eax, eax
jne 0x1004492f
test ebp, ebp
je 0x10044915
push ebp
call dword [0x100b4004]
add esp, 4
mov eax, dword [esi + 8]
test eax, eax
je 0x100448ac
push eax
call dword [0x100b4004]
mov dword [esi + 8], 0
jmp 0x100448a9
mov eax, dword [ebx + 0x3b8]
mov dword [esi + 4], eax
test eax, eax
jne 0x10044943
mov dword [esi + 4], 0x100ac770
test ebp, ebp
je 0x10044951
push ebp
call dword [0x100b4004]
add esp, 4
mov edx, dword [esi + 8]
push edx
push str.Using_ssh_public_key_file__s_n
push ebx
call fcn.10032f00
mov eax, dword [esi + 0xc]
push eax
push str.Using_ssh_private_key_file__s_n
push ebx
call fcn.10032f00
add esp, 0x18
mov eax, 6
jmp 0x100470ba
mov eax, dword [edi + 0x120]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10044985
mov ecx, dword [esi + 4]
push ecx
mov ecx, dword [esi + 8]
sub eax, edx
mov edx, dword [esi + 0xc]
push edx
push ecx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [edi + 0x120]
add esp, 4
push eax
mov eax, dword [esi + 0xac]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_userauth_publickey_fromfile_ex
add esp, 0x18
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
mov eax, dword [esi + 8]
xor ebp, ebp
cmp eax, ebp
je 0x100449dd
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 8], ebp
mov eax, dword [esi + 0xc]
cmp eax, ebp
je 0x100449f1
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0xc], ebp
cmp dword [esp + 0xc], ebp
jne 0x10044a16
push str.Initialized_SSH_public_key_authentication_n
push ebx
mov dword [esi + 0x10], 1
call fcn.10032f00
add esp, 8
mov eax, 0x10
jmp 0x100470ba
mov edx, dword [esi + 0xac]
push ebp
push ebp
lea ecx, [esp + 0x50]
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_session_last_error
mov eax, dword [esp + 0x58]
push eax
push str.SSH_public_key_authentication_failed:__s_n
push ebx
call fcn.10032f00
add esp, 0x1c
mov eax, 7
jmp 0x100470ba
test byte [ebx + 0x374], 2
je 0x10044a6d
mov ecx, dword [esi]
push str.password
push ecx
call fcn.10076920
add esp, 8
test eax, eax
je 0x10044a6d
mov eax, 8
jmp 0x100470ba
mov eax, 0xc
jmp 0x100470ba
mov eax, dword [edi + 0x124]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10044a80
sub eax, edx
mov edx, eax
mov eax, dword [edi + 0x120]
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10044a94
sub eax, ebp
push 0
push edx
mov ebp, eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [edi + 0x124]
add esp, 4
push eax
push edx
push ebp
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xac]
add esp, 4
push eax
mov eax, dword [edi + 0x120]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_userauth_password_ex
add esp, 0x18
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jne 0x10044a6d
push str.Initialized_password_authentication_n
push ebx
mov dword [esi + 0x10], 1
call fcn.10032f00
add esp, 8
mov eax, 0x10
jmp 0x100470ba
test byte [ebx + 0x374], 4
je case.0x100446af.13
mov edx, dword [esi]
push str.hostbased
push edx
call fcn.10076920
add esp, 8
test eax, eax
je case.0x100446af.13
mov eax, 0xd
jmp 0x100470ba
mov eax, 9
jmp 0x100470ba
test byte [ebx + 0x374], 0x10
je 0x10044b80
mov eax, dword [esi]
push str.publickey
push eax
call fcn.10076920
add esp, 8
test eax, eax
je 0x10044b80
cmp dword [esi + 0xc0], 0
jne 0x10044b8a
mov ecx, dword [esi + 0xac]
push ecx
call sym.EUFyncFtp.dll_libssh2_agent_init
add esp, 4
mov dword [esi + 0xc0], eax
test eax, eax
jne 0x10044b8a
push str.Could_not_create_agent_object_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, 0xe
jmp 0x100470ba
mov edx, dword [esi + 0xc0]
push edx
call sym.EUFyncFtp.dll_libssh2_agent_connect
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10044bc2
push str.Failure_connecting_to_agent_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, 0xe
jmp 0x100470ba
mov eax, 0xa
jmp 0x100470ba
mov eax, dword [esi + 0xc0]
push eax
call sym.EUFyncFtp.dll_libssh2_agent_list_identities
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10044c04
push str.Failure_requesting_identities_to_agent_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, 0xe
jmp 0x100470ba
mov eax, 0xb
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0xc8], 0
jmp 0x100470c1
mov ecx, dword [esi + 0xc8]
mov edx, dword [esi + 0xc0]
push ecx
lea ebp, [esi + 0xc4]
push ebp
push edx
call sym.EUFyncFtp.dll_libssh2_agent_get_identity
add esp, 0xc
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jne 0x10044c86
mov eax, dword [ebp]
mov ecx, dword [edi + 0x120]
mov edx, dword [esi + 0xc0]
push eax
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_agent_userauth
add esp, 0xc
mov dword [esp + 0xc], eax
test eax, eax
jge 0x10044cc8
cmp eax, 0xffffffdb
je 0x100470c1
mov eax, dword [ebp]
mov dword [esi + 0xc8], eax
jmp 0x100470c1
jge 0x10044ccc
push str.Failure_requesting_identities_to_agent_n
push ebx
call fcn.10032f00
mov eax, dword [esp + 0x14]
add esp, 8
test eax, eax
jne 0x10044b80
push str.Agent_based_authentication_successful_n
push ebx
mov dword [esi + 0x10], 1
call fcn.10032f00
add esp, 8
mov eax, 0x10
mov ecx, edi
call fcn.10043d50
jmp 0x100470cc
mov eax, dword [esp + 0xc]
cmp eax, 1
jne 0x10044c9a
push str.No_identity_would_match_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, 0xe
jmp 0x100470ba
test byte [ebx + 0x374], 8
je 0x100447b7
mov ecx, dword [esi]
push str.keyboard_interactive
push ecx
call fcn.10076920
add esp, 8
test eax, eax
je 0x100447b7
mov eax, 0xf
jmp 0x100470ba
mov eax, dword [edi + 0x120]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10044d21
sub eax, edx
push 0x10043ba0
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [edi + 0x120]
add esp, 4
push eax
mov eax, dword [esi + 0xac]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_userauth_keyboard_interactive_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jne 0x100447b7
push str.Initialized_keyboard_interactive_authentication_n
push ebx
mov dword [esi + 0x10], 1
call fcn.10032f00
add esp, 8
mov eax, 0x10
jmp 0x100470ba
cmp dword [esi + 0x10], 0
jne 0x10044daf
push str.Authentication_failure
push ebx
call fcn.10032f90
add esp, 8
mov eax, 0x35
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x43
jmp 0x100470c1
push str.Authentication_complete_n
push ebx
call fcn.10032f00
mov ecx, dword [edi]
push 5
push ecx
call fcn.1003b270
mov edx, dword [esp + 0x40]
mov eax, dword [edi + 0x260]
add esp, 0x10
mov dword [edi + 0x26c], edx
mov dword [edi + 0x270], 0xffffffff
cmp dword [eax + 0x3c], 0x20
jne 0x10044df1
mov eax, 0x11
jmp 0x100470ba
push str.SSH_CONNECT_phase_done_n
push ebx
call fcn.10032f00
add esp, 8
jmp 0x100470b8
mov ecx, dword [esi + 0xac]
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_init
add esp, 4
mov dword [esi + 0xb4], eax
test eax, eax
jne 0x10044e62
mov edx, dword [esi + 0xac]
push edx
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov ecx, dword [esi + 0xac]
push 0
push 0
lea eax, [esp + 0x44]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_session_last_error
mov edx, dword [esp + 0x4c]
push edx
push str.Failure_initializing_sftp_session:__s
push ebx
call fcn.10032f90
add esp, 0x1c
jmp 0x10044717
mov eax, 0x12
jmp 0x100470ba
push 2
push 0x103
lea eax, [esp + 0xbc]
push eax
push 1
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
add esp, 4
push eax
push 0x1009a3fc
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_symlink_ex
add esp, 0x18
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jle 0x10044ef0
lea edx, [esp + 0xb4]
push edx
mov byte [esp + eax + 0xb8], 0
call dword [0x100b400c]
add esp, 4
mov dword [esi + 0x5c], eax
test eax, eax
jne 0x10044ee3
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
mov ecx, dword [edi]
mov dword [ecx + 0x86b8], eax
jmp 0x100470b8
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
add esp, 8
call fcn.10043bf0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x10044f17
mov eax, 0x4f
mov dword [esi + 0x1c], eax
jmp 0x100470b8
mov eax, dword [esi + 0x5c]
push ebp
push eax
mov eax, edi
call fcn.10043d60
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
je 0x10044f3e
mov dword [esi + 0x1c], eax
jmp 0x100470b8
cmp dword [ebx + 0x238], 0
je 0x100453d7
push str.Sending_quote_commands_n
push ebx
call fcn.10032f00
mov ecx, dword [ebx + 0x238]
add esp, 8
mov dword [esi + 0x20], ecx
mov eax, 0x15
jmp 0x100470ba
cmp dword [ebx + 0x23c], 0
je 0x100470b8
push str.Sending_quote_commands_n
push ebx
call fcn.10032f00
mov edx, dword [ebx + 0x23c]
add esp, 8
mov dword [esi + 0x20], edx
mov eax, 0x15
jmp 0x100470ba
mov eax, dword [esi + 0x20]
mov ebp, dword [eax]
mov dword [esi + 0x58], 0
cmp byte [ebp], 0x2a
jne 0x10044fb4
inc ebp
mov dword [esi + 0x58], 1
push ebp
push 0x1009e194
call fcn.100594b0
add esp, 8
test eax, eax
je 0x10045091
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
push edx
push str.257___s__is_current_directory._n
call fcn.100372c0
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x10045002
lea eax, [ebp + 0x2a]
mov ecx, edi
mov dword [esp + 0x14], 0x1b
call fcn.10043d50
mov dword [esi + 0x18], 0xffffffff
jmp 0x100470c1
cmp dword [ebx + 0x330], 0
je 0x1004503a
push edi
push 4
push str.PWD_n
push 2
push ebx
call fcn.10032e10
mov eax, ebp
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045023
push edi
sub eax, edx
push eax
push ebp
push 1
push ebx
call fcn.10032e10
add esp, 0x14
mov eax, ebp
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045040
sub eax, edx
push eax
push ebp
push 2
push edi
call fcn.10033270
push ebp
mov dword [esp + 0x28], eax
call dword [0x100b4004]
add esp, 0x14
cmp dword [esp + 0x14], 0
mov ecx, edi
je 0x10045087
mov eax, 0x2a
call fcn.10043d50
mov eax, dword [esp + 0x14]
mov dword [esi + 0x18], 0xffffffff
mov dword [esi + 0x1c], eax
jmp 0x100470c1
mov eax, 0x16
jmp 0x100470bc
test ebp, ebp
je 0x100453cd
push 0x20
push ebp
call fcn.10075f20
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne 0x100450d9
push str.Syntax_error_in_SFTP_command._Supply_parameter_s__
push ebx
call fcn.10032f90
add esp, 8
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x18], 0xffffffff
mov dword [esi + 0x1c], 0x15
jmp 0x100470c1
lea ecx, [esp + 0x24]
lea ebx, [esi + 0x24]
push ecx
call fcn.10044410
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x10045135
mov ebx, eax
cmp ebx, 0x1b
jne 0x10045104
mov edx, dword [esp + 0x10]
push str.Out_of_memory
push edx
jmp 0x1004510e
mov eax, dword [esp + 0x10]
push str.Syntax_error:_Bad_first_parameter
push eax
call fcn.10032f90
add esp, 8
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], ebx
mov ebx, dword [esp + 0x10]
mov dword [esi + 0x18], 0xffffffff
jmp 0x100470c1
push 6
push str.chgrp
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x1004533a
push 6
push str.chmod
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x1004533a
push 6
push str.chown
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x1004533a
push 3
push 0x1009e0f8
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x100452f3
push 8
push 0x1009e0ec
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x100452f3
push 6
push str.mkdir
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x100451d6
mov eax, 0x1a
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
push 7
push str.rename
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x1004523c
lea ecx, [esp + 0x24]
lea ebx, [esi + 0x28]
push ecx
call fcn.10044410
mov ebx, eax
add esp, 4
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x10045227
cmp ebx, 0x1b
jne 0x10045218
mov edx, dword [esp + 0x10]
push str.Out_of_memory
push edx
jmp 0x1004536f
mov eax, dword [esp + 0x10]
push str.Syntax_error_in_rename:_Bad_second_parameter
push eax
jmp 0x1004536f
mov eax, 0x1b
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
push 6
push str.rmdir
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x10045265
mov eax, 0x1c
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
push 3
push 0x1009e0a0
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x1004528e
mov eax, 0x1d
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
mov ecx, dword [esp + 0x10]
push str.Unknown_SFTP_command
push ecx
call fcn.10032f90
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x100452b8
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x100452d0
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
mov dword [esi + 0x1c], 0x15
mov dword [esi + 0x18], 0xffffffff
jmp 0x100470c1
lea edx, [esp + 0x24]
lea ebx, [esi + 0x28]
push edx
call fcn.10044410
mov ebx, eax
add esp, 4
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x10045325
cmp ebx, 0x1b
jne 0x1004531e
mov eax, dword [esp + 0x10]
push str.Out_of_memory
push eax
jmp 0x1004536f
push str.Syntax_error_in_ln_symlink:_Bad_second_parameter
jmp 0x1004536a
mov eax, 0x19
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
lea edx, [esp + 0x24]
lea ebx, [esi + 0x28]
push edx
call fcn.10044410
mov ebx, eax
add esp, 4
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x10045398
cmp ebx, 0x1b
jne 0x10045365
mov eax, dword [esp + 0x10]
push str.Out_of_memory
push eax
jmp 0x1004536f
push str.Syntax_error_in_chgrp_chmod_chown:_Bad_second_parameter
mov ecx, dword [esp + 0x14]
push ecx
call fcn.10032f90
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045116
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
jmp 0x10045116
xor eax, eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], eax
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], eax
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], eax
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], eax
mov dword [esi + 0x50], eax
mov dword [esi + 0x54], eax
mov eax, 0x17
mov ecx, edi
call fcn.10043d50
mov ebx, dword [esp + 0x10]
jmp 0x100470c1
cmp dword [esi + 0x20], 0
jne 0x100470c1
mov eax, 0x1e
jmp 0x100470ba
mov eax, dword [esi + 0x24]
test eax, eax
je 0x100453f9
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x10045411
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov edx, dword [esi + 0x20]
mov eax, dword [edx + 4]
mov dword [esi + 0x20], eax
test eax, eax
je 0x10045428
mov eax, 0x15
jmp 0x100470ba
mov eax, dword [esi + 0x18]
mov ecx, edi
cmp eax, 0xffffffff
je 0x10045443
call fcn.10043d50
mov dword [esi + 0x18], 0xffffffff
jmp 0x100470c1
mov eax, 0x1e
jmp 0x100470bc
mov eax, dword [esi + 0x20]
mov ebp, dword [eax]
mov dword [esi + 0x58], 0
cmp byte [ebp], 0x2a
jne 0x10045467
inc ebp
mov dword [esi + 0x58], 1
push 5
push 0x1009e014
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
jne 0x1004552a
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045485
lea ecx, [esi + 0x30]
push ecx
sub eax, edx
push 0
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [esi + 0x28]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_stat_ex
add esp, 0x14
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x1004552a
cmp dword [esi + 0x58], 0
jne 0x1004552a
mov ecx, dword [esi + 0xb4]
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x100454f7
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1004550f
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, ebp
call fcn.10044560
push eax
push str.Attempt_to_get_SFTP_stats_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
push 5
push 0x1009dfe4
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x100455b4
mov edx, dword [esi + 0x24]
push 0xa
push 0
push edx
call fcn.1007635e
add esp, 0xc
mov dword [esi + 0x44], eax
mov dword [esi + 0x30], 2
test eax, eax
jne 0x100456b2
mov eax, dword [esi + 0x24]
movzx ecx, byte [eax]
push ecx
call fcn.10076592
add esp, 4
test eax, eax
jne 0x100456b2
cmp dword [esi + 0x58], eax
jne 0x100456b2
mov eax, dword [esi + 0x24]
xor ebp, ebp
cmp eax, ebp
je 0x10045596
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], ebp
mov eax, dword [esi + 0x28]
cmp eax, ebp
je 0x100455aa
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], ebp
push str.Syntax_error:_chgrp_gid_not_a_number
jmp 0x100450b1
push 5
push 0x1009e014
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x10045635
mov edx, dword [esi + 0x24]
push 8
push 0
push edx
call fcn.1007635e
add esp, 0xc
mov dword [esi + 0x48], eax
mov dword [esi + 0x30], 4
test eax, eax
jne 0x100456b2
mov eax, dword [esi + 0x24]
movzx ecx, byte [eax]
push ecx
call fcn.10076592
add esp, 4
test eax, eax
jne 0x100456b2
mov eax, dword [esi + 0x24]
xor ebp, ebp
cmp eax, ebp
je 0x10045617
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], ebp
mov eax, dword [esi + 0x28]
cmp eax, ebp
je 0x1004562b
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], ebp
push str.Syntax_error:_chmod_permissions_not_a_number
jmp 0x100450b1
push 5
push 0x1009df84
push ebp
call fcn.100594d0
add esp, 0xc
test eax, eax
je 0x100456b2
mov edx, dword [esi + 0x24]
push 0xa
xor ebp, ebp
push ebp
push edx
call fcn.1007635e
add esp, 0xc
mov dword [esi + 0x40], eax
mov dword [esi + 0x30], 2
cmp eax, ebp
jne 0x100456b2
mov eax, dword [esi + 0x24]
movzx ecx, byte [eax]
push ecx
call fcn.10076592
add esp, 4
test eax, eax
jne 0x100456b2
cmp dword [esi + 0x58], ebp
jne 0x100456b2
mov eax, dword [esi + 0x24]
cmp eax, ebp
je 0x10045694
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], ebp
mov eax, dword [esi + 0x28]
cmp eax, ebp
je 0x100456a8
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], ebp
push str.Syntax_error:_chown_uid_not_a_number
jmp 0x100450b1
mov eax, 0x18
jmp 0x100470ba
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100456c2
sub eax, edx
lea edx, [esi + 0x30]
push edx
push 2
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
add esp, 4
push eax
mov eax, dword [esi + 0x28]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_stat_ex
add esp, 0x14
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045734
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1004574c
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, ebp
call fcn.10044560
push eax
push str.Attempt_to_set_SFTP_stats_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
mov eax, 0x16
jmp 0x100470ba
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045777
sub eax, edx
mov edx, eax
mov eax, dword [esi + 0x24]
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045788
sub eax, ebp
push 0
push edx
mov ebp, eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
add esp, 4
push eax
mov eax, dword [esi + 0x28]
push eax
push ebp
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0xb4]
add esp, 4
push eax
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_symlink_ex
add esp, 0x18
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov eax, dword [esi + 0xb4]
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045806
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1004581e
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, ebp
call fcn.10044560
push eax
push str.symlink_command_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
mov eax, dword [esi + 0x24]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045840
mov ecx, dword [ebx + 0x384]
sub eax, edx
push ecx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [esi + 0x24]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_mkdir_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov ecx, dword [esi + 0xb4]
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x100458bb
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, ebp
call fcn.10044560
push eax
push str.mkdir_command_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100458e0
sub eax, edx
mov edx, eax
mov eax, dword [esi + 0x24]
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100458f1
sub eax, ebp
push 7
push edx
mov ebp, eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [esi + 0x28]
add esp, 4
push eax
push edx
push ebp
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
add esp, 4
push eax
mov eax, dword [esi + 0x24]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_rename_ex
add esp, 0x18
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045977
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1004598f
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, ebp
call fcn.10044560
push eax
push str.rename_command_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
mov eax, dword [esi + 0x24]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100459b0
sub eax, edx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
push eax
mov eax, dword [esi + 0x24]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_rmdir_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045a21
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, ebp
call fcn.10044560
push eax
push str.rmdir_command_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
mov eax, dword [esi + 0x24]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045a42
sub eax, edx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
push eax
mov eax, dword [esi + 0x24]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_unlink_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10045767
cmp dword [esi + 0x58], 0
jne 0x10045767
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
mov eax, dword [esi + 0x24]
add esp, 8
test eax, eax
je 0x10045ab3
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, ebp
call fcn.10044560
push eax
push str.rm_command_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100450ba
cmp dword [ebx + 0x328], 0
je 0x10045ae1
mov eax, 0x1f
jmp 0x100470ba
mov eax, dword [esp + 0x18]
mov edx, dword [eax]
mov eax, edx
lea ebp, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045af0
sub eax, ebp
cmp byte [eax + edx - 1], 0x2f
mov ecx, edi
jne 0x10045b0c
mov eax, 0x23
jmp 0x100470bc
mov eax, 0x28
jmp 0x100470bc
mov ecx, dword [ebx + 0x86e8]
mov eax, dword [ebx + 0x86ec]
mov edx, ecx
or edx, eax
je 0x10045bb4
test eax, eax
jg 0x10045bb4
jl 0x10045b3a
test ecx, ecx
jae 0x10045bb4
mov eax, dword [ebp]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045b40
lea ecx, [esp + 0x5c]
push ecx
sub eax, edx
push 0
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [ebp]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_stat_ex
add esp, 0x14
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
xor edx, edx
cmp eax, edx
je 0x10045b8e
mov dword [ebx + 0x86e8], edx
mov dword [ebx + 0x86ec], edx
jmp 0x10045bb4
mov eax, dword [esp + 0x68]
cmp eax, edx
mov ecx, dword [esp + 0x64]
jl 0x10047109
jg 0x10045ba8
cmp ecx, edx
jb 0x10047109
mov dword [ebx + 0x86e8], ecx
mov dword [ebx + 0x86ec], eax
cmp dword [ebx + 0x2f0], 0
je 0x10045bc4
mov edx, 0xe
jmp 0x10045be4
cmp dword [ebx + 0x86ec], 0
jl 0x10045bdf
jg 0x10045bd8
cmp dword [ebx + 0x86e8], 0
jbe 0x10045bdf
mov edx, 6
jmp 0x10045be4
mov edx, 0x1a
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
lea ebp, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045bf0
mov ecx, dword [ebx + 0x380]
push 0
push ecx
sub eax, ebp
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [esp + 0x28]
mov ecx, dword [esi + 0xb4]
add esp, 4
push eax
mov eax, dword [edx]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_open_ex
add esp, 0x18
mov dword [esi + 0xb8], eax
test eax, eax
jne 0x10045d51
mov edx, dword [esi + 0xac]
push edx
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
cmp eax, 0xffffffe1
jne 0x10045c6b
mov eax, dword [esi + 0xb4]
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
add esp, 8
mov edx, eax
jmp 0x10045c6e
or edx, 0xffffffff
cmp dword [esi + 0xa4], 0
je 0x10045cb3
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
test edx, edx
jl 0x10045c90
mov eax, edx
call fcn.10043bf0
jmp 0x10045c95
mov eax, 0x4f
mov dword [esi + 0x1c], eax
mov eax, edx
call fcn.10044560
push eax
push str.Creating_the_dir_file_failed:__s
push ebx
call fcn.10032f90
add esp, 0xc
jmp 0x100470c1
cmp edx, 2
je 0x10045cc2
cmp edx, 4
je 0x10045cc2
cmp edx, 0xa
jne 0x10045cf6
cmp dword [ebx + 0x2d4], 0
je 0x10045cf6
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045cd4
sub eax, ebp
cmp eax, 1
jbe 0x10045cf6
mov dword [esi + 0xa4], 1
mov eax, 0x20
jmp 0x100470ba
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
test edx, edx
jl 0x10045d0f
mov eax, edx
call fcn.10043bf0
jmp 0x10045d14
mov eax, 0x4f
mov dword [esi + 0x1c], eax
test eax, eax
jne 0x10045d44
mov dword [esi + 0x1c], 0x4f
or edx, 0xffffffff
mov eax, str.ssh_error
mov ecx, dword [esp + 0xc]
push ecx
push edx
push eax
push str.Upload_failed:__s___d__d_
push ebx
call fcn.10032f90
add esp, 0x14
jmp 0x100470c1
test edx, edx
jl 0x10045d25
mov eax, edx
call fcn.10044560
jmp 0x10045d2a
mov ecx, dword [ebx + 0x86ec]
mov edx, dword [ebx + 0x86e8]
test ecx, ecx
jl 0x10045ea2
jg 0x10045d6f
test edx, edx
jbe 0x10045ea2
mov eax, dword [edi + 0x2bc]
test eax, eax
je 0x10045d8f
push 0
push ecx
push edx
mov edx, dword [edi + 0x2c0]
push edx
call eax
add esp, 0x10
mov dword [esp + 0x2c], eax
jmp 0x10045d93
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x10045e3a
cmp eax, 2
jne 0x10047136
xor ebx, ebx
mov dword [esp + 0x38], ebx
lea ebx, [ebx]
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x86e8]
mov ecx, dword [ecx + 0x86ec]
sub eax, ebx
sbb ecx, dword [esp + 0x38]
js 0x10045dd8
jg 0x10045dd1
cmp eax, 0x4000
jbe 0x10045dd8
mov ebp, 0x4000
jmp 0x10045de4
push ecx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
add esp, 8
mov ebp, eax
mov eax, dword [edi + 0x2c8]
mov ecx, dword [edi + 0x2c4]
push eax
mov eax, dword [esp + 0x14]
push ebp
add eax, 0x5dc
push 1
push eax
call ecx
add esp, 0x10
add ebx, eax
adc dword [esp + 0x38], 0
test eax, eax
je 0x10047161
cmp eax, ebp
ja 0x10047161
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
cmp edx, dword [eax + 0x86ec]
jl 0x10045db0
jg 0x10045e3a
mov ecx, eax
cmp ebx, dword [ecx + 0x86e8]
jb 0x10045db0
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x8704]
mov ecx, dword [ebx + 0x8700]
test eax, eax
jl 0x10045e85
jg 0x10045e54
test ecx, ecx
jbe 0x10045e85
sub ecx, dword [ebx + 0x86e8]
sbb eax, dword [ebx + 0x86ec]
mov dword [ebx + 0x8700], ecx
mov dword [ebx + 0x8704], eax
mov eax, ecx
mov ecx, dword [ebx + 0x8704]
push ecx
push eax
push ebx
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], ecx
call fcn.1003b480
add esp, 0xc
mov edx, dword [ebx + 0x86ec]
mov eax, dword [ebx + 0x86e8]
mov ecx, dword [esi + 0xb8]
push edx
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_seek64
add esp, 0xc
mov eax, dword [ebx + 0x8704]
mov ecx, dword [ebx + 0x8700]
test eax, eax
jl 0x10045ec9
jg 0x10045eb8
test ecx, ecx
jbe 0x10045ec9
push eax
push ecx
push ebx
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], eax
call fcn.1003b480
add esp, 0xc
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
call fcn.10058130
mov edx, dword [edi + 0x270]
mov dword [edi + 0x26c], edx
mov edx, dword [esp + 0x34]
add esp, 0x20
test edx, edx
je 0x10045f08
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], edx
jmp 0x100470c1
mov eax, dword [ebx + 0xf8]
push 1
mov dword [esi + 0xbc], eax
push ebx
mov dword [edi + 0x4f0], 2
call fcn.10031250
add esp, 8
jmp 0x100470b8
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov eax, edx
lea ebp, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045f40
sub eax, ebp
mov ecx, edi
cmp eax, 1
jbe 0x10045f61
inc edx
mov dword [esi + 0xa8], edx
mov eax, 0x21
jmp 0x100470bc
mov eax, 0x1f
jmp 0x100470bc
mov edx, dword [esi + 0xa8]
push 0x2f
push edx
call fcn.10075f20
add esp, 8
mov dword [esi + 0xa8], eax
test eax, eax
je 0x10045ad7
mov byte [eax], 0
mov eax, dword [ebp]
push eax
push str.Creating_directory__s_n
push ebx
call fcn.10032f00
add esp, 0xc
mov eax, 0x22
jmp 0x100470ba
mov eax, dword [ebp]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10045fb0
mov ecx, dword [ebx + 0x384]
sub eax, edx
push ecx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [ebp]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_mkdir_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
mov ecx, dword [esi + 0xa8]
mov byte [ecx], 0x2f
inc dword [esi + 0xa8]
cmp eax, 0xffffffff
jne 0x10046026
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
add esp, 8
cmp eax, 0xb
je 0x10046026
cmp eax, 4
je 0x10046026
cmp eax, 3
jne 0x100470df
mov eax, 0x21
jmp 0x100470ba
push 0xffffffffffffffff
push 0xffffffffffffffff
push ebx
call fcn.1003b440
add esp, 0xc
cmp dword [ebx + 0x320], 0
jne 0x100470b8
mov eax, dword [ebp]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10046050
push 1
push 0
sub eax, edx
push 0
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov ecx, dword [esi + 0xb4]
add esp, 4
push eax
mov eax, dword [ebp]
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_open_ex
add esp, 0x18
mov dword [esi + 0xb8], eax
test eax, eax
jne 0x100460ee
mov edx, dword [esi + 0xac]
push edx
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov eax, dword [esi + 0xb4]
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
call fcn.10044560
push eax
push str.Could_not_open_directory_for_reading:__s
push ebx
call fcn.10032f90
add esp, 0x14
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov eax, ebp
call fcn.10043bf0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x100460e6
mov eax, 0x4f
mov dword [esi + 0x1c], eax
jmp 0x100470c1
push 0x105
call dword [section..data]
add esp, 4
mov dword [esi + 0x88], eax
test eax, eax
jne 0x1004611e
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
push 0x105
call dword [section..data]
add esp, 4
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x1004616c
mov eax, dword [esi + 0x88]
test eax, eax
je 0x10046154
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], 0
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
mov eax, 0x24
jmp 0x100470ba
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x88]
mov eax, dword [esi + 0xb8]
lea ebp, [esi + 0x60]
push ebp
push 0x104
push ecx
push 0x104
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_readdir_ex
add esp, 0x18
mov dword [esi + 0x90], eax
cmp eax, 0xffffffdb
je 0x1004727d
test eax, eax
jle 0x10046367
mov ecx, dword [esi + 0x88]
mov byte [eax + ecx], 0
cmp dword [ebx + 0x2f4], 0
je 0x10046263
mov edx, dword [esi + 0x88]
push edx
push 0x1009a424
call fcn.100372c0
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x100461ff
lea eax, [ebp + 0x2a]
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
mov eax, dword [esi + 0x90]
inc eax
push eax
push ebp
push 1
push edi
call fcn.10033270
push ebp
mov dword [esp + 0x28], eax
call dword [0x100b4004]
add esp, 0x14
cmp dword [esp + 0x14], 0
jne 0x100470b8
mov eax, dword [esi + 0x90]
inc eax
cdq
add dword [ebx + 0x70], eax
adc dword [ebx + 0x74], edx
cmp dword [ebx + 0x330], 0
je 0x100470c1
mov ecx, dword [esi + 0x90]
mov edx, dword [esi + 0x88]
push edi
push ecx
push edx
push 4
push ebx
call fcn.10032e10
add esp, 0x14
jmp 0x100470c1
mov eax, dword [esi + 0x8c]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10046270
sub eax, edx
mov dword [esi + 0x98], eax
add eax, 0x50
push 1
push eax
mov dword [esi + 0x94], eax
call dword [0x100b4010]
add esp, 8
mov dword [esi + 0x9c], eax
test eax, eax
jne 0x100462ec
xor ebp, ebp
mov eax, dword [esi + 0x88]
cmp eax, ebp
je 0x100462ba
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], ebp
mov eax, dword [esi + 0x8c]
cmp eax, ebp
je 0x100462d4
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x8c], ebp
mov eax, 0x2a
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x1c], 0x1b
jmp 0x100470c1
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x8c]
push ecx
push edx
push eax
call fcn.100752a0
add esp, 0xc
test byte [ebp], 4
je 0x10046531
mov eax, dword [esi + 0x78]
and eax, 0xf000
cmp eax, 0xa000
jne 0x10046531
push 0x105
call dword [section..data]
xor ebp, ebp
add esp, 4
mov dword [esi + 0xa0], eax
cmp eax, ebp
je 0x100462a0
mov ecx, dword [esi + 0x88]
mov edx, dword [esp + 0x18]
push ecx
mov ecx, dword [edx]
push ecx
push str._s_s
push 0x104
push eax
call fcn.100368d0
add esp, 0x14
lea eax, [ebp + 0x25]
jmp 0x100470ba
jne 0x100463af
mov eax, dword [esi + 0x88]
test eax, eax
je 0x10046387
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], 0
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x100463a5
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x8c], 0
mov eax, 0x27
jmp 0x100470ba
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
add esp, 8
mov ebp, eax
call fcn.10043bf0
mov dword [esp + 0x14], eax
test eax, eax
jne 0x100463d8
mov eax, 0x4f
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0xac]
push eax
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
push eax
mov eax, ebp
call fcn.10044560
push eax
push str.Could_not_open_remote_file_for_reading:__s_::__d
push ebx
call fcn.10032f90
mov eax, dword [esi + 0x88]
add esp, 0x10
test eax, eax
je 0x1004641f
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], 0
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x1004643d
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x8c], 0
mov eax, 0x2a
jmp 0x100470ba
mov eax, dword [esi + 0xa0]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10046450
mov ecx, dword [esi + 0x88]
push 1
push 0x104
sub eax, edx
push ecx
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [esi + 0xa0]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_symlink_ex
add esp, 0x18
mov dword [esi + 0x90], eax
cmp eax, 0xffffffdb
je 0x1004727d
mov eax, dword [esi + 0xa0]
xor ebp, ebp
cmp eax, ebp
je 0x100464b2
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0xa0], ebp
mov ecx, dword [esi + 0x90]
mov edx, dword [esi + 0x9c]
add ecx, 4
add dword [esi + 0x94], ecx
mov eax, dword [esi + 0x94]
push eax
push edx
call dword [0x100b4008]
add esp, 8
cmp eax, ebp
jne 0x100464ff
mov eax, dword [esi + 0x9c]
cmp eax, ebp
je 0x100462a0
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x9c], ebp
jmp 0x100462a0
mov edx, dword [esi + 0x88]
mov ecx, dword [esi + 0x98]
push edx
mov edx, dword [esi + 0x94]
sub edx, ecx
push str._____s
push edx
add ecx, eax
push ecx
mov dword [esi + 0x9c], eax
call fcn.100368d0
add esp, 0x10
add dword [esi + 0x98], eax
mov eax, 0x26
jmp 0x100470ba
mov eax, dword [esi + 0x98]
mov ecx, dword [esi + 0x94]
mov edx, dword [esi + 0x9c]
push 0x1009c8e8
sub ecx, eax
push ecx
add edx, eax
push edx
call fcn.100368d0
add dword [esi + 0x98], eax
mov eax, dword [esi + 0x98]
push eax
mov eax, dword [esi + 0x9c]
push eax
push 1
push edi
call fcn.10033270
mov ebp, eax
add esp, 0x1c
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x100465b5
cmp dword [ebx + 0x330], eax
je 0x100465a8
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x9c]
push edi
push ecx
push edx
push 4
push ebx
call fcn.10032e10
add esp, 0x14
mov eax, dword [esi + 0x98]
cdq
add dword [ebx + 0x70], eax
adc dword [ebx + 0x74], edx
mov eax, dword [esi + 0x9c]
test eax, eax
je 0x100465d3
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x9c], 0
mov ecx, edi
test ebp, ebp
je 0x100465e0
xor eax, eax
jmp 0x100470bc
mov eax, 0x24
jmp 0x100470bc
mov eax, dword [esi + 0xb8]
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_close_handle
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov eax, dword [esi + 0x88]
xor ebp, ebp
mov dword [esi + 0xb8], ebp
cmp eax, ebp
je 0x10046624
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], ebp
mov eax, dword [esi + 0x8c]
cmp eax, ebp
je 0x1004663e
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x8c], ebp
push ebp
push 0xffffffffffffffff
push ebp
push ebp
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
call fcn.10058130
add esp, 0x20
jmp 0x100470b8
mov eax, dword [ebp]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10046660
mov ecx, dword [ebx + 0x380]
push 0
push ecx
sub eax, edx
push 1
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [ebp]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_open_ex
add esp, 0x18
mov dword [esi + 0xb8], eax
test eax, eax
jne 0x100466d7
mov ecx, dword [esi + 0xac]
push ecx
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov edx, dword [esi + 0xb4]
push edx
call sym.EUFyncFtp.dll_libssh2_sftp_last_error
push eax
call fcn.100562e0
mov ebp, eax
call fcn.10044560
push eax
push str.Could_not_open_remote_file_for_reading:__s
jmp 0x100460bd
mov eax, 0x29
jmp 0x100470ba
mov eax, dword [ebp]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100466e7
lea ecx, [esp + 0x5c]
push ecx
sub eax, edx
push 0
push eax
call sym.EUFyncFtp.dll_libssh2_session_abstract
mov edx, dword [ebp]
add esp, 4
push eax
mov eax, dword [esi + 0xb4]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_stat_ex
add esp, 0x14
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10046741
or eax, 0xffffffff
push eax
push eax
push ebx
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], eax
mov dword [ebx + 0x60], eax
mov dword [ebx + 0x64], eax
call fcn.1003b440
jmp 0x10046878
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x54], ebx
test ebp, ebp
jl 0x10047190
jg 0x1004675f
test ebx, ebx
jb 0x10047190
mov eax, dword [edi]
cmp dword [eax + 0x86d8], 0
je 0x1004685c
mov edx, dword [eax + 0x86e0]
push 0
lea ecx, [esp + 0x2c]
push ecx
push edx
call fcn.10077030
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x28], eax
mov al, byte [ecx]
add esp, 0xc
mov dword [esp + 0x20], edx
test al, al
je 0x100467ba
movzx eax, al
push eax
call fcn.10076697
mov ecx, dword [esp + 0x2c]
add esp, 4
test eax, eax
jne 0x100467af
cmp byte [ecx], 0x2d
jne 0x100467ba
inc ecx
mov dword [esp + 0x28], ecx
mov al, byte [ecx]
test al, al
jne 0x10046796
push 0
lea edx, [esp + 0x44]
push edx
push ecx
call fcn.10077030
mov ecx, dword [esp + 0x34]
add esp, 0xc
cmp ecx, dword [esp + 0x40]
je 0x100467de
cmp edx, ebp
jl 0x100467e8
jg 0x100467de
cmp eax, ebx
jb 0x100467e8
mov eax, ebx
sub eax, 1
mov edx, ebp
sbb edx, 0
mov ecx, dword [esp + 0x20]
test ecx, ecx
jg 0x10046807
jl 0x100467f9
cmp dword [esp + 0x1c], 0
jae 0x10046807
mov ebx, dword [esp + 0x54]
add dword [esp + 0x1c], ebx
adc ecx, ebp
mov dword [esp + 0x20], ecx
cmp ecx, ebp
jg 0x100471c1
mov ebp, dword [esp + 0x1c]
jl 0x1004681d
cmp ebp, ebx
jae 0x100471c1
cmp ecx, edx
jl 0x10046835
jg 0x10046827
cmp ebp, eax
jbe 0x10046835
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
xor ebp, ebp
jmp 0x10046843
sub eax, ebp
sbb edx, ecx
add eax, 1
adc edx, 0
mov ebx, eax
mov ebp, edx
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 0x4d8]
push edx
push eax
push ecx
call sym.EUFyncFtp.dll_libssh2_sftp_seek64
add esp, 0xc
mov eax, dword [esp + 0x10]
push ebp
push ebx
push eax
mov dword [eax + 0x50], ebx
mov dword [eax + 0x54], ebp
mov dword [eax + 0x60], ebx
mov dword [eax + 0x64], ebp
call fcn.1003b440
mov ebx, dword [esp + 0x1c]
mov ebp, dword [ebx + 0x86e8]
mov edx, dword [ebx + 0x86ec]
mov eax, ebp
add esp, 0xc
or eax, edx
je 0x1004692d
test edx, edx
jg 0x100468d6
jl 0x1004689b
test ebp, ebp
jae 0x100468d6
mov eax, dword [esp + 0x68]
mov ebx, ebp
neg ebx
mov ecx, edx
adc ecx, 0
neg ecx
cmp eax, ecx
mov ecx, dword [esp + 0x64]
jl 0x10047204
jg 0x100468c0
cmp ecx, ebx
jb 0x10047204
mov ebx, dword [esp + 0x10]
add ebp, ecx
adc edx, eax
mov dword [ebx + 0x86e8], ebp
mov dword [ebx + 0x86ec], edx
jmp 0x100468f0
mov eax, dword [esp + 0x68]
cmp eax, edx
mov ecx, dword [esp + 0x64]
jl 0x10047243
jg 0x100468f0
cmp ecx, ebp
jb 0x10047243
sub ecx, dword [ebx + 0x86e8]
sbb eax, dword [ebx + 0x86ec]
mov dword [ebx + 0x50], ecx
push eax
push ecx
push ebx
mov dword [ebx + 0x54], eax
mov dword [ebx + 0x60], ecx
mov dword [ebx + 0x64], eax
call fcn.1003b440
mov ecx, dword [ebx + 0x86ec]
mov edx, dword [ebx + 0x86e8]
mov eax, dword [esi + 0xb8]
push ecx
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_seek64
add esp, 0x18
mov eax, dword [ebx + 0x50]
mov ecx, dword [ebx + 0x54]
push 0
push 0xffffffffffffffff
mov edx, eax
or edx, ecx
push 0
push 0
jne 0x10046960
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
call fcn.10058130
push str.File_already_completely_downloaded_n
push ebx
call fcn.10032f00
add esp, 0x28
jmp 0x100470b8
push ecx
push eax
push 0
push edi
call fcn.10058130
mov edx, dword [esp + 0x34]
mov eax, dword [edi + 0x26c]
add esp, 0x20
mov dword [edi + 0x270], eax
mov dword [edi + 0x4f0], 1
mov ecx, edi
test edx, edx
je 0x100465d9
mov eax, 0x2a
call fcn.10043d50
mov dword [esi + 0x1c], edx
jmp 0x100470c1
mov eax, dword [esi + 0xb8]
test eax, eax
je 0x100469e3
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_close_handle
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x100469d5
push str.Failed_to_close_libssh2_file_n
push ebx
call fcn.10032f00
add esp, 8
mov ebp, dword [esp + 0x18]
mov dword [esi + 0xb8], 0
test ebp, ebp
je 0x100469ff
mov eax, dword [ebp]
test eax, eax
je 0x100469ff
push eax
call dword [0x100b4004]
add esp, 4
mov dword [ebp], 0
mov eax, dword [esi + 0x18]
cmp eax, 0xffffffff
je 0x10046e34
cmp eax, 0x2a
je 0x10046e34
mov ecx, edi
call fcn.10043d50
mov dword [esi + 0x18], 0x2a
jmp 0x100470c1
mov eax, dword [esi + 0xb8]
test eax, eax
je 0x10046a63
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_close_handle
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046a59
push str.Failed_to_close_libssh2_file_n
push ebx
call fcn.10032f00
add esp, 8
mov dword [esi + 0xb8], 0
mov eax, dword [esi + 0xb4]
test eax, eax
je 0x10046a9f
push eax
call sym.EUFyncFtp.dll_libssh2_sftp_shutdown
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046a95
push str.Failed_to_stop_libssh2_sftp_subsystem_n
push ebx
call fcn.10032f00
add esp, 8
mov dword [esi + 0xb4], 0
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x10046ab7
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x5c], 0
mov edx, dword [edi]
mov dword [edx + 0x86b8], 0
mov eax, 0x34
jmp 0x100470ba
mov eax, dword [esi + 0x5c]
push ebp
push eax
mov eax, edi
call fcn.10043d60
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
je 0x10046aec
mov dword [esi + 0x1c], eax
jmp 0x100470b8
cmp dword [ebx + 0x328], 0
je 0x10046b32
cmp dword [ebx + 0x8704], 0
jg 0x10046b28
jl 0x10046b09
cmp dword [ebx + 0x8700], 0
jae 0x10046b28
push str.SCP_requires_a_known_file_size_for_upload
push ebx
call fcn.10032f90
add esp, 8
mov dword [esi + 0x1c], 0x19
mov eax, 0x33
jmp 0x100470ba
mov eax, 0x2d
jmp 0x100470ba
mov eax, 0x2e
jmp 0x100470ba
mov ecx, dword [ebx + 0x8704]
mov edx, dword [ebx + 0x8700]
mov eax, dword [ebx + 0x380]
push 0
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp]
push edx
mov edx, dword [esi + 0xac]
push eax
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_scp_send64
add esp, 0x24
mov dword [esi + 0xb0], eax
test eax, eax
jne 0x10046bd5
mov eax, dword [esi + 0xac]
push eax
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov edx, dword [esi + 0xac]
push 0
push 0
lea ecx, [esp + 0x4c]
push ecx
push edx
call sym.EUFyncFtp.dll_libssh2_session_last_error
mov ecx, dword [edi]
mov ebp, eax
mov eax, dword [esp + 0x54]
push eax
push 0x1009a240
push ecx
call fcn.10032f90
add esp, 0x1c
mov eax, 0x33
mov ecx, edi
call fcn.10043d50
mov eax, ebp
call fcn.10043c60
mov dword [esi + 0x1c], eax
jmp 0x100470c1
mov edx, dword [ebx + 0x54]
mov eax, dword [ebx + 0x50]
push 0
push 0
push 0
push 0
push edx
push eax
push 0xffffffffffffffff
push edi
call fcn.10058130
mov ecx, dword [edi + 0x270]
mov edx, dword [esp + 0x34]
add esp, 0x20
mov dword [edi + 0x26c], ecx
mov ecx, edi
test edx, edx
je 0x10046c18
mov eax, 0x33
call fcn.10043d50
mov dword [esi + 0x1c], edx
jmp 0x100470c1
mov edx, dword [ebx + 0xf8]
mov dword [esi + 0xbc], edx
mov dword [edi + 0x4f0], 2
xor eax, eax
jmp 0x100470bc
push 0x30
lea eax, [esp + 0x88]
push 0
push eax
call fcn.10075220
mov edx, dword [ebp]
mov eax, dword [esi + 0xac]
lea ecx, [esp + 0x90]
push ecx
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_scp_recv
add esp, 0x18
mov dword [esi + 0xb0], eax
test eax, eax
jne 0x10046cca
mov ecx, dword [esi + 0xac]
push ecx
call sym.EUFyncFtp.dll_libssh2_session_last_errno
add esp, 4
cmp eax, 0xffffffdb
je 0x1004727d
mov eax, dword [esi + 0xac]
push 0
push 0
lea edx, [esp + 0x58]
push edx
push eax
call sym.EUFyncFtp.dll_libssh2_session_last_error
mov ecx, dword [esp + 0x60]
mov edx, dword [edi]
push ecx
push 0x1009a240
push edx
mov ebp, eax
call fcn.10032f90
add esp, 0x1c
mov eax, 0x33
mov ecx, edi
call fcn.10043d50
mov eax, ebp
call fcn.10043c60
mov dword [esi + 0x1c], eax
jmp 0x100470c1
mov eax, dword [esp + 0x98]
push 0
push 0xffffffffffffffff
push 0
cdq
push 0
push edx
push eax
push 0
push edi
mov dword [ebx + 0x60], eax
mov dword [ebx + 0x64], edx
call fcn.10058130
mov edx, dword [esp + 0x34]
mov eax, dword [edi + 0x26c]
add esp, 0x20
mov dword [edi + 0x270], eax
mov dword [edi + 0x4f0], 1
mov ecx, edi
test edx, edx
je 0x100465d9
mov eax, 0x33
call fcn.10043d50
mov dword [esi + 0x1c], edx
jmp 0x100470c1
cmp dword [ebx + 0x328], 0
mov ecx, edi
je 0x10046d38
mov eax, 0x30
jmp 0x100470bc
mov eax, 0x33
jmp 0x100470bc
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x10046d74
push eax
call sym.EUFyncFtp.dll_libssh2_channel_send_eof
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10046d74
push str.Failed_to_send_libssh2_channel_EOF_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, 0x31
jmp 0x100470ba
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x10046db1
push eax
call sym.EUFyncFtp.dll_libssh2_channel_wait_eof
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10046db1
push eax
push str.Failed_to_get_channel_EOF:__d_n
push ebx
call fcn.10032f00
add esp, 0xc
mov eax, 0x32
jmp 0x100470ba
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x10046dee
push eax
call sym.EUFyncFtp.dll_libssh2_channel_wait_closed
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
je 0x10046dee
push eax
push str.Channel_failed_to_close:__d_n
push ebx
call fcn.10032f00
add esp, 0xc
mov eax, 0x33
jmp 0x100470ba
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x10046e34
push eax
call sym.EUFyncFtp.dll_libssh2_channel_free
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046e2a
push str.Failed_to_free_libssh2_scp_subsystem_n
push ebx
call fcn.10032f00
add esp, 8
mov dword [esi + 0xb0], 0
xor eax, eax
mov ecx, edi
call fcn.10043d50
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x14], ecx
jmp 0x100470c1
mov eax, dword [esi + 0xb0]
test eax, eax
je 0x10046e85
push eax
call sym.EUFyncFtp.dll_libssh2_channel_free
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046e7b
push str.Failed_to_free_libssh2_scp_subsystem_n
push ebx
call fcn.10032f00
add esp, 8
mov dword [esi + 0xb0], 0
mov eax, dword [esi + 0xac]
test eax, eax
je 0x10046ec3
push 0x100ac770
push str.Shutdown
push 0xb
push eax
call sym.EUFyncFtp.dll_libssh2_session_disconnect_ex
add esp, 0x10
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046ec3
push str.Failed_to_disconnect_libssh2_session_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, dword [esi + 0x5c]
xor ebp, ebp
cmp eax, ebp
je 0x10046ed9
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x5c], ebp
mov edx, dword [edi]
mov dword [edx + 0x86b8], ebp
mov eax, 0x35
jmp 0x100470ba
mov eax, dword [esi + 0xcc]
test eax, eax
je 0x10046f08
push eax
call sym.EUFyncFtp.dll_libssh2_knownhost_free
add esp, 4
mov dword [esi + 0xcc], 0
mov eax, dword [esi + 0xc0]
test eax, eax
je 0x10046f5d
push eax
call sym.EUFyncFtp.dll_libssh2_agent_disconnect
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
xor ebp, ebp
cmp eax, ebp
jge 0x10046f3c
push str.Failed_to_disconnect_from_libssh2_agent_n
push ebx
call fcn.10032f00
add esp, 8
mov eax, dword [esi + 0xc0]
push eax
call sym.EUFyncFtp.dll_libssh2_agent_free
add esp, 4
mov dword [esi + 0xc0], ebp
mov dword [esi + 0xc4], ebp
mov dword [esi + 0xc8], ebp
mov eax, dword [esi + 0xac]
test eax, eax
je 0x10046f99
push eax
call sym.EUFyncFtp.dll_libssh2_session_free
add esp, 4
mov dword [esp + 0xc], eax
cmp eax, 0xffffffdb
je 0x100470c1
test eax, eax
jge 0x10046f8f
push str.Failed_to_free_libssh2_session_n
push ebx
call fcn.10032f00
add esp, 8
mov dword [esi + 0xac], 0
mov eax, dword [esi + 8]
test eax, eax
je 0x10046fb1
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 8], 0
mov eax, dword [esi + 0xc]
test eax, eax
je 0x10046fc9
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0xc], 0
mov eax, dword [esi + 0x24]
test eax, eax
je 0x10046fe1
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x24], 0
mov eax, dword [esi + 0x28]
test eax, eax
je 0x10046ff9
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x28], 0
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x10047011
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x5c], 0
mov eax, dword [esi + 0x88]
test eax, eax
je 0x1004702f
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x88], 0
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x1004704d
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x8c], 0
mov eax, dword [esi + 0x9c]
test eax, eax
je 0x1004706b
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0x9c], 0
mov eax, dword [esi + 0xa0]
test eax, eax
je 0x10047089
push eax
call dword [0x100b4004]
add esp, 4
mov dword [esi + 0xa0], 0
mov ecx, dword [esi + 0x1c]
push 0xd0
push 0
push esi
mov dword [esp + 0x20], ecx
call fcn.10075220
mov dword [edi + 0x1ec], 1
add esp, 0xc
mov dword [esi + 0x14], 0x35
mov dword [esi + 0x18], 0xffffffff
xor eax, eax
mov ecx, edi
call fcn.10043d50
cmp dword [esp + 0xc], 0
jne 0x10047276
cmp dword [esi + 0x14], 0
je 0x10047287
mov ebp, dword [esp + 0x18]
jmp 0x100446a2
call fcn.10043bf0
mov edx, eax
mov eax, 0x2a
mov ecx, edi
mov dword [esp + 0x14], edx
call fcn.10043d50
mov eax, edx
test edx, edx
jne 0x10047101
mov eax, 0x4f
mov dword [esi + 0x1c], eax
jmp 0x10047287
push eax
push ecx
push str.Bad_file_size___I64d_
push ebx
call fcn.10032f90
add esp, 0x10
pop esi
pop ebp
mov eax, 0x24
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
push str.Could_not_seek_stream
push ebx
call fcn.10032f90
add esp, 8
pop esi
pop ebp
mov eax, 0x1f
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
mov edx, dword [esp + 0x10]
push str.Failed_to_read_data
push edx
call fcn.10032f90
add esp, 8
pop esi
pop ebp
mov eax, 0x1f
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
mov eax, dword [esp + 0x10]
push ebp
push ebx
push str.Bad_file_size___I64d_
push eax
call fcn.10032f90
add esp, 0x10
pop esi
pop ebp
mov eax, 0x24
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [esp + 0x18]
push eax
push ecx
push str.Offset___I64d__was_beyond_file_size___I64d_
push edx
call fcn.10032f90
add esp, 0x18
pop esi
pop ebp
mov eax, 0x24
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
push eax
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x86e8]
push ecx
mov ecx, dword [eax + 0x86ec]
push ecx
push edx
push str.Offset___I64d__was_beyond_file_size___I64d_
push eax
call fcn.10032f90
add esp, 0x18
pop esi
pop ebp
mov eax, 0x24
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
push eax
push ecx
mov eax, edx
push eax
mov ecx, ebp
push ecx
push str.Offset___I64d__was_beyond_file_size___I64d_
push ebx
call fcn.10032f90
add esp, 0x18
pop esi
pop ebp
mov eax, 0x24
pop ebx
mov ecx, dword [esp + 0x1ac]
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret
cmp dword [esp + 0xc], 0xffffffdb
jne 0x10047287
mov edx, dword [esp + 0x4c]
mov dword [edx], 1
mov ecx, dword [esp + 0x1b8]
mov eax, dword [esp + 0x14]
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10073b34
add esp, 0x1b0
ret