Function at 0x14000b170
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x4a0
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x4d0], rbx
mov rax, qword [0x140041008]
xor rax, rsp
mov qword [rsp + 0x490], rax
mov rsi, rdx
mov rdi, rcx
mov qword [rdx + 0x10], 0
cmp qword [rdx + 0x18], 0x10
jb 0x14000b1b8
mov rax, qword [rdx]
jmp 0x14000b1bb
mov rax, rdx
mov byte [rax], 0
xor edx, edx
mov r8d, 0x400
lea rcx, [rsp + 0x90]
call fcn.140012ac0
mov qword [rsp + 0x40], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x38], 0
mov byte [rsp + 0x28], 0
xor bpl, bpl
nop dword [rax]
mov rax, qword [rdi]
movzx ebx, byte [rax + 0x50]
test bl, bl
je 0x14000b395
movsxd rcx, dword [rax + 0x4c]
xor r9d, r9d
mov r8d, 0x400
lea rdx, [rsp + 0x90]
call qword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x14000b395
test bl, bl
je 0x14000b395
movsxd r8, eax
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x28]
call fcn.140002f40
mov r9d, 4
xor r8d, r8d
lea rdx, str._r_n_r_n
lea rcx, [rsp + 0x28]
call fcn.140004020
cmp rax, 0xffffffffffffffff
je 0x14000b1f0
mov bpl, 1
lea rbx, [rax + 4]
mov r9, qword [rsp + 0x38]
sub r9, rax
sub r9, 4
mov r8, rbx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x28]
call fcn.140002d90
mov rdx, rax
mov rcx, rsi
call fcn.140002dd0
mov rax, qword [rsp + 0x60]
cmp rax, 0x10
jb 0x14000b2f7
inc rax
mov rcx, qword [rsp + 0x48]
cmp rax, 0xffffffffffffffff
ja 0x14000b2f1
cmp rax, 0x1000
jb 0x14000b2ea
test cl, 0x1f
jne 0x14000b2e4
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x14000b2de
sub rcx, rax
cmp rcx, 8
jb 0x14000b2d8
cmp rcx, 0x27
ja 0x14000b2d2
mov rcx, rax
jmp 0x14000b2ea
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.14000f220
jmp 0x14000b2f7
call fcn.140019f90
int3
mov r9, rbx
xor r8d, r8d
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x28]
call fcn.140002d90
nop
mov rcx, qword [rdi + 0x18]
cmp rcx, rax
je 0x14000b326
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
call fcn.1400020c0
nop
mov rax, qword [rsp + 0x80]
cmp rax, 0x10
jb 0x14000b3e2
inc rax
mov rcx, qword [rsp + 0x68]
cmp rax, 0xffffffffffffffff
ja 0x14000b38f
cmp rax, 0x1000
jb 0x14000b388
test cl, 0x1f
jne 0x14000b382
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x14000b37c
sub rcx, rax
cmp rcx, 8
jb 0x14000b376
cmp rcx, 0x27
ja 0x14000b370
mov rcx, rax
jmp 0x14000b388
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.140019f90
int3
call fcn.14000f220
jmp 0x14000b3e2
call fcn.140019f90
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rdi + 8], 3
mov rbx, qword [rdi]
cmp byte [rbx + 0x50], 0
jne 0x14000b3b3
mov eax, dword [rbx + 0x4c]
cmp eax, 0xffffffff
je 0x14000b3bd
movsxd rcx, dword [rbx + 0x4c]
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbx + 0x50], 0
xor r8d, r8d
lea rdx, [0x14003899f]
lea rcx, [rbx + 0x28]
call fcn.140001f90
mov dword [rbx + 0x48], 0
mov dword [rbx + 0x4c], 0xffffffff
mov rax, qword [rsp + 0x40]
cmp rax, 0x10
jb 0x14000b448
inc rax
mov rcx, qword [rsp + 0x28]
cmp rax, 0xffffffffffffffff
jbe 0x14000b401
call fcn.140019f90
int3
cmp rax, 0x1000
jb 0x14000b443
test byte [rsp + 0x28], 0x1f
je 0x14000b416
call fcn.140019f90
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x14000b425
call fcn.140019f90
int3
sub rcx, rax
cmp rcx, 8
jae 0x14000b434
call fcn.140019f90
int3
cmp rcx, 0x27
jbe 0x14000b440
call fcn.140019f90
int3
mov rcx, rax
call fcn.14000f220
movzx eax, bpl
mov rcx, qword [rsp + 0x490]
xor rcx, rsp
call fcn.14000f1c0
mov rbx, qword [rsp + 0x4d0]
add rsp, 0x4a0
pop rdi
pop rsi
pop rbp
ret