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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46dc88
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x489900]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413e45
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
lea ebx, [eax + 0x10]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 4], 0
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413e75
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
lea edi, [eax + 0x10]
mov dword [ebp - 0x18], edi
mov byte [ebp - 4], 1
push 0x288
mov dword [ebp - 0x24], 0x288
call fcn.0045387f
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x414502
lea ecx, [ebp - 0x24]
push ecx
push esi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, 0x6f
jne 0x413ed7
push esi
call fcn.004537a2
mov edx, dword [ebp - 0x24]
push edx
call fcn.0045387f
mov esi, eax
add esp, 8
mov dword [ebp - 0x28], eax
test esi, esi
je 0x414502
lea ecx, [ebp - 0x24]
push ecx
push esi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
test eax, eax
jne 0x414502
mov dword [ebp - 0x1c], esi
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413f06
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x54], eax
mov byte [ebp - 4], 2
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413f33
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 3
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413f60
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 4
call fcn.00436488
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x413f8d
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x58], eax
test esi, esi
je 0x414469
lea esi, [ebp - 0x48]
call fcn.004145b0
mov ebx, dword [ebp - 0x1c]
mov byte [ebp - 4], 6
mov ecx, dword [ebx + 4]
push ecx
lea edx, [ebp - 0x18]
push 0x477cc0
push edx
call fcn.00405740
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x34]
call fcn.00401f30
add ebx, 8
jne 0x413fdf
xor edx, edx
xor eax, eax
jmp 0x414036
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
cmp edi, 0x3fffffff
jg 0x41401a
lea eax, [edi + edi]
call fcn.00458350
mov esi, esp
test esi, esi
je 0x41401a
push edi
push esi
push 0xffffffffffffffff
xor ecx, ecx
push ebx
push ecx
push 3
mov word [esi], cx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x41401c
xor eax, eax
mov edx, eax
test edx, edx
je 0x414036
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x414027
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00402170
mov ebx, dword [ebp - 0x1c]
add ebx, 0x10c
jne 0x414051
xor edx, edx
xor eax, eax
jmp 0x4140af
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
cmp edi, 0x3fffffff
jg 0x41408c
lea eax, [edi + edi]
call fcn.00458350
mov esi, esp
test esi, esi
je 0x41408c
push edi
push esi
push 0xffffffffffffffff
xor edx, edx
push ebx
push edx
push 3
mov word [esi], dx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x41408e
xor eax, eax
mov edx, eax
test edx, edx
je 0x4140af
mov eax, edx
lea esi, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4140a0
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x38]
call fcn.00402170
lea ecx, [ebp - 0x20]
call fcn.00401fb0
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx + 0x190]
xor esi, esi
test eax, eax
jbe 0x41411e
dec eax
cmp esi, eax
jne 0x4140e9
movzx eax, byte [ebx + esi + 0x194]
push eax
push str._.2X
lea ecx, [ebp - 0x18]
push ecx
jmp 0x4140fb
movzx edx, byte [ebx + esi + 0x194]
push edx
push str._.2X_
lea eax, [ebp - 0x18]
push eax
call fcn.00405740
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax - 0xc]
add esp, 0xc
push ecx
push eax
lea ecx, [ebp - 0x20]
call fcn.00405330
mov eax, dword [ebx + 0x190]
inc esi
cmp esi, eax
jb 0x4140d0
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x44]
lea eax, [ecx - 0x10]
add esi, 0xfffffff0
cmp eax, esi
je 0x414177
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x41416a
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x41416a
push eax
call fcn.00402270
mov dword [ebp - 0x4c], eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x41415f
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
mov ecx, dword [ebp - 0x4c]
add ecx, 0x10
mov dword [ebp - 0x44], ecx
jmp 0x414177
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.00402170
mov eax, dword [ebx + 0x1a0]
lea ecx, [eax - 1]
cmp ecx, 0x1b
ja case.0x414190.2
movzx edx, byte [ecx + 0x414588]
jmp dword [edx*4 + 0x414568]
push 2
push 0x4790e8
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 3
push 0x4790f0
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 3
push 0x4790f8
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 4
push str.FDDI
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 3
push 0x47910c
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 2
push 0x479114
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push 4
push str.Slip
lea ecx, [ebp - 0x18]
call fcn.00402170
jmp 0x414220
push eax
lea eax, [ebp - 0x18]
push 0x479128
push eax
call fcn.00405740
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x2c]
lea eax, [ecx - 0x10]
add esi, 0xfffffff0
cmp eax, esi
je 0x414278
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x41426b
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x41426b
push eax
call fcn.00402270
mov ebx, eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x414260
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x1c]
jmp 0x414278
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00402170
add ebx, 0x1b0
jne 0x414286
xor edx, edx
xor eax, eax
jmp 0x4142df
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
cmp edi, 0x3fffffff
jg 0x4142c1
lea eax, [edi + edi]
call fcn.00458350
mov esi, esp
test esi, esi
je 0x4142c1
push edi
push esi
push 0xffffffffffffffff
xor ecx, ecx
push ebx
push ecx
push 3
mov word [esi], cx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x4142c3
xor eax, eax
mov edx, eax
test edx, edx
je 0x4142df
mov eax, edx
lea esi, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4142d0
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x48]
call fcn.00402170
mov ebx, dword [ebp - 0x1c]
add ebx, 0x1c0
jne 0x4142fa
xor edx, edx
xor eax, eax
jmp 0x414351
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
cmp edi, 0x3fffffff
jg 0x414335
lea eax, [edi + edi]
call fcn.00458350
mov esi, esp
test esi, esi
je 0x414335
push edi
push esi
push 0xffffffffffffffff
xor edx, edx
push ebx
push edx
push 3
mov word [esi], dx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x414337
xor eax, eax
mov edx, eax
test edx, edx
je 0x414351
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x414342
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x40]
call fcn.00402170
mov ebx, dword [ebp - 0x1c]
add ebx, 0x1d8
jne 0x41436c
xor edx, edx
xor eax, eax
jmp 0x4143c3
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
inc edi
cmp edi, 0x3fffffff
jg 0x4143a7
lea eax, [edi + edi]
call fcn.00458350
mov esi, esp
test esi, esi
je 0x4143a7
push edi
push esi
push 0xffffffffffffffff
xor eax, eax
push ebx
push eax
push 3
mov word [esi], ax
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x4143a9
xor eax, eax
mov edx, eax
test edx, edx
je 0x4143c3
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4143b4
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x3c]
call fcn.00402170
mov edi, dword [ebp + 8]
mov esi, dword [edi + 8]
test esi, esi
jl 0x414562
lea eax, [esi + 1]
call fcn.00414c00
shl esi, 5
add esi, dword [edi + 4]
lea ecx, [ebp - 0x48]
push ecx
mov ecx, esi
call fcn.00401f30
lea edx, [ebp - 0x44]
lea ecx, [esi + 4]
push edx
call fcn.00401f30
lea eax, [ebp - 0x40]
lea ecx, [esi + 8]
push eax
call fcn.00401f30
lea edx, [ebp - 0x3c]
lea ecx, [esi + 0xc]
push edx
call fcn.00401f30
lea eax, [ebp - 0x38]
lea ecx, [esi + 0x10]
push eax
call fcn.00401f30
lea edx, [ebp - 0x34]
lea ecx, [esi + 0x14]
push edx
call fcn.00401f30
lea eax, [ebp - 0x30]
lea ecx, [esi + 0x18]
push eax
call fcn.00401f30
lea edx, [ebp - 0x2c]
lea ecx, [esi + 0x1c]
push edx
call fcn.00401f30
mov eax, dword [ebp - 0x1c]
mov esi, dword [eax]
lea eax, [ebp - 0x48]
mov dword [ebp - 0x1c], esi
call fcn.004146d0
test esi, esi
jne 0x413fa4
mov ebx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x28]
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41448c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4144af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4144d2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x54]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4144f5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test esi, esi
je 0x414502
push esi
call fcn.004537a2
add esp, 4
lea eax, [edi - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [ebp - 4], 0
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414522
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [ebx - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov dword [ebp - 4], edx
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x414541
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea esp, [ebp - 0x6c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00452cf5
mov esp, ebp
pop ebp
ret 4
call fcn.00436686
nop
xchg edi, eax
inc ecx
inc ecx
add byte [eax - 0x46ffbebf], ch
inc ecx
inc ecx
add dl, cl
inc ecx
inc ecx
add bl, bl
inc ecx
inc ecx
add ah, ch
inc ecx
inc ecx
add ch, bh
inc ecx
inc ecx
add byte [esi], cl
inc edx
inc ecx
add byte [eax], al
pop es
pop es
pop es
pop es
add dword [edi], eax
pop es
add al, byte [edi]
pop es
pop es
pop es
pop es
add eax, dword [edi]
pop es
pop es
pop es
pop es
pop es
pop es
add al, 5
pop es
pop es
pop es
push es
int3