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

Disassembly:
mov dword [rsp + 8], ecx
sub rsp, 0x78
mov rax, qword [0x140298e80]
xor rax, rsp
mov qword [rsp + 0x60], rax
cmp dword [rsp + 0x80], 0xe0
jl 0x1400c13d8
cmp dword [rsp + 0x80], 0xe7
jg 0x1400c13d8
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x34]
sub eax, 0xe0
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 7
ja case.default.0x1400c1342
movsxd rax, dword [rsp + 0x34]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0xc1574]
add rax, rcx
jmp rax
movsx eax, byte [0x1402b4e58]
and eax, 0xfffffffe
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xfffffffd
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xfffffffb
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xfffffff7
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xffffffef
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xffffffdf
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
and eax, 0xffffffbf
mov byte [0x1402b4e58], al
jmp case.default.0x1400c1342
movsx eax, byte [0x1402b4e58]
btr eax, 7
mov byte [0x1402b4e58], al
jmp 0x1400c1478
mov dword [rsp + 0x30], 0
jmp 0x1400c13ec
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0xa
jge 0x1400c1478
movsxd rax, dword [rsp + 0x30]
lea rcx, [0x1402b4e5a]
movsx eax, byte [rcx + rax]
cmp eax, dword [rsp + 0x80]
jne 0x1400c1473
mov eax, 0xa
sub eax, dword [rsp + 0x30]
cdqe
mov ecx, dword [rsp + 0x30]
inc ecx
movsxd rcx, ecx
lea rdx, [0x1402b4e5a]
add rdx, rcx
mov rcx, rdx
movsxd rdx, dword [rsp + 0x30]
lea r8, [0x1402b4e5a]
add r8, rdx
mov rdx, r8
mov qword [rsp + 0x40], rdx
mov r8, rax
mov rdx, rcx
mov rax, qword [rsp + 0x40]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov eax, 1
imul rax, rax, 9
lea rcx, [0x1402b4e5a]
mov byte [rcx + rax], 0
jmp 0x1400c1478
jmp 0x1400c13e2
cmp qword [0x1402b45e0], 0
ja 0x1400c148c
mov eax, 0xffffdcd8
jmp 0x1400c155f
mov eax, dword [0x1402b45f8]
inc eax
mov dword [0x1402b45f8], eax
mov dword [0x1402b45fc], 0x123c2c2f
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov dword [0x1402b45f4], eax
mov r8d, ntohs
lea rdx, [0x1402b4e58]
lea rcx, [0x1402b4600]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsp + 0x38], Ordinal_32
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
lea rax, [0x1402b4e10]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, dword [rsp + 0x38]
lea rdx, [0x1402b45f0]
mov rcx, qword [0x1402b45e0]
call qword [sym.imp.WS2_32.dll_sendto]
mov dword [rsp + 0x48], reloc.WS2_32.dll_recv
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x400
lea rdx, [0x1402b4a00]
mov rcx, qword [0x1402b45e0]
call qword [sym.imp.WS2_32.dll_recvfrom]
mov dword [rsp + 0x3c], eax
cmp dword [rsp + 0x3c], 0
jge 0x1400c154c
mov eax, 0xffffdcdb
jmp 0x1400c155f
lea rdx, [0x1402b45f0]
lea rcx, [0x1402b4a00]
call fcn.1400c0ac0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1401dae20
add rsp, 0x78
ret