Function at 0x424740
Capabilities:
Get local ipv4 addresses
Get mac address on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x431662
mov eax, dword fs:[0]
push eax
sub esp, 0x164
mov eax, dword [0x43f00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x158], ebx
mov dword [ebp - 0x150], ebx
xor eax, eax
mov dword [ebp - 0x150], ebx
mov dword [ebp - 0x15c], eax
xorps xmm0, xmm0
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], eax
push 0x178
mov dword [ebp - 0x150], 0x178
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
je 0x424d61
mov esi, dword [sym.imp.IPHLPAPI.DLL_GetAdaptersAddresses]
lea eax, [ebp - 0x150]
push eax
push edi
push 0
push 0
push 0
call esi
cmp eax, 0x6f
jne 0x424811
push edi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
push dword [ebp - 0x150]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edi, eax
add esp, 8
test edi, edi
je 0x424d61
lea eax, [ebp - 0x150]
push eax
push edi
push 0
push 0
push 0
call esi
test eax, eax
jne 0x424d8b
nop dword [eax]
push 0x50
lea eax, [ebp - 0x9c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov dword [ebp - 0x9c], vtable.std::wstring_convert_class_std::codecvt_utf8_wchar_t__1114111__0___wchar_t__class_std::allocator_wchar_t___class_std::allocator_char__.0
push 1
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP140.dll_private:_static_class_std::locale::_Locimp____cdecl_std::locale::_Init_bool_]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
xor eax, eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 7
mov word [ebp - 0x74], ax
mov byte [ebp - 4], 4
push 0x34
mov word [ebp - 0x54], ax
mov byte [ebp - 0x52], al
call fcn.0042cd56
mov esi, eax
add esp, 0x14
mov dword [ebp - 0x160], esi
push 0
mov ecx, esi
mov byte [ebp - 4], 5
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::codecvt_wchar_t__char__struct__Mbstatet_::constructor_unsigned_int_]
mov dword [esi], vtable.std::codecvt_utf8_wchar_t__1114111__0_.0
xorps xmm0, xmm0
mov byte [ebp - 4], 4
push dword [ebp - 0x90]
movlpd qword [ebp - 0x5c], xmm0
mov dword [ebp - 0x98], esi
call dword [sym.imp.MSVCP140.dll_private:_static_class_std::locale::_Locimp____cdecl_std::locale::_Locimp::_New_Locimp_class_std::locale::_Locimp_const__]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::locale::id_std::codecvt_wchar_t__char__struct__Mbstatet_::id]
add esp, 4
mov ebx, eax
call dword [sym.imp.MSVCP140.dll_public:_unsigned_int___thiscall_std::locale::id::operator_unsigned_int_void_]
push eax
push esi
mov ecx, ebx
call dword [sym.imp.MSVCP140.dll_private:_void___thiscall_std::locale::_Locimp::_Addfac_class_std::locale::facet___unsigned_int_]
push 0x434d4c
lea ecx, [ebx + 0x18]
mov dword [ebx + 0x10], 0
call dword [sym.imp.MSVCP140.dll_public:_class_std::_Yarn_char_____thiscall_std::_Yarn_char_::operator_char_const__]
mov ecx, dword [ebp - 0x90]
cmp ecx, ebx
je 0x42492d
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x424920
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebp - 0x90], ebx
mov ecx, ebx
mov eax, dword [ebx]
call dword [eax + 4]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x424940
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebp - 0x50], 0
mov byte [ebp - 4], 6
mov ecx, dword [edi + 0x24]
mov eax, ecx
cmp word [ecx], 0
je 0x42495f
add eax, 2
cmp word [eax], 0
jne 0x424956
push eax
push ecx
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x9c]
call fcn.004266f0
or dword [ebp - 0x154], 2
mov byte [ebp - 4], 7
mov eax, dword [edi + 0x40]
cmp eax, 0x83
je 0x424bf4
cmp eax, 0x18
je 0x424bf4
cmp dword [edi + 0x44], 1
jne 0x424bf4
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x34]
mov esi, dword [ebp - 0x34]
cmp ebx, 0x10
mov edx, dword [ebp - 0x24]
push 7
push str.Virtual
cmovae ecx, esi
push 0
call fcn.00414950
add esp, 0xc
cmp eax, 0xffffffff
jne 0x424bfa
push 0xb0
lea eax, [ebp - 0x14c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x14c], 0x434f40
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x13c], 0x434d64
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
mov byte [ebp - 4], 8
lea eax, [ebp - 0x134]
mov ebx, dword [ebp - 0x154]
lea ecx, [ebp - 0x14c]
push 0
or ebx, 4
push eax
mov dword [ebp - 0x15c], ebx
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char____]
mov dword [ebp - 4], 9
mov eax, dword [ebp - 0x14c]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x150], eax
lea ecx, [ebp - 0x134]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [ebp - method.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0
push 0x423920
push 0x423900
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base_____cdecl___class_std::ios_base___]
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base_____cdecl___class_std::ios_base___]
xor esi, esi
cmp dword [edi + 0x34], esi
jbe 0x424b22
nop word [eax + eax]
push 0
lea eax, [ebp - 0x170]
push 2
push eax
call dword [sym.imp.MSVCP140.dll_struct_std::_Smanip_long_long___int64_____cdecl_std::setw_long_long___int64__]
mov ecx, eax
lea edx, [ebp - 0x13c]
mov eax, dword [ebp - 0x13c]
push dword [ecx + 0xc]
mov eax, dword [eax + 4]
push dword [ecx + 8]
add eax, edx
push eax
mov eax, dword [ecx]
call eax
mov eax, dword [ebp - 0x13c]
lea ecx, [ebp - 0x13c]
add esp, 0x18
mov eax, dword [eax + 4]
mov byte [ebp + eax - 0xfc], 0x30
movzx eax, byte [edi + esi + 0x2c]
push eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, dword [edi + 0x34]
lea eax, [ecx - 1]
cmp esi, eax
jae 0x424b1d
lea ecx, [ebp - 0x13c]
call fcn.00426e60
mov ecx, dword [edi + 0x34]
inc esi
cmp esi, ecx
jb 0x424ab0
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x134]
call fcn.00426a90
or ebx, 8
mov dword [ebp - 0x154], ebx
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x18]
push ecx
cmp eax, dword [ebp - 0x14]
je 0x424b57
mov ecx, eax
call fcn.00411c50
add dword [ebp - 0x18], 0x18
jmp 0x424b60
push eax
lea ecx, [ebp - 0x1c]
call fcn.00427150
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x38]
cmp edx, 0x10
jb 0x424b98
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x424b8e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x424e08
push edx
push ecx
call fcn.0042d0f1
add esp, 8
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x150], eax
lea ecx, [ebp - 0x134]
call fcn.00426310
lea ecx, [ebp - 0x12c]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xe4]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x20]
mov edi, dword [edi + 8]
mov byte [ebp - 4], 6
cmp ebx, 0x10
jb 0x424c2f
inc ebx
mov eax, esi
cmp ebx, 0x1000
jb 0x424c25
mov esi, dword [esi - 4]
add ebx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x424e08
push ebx
push esi
call fcn.0042d0f1
add esp, 8
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
mov byte [ebp - 4], 0
call fcn.00425c30
test edi, edi
jne 0x424820
mov ecx, dword [ebp - 0x18]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x1c]
sub ecx, esi
imul ecx
sar edx, 2
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
je 0x424d5b
cmp ebx, 1
jne 0x424d06
push esi
mov ebx, dword [ebp - 0x158]
mov ecx, ebx
call fcn.00411c50
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x424ce8
mov edx, dword [ebp - 0x18]
push ecx
call fcn.004151a0
mov ecx, dword [ebp - 0x14]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x1c]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x424cde
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x424e08
push ecx
push esi
call fcn.0042d0f1
add esp, 8
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042c87e
mov esp, ebp
pop ebp
ret
xor edi, edi
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x424d12
mov ecx, dword [esi]
mov edx, dword [esi + 0x10]
push 8
push str.00:50:56
push 0
call fcn.00414950
add esp, 0xc
cmp eax, 0xffffffff
jne 0x424d3b
push 0x433953
mov ecx, esi
call fcn.00416f30
test al, al
je 0x424d4c
inc edi
add esi, 0x18
cmp edi, ebx
jb 0x424d08
mov ecx, dword [ebp - 0x1c]
push ecx
jmp 0x424c81
mov ecx, dword [ebp - 0x1c]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*8]
push eax
jmp 0x424c81
mov ebx, dword [ebp - 0x158]
mov dword [ebx], 0
mov ecx, ebx
mov dword [ebx + 0x10], 0
push 0
mov dword [ebx + 0x14], 0xf
push 0x433953
mov byte [ebx], 0
call fcn.00412ab0
jmp 0x424c8e
push 0
mov dword [ebx], 0
mov ecx, ebx
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0xf
push 0x433953
mov byte [ebx], 0
call fcn.00412ab0
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x424ce8
mov edx, dword [ebp - 0x18]
push ecx
call fcn.004151a0
mov ecx, dword [ebp - 0x14]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x1c]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x424cde
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x424cde
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3