Function at 0x180024380
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.180022320
xorps xmm0, xmm0
movdqu xmmword [rbp - 9], xmm0
mov qword [rbp + 7], r13
lea rcx, [rbp - 9]
call fcn.180024e50
test eax, eax
je 0x180024842
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 0x180024842
lea rdx, [rbp + 0x77]
mov rcx, rax
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, 0x6f
jne 0x18002444b
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 0x180024842
mov dword [rbp + 0x7f], 1
lea rdx, [rbp + 0x77]
mov rcx, rbx
call sub.IPHLPAPI.DLL_GetAdaptersInfo
test eax, eax
jne 0x18002481e
mov r12, rbx
test rbx, rbx
je 0x180024837
mov rbx, qword [rbp - 0x29]
nop word [rax + rax]
mov rdi, qword [rbp - 9]
cmp rdi, qword [rbp - 1]
je 0x180024809
nop
cmp dword [r12 + 0x194], 6
jne 0x1800245d4
lea r14, [r12 + 0xc]
call fcn.180007b50
test rax, rax
je 0x1800248fd
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x29], rbx
test r14, r14
je 0x180024563
cmp r14, 0x10000
jae 0x1800244eb
movzx edx, r14w
lea rcx, [rbp - 0x29]
call fcn.18000cc80
mov rbx, qword [rbp - 0x29]
jmp 0x1800245b3
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 0x180024563
mov edx, 1
sub edx, dword [rbx - 8]
mov ecx, dword [rbx - 0xc]
sub ecx, esi
or ecx, edx
jge 0x180024530
mov edx, esi
lea rcx, [rbp - 0x29]
call fcn.18000fc40
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 0x1800248dc
mov dword [rbx - 0x10], esi
movsxd rax, esi
mov word [rbx + rax*2], r13w
jmp 0x1800245b3
lea rdx, [rbx - 0x18]
mov rsi, qword [rdx]
cmp dword [rdx + 8], 0
je 0x1800245b3
cmp dword [rdx + 0x10], 0
jge 0x18002458a
cmp dword [rbx - 0xc], 0
jl 0x1800248e7
mov dword [rbx - 0x10], r13d
mov word [rbx], r13w
jmp 0x1800245b3
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1800245a2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x29], rbx
or dword [rbp + 0x6f], 1
test rbx, rbx
je 0x1800248f2
mov rdx, rbx
mov rcx, qword [rdi]
call fcn.180033a50
test eax, eax
jne 0x1800245d4
mov sil, 1
jmp 0x1800245d7
xor sil, sil
test byte [rbp + 0x6f], 1
je 0x180024601
and dword [rbp + 0x6f], 0xfffffffe
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1800245fd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp - 0x29]
test sil, sil
je 0x1800247fb
mov r15d, r13d
mov eax, dword [r12 + 0x1a4]
cmp eax, 0x47
je 0x180024657
cmp eax, 6
jne 0x1800247fb
lea rdx, str.wifi
lea rcx, [r12 + 0x110]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
jne 0x180024657
lea rdx, str.wireless
lea rcx, [r12 + 0x110]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x18002465d
mov r15d, 1
mov esi, dword [rbp + 0x7f]
test esi, esi
jne 0x18002466d
test r15d, r15d
jne 0x1800247fb
call fcn.180007b50
mov rcx, rax
test rax, rax
je 0x1800248cb
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x21], rax
movzx eax, byte [r12 + 0x19d]
movzx ecx, byte [r12 + 0x19c]
movzx edx, byte [r12 + 0x19b]
movzx r10d, byte [r12 + 0x19a]
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.180022450
mov rax, qword [rbp + 0x67]
mov rdx, qword [rax]
mov rbx, qword [rbp - 0x21]
cmp dword [rdx - 0x10], 0
je 0x18002471b
cmp esi, 1
jne 0x1800246fe
test r15d, r15d
je 0x18002471b
test rdx, rdx
je 0x180024908
mov rcx, rbx
call fcn.1800394f8
test eax, eax
jns 0x1800247d7
mov rax, qword [rbp + 0x67]
lea rsi, [rbx - 0x18]
mov r14, qword [rax]
sub r14, 0x18
cmp rsi, r14
je 0x1800247d7
cmp dword [r14 + 0x10], 0
jl 0x1800247c8
mov rcx, qword [rsi]
cmp rcx, qword [r14]
jne 0x1800247c8
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rsi + 0x10], 0
jl 0x180024763
cmp rax, qword [rsi]
jne 0x180024763
mov rbx, rsi
lock inc dword [rsi + 0x10]
jmp 0x18002479b
mov rax, qword [rax]
mov r8d, 1
mov edx, dword [rsi + 8]
call qword [rax]
mov rbx, rax
test rax, rax
je 0x180024913
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.18000fed0
mov eax, 0xffffffff
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x1800247b7
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
call qword [rax + 8]
lea rax, [rbx + 0x18]
mov rcx, qword [rbp + 0x67]
mov qword [rcx], rax
mov rbx, qword [rbp - 0x21]
jmp 0x1800247d7
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
mov rcx, rax
call fcn.1800255b0
mov dword [rbp + 0x7f], r15d
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1800247f7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp - 0x29]
add rdi, 8
cmp rdi, qword [rbp - 1]
jne 0x180024490
mov r12, qword [r12]
test r12, r12
jne 0x180024480
mov rdi, qword [rbp + 0x67]
mov rbx, qword [rbp - 0x19]
test rbx, rbx
je 0x180024837
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 0x1800248b4
mov rdi, qword [rbp - 1]
cmp rbx, rdi
je 0x18002487c
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180024873
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
add rbx, 8
cmp rbx, rdi
jne 0x180024854
mov rdx, qword [rbp + 7]
mov rbx, qword [rbp - 9]
sub rdx, rbx
and rdx, 0xfffffffffffffff8
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800248ac
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800248d6
mov rcx, rbx
call fcn.18001dbb8
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.180008e40
nop
call fcn.180029c54
nop
mov ecx, 0x80070057
call fcn.180008e40
int3
mov ecx, 0x80070057
call fcn.180008e40
nop
mov ecx, 0x80004005
call fcn.180008e40
nop
mov ecx, 0x80004005
call fcn.180008e40
nop
mov ecx, 0x80004005
call fcn.180008e40
int3
call fcn.180009010
int3