Function at 0x140004920
Capabilities:
Get mac address on windows

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
push r13
sub rsp, 0x80
test r9, r9
je 0x140004c7e
mov r13, qword [rsp + 0xb0]
test r13, r13
je 0x140004c7e
mov eax, dword [r13]
cmp eax, 8
jae 0x140004975
mov ecx, 0x7a
call qword [sym.imp.KERNEL32.DLL_SetLastError]
xor eax, eax
add rsp, 0x80
pop r13
ret
mov qword [rsp + 0x78], rbx
mov r8, rax
xor edx, edx
mov qword [rsp + 0x58], r12
mov rcx, r9
call fcn.14000b020
mov dword [rsp + 0x30], 0x2c0
call qword [sym.imp.KERNEL32.DLL_GetProcessHeap]
xor edx, edx
mov r8d, 0x2c0
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_HeapAlloc]
mov r12, rax
test rax, rax
je 0x140004c74
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
cmp eax, 0x6f
jne 0x140004a09
call qword [sym.imp.KERNEL32.DLL_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov eax, dword [rsp + 0x30]
lea ebx, [rax + rax]
mov dword [rsp + 0x30], ebx
call qword [sym.imp.KERNEL32.DLL_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_HeapAlloc]
mov r12, rax
test rax, rax
je 0x140004c74
lea rdx, [rsp + 0x30]
mov rcx, r12
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
test eax, eax
je 0x140004a55
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov ebx, eax
call qword [sym.imp.KERNEL32.DLL_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov ecx, ebx
call qword [sym.imp.KERNEL32.DLL_SetLastError]
mov rbx, qword [rsp + 0x78]
xor eax, eax
mov r12, qword [rsp + 0x58]
add rsp, 0x80
pop r13
ret
xor ebx, ebx
mov qword [rsp + 0x50], r14
mov r14, r12
test r12, r12
je 0x140004c38
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x48], r15
mov r15, 0xffffffffffffffff
mov dword [rsp + 0x28], ebx
mov r9d, r15d
mov qword [rsp + 0x20], rbx
lea r8, [r14 + 0x110]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
mov edi, eax
mov eax, 2
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1400094c8
mov r9d, r15d
mov dword [rsp + 0x28], edi
lea r8, [r14 + 0x110]
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
mov rbp, rax
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
test eax, eax
jne 0x140004ae5
mov rcx, rbp
call fcn.140008ef4
mov rbp, rbx
mov dword [rsp + 0x28], ebx
lea r8, [r14 + 0xc]
mov r9d, r15d
mov qword [rsp + 0x20], rbx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
mov edi, eax
mov eax, 2
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1400094c8
mov r9d, 0xffffffff
mov dword [rsp + 0x28], edi
lea r8, [r14 + 0xc]
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
mov r15, rax
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
test eax, eax
jne 0x140004b44
mov rcx, r15
call fcn.140008ef4
mov r15, rbx
mov eax, dword [r14 + 0x1a4]
mov edi, 1
cmp eax, 6
je 0x140004b67
cmp dword [rsp + 0x90], ebx
je 0x140004ba8
cmp eax, 0x47
je 0x140004b67
mov edi, ebx
jmp 0x140004bc0
cmp dword [rsp + 0x98], ebx
je 0x140004b8c
mov r8d, dword [r14 + 0x194]
lea rdx, [r14 + 0x198]
mov rcx, r15
call fcn.140004ca0
mov edi, eax
test eax, eax
je 0x140004bc0
cmp dword [rsp + 0xa0], ebx
je 0x140004bc0
lea rdx, str.virtual
mov rcx, rbp
call fcn.140008110
test eax, eax
je 0x140004bac
mov edi, ebx
jmp 0x140004bc0
lea rdx, str.vmware
mov rcx, rbp
call fcn.140008110
test eax, eax
cmovne edi, ebx
mov rcx, rbp
call fcn.140008ef4
mov rcx, r15
call fcn.140008ef4
test edi, edi
je 0x140004be1
mov eax, dword [r14 + 0x194]
cmp eax, dword [r13]
jbe 0x140004bee
mov r14, qword [r14]
test r14, r14
je 0x140004c24
jmp 0x140004a7c
test eax, eax
je 0x140004c1b
mov rdx, qword [rsp + 0xa8]
nop word [rax + rax]
mov ecx, ebx
inc ebx
movzx eax, byte [rcx + r14 + 0x198]
mov byte [rcx + rdx], al
mov eax, dword [r14 + 0x194]
cmp ebx, eax
jb 0x140004c00
mov dword [r13], eax
mov ebx, 1
mov rbp, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.DLL_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov r14, qword [rsp + 0x50]
test ebx, ebx
jne 0x140004c5e
lea ecx, [rbx + 0x14]
call qword [sym.imp.KERNEL32.DLL_SetLastError]
mov r12, qword [rsp + 0x58]
mov eax, ebx
mov rbx, qword [rsp + 0x78]
add rsp, 0x80
pop r13
ret
mov ecx, 8
jmp 0x140004a39
mov ecx, 0x57
call qword [sym.imp.KERNEL32.DLL_SetLastError]
xor eax, eax
add rsp, 0x80
pop r13
ret