Function at 0x140009c50
Capabilities:
Create tcp socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket
Start tcp server

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x850]
sub rsp, 0x950
mov rax, qword [0x140086240]
xor rax, rsp
mov qword [rbp + 0x840], rax
mov rdi, rcx
mov qword [rsp + 0x40], rcx
mov ecx, 0x202
lea rdx, [rbp + 0x2a0]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x140009d94
lea edx, [rax + 1]
mov esi, 2
lea r8d, [rax + 6]
mov ecx, esi
call qword [sym.imp.WS2_32.dll_socket]
mov rbx, rax
mov qword [rsp + 0x48], rax
cmp rax, 0xffffffffffffffff
je 0x140009d8e
mov word [rbp - 8], si
lea rcx, str.127.0.0.1
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rbp - 4], eax
movzx ecx, word [rdi + 0x31a]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp - 6], ax
lea r8d, [rsi + 0xe]
lea rdx, [rbp - 8]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
je 0x140009d85
mov edx, 0x7fffffff
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
je 0x140009d85
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_accept]
mov r13, rax
mov qword [rsp + 0x38], rax
cmp rax, 0xffffffffffffffff
je 0x140009d85
xor ecx, ecx
call fcn.1400499bc
mov rcx, rax
call fcn.140046200
call fcn.1400461d4
and eax, 0x800000ff
jge 0x140009d5e
dec eax
or eax, 0xffffff00
inc eax
mov byte [rsp + 0x68], al
xor r9d, r9d
lea r8d, [r9 + 1]
lea rdx, [rsp + 0x68]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
jne 0x140009dc4
mov rcx, r13
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rcx, qword [rbp + 0x840]
xor rcx, rsp
call fcn.14003f0d0
lea r11, [rsp + 0x950]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xor ebx, ebx
mov r14d, ebx
mov qword [rbp - 0x50], rbx
mov r12d, 7
mov qword [rbp - 0x48], r12
mov word [rbp - 0x60], bx
lea r15, [rbp + 0x440]
xor r9d, r9d
mov r8d, 0x200
lea rdx, [rbp + 0x440]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x140009e9b
movzx ebx, byte [rsp + 0x30]
nop
mov r13d, eax
mov esi, eax
shr rsi, 1
mov rax, r12
sub rax, r14
cmp rsi, rax
ja 0x140009e54
lea rax, [rsi + r14]
mov qword [rbp - 0x50], rax
lea rdi, [rbp - 0x60]
cmp r12, 7
cmova rdi, qword [rbp - 0x60]
lea rcx, [rdi + r14*2]
lea r8, [rsi + rsi]
mov rdx, r15
call fcn.1400683e0
lea rax, [r14 + rsi]
xor ecx, ecx
mov word [rdi + rax*2], cx
jmp 0x140009e6c
mov qword [rsp + 0x20], rsi
mov r9, r15
movzx r8d, bl
mov rdx, rsi
lea rcx, [rbp - 0x60]
call fcn.1400139c0
add r15, r13
xor r9d, r9d
mov r8d, 0x200
mov rdx, r15
mov r13, qword [rsp + 0x38]
mov rcx, r13
call qword [sym.imp.WS2_32.dll_recv]
mov r12, qword [rbp - 0x48]
mov r14, qword [rbp - 0x50]
test eax, eax
jg 0x140009e10
xor ebx, ebx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rax
add r14, r14
lea rsi, [rbp - 0x60]
mov r15, qword [rbp - 0x60]
cmp r12, 7
cmova rsi, r15
xorps xmm1, xmm1
mov rdi, rbx
test rsi, rsi
jne 0x140009ee3
movdqu xmmword [rbp - 0x20], xmm1
mov qword [rbp - 0x10], rbx
psrldq xmm0, 8
movq rax, xmm0
movq r14, xmm1
jmp 0x140009f65
movdqu xmmword [rsp + 0x70], xmm1
mov qword [rbp - 0x80], rbx
mov rax, qword [rsp + 0x78]
test r14, r14
je 0x140009f44
nop word [rax + rax]
movzx ecx, byte [rsi + rbx]
xor cl, 0xab
mov byte [rsp + 0x30], cl
cmp rax, rdi
je 0x140009f21
mov byte [rax], cl
mov rax, qword [rsp + 0x78]
inc rax
mov qword [rsp + 0x78], rax
jmp 0x140009f38
lea r8, [rsp + 0x30]
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140016bb0
mov rax, qword [rsp + 0x78]
inc rbx
mov rdi, qword [rbp - 0x80]
cmp rbx, r14
jb 0x140009f00
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x78], rbx
mov r14, qword [rsp + 0x70]
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rdi
sub rax, r14
shr rax, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rbx
mov r8, rax
mov rdx, r14
lea rcx, [rbp - 0x40]
call fcn.140013bf0
nop
mov rsi, qword [rbp - 0x28]
mov rbx, qword [rbp - 0x40]
cmp qword [rbp - 0x30], 0x29
jne 0x14000a5f1
mov qword [rbp + 0x20], 1
mov ecx, 0x5f
mov word [rbp + 0x28], cx
mov qword [rbp + 0x30], 5
mov word [rbp + 0x38], cx
mov qword [rbp + 0x40], reloc.WS2_32.dll_listen
mov word [rbp + 0x48], cx
mov qword [rbp + 0x50], reloc.WS2_32.dll_send
mov word [rbp + 0x58], cx
mov qword [rbp + 0x60], 0x1a
mov word [rbp + 0x68], cx
mov eax, 0x21
mov qword [rbp + 0x70], rax
mov word [rbp + 0x78], cx
mov qword [rbp + 8], socket
mov word [rbp + 0x10], ax
lea r8, [rbp + 0x20]
nop dword [rax + rax]
lea rdx, [rbp - 0x40]
cmp rsi, 7
cmova rdx, rbx
mov rcx, qword [r8]
movzx eax, word [r8 + 8]
cmp word [rdx + rcx*2], ax
jne 0x14000a5f1
add r8, 0x10
lea rax, [rbp + 0x80]
cmp r8, rax
jne 0x14000a000
lea r8, [rbp + 8]
nop dword [rax]
nop word [rax + rax]
lea rdx, [rbp - 0x40]
cmp rsi, 7
cmova rdx, rbx
mov rcx, qword [r8]
movzx eax, word [r8 + 8]
cmp word [rdx + rcx*2], ax
jne 0x14000a5f1
add r8, 0x10
lea rax, [rbp + 0x18]
cmp r8, rax
jne 0x14000a040
xor eax, eax
mov qword [rbp + 0x80], rax
mov edx, 0x31
mov word [rbp + 0x88], dx
mov qword [rbp + 0x90], 3
mov ecx, 0x30
mov word [rbp + 0x98], cx
mov qword [rbp + 0xa0], 9
mov eax, 0x33
mov word [rbp + 0xa8], ax
mov qword [rbp + 0xb0], 0xa
mov word [rbp + 0xb8], ax
mov qword [rbp + 0xc0], 0x18
mov word [rbp + 0xc8], ax
mov qword [rbp + 0xd0], 0x1c
mov word [rbp + 0xd8], dx
mov qword [rbp + 0xe0], 0x22
mov word [rbp + 0xe8], cx
mov qword [rbp + 0xf0], 0x24
mov word [rbp + 0xf8], ax
lea r8, [rbp + 0x80]
nop
lea rdx, [rbp - 0x40]
cmp rsi, 7
cmova rdx, rbx
mov rcx, qword [r8]
movzx eax, word [r8 + 8]
cmp word [rdx + rcx*2], ax
jne 0x14000a5f1
add r8, 0x10
lea rax, [rbp + 0x100]
cmp r8, rax
jne 0x14000a110
mov qword [rbp + 0x100], 2
mov r9d, WSAStartup
mov word [rbp + 0x108], r9w
mov qword [rbp + 0x110], 4
mov ecx, 0x77
mov word [rbp + 0x118], cx
mov qword [rbp + 0x120], 6
mov r10d, 0x62
mov word [rbp + 0x128], r10w
mov qword [rbp + 0x130], 7
mov eax, 0x65
mov word [rbp + 0x138], ax
mov qword [rbp + 0x140], 8
mov r11d, reloc.WS2_32.dll_WSAStartup
mov word [rbp + 0x148], r11w
mov qword [rbp + 0x150], reloc.WS2_32.dll_inet_addr
mov word [rbp + 0x158], r11w
mov qword [rbp + 0x160], listen
mov r8d, 0x68
mov word [rbp + 0x168], r8w
mov qword [rbp + 0x170], socket
mov edx, reloc.WS2_32.dll_WSACleanup
mov word [rbp + 0x178], dx
mov qword [rbp + 0x180], socket
mov word [rbp + 0x188], r8w
mov qword [rbp + 0x190], reloc.WS2_32.dll_recv
mov word [rbp + 0x198], ax
mov qword [rbp + 0x1a0], socket
mov word [rbp + 0x1a8], ax
mov qword [rbp + 0x1b0], socket
mov eax, 0x61
mov word [rbp + 0x1b8], ax
mov qword [rbp + 0x1c0], socket
mov word [rbp + 0x1c8], cx
mov qword [rbp + 0x1d0], socket
mov word [rbp + 0x1d8], ax
mov qword [rbp + 0x1e0], reloc.WS2_32.dll_socket
mov ecx, 0x6b
mov word [rbp + 0x1e8], cx
mov qword [rbp + 0x1f0], 0x19
mov word [rbp + 0x1f8], r9w
mov qword [rbp + 0x200], 0x1b
mov eax, 0x6d
mov word [rbp + 0x208], ax
mov qword [rbp + 0x210], 0x1d
mov eax, 0x67
mov word [rbp + 0x218], ax
mov qword [rbp + 0x220], 0x1e
mov word [rbp + 0x228], r8w
mov qword [rbp + 0x230], 0x1f
mov word [rbp + 0x238], dx
mov qword [rbp + 0x240], 0x20
mov eax, 0x79
mov word [rbp + 0x248], ax
mov qword [rbp + 0x250], 0x23
mov word [rbp + 0x258], r10w
mov qword [rbp + 0x260], 0x25
mov eax, 0x6c
mov word [rbp + 0x268], ax
mov qword [rbp + 0x270], 0x26
mov eax, 0x31
mov word [rbp + 0x278], ax
mov qword [rbp + 0x280], 0x27
mov word [rbp + 0x288], r11w
mov qword [rbp + 0x290], 0x28
mov word [rbp + 0x298], cx
lea r8, [rbp + 0x100]
nop dword [rax]
lea rdx, [rbp - 0x40]
cmp rsi, 7
cmova rdx, rbx
mov rcx, qword [r8]
movzx eax, word [r8 + 8]
cmp word [rdx + rcx*2], ax
jne 0x14000a5f1
add r8, 0x10
lea rax, [rbp + 0x2a0]
cmp r8, rax
jne 0x14000a370
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rax
mov rcx, qword [rsp + 0x40]
lea r8, [rcx + 0xc0]
mov qword [rsp + 0x38], r8
lea rax, [rcx + 0xa8]
lea r9, [rcx + 0x90]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x70]
call fcn.14000b130
nop
xor eax, eax
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
mov qword [rbp - 0x68], rax
mov r9, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
sub r9, r15
sub r9, 0x10
xor edx, edx
mov r8, r15
lea rcx, [rbp - 0x78]
call fcn.140016300
lea rcx, [rbp - 0x78]
mov rax, qword [rsp + 0x38]
cmp rax, rcx
je 0x14000a42e
mov r8, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x78]
sub r8, rdx
mov rcx, rax
call fcn.140013890
mov rax, qword [rsp + 0x38]
mov r8, qword [rax]
mov r9, qword [rax + 8]
sub r9, r8
lea rdx, [rsp + 0x50]
call fcn.14000ada0
mov rcx, qword [rsp + 0x40]
add rcx, 0xe0
mov rdx, rax
call fcn.14000f070
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14000a492
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a48d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a616
call fcn.14003f0f8
mov rcx, qword [rsp + 0x40]
call fcn.140008ff0
mov rcx, r13
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14000a4ff
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a4ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a61c
call fcn.14003f0f8
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
xor eax, eax
mov qword [rbp - 0x68], rax
test r15, r15
je 0x14000a538
mov rdx, qword [rbp - 0x80]
sub rdx, r15
mov rax, r15
cmp rdx, 0x1000
jb 0x14000a530
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a622
mov rcx, r15
call fcn.14003f0f8
mov r15, qword [rbp - 0x60]
cmp rsi, 7
jbe 0x14000a578
lea rdx, [rsi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14000a56f
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a628
mov rcx, rbx
call fcn.14003f0f8
nop
test r14, r14
je 0x14000a5b1
sub rdi, r14
mov rax, r14
cmp rdi, 0x1000
jb 0x14000a5a5
add rdi, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a62e
mov rdx, rdi
mov rcx, r14
call fcn.14003f0f8
nop
cmp r12, 7
jbe 0x140009d94
lea rdx, [r12*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x14000a5e4
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a610
mov rcx, r15
call fcn.14003f0f8
jmp 0x140009d94
mov rcx, r13
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
jmp 0x14000a53c
call fcn.140045efc
nop
call fcn.140045efc
nop
call fcn.140045efc
nop
call fcn.140045efc
nop
call fcn.140045efc
nop
call fcn.140045efc
int3