Function at 0x140167240
Capabilities:
Get local ipv4 addresses

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push r12
push r13
push r14
sub rsp, 0xa0
xor r13d, r13d
mov r14, rdx
mov dword [rdx], r13d
mov r12, rcx
xor edx, edx
mov qword [rcx], r13
xor r8d, r8d
lea ecx, [rdx + 6]
call fcn.140167170
movsxd rbp, eax
test eax, eax
je 0x140167282
lea esi, [r13 + 0xe]
jmp 0x1401672b0
mov edx, 1
mov r8d, edx
lea ecx, [rdx + 4]
call fcn.140167170
test eax, eax
jne 0x1401672ab
mov eax, 0xfffff02f
add rsp, 0xa0
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
mov esi, 0x1e
mov qword [rsp + 0x98], rbx
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x90], rdi
xor r9d, r9d
mov qword [rsp + 0x88], r15
xor r8d, r8d
mov edx, esi
mov dword [rsp + 0xe0], r13d
xor ecx, ecx
mov qword [rsp + 0x58], r13
mov r15, r13
mov qword [rsp + 0x20], rax
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersAddresses]
mov edi, eax
test eax, eax
je 0x140167375
nop dword [rax + rax]
call fcn.1403379a0
mov rcx, r15
mov ebx, dword [rax]
call qword [fcn.1403379d4]
call fcn.1403379a0
mov ecx, edi
mov dword [rax], ebx
sub ecx, 0x57
je 0x14016752b
sub ecx, 0x18
jne 0x1401674e6
mov ecx, dword [rsp + 0xe0]
test rcx, rcx
je 0x1401677dd
call qword [str.p3_]
mov qword [rsp + 0x58], rax
mov r15, rax
test rax, rax
je 0x1401677dd
lea rax, [rsp + 0xe0]
mov r9, r15
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, esi
xor ecx, ecx
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersAddresses]
mov edi, eax
test eax, eax
jne 0x140167300
mov dword [rsp + 0xe8], r13d
mov esi, r13d
mov qword [rsp + 0x48], r13
mov rdi, r13
mov rbx, r15
test r15, r15
je 0x1401677c6
cmp dword [rbx + 0x68], 1
jne 0x14016740b
cmp qword [rbx + 0x18], r13
je 0x14016740b
mov r8, qword [rbx + 0x48]
mov r9d, 0xffffffff
mov qword [rsp + 0x38], r13
xor edx, edx
mov qword [rsp + 0x30], r13
mov ecx, 0xfde9
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jle 0x140167535
cdqe
add rdi, rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x48], rdi
test rax, rax
je 0x14016740b
nop word [rax + rax]
mov rax, qword [rax + 8]
inc esi
add rdi, 0x50
test rax, rax
jne 0x1401673f0
mov dword [rsp + 0xe8], esi
mov qword [rsp + 0x48], rdi
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x140167394
test rdi, rdi
je 0x1401677c6
mov rcx, rdi
call qword [str.p3_]
mov qword [rsp + 0x78], rax
mov r12, rax
test rax, rax
je 0x1401677c6
movsxd rcx, esi
mov rbx, rbp
mov r14, rax
mov qword [rsp + 0x70], r15
mov r13, r15
mov qword [rsp + 0x68], rbx
mov edx, 0x7fffffff
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, rax
mov qword [rsp + 0x50], rcx
cmp dword [r13 + 0x68], 1
jne 0x14016773c
cmp qword [r13 + 0x18], 0
je 0x14016773c
mov r8, qword [r13 + 0x48]
mov rax, rdi
sub rax, rcx
add rax, r12
cmp rax, rdx
cmova rax, rdx
xor esi, esi
mov qword [rsp + 0x38], rsi
xor edx, edx
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
lea r9d, [rsi - 1]
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [rsp + 0x40], eax
test eax, eax
jle 0x140167787
mov rax, qword [r13 + 0x18]
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140167725
lea rbp, [r14 + 0x14]
mov r12, qword [rax + 0x10]
test rbx, rbx
je 0x140167542
movzx edi, byte [rax + 0x38]
jmp 0x14016761e
sub ecx, 0x79
je 0x140167509
cmp ecx, 0x3e4
je 0x1401674ff
mov ecx, edi
call fcn.14016e340
jmp 0x1401677e2
mov eax, 0xfffff008
jmp 0x1401677e2
mov ecx, 1
call qword [str.p3_]
test rax, rax
je 0x1401677dd
mov qword [r12], rax
xor eax, eax
mov dword [r14], r13d
jmp 0x1401677e2
mov eax, 0xfffff024
jmp 0x1401677e2
call fcn.1403379a0
mov rcx, r15
jmp 0x1401677a8
mov r10, qword [r13 + 0xb0]
mov edi, esi
test r10, r10
je 0x140167607
movzx r15d, word [r12]
mov r13d, 4
nop
mov rcx, qword [r10 + 0x10]
cmp word [rcx], r15w
jne 0x1401675ef
movsxd r11, dword [r10 + 0x20]
cmp r11d, edi
jbe 0x1401675ef
cmp r15w, 0x17
mov eax, 8
mov r9, r11
cmovne rax, r13
xor r8d, r8d
sar r9, 3
lea rsi, [rax + rcx]
lea rbx, [rax + r12]
test r9, r9
jle 0x1401675b8
mov rdx, rsi
mov rax, rbx
sub rdx, rbx
movzx ecx, byte [rdx + rax]
cmp byte [rax], cl
jne 0x1401675ef
inc r8
inc rax
cmp r8, r9
jl 0x1401675a5
mov ecx, r11d
and ecx, 0x80000007
jge 0x1401675ca
dec ecx
or ecx, 0xfffffff8
inc ecx
test ecx, ecx
je 0x1401675ec
mov eax, 8
mov edx, 0xff
sub eax, ecx
movzx ecx, al
movzx eax, byte [rbx + r8]
shl edx, cl
and edx, eax
cmp byte [rsi + r8], dl
jne 0x1401675ef
mov edi, r11d
mov r10, qword [r10 + 8]
test r10, r10
jne 0x140167560
mov r13, qword [rsp + 0x70]
test edi, edi
jne 0x14016761c
xor esi, esi
cmp word [r12], 0x17
mov edi, 0x20
mov eax, 0x80
cmove edi, eax
jmp 0x14016761e
xor esi, esi
mov rax, qword [rsp + 0x50]
mov qword [r14 + 8], rsi
mov qword [r14 + 0x10], rsi
mov qword [r14 + 0x18], rsi
mov qword [r14 + 0x20], rsi
mov qword [r14 + 0x28], rsi
mov qword [r14 + 0x30], rsi
mov qword [r14 + 0x38], rsi
mov qword [r14 + 0x40], rsi
mov qword [r14 + 0x48], rsi
mov qword [r14], rax
cmp dword [r13 + 0x58], 6
jne 0x140167661
mov eax, dword [r13 + 0x50]
mov dword [rbp - 0xc], eax
movzx eax, word [r13 + 0x54]
mov word [rbp - 8], ax
cmp dword [r13 + 0x64], 0x18
mov eax, esi
sete al
mov dword [rbp - 4], eax
movups xmm0, xmmword [r12]
cmp word [r12], 0x17
movups xmmword [rbp], xmm0
jne 0x1401676cd
movsd xmm1, qword [r12 + 0x10]
lea rcx, [rbp + 0x24]
movsd qword [rbp + 0x10], xmm1
mov edx, 0xff
mov eax, dword [r12 + 0x18]
mov dword [rbp + 0x18], eax
mov eax, reloc.WS2_32.dll_socket
mov ebx, edi
shr rbx, 3
mov r8, rbx
mov word [rbp + 0x1c], ax
call fcn.140330340
and edi, 7
je 0x1401676f7
mov ecx, 8
mov edx, 0xff
sub ecx, edi
shl dl, cl
mov byte [rbx + r14 + 0x38], dl
jmp 0x1401676f7
mov eax, 2
mov word [rbp + 0x1c], ax
test edi, edi
je 0x1401676f2
mov ecx, 0x20
mov edx, 0xffffffff
sub ecx, edi
shl edx, cl
mov ecx, edx
call qword [sym.imp.WS2_32.dll_htonl]
jmp 0x1401676f4
mov eax, esi
mov dword [rbp + 0x20], eax
mov rax, qword [rsp + 0x60]
add r14, 0x50
mov rbx, qword [rsp + 0x68]
add rbp, 0x50
mov rax, qword [rax + 8]
mov qword [rsp + 0x60], rax
test rax, rax
jne 0x1401674d4
mov rdi, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x50]
mov edx, 0x7fffffff
movsxd rax, dword [rsp + 0x40]
add rcx, rax
mov qword [rsp + 0x50], rcx
mov r13, qword [r13 + 8]
mov qword [rsp + 0x70], r13
test r13, r13
jne 0x140167462
call fcn.1403379a0
mov rcx, qword [rsp + 0x58]
mov ebx, dword [rax]
call qword [fcn.1403379d4]
call fcn.1403379a0
mov rcx, qword [rsp + 0xd8]
mov dword [rax], ebx
mov rax, qword [rsp + 0xd0]
mov qword [rax], r12
mov eax, dword [rsp + 0xe8]
mov dword [rcx], eax
xor eax, eax
jmp 0x1401677e2
call fcn.1403379a0
mov rcx, qword [rsp + 0x58]
mov ebx, dword [rax]
call qword [fcn.1403379d4]
call fcn.1403379a0
mov dword [rax], ebx
call fcn.1403379a0
mov rcx, r12
mov ebx, dword [rax]
call qword [fcn.1403379d4]
call fcn.1403379a0
mov dword [rax], ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14016e340
jmp 0x1401677e2
call fcn.1403379a0
mov rcx, r15
mov ebx, dword [rax]
call qword [fcn.1403379d4]
call fcn.1403379a0
mov dword [rax], ebx
mov eax, 0xfffff027
mov rdi, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
mov r15, qword [rsp + 0x88]
add rsp, 0xa0
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret