Function at 0x140109600
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov edi, dword [0x140686d5c]
test edi, edi
jne 0x1401098c1
xor esi, esi
lea r14d, [rdi + 2]
cmp byte [0x14068a730], sil
jne 0x140109681
lea ecx, [rdi + 0x43]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, eax
cmp eax, 1
jne 0x140109669
mov dword [0x14068a720], eax
mov byte [0x14068a730], al
jmp 0x140109687
mov eax, esi
cmp ecx, r14d
cmove eax, r14d
mov dword [0x14068a720], eax
mov byte [0x14068a730], 1
jmp 0x140109687
mov eax, dword [0x14068a720]
test eax, eax
je 0x140109695
mov edi, 5
jmp 0x1401098bb
mov qword [rbp + 7], rsi
mov qword [rbp + 0x17], rsi
mov qword [rbp + 0x1f], 7
mov word [rbp + 7], si
mov edi, 4
mov r8d, edi
lea rdx, str.Mode
lea rcx, [rbp + 7]
call fcn.1400739a0
nop
mov qword [rbp - 0x19], rsi
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
lea r8d, [rdi + 0x26]
lea rdx, str.SYSTEMCurrentControlSetServiceshmpalert
lea rcx, [rbp - 0x19]
call fcn.1400739a0
mov r15d, 0x63
mov dword [rbp + 0x2f], r15d
lea rdx, [rbp - 0x19]
cmp qword [rbp - 1], 8
cmovae rdx, qword [rbp - 0x19]
lea rax, [rbp + 0x27]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140109774
mov dword [rbp + 0x33], esi
mov dword [rbp + 0x37], edi
lea rdx, [rbp + 7]
cmp qword [rbp + 0x1f], 8
cmovae rdx, qword [rbp + 7]
lea rax, [rbp + 0x37]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x2f]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x33]
xor r8d, r8d
mov rcx, qword [rbp + 0x27]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov ebx, eax
mov rcx, qword [rbp + 0x27]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
jne 0x140109774
mov ebx, dword [rbp + 0x2f]
cmp dword [rbp + 0x33], edi
cmovne ebx, r15d
jmp 0x140109777
mov ebx, dword [rbp + 0x2f]
mov rdx, qword [rbp - 1]
cmp rdx, 8
jb 0x1401097b7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401097b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401098f2
call fcn.140359090
mov qword [rbp - 9], rsi
mov qword [rbp - 1], 7
mov word [rbp - 0x19], si
mov rdx, qword [rbp + 0x1f]
cmp rdx, 8
jb 0x140109807
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140109802
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401098ec
call fcn.140359090
sub ebx, 1
je 0x1401098b6
sub ebx, 1
je 0x1401098b1
sub ebx, 1
je 0x1401098aa
sub ebx, 1
je 0x1401098bb
cmp ebx, 1
je 0x14010968b
mov edi, esi
call fcn.140109900
test al, al
jne 0x140109899
call fcn.1401d2a70
mov rcx, rax
call fcn.1401d4a00
mov rcx, rax
call fcn.140372b58
mov rbx, rax
test rax, rax
je 0x140109899
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rax + rdx*2], di
jne 0x140109863
inc rdx
mov rcx, rbx
call fcn.140375fa0
lea rdx, str.crypto
mov rcx, rbx
call fcn.14035b7a0
test rax, rax
cmovne edi, r14d
mov rcx, rbx
call fcn.1403683a0
test edi, edi
jne 0x1401098bb
call fcn.1401d61d0
mov edi, esi
test al, al
setne dil
inc edi
jmp 0x1401098bb
mov edi, 3
jmp 0x1401098bb
mov edi, r14d
jmp 0x1401098bb
mov edi, 1
mov dword [0x140686d5c], edi
mov eax, edi
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.140359070
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.140368068
nop
call fcn.140368068
nop
int3