Function at 0x1400cc480
Capabilities:
Check for software breakpoints

Disassembly:
push rbx
push rsi
push rdi
push r13
push r15
sub rsp, 0x50
xor r13d, r13d
lea rsi, [rcx + 8]
mov edi, r13d
mov r15, rcx
cmp word [rsi], di
jne 0x1400cc4a8
mov rsi, qword [rcx]
add rsi, 0x194
cmp byte [rcx + 0xe900], 3
mov ebx, 4
jne 0x1400cc4c6
cmp byte [rcx + 0xe901], 3
jb 0x1400cc4c6
movzx ebx, word [rsi + 2]
add ebx, 6
mov r9, qword [rcx + 0x147e8]
test r9, r9
jne 0x1400cc4e0
mov rax, qword [rcx]
mov r9, qword [rax + 0x40]
test r9, r9
je 0x1400cc54b
nop
mov r8, qword [r9 + 0x18]
test r8, r8
je 0x1400cc53f
mov r8d, dword [r8 + 0x20b4]
cmp r8d, 0x80
jae 0x1400cc500
mov eax, 1
jmp 0x1400cc537
mov edx, 3
mov ecx, reloc.WS2_32.dll_recv
nop word [rax + rax]
mov eax, r8d
shr eax, cl
test eax, eax
jne 0x1400cc521
add ecx, 0xfffffff8
add edx, 0xffffffff
jne 0x1400cc510
mov eax, 1
test dl, dl
je 0x1400cc537
nop word [rax + rax]
inc eax
add dl, 0xff
jne 0x1400cc530
add eax, r8d
add edi, 3
add edi, eax
mov r9, qword [r9 + 0x140]
test r9, r9
jne 0x1400cc4e0
add ebx, edi
test byte [r15 + 0xea7c], 0x18
jne 0x1400cc98b
test byte [r15 + 0xea7a], 4
mov qword [rsp + 0x88], r12
lea r12d, [rbx + 9]
jne 0x1400cc589
cmp byte [r15 + 0xea2c], r13b
je 0x1400cc5a6
cmp byte [r15 + 0x6305], r13b
je 0x1400cc5a6
add r12d, 0x66
jmp 0x1400cc59b
cmp byte [r15 + 0xea2c], r13b
je 0x1400cc5a6
cmp byte [r15 + 0x6305], r13b
je 0x1400cc5a6
mov rcx, r15
call fcn.1400bc680
add r12d, eax
or word [r15 + 0xea80], 8
mov edx, r12d
mov rcx, r15
call fcn.1400c43d0
test eax, eax
jne 0x1400cc873
mov eax, dword [r15 + 0xe5d0]
lea edx, [rbx + 4]
mov qword [rsp + 0x80], rbp
mov ebp, dword [r15 + 0xe5d4]
add rbp, rax
mov qword [rsp + 0x90], r14
add rbp, qword [r15 + 0xe5c8]
je 0x1400cc633
mov byte [rbp], reloc.WS2_32.dll_shutdown
movzx eax, byte [r15 + 0xe900]
mov byte [rbp + 1], al
movzx eax, word [r15 + 0xe900]
movzx ecx, ax
shr cx, 8
cmp al, 3
jne 0x1400cc619
cmp cl, 4
jb 0x1400cc619
movzx ecx, al
mov byte [rbp + 2], cl
test byte [r15 + 0xea7a], 4
jne 0x1400cc633
movzx eax, dx
mov byte [rbp + 4], dl
shr ax, 8
mov byte [rbp + 3], al
lea rcx, [rbp + 5]
test rcx, rcx
je 0x1400cc652
mov eax, ebx
mov byte [rcx], 0xd
shr eax, 0x10
mov byte [rcx + 1], al
mov eax, ebx
shr eax, 8
mov byte [rcx + 2], al
mov byte [rcx + 3], bl
mov byte [rbp + 9], 1
movzx eax, byte [r15 + 0xea83]
cmp al, 0xc0
je 0x1400cc666
cmp al, 0xcc
jne 0x1400cc672
cmp byte [r15 + 0xe910], 3
mov al, 0x40
je 0x1400cc674
mov al, 1
mov byte [rbp + 0xa], al
mov r14d, recv
cmp byte [r15 + 0xe900], 3
jne 0x1400cc6c0
cmp byte [r15 + 0xe901], 3
jb 0x1400cc6c0
movzx ecx, word [rsi + 2]
lea rdx, [rsi + 0x130]
movzx eax, cx
mov byte [rbp + 0xc], cl
shr ax, 8
lea rcx, [rbp + 0xd]
mov byte [rbp + 0xb], al
movzx r8d, word [rsi + 2]
call fcn.14014dae0
movzx r14d, word [rsi + 2]
add r14d, 0xd
mov ecx, r14d
movzx eax, di
shr ax, 8
add r14d, 2
mov byte [rcx + rbp], al
mov byte [rcx + rbp + 1], dil
mov rdi, qword [r15 + 0x147e8]
test rdi, rdi
jne 0x1400cc6f2
mov rax, qword [r15]
mov rdi, qword [rax + 0x40]
test rdi, rdi
je 0x1400cc82c
mov rbx, qword [rdi + 0x18]
test rbx, rbx
je 0x1400cc81c
mov r8d, dword [rbx + 0x20b4]
cmp r8d, 0x80
jae 0x1400cc717
mov r8d, 1
jmp 0x1400cc748
mov edx, 3
mov ecx, reloc.WS2_32.dll_recv
mov eax, r8d
shr eax, cl
test eax, eax
jne 0x1400cc732
add ecx, 0xfffffff8
add edx, 0xffffffff
jne 0x1400cc721
mov r8d, 1
test dl, dl
je 0x1400cc748
nop dword [rax]
inc r8d
add dl, 0xff
jne 0x1400cc740
inc r8w
add r8w, word [rbx + 0x20b4]
mov byte [r14 + rbp + 1], r8b
movzx eax, r8w
shr ax, 8
mov byte [r14 + rbp], al
add r14d, 2
mov r11d, dword [rbx + 0x20b4]
mov r10d, r14d
add r10, rbp
je 0x1400cc781
mov byte [r10], 0x30
inc r10
jmp 0x1400cc784
mov r10, r13
cmp r11d, 0x80
jae 0x1400cc79d
test r10, r10
je 0x1400cc795
mov byte [r10], r11b
mov r9d, 1
jmp 0x1400cc7f6
mov ecx, reloc.WS2_32.dll_recv
lea r8d, [rcx - 0xd]
mov eax, r11d
shr eax, cl
test eax, eax
jne 0x1400cc7b8
add ecx, 0xfffffff8
add r8d, 0xffffffff
jne 0x1400cc7a6
test r10, r10
je 0x1400cc7c6
movzx eax, r8b
or al, 0x80
mov byte [r10], al
mov r9d, 1
test r8b, r8b
je 0x1400cc7f6
test r10, r10
je 0x1400cc7ed
movzx ecx, r8b
mov edx, r11d
mov eax, r9d
lea ecx, [rcx*8 - 8]
shr edx, cl
mov byte [rax + r10], dl
inc r9d
add r8b, 0xff
jne 0x1400cc7d1
movsxd r8, dword [rbx + 0x20b4]
lea rdx, [rbx + 0x1f68]
inc r9d
add r14d, r9d
mov ecx, r14d
add rcx, rbp
call fcn.14014dae0
add r14d, dword [rbx + 0x20b4]
mov rdi, qword [rdi + 0x140]
test rdi, rdi
jne 0x1400cc6f2
cmp byte [r15 + 0xea2c], r13b
je 0x1400cc90d
cmp byte [r15 + 0x6305], r13b
je 0x1400cc90d
movzx ebx, word [r15 + 0xea7a]
and ebx, 4
add ebx, ebx
or ebx, 5
sub r14d, ebx
test r14d, r14d
jg 0x1400cc887
mov eax, 0xffffff7c
mov rbp, qword [rsp + 0x80]
mov r14, qword [rsp + 0x90]
mov r12, qword [rsp + 0x88]
add rsp, 0x50
pop r15
pop r13
pop rdi
pop rsi
pop rbx
ret
mov rax, qword [0x143e6b7e0]
movsxd rsi, r14d
mov rcx, rsi
test rax, rax
je 0x1400cc89d
call rax
jmp 0x1400cc8a2
call fcn.14003fdc8
mov rdi, rax
test rax, rax
jne 0x1400cc8af
lea eax, [rdi - 0x7d]
jmp 0x1400cc863
mov edx, ebx
mov r8, rsi
add rdx, rbp
mov rcx, rdi
call fcn.14014dae0
mov dword [rsp + 0x30], 1
mov r9, rdi
mov dword [rsp + 0x28], reloc.WS2_32.dll_shutdown
mov r8d, r12d
mov rdx, rbp
mov dword [rsp + 0x20], r14d
mov rcx, r15
call fcn.1400ca3a0
mov rdx, qword [0x143e6b7d0]
mov r14d, eax
mov rcx, rdi
test rdx, rdx
je 0x1400cc8fb
call rdx
jmp 0x1400cc900
call fcn.14003c5b4
test r14d, r14d
jns 0x1400cc926
mov eax, r14d
jmp 0x1400cc863
xor r9d, r9d
mov r8d, r14d
mov rdx, rbp
mov rcx, r15
call fcn.1400c5010
test eax, eax
jne 0x1400cc863
cmp byte [r15 + 0xecd1], r13b
je 0x1400cc955
mov dword [rsp + 0x28], 1
mov r9, rbp
mov r8d, reloc.WS2_32.dll_shutdown
mov dword [rsp + 0x20], r14d
mov rcx, r15
call fcn.1400bc080
test eax, eax
jne 0x1400cc863
add dword [r15 + 0xe5d0], r14d
mov eax, 0x400
test word [r15 + 0xea7c], ax
jne 0x1400cc976
mov rcx, r15
call fcn.1400ccf00
mov r13d, eax
mov eax, 0xfff7
and word [r15 + 0xea80], ax
mov eax, r13d
jmp 0x1400cc863
xor eax, eax
add rsp, 0x50
pop r15
pop r13
pop rdi
pop rsi
pop rbx
ret