Function at 0x43adf0
Capabilities:
Send data
Send data on socket
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
test byte [rdx + 0x59], 0x20
mov edi, dword [rsp + 0xe8]
mov rsi, rcx
mov rbx, rdx
mov r12, r8
mov r13d, r9d
jne 0x43ae74
cmp edi, 0x10
je 0x43b030
cmp edi, 0x1c
mov eax, 0xfffff019
jne 0x43af71
mov rbp, qword [0x00451830]
mov rcx, qword [rbx + 0x70]
mov dword [rsp + 0x68], 0
cmp rcx, 0xffffffffffffffff
je 0x43b070
cmp word [rbp], 0x17
je 0x43aff5
mov r8d, edi
mov rdx, rbp
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
je 0x43b050
or dword [rbx + 0x58], 0x2000
mov rax, qword [rsp + 0xf0]
mov rbp, qword [rbx + 8]
lea r9, [rsp + 0x6c]
mov dword [rsi + 8], 5
mov qword [rsi + 0x70], rbx
mov r8d, r13d
mov qword [rsi + 0x40], 0
mov rdx, r12
mov qword [rsi + 0x78], rax
lea rax, [rsi + 0x40]
mov qword [rsi + 0x48], 0
mov qword [rsi + 0x50], 0
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x58], 0
mov qword [rsp + 0x40], 0
mov rcx, qword [rbx + 0x70]
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call qword [sym.imp.WS2_32.dll_WSASendTo]
test eax, eax
jne 0x43af82
test byte [rbx + 0x5a], 2
je 0x43afa2
mov qword [rsi + 0x60], 0
add dword [rbx + 0x78], 1
mov rax, qword [rsi + 0x60]
add qword [rbx + 0x60], rax
mov eax, dword [rbx + 0x7c]
add qword [rbx + 0x68], 1
lea edx, [rax + 1]
test eax, eax
mov dword [rbx + 0x7c], edx
jne 0x43af42
mov eax, dword [rbx + 0x58]
test al, 4
jne 0x43af42
mov edx, eax
or edx, 4
test al, 8
mov dword [rbx + 0x58], edx
je 0x43af42
mov rax, qword [rbx + 8]
add dword [rax + 8], 1
add dword [rbp + 0x20], 1
mov qword [rsi + 0x68], 0
mov rax, qword [rbp + 0x48]
test rax, rax
je 0x43b040
mov rax, qword [rax + 0x68]
mov qword [rsi + 0x68], rax
mov rax, qword [rbp + 0x48]
mov qword [rax + 0x68], rsi
mov qword [rbp + 0x48], rsi
xor eax, eax
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
je 0x43afa2
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x43af71
mov ecx, eax
call fcn.00416500
jmp 0x43af71
mov edx, r13d
mov rcx, r12
call fcn.00414170
mov qword [rsi + 0x60], rax
add dword [rbx + 0x78], 1
mov rax, qword [rsi + 0x60]
add qword [rbx + 0x60], rax
mov eax, dword [rbx + 0x7c]
add qword [rbx + 0x68], 1
lea edx, [rax + 1]
test eax, eax
mov dword [rbx + 0x7c], edx
jne 0x43afea
mov eax, dword [rbx + 0x58]
test al, 4
jne 0x43afea
mov edx, eax
or edx, 4
test al, 8
mov dword [rbx + 0x58], edx
je 0x43afea
mov rax, qword [rbx + 8]
add dword [rax + 8], 1
add dword [rbp + 0x20], 1
xor eax, eax
jmp 0x43af71
or dword [rbx + 0x58], 0x400000
cmp word [rbp], 0x17
jne 0x43ae58
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x68]
mov r8d, 0x1b
mov edx, 0x29
call qword [sym.imp.WS2_32.dll_setsockopt]
mov rcx, qword [rbx + 0x70]
jmp 0x43ae58
mov rbp, qword [0x00451820]
jmp 0x43ae37
mov qword [rsi + 0x68], rsi
xor eax, eax
mov qword [rbp + 0x48], rsi
jmp 0x43af71
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
mov r14d, eax
je 0x43ae74
mov ecx, r14d
call fcn.00416500
jmp 0x43af71
movzx ecx, word [rbp]
xor r8d, r8d
mov edx, 2
call qword [sym.imp.WS2_32.dll_socket]
cmp rax, 0xffffffffffffffff
mov r15, rax
je 0x43b050
movzx eax, word [rbp]
cmp qword [rbx + 0x70], 0xffffffffffffffff
mov r14, qword [rbx + 8]
mov dword [rsp + 0x6c], 1
mov word [rsp + 0x5e], ax
jne 0x43b0e4
lea r8, [rsp + 0x6c]
mov edx, 0x8004667e
mov rcx, r15
call qword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x43b0f8
movzx r9d, word [rsp + 0x5e]
mov rcx, r14
mov r8, r15
mov rdx, rbx
call fcn.00438d90
mov r14d, eax
test r14d, r14d
jne 0x43b0ea
mov rcx, qword [rbx + 0x70]
jmp 0x43ae4d
mov r14d, 0xfffff00e
mov rcx, r15
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x43b061
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r14d, eax
jmp 0x43b0d6