Function at 0x14001d0d0
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x2f0]
sub rsp, 0x3f0
mov rax, qword [0x1401811c0]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
mov rdi, r8
mov rsi, rdx
mov r14, rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], r8
call fcn.140062004
cmp byte [r14 + 4], 0
jne 0x14001d1df
mov rcx, r14
call fcn.14001c690
cmp byte [r14 + 4], 0
jne 0x14001d1df
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14001d167
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x14001d162
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001d8ef
mov rcx, r8
call fcn.140062974
xor ebx, ebx
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], recv
mov byte [rsi], bl
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x14001d1b1
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x14001d1ac
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001d8f5
mov rcx, r8
call fcn.140062974
xor eax, eax
mov byte [rdi], 0
mov qword [rdi + 0x18], recv
mov qword [rdi + 0x10], rbx
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.1400624d0
add rsp, 0x3f0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor edx, edx
mov r8d, 0x164
lea rcx, [rbp - 0x2c]
call fcn.140091150
movabs rax, 0xa0a4c165b05a8ea9
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x40], rax
movabs rax, 0xf954cc9b83849e64
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
movabs rax, 0x6ef205783b6594b6
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
movabs rax, 0x13331b72bd8f200c
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x58], rax
movabs rdx, 0x5186da30fe2ec96f
mov qword [rsp + 0x20], rdx
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x60], rax
movabs rcx, 0x703b970555eb8fc4
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x68], rax
movabs rax, 0xc694f804896ebccb
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x140], rax
movabs rax, 0xce30aea9b1b5ad50
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x148], rax
movabs rax, 0x5cc1304a0f52a685
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x150], rax
movabs rax, 0x23002317deed103a
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x158], rax
mov qword [rsp + 0x20], rdx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x160], rax
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [rsp + 0x40]
xorps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rsp + 0x50]
xorps xmm1, xmmword [rbp + 0x150]
movdqa xmmword [rsp + 0x50], xmm1
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x60], xmm1
lea rax, [rsp + 0x40]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14001d370
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.1400153f0
nop
lea rcx, [rbp - 0x50]
call fcn.140017d80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 3
mov qword [rbp - 0x78], recv
mov eax, dword [0x140095ef0]
mov word [rsp + 0x70], ax
movzx eax, byte [0x140095ef2]
mov byte [rsp + 0x72], al
mov byte [rsp + 0x73], 0
mov dword [rbp - 0x30], 2
lea r8, [rbp - 0x70]
mov rdx, rsi
lea rcx, [rsp + 0x40]
call fcn.14001be20
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14001d3eb
mov rcx, qword [rax]
lea rdx, [rbp - 0x28]
sub rdx, rcx
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14001d3f2
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14001d43d
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d438
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d8fb
call fcn.140062974
lea r8, [rbp - 0x70]
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.14001be20
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14001d45b
mov rcx, qword [rax]
lea rdx, [rbp - 8]
sub rdx, rcx
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14001d462
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14001d4ad
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d4a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d901
call fcn.140062974
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.14001be20
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14001d4cc
mov rcx, qword [rax]
lea rdx, [rbp + 0x18]
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14001d4e0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14001d52b
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d526
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d907
call fcn.140062974
lea r8, [rbp - 0x70]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x40]
call fcn.14001be20
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14001d54b
mov rcx, qword [rax]
lea rdx, [rbp + 0x100]
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
lea rcx, [rcx + 1]
test al, al
jne 0x14001d560
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14001d5ab
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d5a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d90d
call fcn.140062974
lea rcx, [rbp - 0x30]
call fcn.14001c100
movsxd rcx, dword [r14]
xor r9d, r9d
mov r8d, 0x168
lea rdx, [rbp - 0x30]
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
xor edx, edx
mov r8d, 0x168
lea rcx, [rbp - 0x30]
call fcn.140091150
cmp ebx, 0xffffffff
je 0x14001d79e
xor edx, edx
mov r8d, 0x168
lea rcx, [rbp + 0x170]
call fcn.140091150
movsxd rcx, dword [r14]
xor r9d, r9d
mov r8d, 0x168
lea rdx, [rbp + 0x170]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0x168
jne 0x14001d79e
lea rcx, [rbp + 0x170]
call fcn.14001bc60
mov r14, rax
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x14001d669
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d664
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d913
call fcn.140062974
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], bl
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14001d6b6
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d6b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d919
call fcn.140062974
movdqa xmm0, xmmword [0x140095e10]
movdqu xmmword [rbp - 0x40], xmm0
mov byte [rbp - 0x50], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x14001d702
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d6fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d91f
call fcn.140062974
movdqa xmm0, xmmword [0x140095e10]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14001d74d
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x14001d748
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001d925
mov rcx, r8
call fcn.140062974
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], recv
mov byte [rsi], 0
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x14001d796
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x14001d791
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001d92b
mov rcx, r8
call fcn.140062974
mov rax, r14
jmp 0x14001d1b3
mov byte [r14 + 4], 0
movsxd rax, dword [r14]
test eax, eax
je 0x14001d7b9
mov rcx, rax
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
call fcn.14006201e
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x14001d7fb
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d7f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d931
call fcn.140062974
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], bl
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x14001d848
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d843
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d937
call fcn.140062974
movdqa xmm0, xmmword [0x140095e10]
movdqu xmmword [rbp - 0x40], xmm0
mov byte [rbp - 0x50], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x14001d894
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d88f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001d93d
call fcn.140062974
movdqa xmm0, xmmword [0x140095e10]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14001d8db
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x14001d8d6
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001d8ef
mov rcx, r8
call fcn.140062974
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], recv
mov byte [rsi], 0
jmp 0x14001d177
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
int3
call fcn.14007332c
int3
call fcn.14007332c
int3
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
nop
call fcn.14007332c
int3