Function at 0x227985d6
Capabilities:
Get mac address on windows

Disassembly:
mov eax, 0x2279ae89
call fcn.2279a2e0
mov eax, 0x284c
call fcn.2279a4c0
mov eax, dword [0x227a16b0]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor eax, ebp
mov ecx, edi
mov dword [ebp - 0x10], eax
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::clear_void_]
xor ebx, ebx
mov dword [ebp - 0x2854], ebx
mov dword [ebp - 0x2850], ebx
mov dword [ebp - 0x284c], ebx
lea eax, [ebp - 0x2858]
push eax
mov dword [ebp - 4], ebx
call fcn.227980d2
pop ecx
lea eax, [ebp - 0x2848]
push eax
lea esi, [ebp - 0x2840]
mov eax, esi
push eax
mov dword [ebp - 0x2848], 0x2800
call sub.iphlpapi.dll_GetAdaptersInfo
test eax, eax
jne 0x2279877d
mov dword [ebp - 0x2844], ebx
movzx eax, byte [esi + 0x199]
push eax
movzx eax, byte [esi + 0x198]
push eax
movzx eax, byte [esi + 0x197]
push eax
movzx eax, byte [esi + 0x196]
push eax
movzx eax, byte [esi + 0x195]
push eax
movzx eax, byte [esi + 0x194]
push eax
lea eax, [ebp - 0x24]
push str._02X_02X_02X_02X_02X_02X
push eax
call dword [sym.imp.MSVCR71.dll_sprintf]
add esp, 0x20
lea eax, [esi + 0x10c]
push eax
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
push ebx
push 0x2279cb50
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
jne 0x2279873c
push ebx
push str.VMare
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
jne 0x2279873c
push ebx
push str.Virtual
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
jne 0x2279873c
push ebx
push str.SLIP
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
jne 0x2279873c
push ebx
push str.P.P.P
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVCP71.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
mov ecx, dword [sym.imp.MSVCP71.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
cmp eax, dword [ecx]
jne 0x2279873c
lea eax, [ebp - 0x2858]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.2279805f
test al, al
pop ecx
pop ecx
je 0x22798763
mov esi, dword [esi]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], bl
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp esi, ebx
je 0x2279877d
inc dword [ebp - 0x2844]
cmp dword [ebp - 0x2844], 0x10
jb 0x22798653
jmp 0x2279877d
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], bl
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov bl, 1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2858]
call fcn.22793707
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop esi
mov al, bl
xor ecx, ebp
pop ebx
call fcn.2279a349
leave
ret