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

Disassembly:
push ebp
push edi
xor ecx, ecx
push esi
push ebx
xor edx, edx
mov eax, 6
mov ebx, 0xe
sub esp, 0x7c
call fcn.0047ab40
test eax, eax
mov dword [esp + 0x28], eax
je 0x47b850
lea esi, [esp + 0x6c]
mov dword [esp + 0x6c], 0
xor ebp, ebp
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], 0
call sub.IPHLPAPI.DLL_GetAdaptersAddresses
sub esp, 0x14
test eax, eax
mov edi, eax
je 0x47b8a0
mov dword [esp], ebp
call fcn.00458a40
cmp edi, 0x6f
je 0x47b880
jbe 0x47b835
cmp edi, 0xe8
je 0x47b801
cmp edi, 0x4cc
mov eax, 0xfffff008
jne 0x47b83f
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 1
call fcn.00458a30
test eax, eax
je 0x47b896
mov esi, dword [esp + 0x94]
mov dword [esi], 0
mov esi, dword [esp + 0x90]
mov dword [esi], eax
add esp, 0x7c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
cmp edi, 0x57
mov eax, 0xfffff024
je 0x47b7f9
mov dword [esp], edi
call fcn.0045b940
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, 1
mov edx, 1
mov eax, 5
call fcn.0047ab40
test eax, eax
je 0x47bcd7
mov ebx, 0x1e
jmp 0x47b796
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
call fcn.00458a30
test eax, eax
mov ebp, eax
jne 0x47b7a4
mov eax, 0xfffff027
jmp 0x47b7f9
test ebp, ebp
mov esi, ebp
mov dword [esp + 0x58], 0
mov dword [esp + 0x50], 0
mov ebx, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
je 0x47bd2b
mov dword [esp + 0x24], ebp
xor edi, edi
xor ebp, ebp
nop
lea esi, [esi]
cmp dword [esi + 0x44], 1
jne 0x47b93e
mov eax, dword [esi + 0x10]
test eax, eax
je 0x47b93e
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov eax, dword [esi + 0x28]
mov dword [esp + 4], 0
mov dword [esp], 0xfde9
mov dword [esp + 8], eax
call ebx
sub esp, 0x20
test eax, eax
jle 0x47bce1
add edi, eax
mov eax, dword [esi + 0x10]
test eax, eax
je 0x47b93e
mov eax, dword [eax + 8]
add ebp, 1
add edi, 0x48
test eax, eax
jne 0x47b931
mov esi, dword [esi + 8]
test esi, esi
jne 0x47b8d0
mov dword [esp], edi
mov dword [esp + 0x58], ebp
mov dword [esp + 0x50], edi
mov ebp, dword [esp + 0x24]
call fcn.00458a30
test eax, eax
mov dword [esp + 0x54], eax
je 0x47bd48
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x54]
mov ebx, ebp
mov dword [esp + 0x5c], ebp
lea eax, [eax + eax*8]
mov ebp, esi
lea eax, [esi + eax*8]
mov esi, ebx
mov dword [esp + 0x30], eax
cmp dword [esi + 0x44], 1
jne 0x47bbec
mov eax, dword [esi + 0x10]
test eax, eax
je 0x47bbec
mov eax, dword [esp + 0x54]
add eax, dword [esp + 0x50]
mov edx, 0x7fffffff
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xffffffff
sub eax, ebx
mov dword [esp + 0x10], ebx
cmovs eax, edx
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 4], 0
mov dword [esp], 0xfde9
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
sub esp, 0x20
test eax, eax
mov dword [esp + 0x4c], eax
jle 0x47bd00
mov eax, dword [esi + 0x10]
test eax, eax
je 0x47bbe4
mov dword [esp + 0x2c], esi
mov esi, eax
jmp 0x47baac
movzx eax, byte [esi + 0x2c]
mov dword [esp + 0x24], eax
lea edx, [ebp + 4]
lea edi, [ebp + 8]
xor eax, eax
mov dword [ebp + 4], 0
mov dword [ebp + 0x44], 0
and edi, 0xfffffffc
mov ecx, edx
sub ecx, edi
add ecx, 0x44
shr ecx, 2
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x30]
mov dword [ebp], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x34], 6
je 0x47bcb0
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x40], 0x18
sete al
cmp word [ebx], 0x17
movzx eax, al
mov dword [ebp + 0xc], eax
mov eax, dword [ebx]
mov dword [ebp + 0x10], eax
mov eax, dword [ebx + 4]
mov dword [ebp + 0x14], eax
mov eax, dword [ebx + 8]
mov dword [ebp + 0x18], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0x1c], eax
je 0x47bc50
mov edx, dword [esp + 0x24]
mov eax, 2
mov word [ebp + 0x2c], ax
xor eax, eax
test edx, edx
jne 0x47bc24
mov dword [ebp + 0x30], eax
mov esi, dword [esi + 8]
add ebp, 0x48
test esi, esi
je 0x47bbe0
mov eax, dword [esp + 0x28]
mov ebx, dword [esi + 0xc]
test eax, eax
jne 0x47ba10
mov eax, dword [esp + 0x2c]
movzx ecx, word [ebx]
mov dword [esp + 0x24], 0
mov eax, dword [eax + 0x8c]
mov word [esp + 0x3e], cx
lea ecx, [ebx + 4]
test eax, eax
mov dword [esp + 0x38], ecx
je 0x47bbc3
mov dword [esp + 0x40], ebx
movzx ebx, word [esp + 0x3e]
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], esi
mov edx, dword [eax + 0xc]
cmp word [edx], bx
jne 0x47bba0
mov ebp, dword [eax + 0x14]
cmp ebp, dword [esp + 0x24]
jbe 0x47bba0
cmp bx, 0x17
mov edi, dword [esp + 0x38]
lea ecx, [edx + 4]
jne 0x47bb25
mov esi, dword [esp + 0x40]
lea ecx, [edx + 8]
lea edi, [esi + 8]
mov esi, ebp
sar esi, 3
test esi, esi
jle 0x47bcd0
movzx edx, byte [edi]
cmp byte [ecx], dl
jne 0x47bba0
xor edx, edx
mov dword [esp + 0x34], eax
jmp 0x47bb4e
movzx eax, byte [ecx + edx]
cmp byte [edi + edx], al
jne 0x47bc45
add edx, 1
cmp edx, esi
jne 0x47bb41
mov eax, dword [esp + 0x34]
test ebp, 7
je 0x47bcc5
movzx edx, byte [ecx + esi]
mov ecx, ebp
sar ecx, 0x1f
shr ecx, 0x1d
mov dword [esp + 0x34], edx
lea edx, [ebp + ecx]
and edx, 7
sub edx, ecx
mov ecx, 8
sub ecx, edx
mov edx, 0xff
shl edx, cl
movzx ecx, byte [edi + esi]
and edx, ecx
cmp dword [esp + 0x34], edx
cmovne ebp, dword [esp + 0x24]
mov dword [esp + 0x24], ebp
nop
mov eax, dword [eax + 8]
test eax, eax
jne 0x47baf5
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
test edi, edi
jne 0x47ba18
cmp word [esp + 0x3e], 0x17
mov edx, 0x20
mov eax, pe_nt_image_headers32
cmovne eax, edx
mov dword [esp + 0x24], eax
jmp 0x47ba18
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x4c]
add dword [esp + 0x30], ebx
mov esi, dword [esi + 8]
test esi, esi
jne 0x47b981
mov ebp, dword [esp + 0x5c]
mov dword [esp], ebp
call fcn.00458a40
mov eax, dword [esp + 0x90]
mov esi, dword [esp + 0x54]
mov dword [eax], esi
mov eax, dword [esp + 0x94]
mov esi, dword [esp + 0x58]
mov dword [eax], esi
xor eax, eax
jmp 0x47b7f9
mov ecx, 0x20
sub ecx, dword [esp + 0x24]
mov eax, 0xffffffff
shl eax, cl
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_htonl]
sub esp, 4
jmp 0x47ba9b
mov eax, dword [esp + 0x34]
jmp 0x47bba0
mov eax, dword [ebx + 0x10]
mov edi, dword [esp + 0x24]
mov ecx, 0x17
mov dword [ebp + 0x20], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp + 0x24], eax
mov eax, dword [ebx + 0x18]
mov ebx, edi
shr ebx, 3
mov word [ebp + 0x2c], cx
mov dword [ebp + 0x28], eax
lea eax, [ebp + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0xff
mov dword [esp], eax
call sub.msvcrt.dll_memset
mov eax, edi
and eax, 7
je 0x47ba9e
mov ecx, 8
sub ecx, eax
mov eax, 0xff
shl eax, cl
mov byte [ebp + ebx + 0x34], al
jmp 0x47ba9e
mov ecx, eax
mov eax, dword [eax + 0x2c]
mov dword [ebp + 4], eax
movzx eax, word [ecx + 0x30]
mov word [ebp + 8], ax
jmp 0x47ba52
mov dword [esp + 0x24], ebp
jmp 0x47bba0
xor esi, esi
jmp 0x47bb59
mov eax, 0xfffff02f
jmp 0x47b7f9
mov ebp, dword [esp + 0x24]
mov dword [esp], ebp
call fcn.00458a40
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], eax
call fcn.0045b940
jmp 0x47b7f9
mov ebp, dword [esp + 0x5c]
mov dword [esp], ebp
call fcn.00458a40
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.00458a40
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp], eax
call fcn.0045b940
jmp 0x47b7f9
mov dword [esp], 0
call fcn.00458a30
test eax, eax
mov dword [esp + 0x54], eax
je 0x47bd48
mov dword [esp + 0x58], ebp
jmp 0x47bbfb
mov dword [esp], ebp
call fcn.00458a40
jmp 0x47b896