Function at 0x180008020
Capabilities:
Get mac address on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7d0]
sub rsp, 0x8d0
mov rax, qword [0x18028b940]
xor rax, rsp
mov qword [rbp + 0x7c0], rax
mov rdi, rcx
mov qword [rbp + 0xe8], rcx
xor esi, esi
mov r15d, esi
mov dword [rsp + 0x70], esi
lea rcx, [rbp + 0xf0]
call fcn.180007380
nop
mov rcx, rdi
call fcn.18001f520
mov dword [rsp + 0x68], esi
lea rdx, [rsp + 0x68]
xor ecx, ecx
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
cmp eax, 0x6f
jne 0x1800080c8
mov ecx, dword [rsp + 0x68]
call fcn.1801c88f8
mov rbx, rax
mov qword [rbp + 0xe0], rax
test rax, rax
je 0x1800080c8
lea rdx, [rsp + 0x68]
mov rcx, rax
call qword [sym.imp.IPHLPAPI.DLL_GetAdaptersInfo]
test eax, eax
je 0x180008108
mov rcx, rbx
call fcn.1801c83b8
mov ebx, esi
lea rcx, [rbp + 0xf0]
call fcn.180007650
mov eax, ebx
mov rcx, qword [rbp + 0x7c0]
xor rcx, rsp
call fcn.1801c1730
lea r11, [rsp + 0x8d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rdx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rsp + 0x30], rdx
lea rax, vtable.CVolObject.0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rsi
lea rax, vtable.CVolMem.0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov eax, 0x40
mov qword [rsp + 0x60], rax
mov r12, rbx
lea r13, [rdi + 0x18]
mov qword [rbp + 0xd8], r13
lea rdx, [0x18024d0f0]
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x1f0]
mov rdi, qword [rbp + 0x1d0]
test rdi, rdi
je 0x18000818f
mov rax, rdi
jmp 0x18000819b
test rbx, rbx
je 0x18000821f
mov rax, rcx
cmp rdx, rax
je 0x18000821f
mov rdi, rsi
mov qword [rbp + 0x1d0], rsi
test rcx, rcx
je 0x1800081ca
mov rdx, rcx
lea rcx, [rbp + 0x1d8]
mov rax, qword [rbp + 0x1d8]
call qword [rax + 0x18]
mov rdi, qword [rbp + 0x1d0]
mov rcx, rsi
mov qword [rbp + 0x1f0], rcx
mov rbx, rsi
mov qword [rbp + 0x200], rbx
mov qword [rbp + 0x1f8], rsi
cmp word [0x18024d0f0], 0
je 0x18000821f
mov edx, 2
lea rcx, [rbp + 0x1d8]
call fcn.180022e50
movzx ecx, word [0x18024d0f0]
mov word [rax], cx
mov rbx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x1f0]
mov rdi, qword [rbp + 0x1d0]
mov r14, rsi
cmp dword [r12 + 0x194], 0
jbe 0x18000858e
lea r13, vtable.CVolObject.0
nop dword [rax + rax]
test r14, r14
je 0x180008451
test rdi, rdi
je 0x180008327
mov rax, 0xffffffffffffffff
nop dword [rax]
lea rax, [rax + 1]
cmp word [rdi + rax*2], 0
jne 0x180008260
lea rsi, [rax*2 + 2]
xor ebx, ebx
mov qword [rbp + 0x200], rbx
cmp qword [rbp + 0x1f8], rsi
jl 0x1800082e0
cmp rsi, 2
jne 0x1800082a4
movzx eax, word [rdi]
mov word [rcx], ax
mov rbx, qword [rbp + 0x200]
add rbx, rsi
mov qword [rbp + 0x200], rbx
jmp 0x180008317
cmp rsi, 4
jne 0x1800082c1
mov eax, dword [rdi]
mov dword [rcx], eax
mov rbx, qword [rbp + 0x200]
add rbx, rsi
mov qword [rbp + 0x200], rbx
jmp 0x180008317
cmp rsi, 8
jne 0x1800082e0
mov rax, qword [rdi]
mov qword [rcx], rax
mov rbx, qword [rbp + 0x200]
add rbx, rsi
mov qword [rbp + 0x200], rbx
jmp 0x180008317
test rsi, rsi
jle 0x18000831e
mov rdx, rsi
lea rcx, [rbp + 0x1d8]
call fcn.180022e50
mov r8, rsi
mov rcx, rax
test rdi, rdi
je 0x180008309
mov rdx, rdi
call fcn.1801c40e0
jmp 0x180008310
xor edx, edx
call fcn.1801c4790
mov rbx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x1f0]
xor esi, esi
mov qword [rbp + 0x1d0], rsi
cmp rbx, 2
jb 0x180008340
cmp word [rcx + rbx - 2], 0
jne 0x180008340
sub rbx, 2
mov qword [rbp + 0x200], rbx
mov dword [rsp + 0x6c], 0x2d
mov rax, qword [rbp + 0x1f8]
sub rax, rbx
cmp rax, 4
jl 0x18000836c
mov eax, dword [rsp + 0x6c]
mov dword [rcx + rbx], eax
add qword [rbp + 0x200], 4
jmp 0x180008451
lea rsi, [rbx + 4]
cmp rsi, rbx
je 0x180008448
test rsi, rsi
jne 0x1800083b5
test rcx, rcx
je 0x180008397
mov rdx, rcx
lea rcx, [rbp + 0x1d8]
mov rax, qword [rbp + 0x1d8]
call qword [rax + 0x18]
xor esi, esi
mov qword [rbp + 0x1f0], rsi
mov qword [rbp + 0x200], rsi
mov qword [rbp + 0x1f8], rsi
mov ecx, esi
jmp 0x18000844a
mov rdi, qword [rbp + 0x208]
mov eax, 0x40
test rcx, rcx
jne 0x1800083f0
test rdi, rdi
cmovle rdi, rax
mov rax, rsi
cqo
idiv rdi
sub rdi, rdx
add rdi, rsi
mov rdx, rdi
lea rcx, [rbp + 0x1d8]
mov rax, qword [rbp + 0x1d8]
call qword [rax]
jmp 0x180008430
test rdi, rdi
cmovle rdi, rax
mov rax, qword [rbp + 0x1f8]
cmp rax, rsi
jl 0x18000840b
sub rax, rsi
cmp rax, rdi
jle 0x180008441
mov rax, rsi
cqo
idiv rdi
sub rdi, rdx
add rdi, rsi
mov r8, rdi
mov rdx, rcx
lea rcx, [rbp + 0x1d8]
mov rax, qword [rbp + 0x1d8]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x1f8], rdi
mov rcx, rax
mov qword [rbp + 0x200], rsi
xor esi, esi
mov eax, dword [rsp + 0x6c]
mov dword [rcx + rbx], eax
movzx ecx, byte [r12 + r14 + 0x198]
lea r8, [rbp + 0x740]
mov edx, 2
call fcn.18001ca50
lea rdx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], rsi
lea r8, vtable.CWString.0
mov qword [rsp + 0x78], r8
lea rcx, [rbp - 0x68]
mov qword [rbp + 0x3d0], rcx
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rsi
lea rbx, vtable.CVolMem.0
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x48], rsi
mov ecx, 0x40
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x38], 0xfe
mov qword [rsp + 0x78], r8
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.180023fe0
nop
or r15d, 1
mov dword [rsp + 0x70], r15d
mov rax, qword [rbp - 0x70]
test rax, rax
jne 0x18000850d
lea rax, [0x18024d0f0]
cmp qword [rbp - 0x40], 0
cmovne rax, qword [rbp - 0x50]
mov rdx, rax
lea rcx, [rbp + 0x1b8]
call fcn.180023fe0
and r15d, 0xfffffffe
mov dword [rsp + 0x70], r15d
lea rax, [rbp - 0x68]
mov qword [rbp + 0x3d8], rax
mov qword [rbp - 0x68], rbx
mov rdx, qword [rbp - 0x50]
test rdx, rdx
je 0x180008548
lea rcx, [rbp - 0x68]
mov rax, qword [rbp - 0x68]
call qword [rax + 0x18]
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x68], r13
mov qword [rsp + 0x78], r13
inc r14
mov eax, dword [r12 + 0x194]
cmp r14, rax
jae 0x180008587
mov rbx, qword [rbp + 0x200]
mov rcx, qword [rbp + 0x1f0]
mov rdi, qword [rbp + 0x1d0]
jmp 0x180008240
mov r13, qword [rbp + 0xd8]
lea rdi, [r12 + 0x110]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 0x40
test rcx, rcx
jne 0x1800085db
test rbx, rbx
cmovle rbx, rax
mov eax, 0x84
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x84
mov rdx, rbx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax]
jmp 0x180008621
test rbx, rbx
cmovle rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 0x84
jl 0x1800085fa
add rax, 0xffffffffffffff7c
cmp rax, rbx
jle 0x18000862e
mov eax, 0x84
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x84
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
mov rcx, rax
mov qword [rsp + 0x58], 0x84
test rdi, rdi
je 0x180008682
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdi + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rcx + 0x70], xmm1
mov eax, dword [rdi + 0x80]
jmp 0x1800086a6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
movups xmmword [rcx + 0x40], xmm0
movups xmmword [rcx + 0x50], xmm0
movups xmmword [rcx + 0x60], xmm0
movups xmmword [rcx + 0x70], xmm0
mov dword [rcx + 0x80], eax
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x448]
call fcn.18001eb00
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x1800086d8
cmp qword [rax + 0x48], rbx
lea rbx, [0x18024d0f0]
je 0x1800086d8
mov rbx, qword [rax + 0x38]
mov rdx, qword [rbp + 0x140]
mov rax, qword [rbp + 0x120]
test rax, rax
jne 0x1800086fe
lea rax, [0x18024d0f0]
cmp qword [rbp + 0x150], 0
cmovne rax, rdx
cmp rbx, rax
je 0x180008750
mov qword [rbp + 0x120], rsi
test rdx, rdx
je 0x180008720
lea rcx, [rbp + 0x128]
mov rax, qword [rbp + 0x128]
call qword [rax + 0x18]
mov qword [rbp + 0x140], rsi
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x148], rsi
test rbx, rbx
je 0x180008750
cmp word [rbx], 0
je 0x180008750
mov rdx, rbx
lea rcx, [rbp + 0x128]
call fcn.180022fb0
nop
lea rax, [rbp + 0x468]
mov qword [rbp + 0x3e0], rax
lea rax, vtable.CVolMem.0
mov qword [rbp + 0x468], rax
mov rdx, qword [rbp + 0x480]
test rdx, rdx
je 0x180008789
lea rcx, [rbp + 0x468]
mov rax, qword [rbp + 0x468]
call qword [rax + 0x18]
mov qword [rbp + 0x480], rsi
mov qword [rbp + 0x490], rsi
mov qword [rbp + 0x488], rsi
lea r14, vtable.CVolObject.0
mov qword [rbp + 0x468], r14
mov qword [rbp + 0x448], r14
lea rdi, [r12 + 0x1c0]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 0x40
test rcx, rcx
jne 0x1800087fd
test rbx, rbx
cmovle rbx, rax
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov rdx, rbx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax]
jmp 0x18000883c
test rbx, rbx
cmovle rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jl 0x180008818
add rax, 0xfffffffffffffff0
cmp rax, rbx
jle 0x180008849
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
mov rcx, rax
mov qword [rsp + 0x58], reloc.OLEAUT32.dll_SafeArrayGetDim
test rdi, rdi
je 0x18000885f
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
jmp 0x180008865
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x4a0]
call fcn.18001eb00
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x180008891
cmp qword [rax + 0x48], rbx
lea rbx, [0x18024d0f0]
je 0x180008891
mov rbx, qword [rax + 0x38]
mov rdx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x228]
test rax, rax
jne 0x1800088b7
lea rax, [0x18024d0f0]
cmp qword [rbp + 0x258], 0
cmovne rax, rdx
cmp rbx, rax
je 0x180008909
mov qword [rbp + 0x228], rsi
test rdx, rdx
je 0x1800088d9
lea rcx, [rbp + 0x230]
mov rax, qword [rbp + 0x230]
call qword [rax + 0x18]
mov qword [rbp + 0x248], rsi
mov qword [rbp + 0x258], rsi
mov qword [rbp + 0x250], rsi
test rbx, rbx
je 0x180008909
cmp word [rbx], 0
je 0x180008909
mov rdx, rbx
lea rcx, [rbp + 0x230]
call fcn.180022fb0
nop
lea rax, [rbp + 0x4c0]
mov qword [rbp + 0x3e8], rax
lea rax, vtable.CVolMem.0
mov qword [rbp + 0x4c0], rax
mov rdx, qword [rbp + 0x4d8]
test rdx, rdx
je 0x180008942
lea rcx, [rbp + 0x4c0]
mov rax, qword [rbp + 0x4c0]
call qword [rax + 0x18]
mov qword [rbp + 0x4d8], rsi
mov qword [rbp + 0x4e8], rsi
mov qword [rbp + 0x4e0], rsi
mov qword [rbp + 0x4c0], r14
mov qword [rbp + 0x4a0], r14
lea rdi, [r12 + 0x1d0]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 0x40
test rcx, rcx
jne 0x1800089af
test rbx, rbx
cmovle rbx, rax
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov rdx, rbx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax]
jmp 0x1800089ee
test rbx, rbx
cmovle rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jl 0x1800089ca
add rax, 0xfffffffffffffff0
cmp rax, rbx
jle 0x1800089fb
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
mov rcx, rax
mov qword [rsp + 0x58], reloc.OLEAUT32.dll_SafeArrayGetDim
test rdi, rdi
je 0x180008a11
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
jmp 0x180008a17
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x4f8]
call fcn.18001eb00
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x180008a43
cmp qword [rax + 0x48], rbx
lea rbx, [0x18024d0f0]
je 0x180008a43
mov rbx, qword [rax + 0x38]
mov rdx, qword [rbp + 0x2a0]
mov rax, qword [rbp + 0x280]
test rax, rax
jne 0x180008a69
lea rax, [0x18024d0f0]
cmp qword [rbp + 0x2b0], 0
cmovne rax, rdx
cmp rbx, rax
je 0x180008abb
mov qword [rbp + 0x280], rsi
test rdx, rdx
je 0x180008a8b
lea rcx, [rbp + 0x288]
mov rax, qword [rbp + 0x288]
call qword [rax + 0x18]
mov qword [rbp + 0x2a0], rsi
mov qword [rbp + 0x2b0], rsi
mov qword [rbp + 0x2a8], rsi
test rbx, rbx
je 0x180008abb
cmp word [rbx], 0
je 0x180008abb
mov rdx, rbx
lea rcx, [rbp + 0x288]
call fcn.180022fb0
nop
lea rax, [rbp + 0x518]
mov qword [rbp + 0x3f0], rax
lea rax, vtable.CVolMem.0
mov qword [rbp + 0x518], rax
mov rdx, qword [rbp + 0x530]
test rdx, rdx
je 0x180008af4
lea rcx, [rbp + 0x518]
mov rax, qword [rbp + 0x518]
call qword [rax + 0x18]
mov qword [rbp + 0x530], rsi
mov qword [rbp + 0x540], rsi
mov qword [rbp + 0x538], rsi
mov qword [rbp + 0x518], r14
mov qword [rbp + 0x4f8], r14
lea rdi, [r12 + 0x1f0]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 0x40
test rcx, rcx
jne 0x180008b61
test rbx, rbx
cmovle rbx, rax
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov rdx, rbx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax]
jmp 0x180008ba0
test rbx, rbx
cmovle rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jl 0x180008b7c
add rax, 0xfffffffffffffff0
cmp rax, rbx
jle 0x180008bad
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x10
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
mov rcx, rax
mov qword [rsp + 0x58], reloc.OLEAUT32.dll_SafeArrayGetDim
test rdi, rdi
je 0x180008bc3
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
jmp 0x180008bc9
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x550]
call fcn.18001eb00
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x180008bf5
cmp qword [rax + 0x48], rbx
lea rbx, [0x18024d0f0]
je 0x180008bf5
mov rbx, qword [rax + 0x38]
mov rdx, qword [rbp + 0x2f8]
mov rax, qword [rbp + 0x2d8]
test rax, rax
jne 0x180008c1b
lea rax, [0x18024d0f0]
cmp qword [rbp + 0x308], 0
cmovne rax, rdx
cmp rbx, rax
je 0x180008c6d
mov qword [rbp + 0x2d8], rsi
test rdx, rdx
je 0x180008c3d
lea rcx, [rbp + 0x2e0]
mov rax, qword [rbp + 0x2e0]
call qword [rax + 0x18]
mov qword [rbp + 0x2f8], rsi
mov qword [rbp + 0x308], rsi
mov qword [rbp + 0x300], rsi
test rbx, rbx
je 0x180008c6d
cmp word [rbx], 0
je 0x180008c6d
mov rdx, rbx
lea rcx, [rbp + 0x2e0]
call fcn.180022fb0
nop
lea rax, [rbp + 0x570]
mov qword [rbp + 0x3f8], rax
lea rax, vtable.CVolMem.0
mov qword [rbp + 0x570], rax
mov rdx, qword [rbp + 0x588]
test rdx, rdx
je 0x180008ca6
lea rcx, [rbp + 0x570]
mov rax, qword [rbp + 0x570]
call qword [rax + 0x18]
mov qword [rbp + 0x588], rsi
mov qword [rbp + 0x598], rsi
mov qword [rbp + 0x590], rsi
mov qword [rbp + 0x570], r14
mov qword [rbp + 0x550], r14
lea rdi, [r12 + 0xc]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 0x40
test rcx, rcx
jne 0x180008d13
test rbx, rbx
cmovle rbx, rax
mov eax, 0x104
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x104
mov rdx, rbx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax]
jmp 0x180008d59
test rbx, rbx
cmovle rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 0x104
jl 0x180008d32
add rax, 0xfffffffffffffefc
cmp rax, rbx
jle 0x180008d66
mov eax, 0x104
cqo
idiv rbx
sub rbx, rdx
add rbx, 0x104
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
mov rcx, rax
mov qword [rsp + 0x58], 0x104
test rdi, rdi
je 0x180008dd8
mov eax, 2
nop dword [rax]
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdi + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdi, [rdi + 0x80]
sub rax, 1
jne 0x180008d80
mov eax, dword [rdi]
mov dword [rcx], eax
jmp 0x180008de5
xor edx, edx
mov r8d, 0x104
call fcn.1801c4790
lea rcx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], rsi
lea rdx, vtable.CWString.0
mov qword [rbp + 0x28], rdx
lea rax, [rbp + 0x48]
mov qword [rbp + 0x400], rax
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], rsi
lea rdi, vtable.CVolMem.0
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x70], rsi
mov qword [rbp + 0x68], rsi
mov ebx, 0x40
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x78], 0xfe
lea r8, vtable.CWConstString.0
mov qword [rbp + 0x28], r8
lea rax, str.Name
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x80], rcx
mov qword [rbp + 0x80], r14
mov qword [rbp + 0x88], rsi
mov qword [rbp + 0x90], rsi
mov qword [rbp + 0x80], rdx
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x408], rax
mov qword [rbp + 0xa0], rcx
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0xa8], rsi
mov qword [rbp + 0xb0], rsi
mov qword [rbp + 0xa0], rdi
mov qword [rbp + 0xb8], rsi
mov qword [rbp + 0xc8], rsi
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xd0], 0xfe
mov qword [rbp + 0x80], r8
lea rax, str.Connection
mov qword [rbp + 0x98], rax
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x6b0]
call fcn.18001eb00
nop
lea rdx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], rsi
lea rcx, vtable.CWString.0
mov qword [rbp - 0x30], rcx
lea rcx, [rbp - 0x10]
mov qword [rbp + 0x440], rcx
mov qword [rbp - 0x10], rdx
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], rsi
mov qword [rbp], rsi
mov qword [rbp - 0x10], rdi
mov qword [rbp + 8], rsi
mov qword [rbp + 0x18], rsi
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x20], rbx
mov qword [rbp - 0x18], rsi
mov qword [rbp + 0x20], 0xfe
lea rcx, vtable.CWConstString.0
mov qword [rbp - 0x30], rcx
lea rcx, str.SYSTEMCurrentControlSetControlNetwork4D36E972_E325_11CE_BFC1_08002BE10318_
mov qword [rbp - 0x18], rcx
mov r8, rax
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x658]
call fcn.180024720
nop
lea r8, [rbp + 0x80]
mov rdx, rax
lea rcx, [rbp + 0x600]
call fcn.180024720
mov rbx, rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
jne 0x180008fc3
mov ecx, esi
jmp 0x180008fff
lea rdx, str.GetNativeSystemInfo
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x180008fdc
mov ecx, esi
jmp 0x180008fff
lea rcx, [rbp + 0x710]
call rax
movzx eax, word [rbp + 0x710]
cmp ax, 9
je 0x180008ffa
cmp ax, 6
mov ecx, esi
jne 0x180008fff
mov ecx, 1
mov dword [rsp + 0x20], ecx
lea r9, [rbp + 0x28]
mov r8, rbx
lea rcx, [rbp + 0x5a8]
call fcn.1800078c0
nop
mov rbx, qword [rax + 0x18]
test rbx, rbx
jne 0x180009031
cmp qword [rax + 0x48], rbx
lea rbx, [0x18024d0f0]
je 0x180009031
mov rbx, qword [rax + 0x38]
mov rdx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x178]
test rax, rax
jne 0x180009057
lea rax, [0x18024d0f0]
cmp qword [rbp + 0x1a8], 0
cmovne rax, rdx
cmp rbx, rax
je 0x1800090a9
mov qword [rbp + 0x178], rsi
test rdx, rdx
je 0x180009079
lea rcx, [rbp + 0x180]
mov rax, qword [rbp + 0x180]
call qword [rax + 0x18]
mov qword [rbp + 0x198], rsi
mov qword [rbp + 0x1a8], rsi
mov qword [rbp + 0x1a0], rsi
test rbx, rbx
je 0x1800090a9
cmp word [rbx], 0
je 0x1800090a9
mov rdx, rbx
lea rcx, [rbp + 0x180]
call fcn.180022fb0
nop
lea rax, [rbp + 0x5c8]
mov qword [rbp + 0x438], rax
mov qword [rbp + 0x5c8], rdi
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x1800090db
lea rcx, [rbp + 0x5c8]
mov rax, qword [rbp + 0x5c8]
call qword [rax + 0x18]
mov qword [rbp + 0x5e0], rsi
mov qword [rbp + 0x5f0], rsi
mov qword [rbp + 0x5e8], rsi
mov qword [rbp + 0x5c8], r14
mov qword [rbp + 0x5a8], r14
lea rax, [rbp + 0x620]
mov qword [rbp + 0x430], rax
mov qword [rbp + 0x620], rdi
mov rdx, qword [rbp + 0x638]
test rdx, rdx
je 0x180009130
lea rcx, [rbp + 0x620]
mov rax, qword [rbp + 0x620]
call qword [rax + 0x18]
mov qword [rbp + 0x638], rsi
mov qword [rbp + 0x648], rsi
mov qword [rbp + 0x640], rsi
mov qword [rbp + 0x620], r14
mov qword [rbp + 0x600], r14
lea rax, [rbp + 0x678]
mov qword [rbp + 0x428], rax
mov qword [rbp + 0x678], rdi
mov rdx, qword [rbp + 0x690]
test rdx, rdx
je 0x180009185
lea rcx, [rbp + 0x678]
mov rax, qword [rbp + 0x678]
call qword [rax + 0x18]
mov qword [rbp + 0x690], rsi
mov qword [rbp + 0x6a0], rsi
mov qword [rbp + 0x698], rsi
mov qword [rbp + 0x678], r14
mov qword [rbp + 0x658], r14
lea rax, [rbp - 0x10]
mov qword [rbp + 0x420], rax
mov qword [rbp - 0x10], rdi
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x1800091cb
lea rcx, [rbp - 0x10]
mov rax, qword [rbp - 0x10]
call qword [rax + 0x18]
mov qword [rbp + 8], rsi
mov qword [rbp + 0x18], rsi
mov qword [rbp + 0x10], rsi
mov qword [rbp - 0x10], r14
mov qword [rbp - 0x30], r14
lea rax, [rbp + 0x6d0]
mov qword [rbp + 0x708], rax
mov qword [rbp + 0x6d0], rdi
mov rdx, qword [rbp + 0x6e8]
test rdx, rdx
je 0x180009211
lea rcx, [rbp + 0x6d0]
mov rax, qword [rbp + 0x6d0]
call qword [rax + 0x18]
mov qword [rbp + 0x6e8], rsi
mov qword [rbp + 0x6f8], rsi
mov qword [rbp + 0x6f0], rsi
mov qword [rbp + 0x6d0], r14
mov qword [rbp + 0x6b0], r14
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x410], rax
mov qword [rbp + 0xa0], rdi
mov rdx, qword [rbp + 0xb8]
test rdx, rdx
je 0x180009266
lea rcx, [rbp + 0xa0]
mov rax, qword [rbp + 0xa0]
call qword [rax + 0x18]
mov qword [rbp + 0xb8], rsi
mov qword [rbp + 0xc8], rsi
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0x80], r14
lea rax, [rbp + 0x48]
mov qword [rbp + 0x418], rax
mov qword [rbp + 0x48], rdi
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x1800092ac
lea rcx, [rbp + 0x48]
mov rax, qword [rbp + 0x48]
call qword [rax + 0x18]
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x70], rsi
mov qword [rbp + 0x68], rsi
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x28], r14
lea r8, [rbp + 0x370]
lea rdx, [rbp + 0x318]
mov ecx, dword [r12 + 0x1a0]
call fcn.180007b60
lea rcx, [rbp + 0xf0]
mov rax, qword [rbp + 0xf0]
call qword [rax + 0x40]
mov rdi, rax
mov rbx, qword [r13 + 0x28]
mov rcx, qword [r13 + 0x20]
sub rcx, rbx
cmp rcx, 8
jl 0x18000930f
mov rcx, qword [r13 + 0x18]
mov qword [rbx + rcx], rax
add qword [r13 + 0x28], 8
jmp 0x18000931f
lea rdx, [rbx + 8]
mov rcx, r13
call fcn.180022e50
mov qword [rax + rbx], rdi
mov r12, qword [r12]
test r12, r12
lea rdx, [0x18024d0f0]
jne 0x180008170
mov rcx, qword [rbp + 0xe0]
call fcn.1801c83b8
mov rbx, qword [rbp + 0xe8]
mov rbx, qword [rbx + 0x40]
shr rbx, 3
lea rax, vtable.CVolMem.0
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x180009371
lea rcx, [rsp + 0x30]
mov rax, qword [rsp + 0x30]
call qword [rax + 0x18]
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x30], r14
jmp 0x1800080ca