Function at 0x5735f0
Capabilities:
Get local ipv4 addresses
Get socket information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
xor eax, eax
sub ecx, 1
mov esi, edx
mov r12, r9
cmp ecx, 1
seta al
or eax, r8d
mov r13d, eax
jne 0x573889
test r9, r9
je 0x57389f
xor r8d, r8d
mov ecx, 2
mov rdi, qword [sym.imp.WS2_32.dll_socket]
call rdi
test rax, rax
mov rbx, rax
js 0x573840
xor eax, eax
mov edx, 2
lea r14, [rsp + 0x30]
mov word [rsp + 0x30], dx
mov ecx, 0x7f000001
mov qword [rsp + 0x32], 0
mov dword [rsp + 0x3a], 0
mov word [rsp + 0x3e], ax
call qword [sym.imp.WS2_32.dll_htonl]
xor ecx, ecx
mov dword [rsp + 0x34], eax
mov r8d, 0x10
mov word [rsp + 0x32], cx
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
je 0x573810
mov edx, 1
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
je 0x573810
xor r8d, r8d
mov edx, esi
mov ecx, 2
call rdi
test rax, rax
mov rsi, rax
js 0x573850
lea rdi, [rsp + 0x40]
lea rbp, [rsp + 0x2c]
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x2c], 0x10
mov rcx, rbx
mov r8, rbp
mov rdx, rdi
mov r15, qword [sym.imp.WS2_32.dll_getsockname]
call r15
cmp eax, 0xffffffff
je 0x573823
cmp dword [rsp + 0x2c], 0x10
jne 0x5737f1
mov r8d, 0x10
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x573823
mov rdx, r14
mov dword [rsp + 0x2c], 0x10
mov r8, rbp
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_accept]
test rax, rax
mov r14, rax
js 0x573870
cmp dword [rsp + 0x2c], 0x10
jne 0x5737c0
mov r8, rbp
mov rdx, rdi
mov rcx, rsi
call r15
cmp eax, 0xffffffff
je 0x573870
cmp dword [rsp + 0x2c], 0x10
jne 0x5737c0
movzx eax, word [rsp + 0x40]
cmp word [rsp + 0x30], ax
jne 0x5737c0
mov eax, dword [rsp + 0x44]
cmp dword [rsp + 0x34], eax
jne 0x5737c0
movzx eax, word [rsp + 0x42]
cmp word [rsp + 0x32], ax
jne 0x5737c0
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r12], rsi
mov qword [r12 + 8], r14
mov eax, r13d
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edi, 0x2745
mov rcx, rbx
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
call rbx
mov rcx, rsi
call rbx
cmp r14, 0xffffffffffffffff
je 0x5737e1
mov rcx, r14
call rbx
mov ecx, edi
mov r13d, 0xffffffff
call qword [sym.imp.WS2_32.dll_WSASetLastError]
jmp 0x5737a9
mov rcx, rbx
mov edi, 0x2745
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
call rbx
mov rcx, rsi
call rbx
jmp 0x5737e1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
mov edi, eax
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x5737e1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
mov edi, eax
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
call rbx
mov rcx, rsi
call rbx
jmp 0x5737e1
mov r13d, 0xffffffff
jmp 0x5737a9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
mov edi, eax
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
call rbx
cmp rsi, 0xffffffffffffffff
je 0x5737e1
jmp 0x573837
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
mov edi, eax
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
call rbx
jmp 0x5737d1
mov ecx, 0x273f
mov r13d, 0xffffffff
call qword [sym.imp.WS2_32.dll_WSASetLastError]
jmp 0x5737a9
mov ecx, 0x2726
mov r13d, 0xffffffff
call qword [sym.imp.WS2_32.dll_WSASetLastError]
jmp 0x5737a9