Function at 0x4205d0
Capabilities:
Get local ipv4 addresses
Get mac address on windows
Hash data using sha1
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x488ae6
mov eax, dword fs:[0]
push eax
sub esp, 0xc0
mov eax, dword [0x4aeda0]
xor eax, esp
mov dword [esp + 0xb8], eax
push ebx
push esi
push edi
mov eax, dword [0x4aeda0]
xor eax, esp
push eax
lea eax, [esp + 0xd0]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push 0x288
push 0
mov dword [esp + 0x28], eax
mov dword [esp + 0x18], 0x288
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_HeapAlloc]
push eax
call esi
mov edi, eax
test edi, edi
jne 0x420666
push str.GETGUID:Error_allocating_memory_needed_to_call_GetAdaptersinfo
push 0x102
call fcn.0041ef10
push eax
mov ebx, 0x2000002
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0xc
xor eax, eax
jmp 0x42093f
lea ecx, [esp + 0x10]
push ecx
push edi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, 0x6f
jne 0x4206a2
push edi
push 0
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edx, dword [esp + 0x10]
push edx
push 0
call ebx
push eax
call esi
mov edi, eax
xor ebx, ebx
cmp edi, ebx
jne 0x4206a4
push str.GETGUID:Error_allocating_memory_needed_to_call_GetAdaptersinfo
push 0x10b
jmp 0x420647
xor ebx, ebx
lea eax, [esp + 0x10]
push eax
push edi
mov dword [esp + 0x1c], ebx
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, ebx
jne 0x420900
lea ecx, [esp + 0x24]
push ecx
call fcn.00420270
lea edx, [esp + 0x3c]
push edx
mov dword [esp + 0xdc], ebx
call fcn.00420270
mov byte [esp + 0xd8], 1
mov esi, edi
cmp edi, ebx
je 0x4207cb
jmp 0x4206f0
mov eax, dword [esi + 0x198]
mov ecx, dword [esi + 0x194]
push eax
push ecx
push str.GETGUID:seed__012llX
push 0x11a
call fcn.0041ef10
push eax
mov ebx, 0x2000040
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0x14
cmp dword [esi + 0x194], 0xc0565000
jne 0x420759
mov edx, dword [esi + 0x198]
mov eax, dword [esi + 0x194]
push edx
push eax
push str.GETGUID:Dispose__virtual_interface_addr_012llX_
push 0x11e
call fcn.0041ef10
push eax
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0x14
jmp 0x4207bf
cmp byte [esi + 0x1b0], 0x30
jne 0x420776
mov ecx, dword [esi + 0x198]
mov edx, dword [esi + 0x194]
push ecx
push edx
lea eax, [esp + 0x44]
jmp 0x420788
mov eax, dword [esi + 0x198]
mov ecx, dword [esi + 0x194]
push eax
push ecx
lea eax, [esp + 0x2c]
mov ecx, dword [esi + 0x1a0]
call fcn.004204a0
test eax, eax
jne 0x4207bf
mov edx, dword [esi + 0x1a0]
push edx
push str.GETGUID:non_supported_type__u_
push 0x129
push ecx
call fcn.0041ef10
add esp, 4
push eax
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0x10
mov esi, dword [esi]
test esi, esi
jne 0x4206f0
xor ebx, ebx
lea eax, [esp + 0x24]
call fcn.00420520
cmp eax, ebx
jne 0x420814
cmp edx, ebx
jne 0x420814
lea eax, [esp + 0x3c]
call fcn.00420520
cmp eax, ebx
jne 0x420814
cmp edx, ebx
jne 0x420814
push str.GETGUID:no_usable_candidates
push 0x134
call fcn.0041ef10
push eax
mov ebx, 0x2000004
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0xc
jmp 0x4208ec
xor eax, 0xffffffff
mov dword [esp + 0x14], eax
xor eax, eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
lea eax, [esp + 0x14]
xor edx, ebx
push eax
mov eax, 8
lea esi, [esp + 0x58]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], 0x67452301
mov dword [esp + 0x64], 0xefcdab89
mov dword [esp + 0x68], 0x98badcfe
mov dword [esp + 0x6c], 0x10325476
mov dword [esp + 0x70], 0xc3d2e1f0
call fcn.00424490
add esp, 4
mov ecx, esi
call fcn.00424520
mov ecx, dword [esp + 0x7c]
movzx edx, byte [esp + 0x7a]
movzx eax, byte [esp + 0x78]
mov esi, dword [esp + 0x20]
push ecx
movzx ecx, byte [esp + 0x7a]
push edx
movzx edx, byte [esp + 0x7c]
push eax
mov eax, dword [esp + 0x7c]
push ecx
push edx
push eax
push str._.8X__.4X__.4X__.4X__.4X_.8X
push 0x25
push esi
call fcn.00452d80
add esp, 0x24
push esi
push str.GETGUID:GUID_is__s
push 0x14b
push ecx
call fcn.0041ef10
add esp, 4
push eax
mov ebx, 0x2000008
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0x10
mov dword [esp + 0x14], 1
lea ebx, [esp + 0x3c]
call fcn.00420360
lea ebx, [esp + 0x24]
call fcn.00420360
jmp 0x420927
push eax
push str.GETGUID:GetAdaptersInfo_failed_with_error:__lu
push 0x14f
push ecx
call fcn.0041ef10
add esp, 4
push eax
mov ebx, 0x2000002
mov ecx, str..GetGUIDInternal.cpp
call fcn.0041f0d0
add esp, 0x10
test edi, edi
je 0x42093b
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xd0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xb8]
xor ecx, esp
call fcn.004504a7
mov esp, ebp
pop ebp
ret