Function at 0x1401667d0
Capabilities:
Get mac address on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x88
mov qword [rbp - 0x11], 0xfffffffffffffffe
mov rdi, rcx
xor r13d, r13d
mov dword [rbp + 0x6f], r13d
call fcn.140164d80
xorps xmm0, xmm0
movdqu xmmword [rbp - 9], xmm0
mov qword [rbp + 7], r13
lea rcx, [rbp - 9]
call fcn.140167290
test eax, eax
je 0x140166c92
mov dword [rbp + 0x77], 0x2c0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
xor edx, edx
mov r8d, 0x2c0
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
mov qword [rbp - 0x19], rax
test rax, rax
je 0x140166c92
lea rdx, [rbp + 0x77]
mov rcx, rax
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, 0x6f
jne 0x14016689b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov ebx, dword [rbp + 0x77]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8d, ebx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
mov qword [rbp - 0x19], rax
test rax, rax
je 0x140166c92
mov dword [rbp + 0x7f], 1
lea rdx, [rbp + 0x77]
mov rcx, rbx
call sub.IPHLPAPI.DLL_GetAdaptersInfo
test eax, eax
jne 0x140166c6e
mov r12, rbx
test rbx, rbx
je 0x140166c87
mov rbx, qword [rbp - 0x29]
nop word [rax + rax]
mov rdi, qword [rbp - 9]
cmp rdi, qword [rbp - 1]
je 0x140166c59
nop
cmp dword [r12 + 0x194], 6
jne 0x140166a24
lea r14, [r12 + 0xc]
call fcn.14000a6a0
test rax, rax
je 0x140166d1b
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + ILCombine]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x29], rbx
test r14, r14
je 0x1401669b3
cmp r14, 0x10000
jae 0x14016693b
movzx edx, r14w
lea rcx, [rbp - 0x29]
call fcn.14000cd90
mov rbx, qword [rbp - 0x29]
jmp 0x140166a03
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, 0xffffffff
mov r8, r14
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea esi, [rax - 1]
test esi, esi
jle 0x1401669b3
mov edx, 1
sub edx, dword [rbx - 8]
mov ecx, dword [rbx - 0xc]
sub ecx, esi
or ecx, edx
jge 0x140166980
mov edx, esi
lea rcx, [rbp - 0x29]
call fcn.14000cf20
mov rbx, qword [rbp - 0x29]
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rbx
mov r9d, 0xffffffff
mov r8, r14
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp esi, dword [rbx - 0xc]
jg 0x140166d2c
mov dword [rbx - 0x10], esi
movsxd rax, esi
mov word [rbx + rax*2], r13w
jmp 0x140166a03
lea rdx, [rbx - 0x18]
mov rsi, qword [rdx]
cmp dword [rdx + 8], 0
je 0x140166a03
cmp dword [rdx + 0x10], 0
jge 0x1401669da
cmp dword [rbx - 0xc], 0
jl 0x140166d2c
mov dword [rbx - 0x10], r13d
mov word [rbx], r13w
jmp 0x140166a03
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401669f2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + ILCombine]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x29], rbx
or dword [rbp + 0x6f], 1
test rbx, rbx
je 0x140166d37
mov rdx, rbx
mov rcx, qword [rdi]
call fcn.1401b6550
test eax, eax
jne 0x140166a24
mov sil, 1
jmp 0x140166a27
xor sil, sil
test byte [rbp + 0x6f], 1
je 0x140166a51
and dword [rbp + 0x6f], 0xfffffffe
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140166a4d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rbp - 0x29]
test sil, sil
je 0x140166c4b
mov r15d, r13d
mov eax, dword [r12 + 0x1a4]
cmp eax, 0x47
je 0x140166aa7
cmp eax, 6
jne 0x140166c4b
lea rdx, str.wifi
lea rcx, [r12 + 0x110]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
jne 0x140166aa7
lea rdx, str.wireless
lea rcx, [r12 + 0x110]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x140166aad
mov r15d, 1
mov esi, dword [rbp + 0x7f]
test esi, esi
jne 0x140166abd
test r15d, r15d
jne 0x140166c4b
call fcn.14000a6a0
mov rcx, rax
test rax, rax
je 0x140166d1b
mov rax, qword [rax]
call qword [rax + ILCombine]
add rax, 0x18
mov qword [rbp - 0x21], rax
movzx eax, byte [r12 + reloc.COMCTL32.dll_DefSubclassProc]
movzx ecx, byte [r12 + reloc.COMCTL32.dll_RemoveWindowSubclass]
movzx edx, byte [r12 + 0x19b]
movzx r10d, byte [r12 + reloc.COMCTL32.dll_SetWindowSubclass]
movzx r9d, byte [r12 + 0x199]
movzx r8d, byte [r12 + 0x198]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], r10d
lea rdx, str._02X_02X_02X_02X_02X_02X
lea rcx, [rbp - 0x21]
call fcn.140164e00
mov rax, qword [rbp + 0x67]
mov rdx, qword [rax]
mov rbx, qword [rbp - 0x21]
cmp dword [rdx - 0x10], 0
je 0x140166b6b
cmp esi, 1
jne 0x140166b4e
test r15d, r15d
je 0x140166b6b
test rdx, rdx
je 0x140166d42
mov rcx, rbx
call fcn.1401d1954
test eax, eax
jns 0x140166c27
mov rax, qword [rbp + 0x67]
lea rsi, [rbx - 0x18]
mov r14, qword [rax]
sub r14, 0x18
cmp rsi, r14
je 0x140166c27
cmp dword [r14 + 0x10], 0
jl 0x140166c18
mov rcx, qword [rsi]
cmp rcx, qword [r14]
jne 0x140166c18
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rsi + 0x10], 0
jl 0x140166bb3
cmp rax, qword [rsi]
jne 0x140166bb3
mov rbx, rsi
lock inc dword [rsi + 0x10]
jmp 0x140166beb
mov rax, qword [rax]
mov r8d, 1
mov edx, dword [rsi + 8]
call qword [rax]
mov rbx, rax
test rax, rax
je 0x140166d4d
mov eax, dword [rsi + 8]
mov dword [rbx + 8], eax
mov ecx, dword [rsi + 8]
inc ecx
movsxd rdx, ecx
lea r8, [rsi + 0x18]
lea rcx, [rbx + 0x18]
mov r9, rdx
call fcn.14000e830
mov eax, 0xffffffff
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x140166c07
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rax, [rbx + 0x18]
mov rcx, qword [rbp + 0x67]
mov qword [rcx], rax
mov rbx, qword [rbp - 0x21]
jmp 0x140166c27
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
mov rcx, rax
call fcn.140026110
mov dword [rbp + 0x7f], r15d
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140166c47
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rbp - 0x29]
add rdi, 8
cmp rdi, qword [rbp - 1]
jne 0x1401668e0
mov r12, qword [r12]
test r12, r12
jne 0x1401668d0
mov rdi, qword [rbp + 0x67]
mov rbx, qword [rbp - 0x19]
test rbx, rbx
je 0x140166c87
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rdi]
cmp dword [rax - 0x10], 0
setne r13b
mov rbx, qword [rbp - 9]
test rbx, rbx
je 0x140166d04
mov rdi, qword [rbp - 1]
cmp rbx, rdi
je 0x140166ccc
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140166cc3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rbx, 8
cmp rbx, rdi
jne 0x140166ca4
mov rdx, qword [rbp + 7]
mov rbx, qword [rbp - 9]
sub rdx, rbx
and rdx, 0xfffffffffffffff8
mov rax, rbx
cmp rdx, 0x1000
jb 0x140166cfc
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140166d26
mov rcx, rbx
call fcn.1401606e8
mov eax, r13d
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x80004005
call fcn.14000ca90
nop
call fcn.1401b3260
nop
mov ecx, 0x80070057
call fcn.14000ca90
nop
mov ecx, 0x80004005
call fcn.14000ca90
nop
mov ecx, 0x80004005
call fcn.14000ca90
int3
call fcn.14000d180
int3