Function at 0x18008e140
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x290]
sub rsp, 0x390
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x3e0], rbx
mov rax, qword [0x1801b8080]
xor rax, rsp
mov qword [rbp + 0x280], rax
mov rsi, r9
mov rdi, rdx
mov r15, rcx
mov rcx, qword [rcx]
test rcx, rcx
je 0x18008e54d
lea rdx, str.RegOpenKeyExW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
lea rdx, str.RegEnumKeyExW
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, rax
lea rdx, [0x180168d88]
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
test rbx, rbx
je 0x18008e54d
test r12, r12
je 0x18008e54d
test rax, rax
je 0x18008e54d
mov dword [rbp + 0x30], 0x6f0053
mov dword [rbp + 0x34], 0x740066
mov dword [rbp + 0x38], 0x610077
mov dword [rbp + 0x3c], 0x650072
mov dword [rbp + 0x40], 0x4d005c
mov dword [rbp + 0x44], 0x630069
mov dword [rbp + 0x48], 0x6f0072
mov dword [rbp + 0x4c], 0x6f0073
mov dword [rbp + 0x50], 0x740066
mov dword [rbp + 0x54], 0x43005c
mov dword [rbp + 0x58], 0x460054
mov dword [rbp + 0x5c], 0x54005c
mov dword [rbp + 0x60], 0x500049
xor r14d, r14d
mov word [rbp + 0x64], r14w
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
movdqa xmm1, xmmword [0x18016e090]
movdqu xmmword [rbp - 0x70], xmm1
mov word [rbp - 0x80], r14w
mov r9, rdi
cmp qword [rdi + 0x18], 8
jb 0x18008e26d
mov r9, qword [rdi]
mov dword [rsp + 0x20], 0x804
lea r8, [rbp + 0x30]
lea rdx, str._s_sLanguageProfile0x_08x
lea rcx, [rbp - 0x80]
call fcn.18009d690
mov qword [rsp + 0x70], r14
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdx, qword [rbp - 0x80]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call rbx
xor ebx, ebx
test eax, eax
jne 0x18008e500
mov r14d, ebx
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x70]
call fcn.18010be50
mov dword [rsp + 0x78], 0x104
xor edx, edx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x78]
lea r8, [rbp + 0x70]
mov rcx, qword [rsp + 0x70]
call r12
test eax, eax
jne 0x18008e4f7
lea rcx, [rbp - 0x60]
call fcn.180060620
nop
mov qword [rbp], rbx
mov qword [rbp + 8], rbx
mov qword [rbp], rbx
mov qword [rbp + 8], 7
mov word [rbp - 0x10], bx
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], rbx
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], bx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], bx
lea rax, [rbp + 0x70]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x18008e370
lea rdx, [rbp + 0x70]
lea rcx, [rsp + 0x40]
call fcn.180004930
nop
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x804
mov rcx, r15
call fcn.18008e590
movzx ebx, al
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x18008e3ed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008e3e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008e57d
call fcn.1800ecd20
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], ax
test bl, bl
je 0x18008e4c5
mov dword [rbp - 0x18], 0x804
mov dword [rbp - 0x60], eax
lea rax, [rbp - 0x10]
cmp rax, rdi
je 0x18008e437
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x18008e42a
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
lea rcx, [rbp - 0x10]
call fcn.180004930
lea rax, [rbp + 0x70]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x18008e442
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0x10]
call fcn.180004930
mov rbx, qword [rsi + 8]
cmp qword [rsi + 0x10], rbx
je 0x18008e4b6
mov qword [rsp + 0x68], rbx
mov eax, dword [rbp - 0x60]
mov dword [rbx], eax
lea rcx, [rbx + 8]
lea rdx, [rbp - 0x58]
call fcn.18000cae0
nop
lea rcx, [rbx + 0x28]
lea rdx, [rbp - 0x38]
call fcn.18000cae0
nop
mov eax, dword [rbp - 0x18]
mov dword [rbx + 0x48], eax
lea rcx, [rbx + 0x50]
lea rdx, [rbp - 0x10]
call fcn.18000cae0
nop
lea rcx, [rbx + 0x70]
lea rdx, [rbp + 0x10]
call fcn.18000cae0
nop
add qword [rsi + 8], 0x90
jmp 0x18008e4c5
lea r8, [rbp - 0x60]
mov rdx, rbx
mov rcx, rsi
call fcn.1800903e0
inc r14d
mov dword [rsp + 0x78], 0x104
lea rcx, [rbp + 0x10]
call fcn.1800048a0
nop
lea rcx, [rbp - 0x10]
call fcn.1800048a0
nop
lea rcx, [rbp - 0x60]
call fcn.180060660
xor ebx, ebx
mov edx, r14d
jmp 0x18008e2e0
mov rcx, qword [rsp + 0x70]
call r13
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x18008e53c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008e537
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008e577
call fcn.1800ecd20
movdqa xmm0, xmmword [0x18016e090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], bx
mov rcx, qword [rbp + 0x280]
xor rcx, rsp
call fcn.1800eccc0
mov rbx, qword [rsp + 0x3e0]
add rsp, 0x390
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18010e7e4
nop
call fcn.18010e7e4
nop
int3