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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x730
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x770], rbx
mov rax, qword [0x140229498]
xor rax, rsp
mov qword [rsp + 0x720], rax
mov rbp, r9
movzx edi, r8b
movsxd rsi, edx
mov rbx, rcx
mov qword [rsp + 0x58], rcx
xor eax, eax
mov qword [rcx], rax
mov dword [rcx + 8], eax
mov qword [rcx + 0x10], rax
mov dword [rcx + 0x18], eax
mov qword [rcx + 0x20], rax
mov dword [rcx + 0x28], eax
mov dword [rsp + 0x40], 0x80
xor edx, edx
mov r8d, 0x80
lea rcx, [rsp + 0x290]
call fcn.14011f1f0
test dil, dil
je 0x1400379ba
mov rcx, rsi
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x290]
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
je 0x140037a34
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov byte [rsp + 0x60], 0
or r9d, 0xffffffff
lea r8, str.getsockname
mov edx, 0x100
lea rcx, [rsp + 0x60]
call fcn.14007b3b0
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.14007f910
lea rcx, [rsp + 0x164]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
call fcn.14011e9b0
lea rdx, [0x14020b6e8]
lea rcx, [rsp + 0x164]
call fcn.14011f050
int3
mov rcx, rsi
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x290]
call qword [sym.imp.WS2_32.dll_getpeername]
test eax, eax
je 0x140037a34
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov byte [rsp + 0x60], 0
or r9d, 0xffffffff
lea r8, str.getpeername
mov edx, 0x100
lea rcx, [rsp + 0x60]
call fcn.14007b3b0
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.14007f910
lea rcx, [rsp + 0x164]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
call fcn.14011e9b0
lea rdx, [0x14020b6e8]
lea rcx, [rsp + 0x164]
call fcn.14011f050
int3
test rbp, rbp
je 0x140037a60
mov rdx, rbp
lea rcx, [rsp + 0x48]
call fcn.14002f7c0
or r8d, 0xffffffff
mov rdx, qword [rax]
lea rcx, [rbx + 0x10]
call fcn.14007a6f0
mov rcx, qword [rsp + 0x48]
call fcn.14011e950
mov edi, dword [rsp + 0x40]
mov rax, qword [0x14023b3c8]
test rax, rax
jne 0x140037a80
mov cx, 1
call fcn.140034ee0
mov qword [0x14023b3c8], rax
mov dword [rsp + 0x30], 0xa
mov qword [rsp + 0x28], 0x20
lea rcx, [rsp + 0x268]
mov qword [rsp + 0x20], rcx
mov r9d, 0x401
lea r8, [rsp + 0x310]
mov edx, edi
lea rcx, [rsp + 0x290]
call rax
mov edi, eax
mov ecx, eax
call qword [sym.imp.WS2_32.dll_WSASetLastError]
test edi, edi
je 0x140037b1e
mov byte [rsp + 0x60], 0
or r9d, 0xffffffff
lea r8, str.getnameinfo
mov edx, 0x100
lea rcx, [rsp + 0x60]
call fcn.14007b3b0
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.14007f910
lea rcx, [rsp + 0x164]
lea rdx, [rsp + 0x60]
mov r8d, 0x104
call fcn.14011e9b0
lea rdx, [0x14020bb38]
lea rcx, [rsp + 0x164]
call fcn.14011f050
int3
lea rdx, [rsp + 0x310]
lea rcx, [rsp + 0x48]
call fcn.14002f7c0
or r8d, 0xffffffff
mov rdx, qword [rax]
mov rcx, rbx
call fcn.14007a6f0
mov rcx, qword [rsp + 0x48]
call fcn.14011e950
lea rcx, [rsp + 0x268]
call fcn.140120340
mov dword [rbx + 0x30], eax
mov rdx, qword [rbx]
test rdx, rdx
je 0x140037b7f
xor eax, eax
lea rdi, str._::_
mov rsi, rdx
mov ecx, 5
repe cmpsb byte [rsi], byte [rdi]
je 0x140037b7b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x140037ba2
test rdx, rdx
je 0x140037baa
xor eax, eax
lea rdi, str.0.0.0.0
mov rsi, rdx
mov ecx, 8
repe cmpsb byte [rsi], byte [rdi]
je 0x140037b9e
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x140037baa
test rdx, rdx
je 0x140037baa
mov byte [rdx], 0
mov rdx, qword [rbx + 0x10]
test rdx, rdx
jne 0x140037bb6
mov rdx, qword [rbx]
mov dword [rsp + 0x20], 0xffffffff
or r9d, 0xffffffff
mov r8d, dword [rbx + 0x30]
lea rcx, [rsp + 0x48]
call fcn.14002f8c0
or r8d, 0xffffffff
mov rdx, qword [rax]
lea rcx, [rbx + 0x20]
call fcn.14007a6f0
mov rcx, qword [rsp + 0x48]
call fcn.14011e950
movzx edx, word [rsp + 0x290]
mov dword [rbx + 0x34], edx
mov rax, rbx
mov rcx, qword [rsp + 0x720]
xor rcx, rsp
call fcn.14011f1c0
mov rbx, qword [rsp + 0x770]
add rsp, 0x730
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret