Function at 0x40ecf0
Capabilities:
Get mac address on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43b8db
mov eax, dword fs:[0]
push eax
mov eax, 0x28d8
call fcn.0041ba60
mov eax, dword [0x44f214]
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 dword [ebp - 0x28e4], ecx
mov dword [ecx + 0x10], 0
mov eax, ecx
cmp dword [ecx + 0x14], 0x10
jb 0x40ed39
mov eax, dword [ecx]
mov byte [eax], 0
mov dword [ebp - 0x28d8], 0
mov dword [ebp - 0x28d4], 0
mov dword [ebp - 0x28d0], 0
lea ecx, [ebp - 0x28d8]
mov dword [ebp - 4], 0
call fcn.0040f4d0
lea eax, [ebp - 0x28dc]
mov dword [ebp - 0x28dc], 0x2880
lea ebx, [ebp - 0x28a4]
push eax
mov eax, ebx
mov dword [ebp - 0x28c8], ebx
push eax
call dword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
test eax, eax
jne 0x40f0c8
mov dword [ebp - 0x28cc], eax
movzx eax, byte [ebx + 0x199]
push eax
movzx eax, byte [ebx + 0x198]
push eax
movzx eax, byte [ebx + 0x197]
push eax
movzx eax, byte [ebx + 0x196]
push eax
movzx eax, byte [ebx + 0x195]
push eax
movzx eax, byte [ebx + 0x194]
push eax
lea eax, [ebp - 0x24]
push str._02X_02X_02X_02X_02X_02X
push eax
call fcn.00410170
lea edx, [ebx + 0x10c]
mov dword [ebp - 0x28ac], 0
mov ecx, edx
mov dword [ebp - 0x28a8], 0xf
add esp, 0x20
mov byte [ebp - 0x28bc], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ee07
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28bc]
call fcn.00404cb0
mov byte [ebp - 4], 1
lea edi, [ebp - 0x28bc]
cmp dword [ebp - 0x28a8], 0x10
mov ebx, dword [ebp - 0x28bc]
cmovae edi, ebx
mov dword [ebp - 0x28c4], ebx
mov ebx, dword [ebp - 0x28ac]
cmp ebx, 3
jb 0x40eeaa
lea esi, [ebx + edi]
lea eax, [esi - 2]
sub eax, edi
push eax
push 0x50
push edi
call fcn.0041da10
add esp, 0xc
test eax, eax
je 0x40eeaa
movzx ecx, byte [eax]
cmp cl, 0x50
jne 0x40ee7e
movzx ecx, byte [eax + 1]
cmp cl, 0x50
jne 0x40ee7e
movzx ecx, byte [eax + 2]
cmp cl, 0x50
jne 0x40ee7e
xor ecx, ecx
jmp 0x40ee83
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x40ee9f
inc eax
lea ecx, [esi - 2]
sub ecx, eax
push ecx
push 0x50
push eax
call fcn.0041da10
add esp, 0xc
test eax, eax
jne 0x40ee60
jmp 0x40eeaa
sub eax, edi
cmp eax, 0xffffffff
jne 0x40efb5
cmp dword [ebp - 0x28a8], 0x10
lea ebx, [ebp - 0x28bc]
mov eax, dword [ebp - 0x28ac]
cmovae ebx, dword [ebp - 0x28c4]
cmp eax, 5
jb 0x40ef61
add eax, 0xfffffffc
add eax, ebx
mov dword [ebp - 0x28e0], eax
sub eax, ebx
push eax
push 0x56
push ebx
call fcn.0041da10
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40ef61
nop dword [eax]
mov ecx, esi
mov edx, str.VMare
mov edi, 1
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x40ef0d
add ecx, 4
mov edi, 0xfffffffd
add edx, 4
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x40ef34
cmp edi, 0xfffffffd
je 0x40ef30
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x40ef34
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x40ef34
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x40ef34
xor eax, eax
jmp 0x40ef39
sbb eax, eax
or eax, 1
test eax, eax
je 0x40ef5a
mov eax, dword [ebp - 0x28e0]
inc esi
sub eax, esi
push eax
push 0x56
push esi
call fcn.0041da10
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x40eef0
jmp 0x40ef61
sub esi, ebx
cmp esi, 0xffffffff
jne 0x40efb5
push ecx
push str.Virtual
lea ecx, [ebp - 0x28bc]
call fcn.00410060
cmp eax, 0xffffffff
jne 0x40efb5
push ecx
push str.SLIP
lea ecx, [ebp - 0x28bc]
call fcn.00410060
cmp eax, 0xffffffff
jne 0x40efb5
push ecx
push str.P.P.P
lea ecx, [ebp - 0x28bc]
call fcn.00410060
cmp eax, 0xffffffff
jne 0x40efb5
lea edx, [ebp - 0x28d8]
lea ecx, [ebp - 0x24]
call fcn.0040fee0
test al, al
je 0x40f026
mov ebx, dword [ebp - 0x28c8]
mov ebx, dword [ebx]
mov dword [ebp - 0x28c8], ebx
test ebx, ebx
je 0x40f08c
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x28a8]
cmp eax, 0x10
jb 0x40f00b
mov edx, dword [ebp - 0x28c4]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f001
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f1a0
push ecx
push edx
call fcn.0041b5ab
add esp, 8
mov edi, dword [ebp - 0x28cc]
inc edi
mov dword [ebp - 0x28cc], edi
cmp edi, 0x10
jb 0x40eda0
jmp 0x40f0c8
lea edx, [ebp - 0x24]
lea esi, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x40f030
mov ecx, dword [ebp - 0x28e4]
lea eax, [ebp - 0x24]
sub edx, esi
push edx
push eax
call fcn.00404cb0
mov edx, dword [ebp - 0x28a8]
cmp edx, 0x10
jb 0x40f083
mov ecx, dword [ebp - 0x28bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f079
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f1a0
push edx
push ecx
call fcn.0041b5ab
add esp, 8
mov byte [ebp - 0x28bd], 1
jmp 0x40f0cf
mov eax, dword [ebp - 0x28a8]
cmp eax, 0x10
jb 0x40f0c8
mov edx, dword [ebp - 0x28c4]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f0be
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f1a0
push ecx
push edx
call fcn.0041b5ab
add esp, 8
mov byte [ebp - 0x28bd], 0
mov edi, dword [ebp - 0x28d8]
test edi, edi
je 0x40f17e
mov ebx, dword [ebp - 0x28d4]
mov esi, edi
cmp esi, ebx
je 0x40f13b
nop dword [eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x40f123
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x40f119
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f1a5
mov eax, edx
push ecx
push eax
call fcn.0041b5ab
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, 0x18
cmp esi, ebx
jne 0x40f0f0
mov ecx, dword [ebp - 0x28d0]
mov eax, 0x2aaaaaab
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, edi
shl ecx, 3
cmp ecx, 0x1000
jb 0x40f174
mov edi, dword [edi - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f1a5
push ecx
push edi
call fcn.0041b5ab
add esp, 8
mov al, byte [ebp - 0x28bd]
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.0041ba48
mov esp, ebp
pop ebp
ret
call fcn.00420285
call fcn.00420285
int3