Function at 0x1004016b0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x168
lea rdi, str._d._d._d._d:_d
mov eax, edx
mov word [rsp + 0x48], dx
mov rbp, rcx
mov r14, r8
xchg ah, al
mov word [rsp + 0x4a], r9w
mov word [rsp + 0x4c], ax
mov eax, r9d
xchg ah, al
mov word [rsp + 0x4e], ax
jmp 0x1004017c6
call sym.__getreent
mov r9, rsi
mov r8, rbx
lea rdx, str._n____Connect__s_Successed_Now_Connect__s_n
mov rcx, qword [rax + 0x10]
call sym.fprintf
call sym.__getreent
mov rcx, qword [rax + 0x10]
call sym.fflush
mov rcx, qword [0x100409018]
test rcx, rcx
je 0x10040174b
mov r9, rsi
mov r8, rbx
lea rdx, str._n____Connect__s_Successed_Now_Connect__s_n
call sym.fprintf
mov rcx, qword [0x100409018]
call sym.fflush
lea rdx, [rsp + 0x70]
mov r8d, 0x10
mov ecx, r13d
call sym.connect
test eax, eax
jne 0x100401954
call sym.__getreent
lea r12, str._n____Connect__s_Successed_Transfering..._n
mov r8, rsi
mov rcx, qword [rax + 0x10]
mov rdx, r12
call sym.fprintf
call sym.__getreent
mov rcx, qword [rax + 0x10]
call sym.fflush
mov rcx, qword [0x100409018]
test rcx, rcx
je 0x1004017b2
mov r8, rsi
mov rdx, r12
call sym.fprintf
mov rcx, qword [0x100409018]
call sym.fflush
lea rcx, [rsp + 0x58]
call sym.in_data_tran
mov ecx, 0xf4240
call sym.usleep
mov rcx, rbp
call sym.gethost
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x100401a20
mov rcx, r14
call sym.gethost
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x100401a50
mov r8d, 6
mov edx, 1
mov ecx, 2
call sym.socket
mov r8d, 6
mov edx, 1
mov ecx, 2
mov dword [rsp + 0x58], eax
mov r12d, eax
lea rbx, [rsp + 0x80]
call sym.socket
movzx r8d, sil
mov rcx, rbx
mov dword [rsp + 0x64], esi
mov dword [rsp + 0x5c], eax
mov r13d, eax
mov eax, 2
mov edx, 2
mov word [rsp + 0x60], ax
movzx eax, word [rsp + 0x4c]
mov word [rsp + 0x70], dx
mov rdx, rdi
mov word [rsp + 0x62], ax
movzx eax, word [rsp + 0x4e]
mov dword [rsp + 0x74], r15d
mov word [rsp + 0x72], ax
mov eax, esi
movzx eax, ah
mov r9d, eax
movzx eax, word [rsp + 0x48]
mov dword [rsp + 0x30], eax
mov eax, esi
shr eax, 0x18
mov dword [rsp + 0x28], eax
mov rax, rsi
lea rsi, [rsp + 0xf0]
shr rax, 0x10
movzx eax, al
mov dword [rsp + 0x20], eax
call sym.sprintf
mov eax, r15d
movzx r8d, r15b
mov rdx, rdi
movzx eax, ah
mov rcx, rsi
mov r9d, eax
movzx eax, word [rsp + 0x4a]
mov dword [rsp + 0x30], eax
mov eax, r15d
shr eax, 0x18
mov dword [rsp + 0x28], eax
mov rax, r15
shr rax, 0x10
movzx eax, al
mov dword [rsp + 0x20], eax
call sym.sprintf
cmp r13d, 0xffffffff
je 0x1004019b0
cmp r12d, 0xffffffff
je 0x1004019b0
call sym.__getreent
lea r15, str._n____Connect__s__Please_Wait_n
mov r8, rbx
mov rcx, qword [rax + 0x10]
mov rdx, r15
call sym.fprintf
call sym.__getreent
mov rcx, qword [rax + 0x10]
call sym.fflush
mov rcx, qword [0x100409018]
test rcx, rcx
je 0x100401939
mov r8, rbx
mov rdx, r15
call sym.fprintf
mov rcx, qword [0x100409018]
call sym.fflush
lea rdx, [rsp + 0x60]
mov r8d, 0x10
mov ecx, r12d
call sym.connect
test eax, eax
je 0x1004016f8
call sym.__getreent
lea rbx, str._n_____Connect__s_Failed_CutDown..._n
mov r8, rsi
mov rcx, qword [rax + 0x10]
mov rdx, rbx
call sym.fprintf
mov rcx, qword [0x100409018]
test rcx, rcx
je 0x100401992
mov r8, rsi
mov rdx, rbx
call sym.fprintf
mov rcx, qword [0x100409018]
call sym.fflush
mov ecx, r12d
call sym.close
mov ecx, r13d
call sym.close
jmp 0x1004017bc
call sym.__getreent
mov r8d, 0x1b
mov edx, 1
lea r12, str._n_____Create_Socket_Failed_n
mov r9, qword [rax + 0x10]
mov rcx, r12
call sym.fwrite
mov r9, qword [0x100409018]
test r9, r9
je 0x1004019fe
mov rcx, r12
mov r8d, 0x1b
mov edx, 1
call sym.fwrite
mov rcx, qword [0x100409018]
call sym.fflush
mov eax, 0xffffffff
add rsp, 0x168
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call sym.__getreent
mov r8, rbp
mov rcx, qword [rax + 0x10]
lea rdx, str._n_____Reslove_Host__s_Failed..._n
call sym.fprintf
call sym.__getreent
mov rcx, qword [rax + 0x10]
call sym.fflush
xor eax, eax
jmp 0x100401a03
call sym.__getreent
mov r8, r14
mov rcx, qword [rax + 0x10]
jmp 0x100401a2c