Function at 0x180041500
Capabilities:
Get mac address on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x350
mov qword [rsp + 0x68], 0xfffffffffffffffe
mov qword [rsp + 0x390], rbx
mov rax, qword [0x18009c600]
xor rax, rsp
mov qword [rsp + 0x348], rax
mov qword [rsp + 0x50], r9
mov rbp, r8
mov qword [rsp + 0x48], r8
mov r15, qword [rsp + 0x3b0]
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x60], rax
xor r14d, r14d
mov dword [rsp + 0x20], r14d
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x70]
call sub.IPHLPAPI.DLL_GetAdaptersInfo
mov edi, eax
lea rcx, section..data
mov rdx, qword [section..data]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
lea rcx, section..data
mov rdx, qword [section..data]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x330], r14b
xor eax, eax
mov qword [rsp + 0x331], rax
mov qword [rsp + 0x339], rax
mov word [rsp + 0x341], ax
mov byte [rsp + 0x343], al
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
lea rsi, [rax + 0x18]
mov qword [rsp + 0x38], rsi
or r13, 0xffffffffffffffff
cmp edi, 0x6f
jne 0x180041987
mov edi, dword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
mov qword [rsp + 0x58], rax
mov r8d, dword [rsp + 0x20]
xor edx, edx
mov rcx, rax
call fcn.180054ba0
test rdi, rdi
je 0x180041922
lea rdx, [rsp + 0x20]
mov rcx, rdi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
mov dword [rsp + 0x40], eax
mov r12, rdi
lea rdx, [r12 + 0x1c0]
lea rcx, [rsp + 0x30]
call fcn.180002840
lea rdx, [r12 + 0x1d0]
lea rcx, [rsp + 0x28]
call fcn.180002840
mov byte [rsp + 0x330], 0
test r15, r15
je 0x1800416c8
mov ebp, r14d
cmp dword [r12 + 0x194], r14d
jbe 0x1800416c3
mov edi, r14d
lea rbx, [r12 + 0x198]
nop word [rax + rax]
movzx r8d, byte [rbx]
mov eax, edi
lea rcx, [rsp + rax + 0x330]
lea rdx, str._02x
call fcn.180053d4c
inc ebp
add edi, 2
inc rbx
cmp ebp, dword [r12 + 0x194]
jb 0x180041690
mov rbp, qword [rsp + 0x48]
jmp 0x1800416c8
mov rbp, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x30]
cmp dword [rdi - 0x10], 0
jl 0x1800416f5
lea rdx, str.0.1.0.
mov rcx, rdi
call fcn.180053150
test rax, rax
je 0x1800416f5
sub rax, rdi
sar rax, 1
test eax, eax
jns 0x180041889
cmp dword [rdi - 0x10], 0
jl 0x18004171d
lea rdx, str.0.0.0.0
mov rcx, rdi
call fcn.180053150
test rax, rax
je 0x18004171d
sub rax, rdi
sar rax, 1
test eax, eax
jns 0x180041889
lea rdx, str.00000000000
lea rcx, [rsp + 0x330]
call fcn.1800544c0
test rax, rax
jne 0x180041889
mov rbx, qword [rsp + 0x28]
cmp dword [rdi - 0x10], eax
jl 0x180041762
lea rdx, str.192.
mov rcx, rdi
call fcn.180053150
test rax, rax
je 0x180041762
sub rax, rdi
sar rax, 1
test eax, eax
jns 0x1800417da
cmp dword [rdi - 0x10], 0
jl 0x180041786
lea rdx, [0x1800856d8]
mov rcx, rdi
call fcn.180053150
test rax, rax
je 0x180041786
sub rax, rdi
sar rax, 1
test eax, eax
jns 0x1800417da
cmp dword [rdi - 0x10], 0
jl 0x1800417aa
lea rdx, str.172.
mov rcx, rdi
call fcn.180053150
test rax, rax
je 0x1800417aa
sub rax, rdi
sar rax, 1
test eax, eax
jns 0x1800417da
cmp dword [rbx - 0x10], 0
jl 0x180041883
lea rdx, str.255.255.
mov rcx, rbx
call fcn.180053150
test rax, rax
je 0x180041883
sub rax, rbx
sar rax, 1
test eax, eax
js 0x180041883
test r15, r15
je 0x18004180d
lea rcx, [rsp + 0x330]
lea rax, [rsp + 0x330]
mov rdx, r15
sub rdx, rax
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x180041800
cmp qword [rsp + 0x50], 0
je 0x180041837
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.180002304
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_inet_addr]
mov rcx, qword [rsp + 0x50]
mov dword [rcx], eax
test rbp, rbp
je 0x18004185a
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.180002304
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rbp], eax
lea rdx, [r12 + 0x1f0]
xor eax, eax
mov rcx, r13
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
mov rcx, qword [rsp + 0x60]
call fcn.18001c5c4
cmp byte [rbp], 0xc0
je 0x180041896
mov r12, qword [r12]
jmp 0x18004188d
mov r12, qword [r12]
test r12, r12
jne 0x180041641
mov edi, dword [rsp + 0x40]
add edi, 0xf0000000
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, qword [rsp + 0x58]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test eax, eax
jne 0x18004198d
lea rdx, [rsi - 0x18]
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1800418da
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1800418fb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r13d
dec r13d
test r13d, r13d
jg 0x18004191b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x1800419f3
lea rdx, [rsi - 0x18]
or r13, 0xffffffffffffffff
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x180041942
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x180041963
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r13d
dec r13d
test r13d, r13d
jg 0x180041983
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x1800419f3
add edi, 0xe0000000
test edi, edi
sete r14b
lea rdx, [rsi - 0x18]
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1800419af
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1800419d0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r13d
dec r13d
test r13d, r13d
jg 0x1800419f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, r14d
mov rcx, qword [rsp + 0x348]
xor rcx, rsp
call fcn.1800520e0
mov rbx, qword [rsp + 0x390]
add rsp, 0x350
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret