Function at 0x140096680
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x228]
sub rsp, 0x328
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov rax, qword [0x1402be168]
xor rax, rsp
mov qword [rbp + 0x210], rax
mov r15, r9
mov rbx, r8
mov r13d, edx
mov r14, rcx
mov rdi, qword [rbp + 0x290]
mov rcx, r8
call fcn.140096c30
test al, al
je 0x140096bdf
mov rcx, qword [r14]
test rcx, rcx
je 0x140096bdf
lea rdx, [0x14023e600]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, rax
lea rdx, str.RegQueryValueExW
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
lea rdx, [0x14023e628]
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
test r12, r12
je 0x140096bdf
test rsi, rsi
je 0x140096bdf
test rax, rax
je 0x140096bdf
mov dword [rbp - 0x38], 0x6f0053
mov dword [rbp - 0x34], 0x740066
mov dword [rbp - 0x30], 0x610077
mov dword [rbp - 0x2c], 0x650072
mov dword [rbp - 0x28], 0x4d005c
mov dword [rbp - 0x24], 0x630069
mov dword [rbp - 0x20], 0x6f0072
mov dword [rbp - 0x1c], 0x6f0073
mov dword [rbp - 0x18], 0x740066
mov dword [rbp - 0x14], 0x43005c
mov dword [rbp - 0x10], 0x460054
mov dword [rbp - 0xc], 0x54005c
mov dword [rbp - 8], 0x500049
xor eax, eax
mov word [rbp - 4], ax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
movdqa xmm1, xmmword [0x140249480]
movdqu xmmword [rbp - 0x48], xmm1
mov word [rbp - 0x58], ax
cmp qword [r15 + 0x18], 8
jb 0x1400967ba
mov r15, qword [r15]
cmp qword [rbx + 0x18], 8
jb 0x1400967c4
mov rbx, qword [rbx]
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r13d
mov r9, rbx
lea r8, [rbp - 0x38]
lea rdx, str._s_sLanguageProfile0x_08x_s
lea rcx, [rbp - 0x58]
call fcn.1400b2760
xor r13d, r13d
mov qword [rsp + 0x78], r13
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rdx, qword [rbp - 0x58]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call r12
test eax, eax
jne 0x14009686b
mov dword [rbp - 0x7c], r13d
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp]
call fcn.140189b30
mov dword [rbp - 0x80], 0x208
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.IconFile
mov rcx, qword [rsp + 0x78]
call rsi
test eax, eax
je 0x1400968c7
mov rcx, qword [rsp + 0x78]
call r14
xor bl, bl
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x1400968ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400968a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140096c0a
call fcn.140183104
movdqa xmm0, xmmword [0x140249480]
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x58], r13w
movzx eax, bl
jmp 0x140096be1
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
movdqa xmm1, xmmword [0x140249480]
movdqu xmmword [rbp - 0x68], xmm1
mov word [rbp - 0x78], r13w
movdqu xmmword [rsp + 0x40], xmm0
movdqu xmmword [rsp + 0x40], xmm1
mov word [rsp + 0x30], r13w
lea rax, [rbp]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x140096901
lea rdx, [rbp]
lea rcx, [rsp + 0x30]
call fcn.140006b90
nop
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x30]
call fcn.140095920
movzx r15d, al
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140096972
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009696d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140096c10
call fcn.140183104
movdqa xmm0, xmmword [0x140249480]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], r13w
test r15b, r15b
je 0x1400969af
lea rcx, [rdi + 8]
lea rax, [rbp - 0x78]
cmp rcx, rax
je 0x1400969af
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rdx, qword [rbp - 0x78]
mov r8, qword [rbp - 0x68]
call fcn.140006b90
mov dword [rbp - 0x80], 0x208
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.Display_Description
mov rcx, qword [rsp + 0x78]
call rsi
test eax, eax
jne 0x140096aed
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x140249480]
movdqu xmmword [rsp + 0x40], xmm1
mov word [rsp + 0x30], r13w
lea rax, [rbp]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140096a06
mov r8, rbx
lea rdx, [rbp]
lea rcx, [rsp + 0x30]
call fcn.140006b90
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400955d0
nop
lea rcx, [rdi + 0x28]
mov rdx, rax
call fcn.140006780
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x140096a81
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140096a7c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140096c16
call fcn.140183104
movdqa xmm0, xmmword [0x140249480]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], r13w
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140096ad7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140096ad2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140096c1c
call fcn.140183104
movdqa xmm0, xmmword [0x140249480]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], r13w
jmp 0x140096b3a
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.Description
mov rcx, qword [rsp + 0x78]
call rsi
lea rax, [rbp]
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140096b20
lea rcx, [rdi + 0x28]
mov r8, rbx
lea rdx, [rbp]
call fcn.140006b90
mov dword [rbp - 0x80], 0x208
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.SubstituteLayout
mov rcx, qword [rsp + 0x78]
call rsi
test eax, eax
jne 0x140096b7f
xor edx, edx
lea r8d, [rax + 0x10]
lea rcx, [rbp]
call fcn.1401b2c80
mov dword [rdi], eax
jmp 0x140096b82
mov dword [rdi], r13d
mov rcx, qword [rsp + 0x78]
call r14
mov bl, 1
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140096bc8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140096bc3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140096c04
call fcn.140183104
movdqa xmm0, xmmword [0x140249480]
movdqu xmmword [rbp - 0x68], xmm0
mov word [rbp - 0x78], r13w
jmp 0x14009686d
xor al, al
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.1401836b0
add rsp, 0x328
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140195eec
nop
call fcn.140195eec
nop
call fcn.140195eec
nop
call fcn.140195eec
nop
call fcn.140195eec
int3