Function at 0x18002f3bc
Capabilities:
Create udp socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1430
call fcn.18006c190
sub rsp, rax
mov rax, qword [0x18009c600]
xor rax, rsp
mov qword [rsp + 0x1420], rax
mov r14, qword [rsp + 0x1488]
mov rsi, qword [rsp + 0x1498]
mov r13, rcx
mov qword [rsp + 0x60], r14
xor r14d, r14d
lea rdx, [rsp + 0x80]
mov ebx, r14d
mov ecx, 0x202
mov rdi, r8
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x1480], 0xbb8
mov r12d, r14d
mov dword [rsp + 0x30], ebx
call qword [sym.imp.WS2_32.dll_WSAStartup]
lea r15d, [r14 + 2]
lea r8d, [r14 + 0x11]
mov edx, r15d
mov ecx, r15d
call qword [sym.imp.WS2_32.dll_socket]
mov rbp, rax
cmp rax, r14
je 0x18002f7bf
cmp rax, 0xffffffffffffffff
je 0x18002f7bf
lea r9, [rsp + 0x1480]
mov edx, 0xffff
mov r8d, 0x1006
mov rcx, rax
mov dword [rsp + 0x20], 4
call qword [sym.imp.WS2_32.dll_setsockopt]
lea ecx, [r14 + 0x35]
mov word [rsp + 0x68], r15w
call qword [sym.imp.WS2_32.dll_htons]
mov rcx, rdi
mov word [rsp + 0x6a], ax
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rsp + 0x6c], eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movzx ecx, ax
mov dword [rsp + 0x40], eax
call qword [sym.imp.WS2_32.dll_htons]
lea ecx, [r14 + 1]
mov byte [rsp + 0x4a], 1
mov word [rsp + 0x48], ax
mov byte [rsp + 0x4b], r14b
call qword [sym.imp.WS2_32.dll_htons]
or rcx, 0xffffffffffffffff
mov word [rsp + 0x4c], ax
xor eax, eax
mov rdi, r13
mov word [rsp + 0x4e], r14w
mov word [rsp + 0x50], r14w
repne scasb al, byte [rdi]
mov word [rsp + 0x52], r14w
mov edx, r14d
not rcx
mov esi, r14d
mov r9, r14
dec rcx
mov r8, r14
movsxd r15, ecx
cmp r15, r14
jl 0x18002f592
mov ecx, 0x1f4
mov al, byte [r9 + r13]
cmp al, 0x2e
je 0x18002f528
cmp al, r14b
jne 0x18002f57a
mov edi, esi
sub edi, ebx
cmp edx, ecx
je 0x18002f588
mov byte [rsp + r8 + 0x220], dil
inc r8
inc edx
mov r10d, r14d
mov r11, r14
movsxd r14, ebx
test edi, edi
jle 0x18002f573
cmp edx, ecx
je 0x18002f58d
lea rax, [r11 + r14]
inc r10d
inc r8
mov cl, byte [rax + r13]
inc edx
inc r11
cmp r10d, edi
mov byte [rsp + r8 + 0x21f], cl
mov ecx, 0x1f4
jl 0x18002f54a
lea ebx, [rbx + rdi + 1]
xor r14d, r14d
inc r9
inc esi
cmp r9, r15
jle 0x18002f51b
cmp edx, ecx
jne 0x18002f592
mov edi, r14d
jmp 0x18002f5a0
xor r14d, r14d
jmp 0x18002f588
movsxd rax, edx
lea edi, [rdx + 1]
mov byte [rsp + rax + 0x220], r14b
mov ecx, 1
call qword [sym.imp.WS2_32.dll_htons]
mov ecx, 1
mov word [rsp + 0x34], ax
call qword [sym.imp.WS2_32.dll_htons]
lea esi, [rdi + 0x10]
mov ecx, esi
mov word [rsp + 0x36], ax
call fcn.18004a00c
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x220]
mov rbx, rax
mov rax, qword [rcx]
mov r8, rdi
mov qword [rbx], rax
mov eax, dword [rcx + 8]
lea rcx, [rbx + 0xc]
mov dword [rbx + 8], eax
call fcn.18005a1e0
mov edx, dword [rsp + 0x34]
mov dword [rdi + rbx + 0xc], edx
lea rax, [rsp + 0x68]
mov edi, reloc.WS2_32.dll_recv
xor r9d, r9d
mov r8d, esi
mov rdx, rbx
mov rcx, rbp
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_sendto]
cmp eax, r14d
jl 0x18002f7b7
lea rax, [rsp + 0x58]
lea rdx, [rsp + 0x420]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov r8d, 0x1000
mov rcx, rbp
mov dword [rsp + 0x58], edi
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_recvfrom]
cmp eax, r14d
mov ebx, eax
jl 0x18002f7b7
movzx ecx, word [rsp + 0x420]
call qword [sym.imp.WS2_32.dll_ntohs]
cmp ax, word [rsp + 0x40]
jne 0x18002f7b7
movzx ecx, word [rsp + 0x426]
call qword [sym.imp.WS2_32.dll_ntohs]
mov r13d, r14d
movzx eax, ax
cmp eax, r14d
mov dword [rsp + 0x34], eax
jle 0x18002f7aa
cmp esi, ebx
jae 0x18002f7aa
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x220]
lea rcx, [rsp + 0x420]
mov qword [rsp + 0x28], rax
mov r8d, esi
mov edx, ebx
mov dword [rsp + 0x20], 0x200
call fcn.18002f284
mov edi, eax
cmp eax, r14d
je 0x18002f7b1
add esi, eax
cmp esi, ebx
jae 0x18002f7b1
mov r14d, esi
add esi, 0xa
cmp esi, ebx
jae 0x18002f7b1
movzx ecx, word [rsp + r14 + 0x420]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx r15d, ax
cmp r15d, 1
jne 0x18002f756
movzx ecx, word [rsp + r14 + 0x428]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx edi, ax
lea eax, [rdi + rsi]
cmp eax, ebx
ja 0x18002f7b1
mov r14, qword [rsp + 0x60]
test r14, r14
je 0x18002f797
cmp edi, 4
jne 0x18002f797
mov edx, r12d
lea rax, [rdx + 4]
cmp rax, 0x28
ja 0x18002f797
mov ecx, dword [rsp + rsi + 0x420]
add r12d, edi
mov dword [rdx + r14], ecx
cmp r15d, 5
jne 0x18002f797
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x220]
lea rcx, [rsp + 0x420]
mov qword [rsp + 0x28], rax
mov r8d, esi
mov edx, ebx
mov dword [rsp + 0x20], 0x200
call fcn.18002f284
xor r14d, r14d
mov edi, eax
cmp eax, r14d
jne 0x18002f79a
mov ebx, r14d
jmp 0x18002f7ba
xor r14d, r14d
inc r13d
add esi, edi
cmp r13d, dword [rsp + 0x34]
jl 0x18002f69f
mov ebx, 1
jmp 0x18002f7ba
mov ebx, dword [rsp + 0x30]
jmp 0x18002f7ba
mov ebx, r12d
mov rsi, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x18002f7dd
lea ecx, [r12 + 1]
cmp ecx, 0x28
ja 0x18002f7dd
mov eax, r12d
mov r12d, ecx
mov byte [rax + rdx], 0
test rsi, rsi
je 0x18002f7e5
mov dword [rsi], r12d
test rbp, rbp
je 0x18002f7f9
cmp rbp, 0xffffffffffffffff
je 0x18002f7f9
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
mov eax, ebx
mov rcx, qword [rsp + 0x1420]
xor rcx, rsp
call fcn.1800520e0
lea r11, [rsp + 0x1430]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret