Function at 0x100188e0
Capabilities:
Get mac address on windows

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x10025c68
push eax
mov dword fs:[0], esp
sub esp, 8
push esi
push edi
push 0x1003a554
call dword [sym.imp.kernel32.dll_LoadLibraryA]
xor esi, esi
cmp eax, esi
jne 0x1001891f
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret
push eax
call dword [sym.imp.kernel32.dll_FreeLibrary]
mov eax, dword [0x10040554]
mov dword [esp + 0xc], esi
cmp eax, esi
je 0x10018941
push eax
call fcn.1001a644
mov eax, dword [0x10040554]
add esp, 4
lea ecx, [esp + 0xc]
push ecx
push eax
call sub.iphlpapi.dll_GetAdaptersInfo
mov ecx, dword [0x10039080]
mov dword [esp + 8], ecx
cmp eax, esi
mov dword [esp + 0x18], esi
jne 0x10018a03
mov eax, dword [0x10040554]
xor edx, edx
xor ecx, ecx
mov dl, byte [eax + 0x199]
mov cl, byte [eax + 0x198]
push edx
push ecx
xor edx, edx
xor ecx, ecx
mov dl, byte [eax + 0x197]
mov cl, byte [eax + 0x196]
push edx
push ecx
xor edx, edx
xor ecx, ecx
mov dl, byte [eax + 0x195]
mov cl, byte [eax + 0x194]
push edx
push ecx
lea edx, [esp + 0x20]
push 0x1003a534
push edx
call fcn.100084e0
mov edx, dword [esp + 0x28]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
add esp, 0x20
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x20]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x10039084]
lea ecx, [edx - 0xc]
cmp ecx, eax
je 0x10018bd2
add edx, 0xfffffff4
push edx
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018bd2
mov edx, dword [esp + 8]
add edx, 0xfffffff4
push edx
jmp 0x10018bca
cmp eax, 0xe8
jne 0x10018a51
mov edx, dword [0x10039084]
lea eax, [ecx - 0xc]
cmp eax, edx
je 0x10018b93
add ecx, 0xfffffff4
push ecx
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018b93
mov ecx, dword [esp + 8]
add ecx, 0xfffffff4
push ecx
call fcn.1001a644
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret
cmp eax, 0x32
jne 0x10018a9c
mov eax, dword [0x10039084]
lea edx, [ecx - 0xc]
cmp edx, eax
je 0x10018b93
add ecx, 0xfffffff4
push ecx
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018b93
mov eax, dword [esp + 8]
add eax, 0xfffffff4
push eax
call fcn.1001a644
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret
cmp eax, 0x6f
jne 0x10018ba7
mov ecx, dword [esp + 0xc]
push ecx
call fcn.1001c1d8
add esp, 4
lea edx, [esp + 0xc]
mov dword [0x10040554], eax
push edx
push eax
call sub.iphlpapi.dll_GetAdaptersInfo
test eax, eax
jne 0x10018b64
mov eax, dword [0x10040554]
xor ecx, ecx
xor edx, edx
mov cl, byte [eax + 0x199]
mov dl, byte [eax + 0x198]
push ecx
push edx
xor ecx, ecx
xor edx, edx
mov cl, byte [eax + 0x197]
mov dl, byte [eax + 0x196]
push ecx
push edx
xor ecx, ecx
xor edx, edx
mov cl, byte [eax + 0x195]
mov dl, byte [eax + 0x194]
push ecx
push edx
lea eax, [esp + 0x20]
push 0x1003a534
push eax
call fcn.100084e0
mov edx, dword [esp + 0x28]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
add esp, 0x20
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x20]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x10039084]
lea ecx, [edx - 0xc]
cmp ecx, eax
je 0x10018bd2
add edx, 0xfffffff4
push edx
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018bd2
mov edx, dword [esp + 8]
add edx, 0xfffffff4
push edx
jmp 0x10018bca
mov eax, dword [esp + 8]
mov edx, dword [0x10039084]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x10018b93
add eax, 0xfffffff4
push eax
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018b93
mov edx, dword [esp + 8]
add edx, 0xfffffff4
push edx
call fcn.1001a644
add esp, 4
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret
mov edx, dword [0x10039084]
lea eax, [ecx - 0xc]
cmp eax, edx
je 0x10018bd2
add ecx, 0xfffffff4
push ecx
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jg 0x10018bd2
mov ecx, dword [esp + 8]
add ecx, 0xfffffff4
push ecx
call fcn.1001a644
add esp, 4
mov ecx, dword [esp + 0x10]
pop edi
xor eax, eax
pop esi
mov dword fs:[0], ecx
add esp, 0x14
ret