Function at 0x14002ab44
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rax, qword [0x14006d378]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov rdi, rdx
mov rbx, rcx
cmp rdx, rcx
je 0x14002ab8a
mov rdx, rcx
cmp qword [rcx + 0x18], 8
jb 0x14002ab7e
mov rdx, qword [rcx]
mov r8, qword [rcx + 0x10]
mov rcx, rdi
call fcn.1400032c8
mov edx, 0x31
mov rcx, qword [str.LngFolder0]
call fcn.14004346c
xor esi, esi
test rax, rax
je 0x14002ad94
lea rax, [rbp - 9]
mov qword [rsp + 0x20], rax
lea r9d, [rsi + 1]
xor r8d, r8d
lea rdx, str.SoftwareWinRARGeneral
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14002ad94
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x14005aca0]
mov rcx, qword [rbp - 9]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14002ad8a
mov eax, dword [rbp - 0x29]
mov edx, 0x10000
cmp dword [rbp - 0x29], edx
cmovb edx, eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x21], xmm0
mov qword [rbp - 0x11], rsi
lea rcx, [rbp - 0x21]
call fcn.14000d144
nop
mov rax, qword [rbp - 0x19]
mov rcx, qword [rbp - 0x21]
sub rax, rcx
sar rax, 1
add eax, eax
mov dword [rbp - 0x29], eax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
lea rdx, str.LanguageFolder
mov rcx, qword [rbp - 9]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14002ad4e
mov word [rbp - 0x25], si
mov rdx, qword [rbp - 0x19]
cmp rdx, qword [rbp - 0x11]
je 0x14002ac7b
mov word [rdx], si
add qword [rbp - 0x19], 2
jmp 0x14002ac88
lea r8, [rbp - 0x25]
lea rcx, [rbp - 0x21]
call fcn.14002a9f4
mov qword [rbp - 1], rsi
mov qword [rbp + 0xf], rsi
mov qword [rbp + 0x17], rsi
mov rdx, qword [rbp - 0x21]
or r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], si
jne 0x14002ac9c
lea rcx, [rbp - 1]
call fcn.140003394
nop
lea rcx, [rbp - 1]
call fcn.14003102c
mov rdx, rbx
lea rcx, [rbp + 0x1f]
call fcn.14002350c
nop
lea r8, [rbp - 1]
mov rdx, rax
lea rcx, [rbp - 1]
call fcn.140022acc
nop
lea rcx, [rbp + 0x1f]
call fcn.14000323c
lea rcx, [rbp - 1]
call fcn.14001afd4
test al, al
je 0x14002ad11
lea rax, [rbp - 1]
cmp rdi, rax
je 0x14002ad11
lea rdx, [rbp - 1]
cmp qword [rbp + 0x17], 8
cmovae rdx, qword [rbp - 1]
mov r8, qword [rbp + 0xf]
mov rcx, rdi
call fcn.1400032c8
nop
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x14002ad4e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ad48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002adb9
call fcn.1400409c4
nop
mov rcx, qword [rbp - 0x21]
test rcx, rcx
je 0x14002ad8a
mov rdx, qword [rbp - 0x11]
sub rdx, rcx
sar rdx, 1
add rdx, rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ad85
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002adb3
call fcn.1400409c4
mov rcx, qword [rbp - 9]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.140040b40
mov rbx, qword [rsp + 0xd0]
add rsp, 0xa0
pop rdi
pop rsi
pop rbp
ret
call fcn.140045ef4
nop
call fcn.140045ef4
nop
int3