Function at 0x14006f470
Capabilities:
Get cpu information
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x5e0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x140198190]
xor rax, rsp
mov qword [rsp + 0x5b0], rax
mov qword [rsp + 0x50], rcx
xor r14d, r14d
cmp qword [0x14019aff0], r14
jne 0x140070128
lea rcx, [rsp + 0x60]
call fcn.1400070a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c0], xmm0
mov qword [rsp + 0x1d0], r14
mov qword [rsp + 0x1d8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x1c0], r14b
movups xmmword [rsp + 0x200], xmm0
movdqa xmm1, xmmword [0x14017cee0]
movdqa xmmword [rsp + 0x210], xmm1
mov byte [rsp + 0x200], r14b
movups xmmword [rsp + 0x220], xmm0
movdqa xmmword [rsp + 0x230], xmm1
mov byte [rsp + 0x220], r14b
lea rcx, [rsp + 0x200]
call fcn.140072420
movaps xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x240], xmm1
movaps xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x250], xmm0
movdqa xmm1, xmmword [0x14017cee0]
movdqa xmmword [rsp + 0x210], xmm1
mov byte [rsp + 0x200], r14b
movaps xmm6, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x260], xmm6
movaps xmm7, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x270], xmm7
movdqa xmm0, xmm1
movdqa xmmword [rsp + 0x230], xmm1
mov byte [rsp + 0x220], r14b
lea rcx, [rsp + 0x220]
call fcn.140008ae0
lea rcx, [rsp + 0x200]
call fcn.140008ae0
nop
lea rdx, [rsp + 0x260]
movq rcx, xmm6
movdqa xmm0, xmm7
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm7
lea rcx, [rsp + 0x1c0]
call fcn.140008e10
nop
lea rcx, [rsp + 0x260]
call fcn.140008ae0
lea rcx, [rsp + 0x240]
call fcn.140008ae0
nop
jmp 0x14006f60f
cmp qword [rsp + 0x1d0], 0
jne 0x14006f7ca
mov dword [rsp + 0x34], ntohl
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], 0x104
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 0x101
xor r8d, r8d
lea rdx, str.HARDWAREDESCRIPTIONSystemBIOS
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x380]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x34]
xor r8d, r8d
lea rdx, str.BaseBoardProduct
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xorps xmm0, xmm0
movups xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], r14
lea rax, [rsp + 0x380]
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x14006f6c0
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x180]
call fcn.1400099b0
lea rax, [rsp + 0x180]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x180]
cmp qword [rsp + 0x198], 8
cmovae rdx, qword [rsp + 0x180]
mov rax, qword [rsp + 0x190]
lea r8, [rdx + rax*2]
lea rdx, [rsp + 0x180]
cmovae rdx, qword [rsp + 0x180]
lea rcx, [rsp + 0x160]
call fcn.14006c6f0
nop
lea rcx, [rsp + 0x180]
call fcn.1400089c0
mov rdx, qword [rsp + 0x1d8]
cmp rdx, 0x10
jb 0x14006f782
inc rdx
mov rcx, qword [rsp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006f77d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140070172
call fcn.14010f640
movups xmm0, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x1c0], xmm0
movups xmm1, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x1d0], xmm1
movdqa xmm0, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140008ae0
jmp 0x14006f7d1
mov rsi, 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
mov qword [rsp + 0x1f0], r14
mov qword [rsp + 0x1f8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x1e0], 0
movups xmmword [rsp + 0x160], xmm0
movdqa xmm1, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm1
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140072760
movups xmm6, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x180], xmm6
movups xmm7, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x190], xmm7
movdqa xmm0, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140008ae0
nop
lea rdx, [rsp + 0x180]
movq rcx, xmm6
movdqa xmm0, xmm7
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm7
lea rcx, [rsp + 0x1e0]
call fcn.140008e10
nop
lea rcx, [rsp + 0x180]
call fcn.140008ae0
nop
jmp 0x14006f8ba
cmp qword [rsp + 0x1f0], 0
jne 0x14006fa68
mov dword [rsp + 0x30], ntohl
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x34], 0x104
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 0x101
xor r8d, r8d
lea rdx, str.HARDWAREDESCRIPTIONSystemCentralProcessor0
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x380]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
lea rdx, str.ProcessorNameString
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xorps xmm0, xmm0
movups xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], r14
lea rax, [rsp + 0x380]
mov r8, rsi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x14006f960
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x180]
call fcn.1400099b0
lea rax, [rsp + 0x180]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x180]
cmp qword [rsp + 0x198], 8
cmovae rdx, qword [rsp + 0x180]
mov rax, qword [rsp + 0x190]
lea r8, [rdx + rax*2]
lea rdx, [rsp + 0x180]
cmovae rdx, qword [rsp + 0x180]
lea rcx, [rsp + 0x160]
call fcn.14006c6f0
nop
lea rcx, [rsp + 0x180]
call fcn.1400089c0
mov rdx, qword [rsp + 0x1f8]
cmp rdx, 0x10
jb 0x14006fa22
inc rdx
mov rcx, qword [rsp + 0x1e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006fa1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140070178
call fcn.14010f640
movups xmm0, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x1e0], xmm0
movups xmm1, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x1f0], xmm1
movdqa xmm0, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140008ae0
xorps xmm0, xmm0
movups xmmword [rsp + 0x2a0], xmm0
movdqa xmm1, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x2b0], xmm1
mov byte [rsp + 0x2a0], 0
movups xmmword [rsp + 0x160], xmm0
movdqu xmmword [rsp + 0x170], xmm1
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140072a10
movups xmm6, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x180], xmm6
movups xmm7, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x190], xmm7
movdqa xmm0, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140008ae0
nop
lea rdx, [rsp + 0x180]
movq rcx, xmm6
movdqa xmm0, xmm7
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm7
lea rcx, [rsp + 0x2a0]
call fcn.140008e10
nop
lea rcx, [rsp + 0x180]
call fcn.140008ae0
nop
jmp 0x14006fb46
xorps xmm0, xmm0
movups xmmword [rsp + 0x280], xmm0
movdqa xmm1, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x290], xmm1
mov byte [rsp + 0x280], 0
movups xmmword [rsp + 0x160], xmm0
movdqu xmmword [rsp + 0x170], xmm1
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140072d00
movups xmm6, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x180], xmm6
movups xmm7, xmmword [rsp + 0x170]
movups xmmword [rsp + 0x190], xmm7
movdqa xmm0, xmmword [0x14017cee0]
movdqu xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call fcn.140008ae0
nop
lea rdx, [rsp + 0x180]
movq rcx, xmm6
movdqa xmm0, xmm7
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm7
lea rcx, [rsp + 0x280]
call fcn.140008e10
nop
lea rcx, [rsp + 0x180]
call fcn.140008ae0
nop
jmp 0x14006fc24
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x360], xmm0
mov byte [rsp + 0x370], 0
mov eax, 1
xor ecx, ecx
cpuid
mov edi, eax
mov dword [rsp + 0x3c], ebx
mov dword [rsp + 0x40], ecx
mov r9d, edx
lea r8, str._08X
mov edx, 9
lea rcx, [rsp + 0x360]
call fcn.14000a8a0
mov r9d, edi
lea r8, str._08X
mov edx, 9
lea rcx, [rsp + 0x368]
call fcn.14000a8a0
lea rcx, [rsp + 0x2e0]
call fcn.140071b10
nop
lea rax, [rsp + 0x360]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x14006fca0
lea r9, [rsp + 0x360]
add r9, rsi
lea r8, [rsp + 0x360]
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x2e0]
call fcn.14000ec20
nop
lea rax, [0x140162960]
mov qword [rsp + 0x2e0], rax
lea rcx, [rsp + 0x320]
call fcn.1400089c0
lea rcx, [rsp + 0x300]
call fcn.140008ae0
mov rcx, qword [rsp + 0x2f8]
test rcx, rcx
je 0x14006fd24
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
test rax, rax
je 0x14006fd24
mov rcx, qword [rax]
mov rbx, qword [rcx]
mov edx, 1
mov rcx, rax
call rbx
nop
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x240]
call fcn.1400080f0
mov rbx, rax
mov qword [rsp + 0x38], rax
cmp qword [rax + 0x18], 0x10
jb 0x14006fd54
mov r8, qword [rax]
mov rax, r8
add r8, qword [rbx + 0x10]
jmp 0x14006fd5b
mov r8, qword [rax + 0x10]
add r8, rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x160], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x170], xmm1
cmp rax, r8
jne 0x14006fd93
movdqa xmm0, xmmword [0x14017ced0]
movdqu xmmword [rsp + 0x170], xmm0
mov word [rsp + 0x160], r14w
jmp 0x14006fdaa
mov r9, r8
sub r9, rax
mov rdx, rax
lea rcx, [rsp + 0x160]
call fcn.14004f180
nop
mov rcx, rbx
call fcn.140008ae0
nop
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x200]
call fcn.1400080f0
mov rbx, rax
mov qword [rsp + 0x38], rax
cmp qword [rax + 0x18], 0x10
jb 0x14006fde3
mov r8, qword [rax]
mov rax, r8
add r8, qword [rbx + 0x10]
jmp 0x14006fdea
mov r8, qword [rax + 0x10]
add r8, rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x180], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x190], xmm1
cmp rax, r8
jne 0x14006fe22
movdqa xmm0, xmmword [0x14017ced0]
movdqu xmmword [rsp + 0x190], xmm0
mov word [rsp + 0x180], r14w
jmp 0x14006fe39
mov r9, r8
sub r9, rax
mov rdx, rax
lea rcx, [rsp + 0x180]
call fcn.14004f180
nop
mov rcx, rbx
call fcn.140008ae0
nop
lea rdx, [rsp + 0x180]
cmp qword [rsp + 0x198], 8
cmovae rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x190]
lea rcx, [rsp + 0x70]
call fcn.14000a580
lea rdx, [0x1401626e0]
mov rcx, rax
call fcn.1400095e0
lea rdx, [rsp + 0x160]
cmp qword [rsp + 0x178], 8
cmovae rdx, qword [rsp + 0x160]
mov r8, qword [rsp + 0x170]
mov rcx, rax
call fcn.14000a580
nop
mov rdx, qword [rsp + 0x198]
cmp rdx, 8
jb 0x14006fef0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006feeb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007017e
call fcn.14010f640
movdqa xmm0, xmmword [0x14017ced0]
movdqu xmmword [rsp + 0x190], xmm0
mov word [rsp + 0x180], r14w
mov rdx, qword [rsp + 0x178]
cmp rdx, 8
jb 0x14006ff52
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006ff4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140070184
call fcn.14010f640
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x78]
call fcn.140008770
nop
lea rsi, [rsp + 0x1a0]
mov r8, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0x1b8]
cmp rbx, 8
cmovae rsi, r8
mov rax, qword [rsp + 0x1b0]
lea rcx, [rax + rax]
add rsi, rcx
lea rdi, [rsp + 0x1a0]
cmp rbx, 8
cmovae rdi, r8
add rdi, rcx
lea rcx, [rsp + 0x1a0]
cmp rbx, 8
cmovae rcx, r8
mov r8d, reloc.WLDAP32.dll_Ordinal_32
mov rdx, rdi
call fcn.1400f08f0
mov r8, rax
cmp rax, rdi
je 0x14006fff0
add rax, 2
cmp rax, rdi
je 0x14006fff0
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14006ffe7
mov word [r8], cx
add r8, 2
add rax, 2
cmp rax, rdi
jne 0x14006ffd6
lea rax, [rsp + 0x1a0]
cmp qword [rsp + 0x1b8], 8
cmovae rax, qword [rsp + 0x1a0]
mov rbx, r8
sub rbx, rax
sar rbx, 1
sub rsi, r8
sar rsi, 1
mov rdi, qword [rsp + 0x1b0]
mov rax, rdi
sub rax, rbx
cmp rax, rsi
cmovb rsi, rax
lea rax, [rsp + 0x1a0]
cmp qword [rsp + 0x1b8], 8
cmovae rax, qword [rsp + 0x1a0]
lea rcx, [rax + rbx*2]
sub rdi, rsi
mov r8, rdi
sub r8, rbx
lea r8, [r8*2 + 2]
lea rdx, [rcx + rsi*2]
call fcn.140111970
mov qword [rsp + 0x1b0], rdi
lea rdx, [rsp + 0x1a0]
cmp qword [rsp + 0x1b8], 8
cmovae rdx, qword [rsp + 0x1a0]
mov r8, rdi
lea rcx, [0x14019afe0]
call fcn.140008ce0
nop
lea rcx, [rsp + 0x1a0]
call fcn.1400089c0
nop
lea rcx, [rsp + 0x2c0]
call fcn.1400089c0
nop
lea rcx, [rsp + 0x280]
call fcn.140008ae0
nop
lea rcx, [rsp + 0x2a0]
call fcn.140008ae0
nop
lea rcx, [rsp + 0x1e0]
call fcn.140008ae0
nop
mov rdx, qword [rsp + 0x1d8]
cmp rdx, 0x10
jb 0x14007011e
inc rdx
mov rcx, qword [rsp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140070118
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007018a
call fcn.14010f640
nop
lea rcx, [rsp + 0x60]
call fcn.140003d50
lea rdx, [0x14019afe0]
mov rcx, qword [rsp + 0x50]
call fcn.140007f90
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x5b0]
xor rcx, rsp
call fcn.14010f620
lea r11, [rsp + 0x5e0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
ret
call fcn.140118cb4
nop
call fcn.140118cb4
nop
call fcn.140118cb4
nop
call fcn.140118cb4
nop
call fcn.140118cb4
int3