Function at 0x14003d890
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x800
mov rax, qword [0x14030b918]
xor rax, rsp
mov qword [rsp + 0x7f0], rax
xor r13d, r13d
mov qword [r11 - 0x570], r13
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x2b8], xmm0
mov word [r11 - 0x570], r13w
mov byte [rsp + 0x2a0], r13b
lea rdx, str.srl::Applications::Detect
lea rcx, [r11 - 0x570]
call fcn.140009b0c
nop
call fcn.140020060
cmp dword [rax + 8], 4
jl 0x14003d91a
lea rcx, [rsp + 0x2a0]
call fcn.140015b20
nop
lea rsi, vtable.srl::Exists.0
mov qword [rsp + 0x118], rsi
mov byte [rsp + 0x120], 0
mov edx, 0x116f3
lea rcx, [rsp + 0x458]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x118]
mov rdx, rax
call fcn.14004de80
nop
lea rdi, vtable.srl::GroupID.0
mov qword [rsp + 0x458], rdi
mov rdx, qword [rsp + 0x478]
cmp rdx, 8
jb 0x14003d9b0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003d9aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f039
call fcn.14000410c
nop
mov qword [rsp + 0x128], rsi
mov byte [rsp + 0x130], 0
mov edx, 0x116f5
lea rcx, [rsp + 0x488]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x128]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x488], rdi
mov rdx, qword [rsp + 0x4a8]
cmp rdx, 8
jb 0x14003da38
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003da32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f03f
call fcn.14000410c
nop
mov qword [rsp + 0x138], rsi
mov byte [rsp + 0x140], 0
mov edx, 0x116f7
lea rcx, [rsp + 0x4b8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x138]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x4b8], rdi
mov rdx, qword [rsp + 0x4d8]
cmp rdx, 8
jb 0x14003dac0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x4c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003daba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f045
call fcn.14000410c
nop
mov qword [rsp + 0x148], rsi
mov byte [rsp + 0x150], 0
mov edx, 0x116f9
lea rcx, [rsp + 0x4e8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x148]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x4e8], rdi
mov rdx, qword [rsp + 0x508]
cmp rdx, 8
jb 0x14003db48
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x4f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003db42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f04b
call fcn.14000410c
nop
mov qword [rsp + 0x158], rsi
mov byte [rsp + 0x160], 0
mov edx, 0x116fb
lea rcx, [rsp + 0x518]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x158]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x518], rdi
mov rdx, qword [rsp + 0x538]
cmp rdx, 8
jb 0x14003dbd0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x520]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003dbca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f051
call fcn.14000410c
nop
mov qword [rsp + 0x168], rsi
mov byte [rsp + 0x170], 0
mov edx, 0x11702
lea rcx, [rsp + 0x548]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x168]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x548], rdi
mov rdx, qword [rsp + 0x568]
cmp rdx, 8
jb 0x14003dc58
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x550]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003dc52
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f057
call fcn.14000410c
nop
mov qword [rsp + 0x100], r13
mov dword [rsp + 0x108], r13d
mov qword [rsp + 0x110], r13
mov qword [rsp + 0x58], r13
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SOFTWAREMacromediaFlashPlayer
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14003dd1a
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x100], rcx
mov dword [rsp + 0x108], r13d
mov dword [rsp + 0x48], 0x28
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x6f8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
xor r8d, r8d
lea rdx, str.CurrentVersion
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14003dd1a
mov eax, dword [rsp + 0x50]
dec eax
cmp eax, 1
ja 0x14003dd1a
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x14003ddca
test al, 1
jne 0x14003dd1a
shr rax, 1
cmp word [rsp + rax*2 + 0x6f6], 0
je 0x14003ddd3
mov r15, 0xffffffffffffffff
lea r12, vtable.srl::Version.0
mov qword [rsp + 0x1e0], r13
mov qword [rsp + 0x1f0], r13
mov qword [rsp + 0x1f8], 7
mov word [rsp + 0x1e0], r13w
lea rdx, str.wmplayer.exe
lea rcx, [rsp + 0x2c8]
call fcn.140009744
nop
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x2c8]
call fcn.14003cdf0
movzx ebx, al
mov rdx, qword [rsp + 0x2e0]
cmp rdx, 8
jb 0x14003df86
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003df81
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f05d
jmp 0x14003df81
mov word [rsp + 0x6f8], r13w
mov qword [rsp + 0x178], rsi
mov byte [rsp + 0x180], 1
mov edx, 0x116f1
lea rcx, [rsp + 0x578]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x178]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x578], rdi
mov rdx, qword [rsp + 0x598]
cmp rdx, 8
jb 0x14003de5b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x580]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003de55
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f063
call fcn.14000410c
nop
lea r12, vtable.srl::Version.0
mov qword [rsp + 0x78], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f069
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x6f8]
mov r15, 0xffffffffffffffff
mov rax, r15
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14003dea0
mov r8d, eax
lea rdx, [rsp + 0x6f8]
lea rcx, [rsp + 0x80]
call fcn.140002aa8
nop
mov edx, 0x116f2
lea rcx, [rsp + 0x368]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x78]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x368], rdi
mov rdx, qword [rsp + 0x388]
cmp rdx, 8
jb 0x14003df37
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x370]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003df32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f074
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x380], xmm0
mov word [rsp + 0x370], r13w
mov qword [rsp + 0x78], r12
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003dd28
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14003dd28
call fcn.14000410c
test bl, bl
je 0x14003e1cf
mov qword [rsp + 0x220], r13
mov qword [rsp + 0x230], r13
mov qword [rsp + 0x238], 7
mov word [rsp + 0x220], r13w
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x1e0]
call fcn.14003cc30
test al, al
je 0x14003e187
mov qword [rsp + 0x188], rsi
mov byte [rsp + 0x190], 1
mov edx, 0x116f3
lea rcx, [rsp + 0x5a8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x188]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x5a8], rdi
mov rdx, qword [rsp + 0x5c8]
cmp rdx, 8
jb 0x14003e058
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x5b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e052
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f07a
call fcn.14000410c
nop
mov qword [rsp + 0x88], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f080
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x90], rax
lea rdx, [rsp + 0x220]
cmp qword [rsp + 0x238], 8
jb 0x14003e0a8
mov rdx, qword [rsp + 0x220]
test rdx, rdx
jne 0x14003e0a8
mov eax, r13d
jmp 0x14003e0ba
mov rax, r15
nop dword [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003e0b0
mov r8d, eax
lea rcx, [rsp + 0x90]
call fcn.140002aa8
nop
mov edx, 0x11611
lea rcx, [rsp + 0x398]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x88]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x398], rdi
mov rdx, qword [rsp + 0x3b8]
cmp rdx, 8
jb 0x14003e142
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e13d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f08b
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x3b0], xmm0
mov word [rsp + 0x3a0], r13w
mov qword [rsp + 0x88], r12
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003e187
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x238]
cmp rdx, 8
jb 0x14003e1cf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e1ca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0e8
call fcn.14000410c
mov qword [rsp + 0x1f0], r13
lea rax, [rsp + 0x1e0]
cmp qword [rsp + 0x1f8], 8
cmovae rax, qword [rsp + 0x1e0]
mov word [rax], r13w
lea rdx, str.AcroRd32.exe
lea rcx, [rsp + 0x2e8]
call fcn.140009744
nop
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x2e8]
call fcn.14003cdf0
movzx ebx, al
mov rdx, qword [rsp + 0x300]
cmp rdx, 8
jb 0x14003e26a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e265
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f091
call fcn.14000410c
test bl, bl
je 0x14003e4af
mov qword [rsp + 0x240], r13
mov qword [rsp + 0x250], r13
mov qword [rsp + 0x258], 7
mov word [rsp + 0x240], r13w
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x1e0]
call fcn.14003cc30
test al, al
je 0x14003e467
mov qword [rsp + 0x198], rsi
mov byte [rsp + 0x1a0], 1
mov edx, 0x116f5
lea rcx, [rsp + 0x5d8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x198]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x5d8], rdi
mov rdx, qword [rsp + 0x5f8]
cmp rdx, 8
jb 0x14003e33c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x5e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e336
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f097
call fcn.14000410c
nop
mov qword [rsp + 0x98], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f09d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xa0], rax
lea rdx, [rsp + 0x240]
cmp qword [rsp + 0x258], 8
jb 0x14003e38c
mov rdx, qword [rsp + 0x240]
test rdx, rdx
jne 0x14003e38c
mov eax, r13d
jmp 0x14003e39a
mov rax, r15
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003e390
mov r8d, eax
lea rcx, [rsp + 0xa0]
call fcn.140002aa8
nop
mov edx, 0x116f6
lea rcx, [rsp + 0x3c8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x98]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x3c8], rdi
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 8
jb 0x14003e422
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e41d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0a8
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x3e0], xmm0
mov word [rsp + 0x3d0], r13w
mov qword [rsp + 0x98], r12
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003e467
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x258]
cmp rdx, 8
jb 0x14003e4af
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e4aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0e8
call fcn.14000410c
mov qword [rsp + 0x1f0], r13
lea rax, [rsp + 0x1e0]
cmp qword [rsp + 0x1f8], 8
cmovae rax, qword [rsp + 0x1e0]
mov word [rax], r13w
lea rdx, str.QuickTimePlayer.exe
lea rcx, [rsp + 0x308]
call fcn.140009744
nop
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x308]
call fcn.14003cdf0
movzx ebx, al
mov rdx, qword [rsp + 0x320]
cmp rdx, 8
jb 0x14003e54a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x308]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e545
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0ae
call fcn.14000410c
test bl, bl
je 0x14003e78f
mov qword [rsp + 0x260], r13
mov qword [rsp + 0x270], r13
mov qword [rsp + 0x278], 7
mov word [rsp + 0x260], r13w
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0x1e0]
call fcn.14003cc30
test al, al
je 0x14003e747
mov qword [rsp + 0x1a8], rsi
mov byte [rsp + 0x1b0], 1
mov edx, 0x116f7
lea rcx, [rsp + 0x608]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x1a8]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x608], rdi
mov rdx, qword [rsp + 0x628]
cmp rdx, 8
jb 0x14003e61c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x610]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e616
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0b4
call fcn.14000410c
nop
mov qword [rsp + 0xa8], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f0ba
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xb0], rax
lea rdx, [rsp + 0x260]
cmp qword [rsp + 0x278], 8
jb 0x14003e66c
mov rdx, qword [rsp + 0x260]
test rdx, rdx
jne 0x14003e66c
mov eax, r13d
jmp 0x14003e67a
mov rax, r15
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003e670
mov r8d, eax
lea rcx, [rsp + 0xb0]
call fcn.140002aa8
nop
mov edx, 0x116f8
lea rcx, [rsp + 0x3f8]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0xa8]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x3f8], rdi
mov rdx, qword [rsp + 0x418]
cmp rdx, 8
jb 0x14003e702
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e6fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0c5
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x410], xmm0
mov word [rsp + 0x400], r13w
mov qword [rsp + 0xa8], r12
mov rdx, qword [rsp + 0xb0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003e747
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x278]
cmp rdx, 8
jb 0x14003e78f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e78a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0e8
call fcn.14000410c
mov qword [rsp + 0x1f0], r13
lea rax, [rsp + 0x1e0]
cmp qword [rsp + 0x1f8], 8
cmovae rax, qword [rsp + 0x1e0]
mov word [rax], r13w
lea rdx, str.Winword.exe
lea rcx, [rsp + 0x328]
call fcn.140009744
nop
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x328]
call fcn.14003cdf0
movzx ebx, al
mov rdx, qword [rsp + 0x340]
cmp rdx, 8
jb 0x14003e82a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x328]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e825
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0cb
call fcn.14000410c
test bl, bl
je 0x14003ea6f
mov qword [rsp + 0x280], r13
mov qword [rsp + 0x290], r13
mov qword [rsp + 0x298], 7
mov word [rsp + 0x280], r13w
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1e0]
call fcn.14003cc30
test al, al
je 0x14003ea27
mov qword [rsp + 0x1b8], rsi
mov byte [rsp + 0x1c0], 1
mov edx, 0x116f9
lea rcx, [rsp + 0x638]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x1b8]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x638], rdi
mov rdx, qword [rsp + 0x658]
cmp rdx, 8
jb 0x14003e8fc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x640]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e8f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0d1
call fcn.14000410c
nop
mov qword [rsp + 0xb8], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f0d7
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xc0], rax
lea rdx, [rsp + 0x280]
cmp qword [rsp + 0x298], 8
jb 0x14003e94c
mov rdx, qword [rsp + 0x280]
test rdx, rdx
jne 0x14003e94c
mov eax, r13d
jmp 0x14003e95a
mov rax, r15
nop
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003e950
mov r8d, eax
lea rcx, [rsp + 0xc0]
call fcn.140002aa8
nop
mov edx, 0x116fa
lea rcx, [rsp + 0x428]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0xb8]
mov rdx, rax
call fcn.14004de80
nop
mov qword [rsp + 0x428], rdi
mov rdx, qword [rsp + 0x448]
cmp rdx, 8
jb 0x14003e9e2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e9dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0e2
call fcn.14000410c
movdqa xmm0, xmmword [0x1402c5610]
movdqu xmmword [rsp + 0x440], xmm0
mov word [rsp + 0x430], r13w
mov qword [rsp + 0xb8], r12
mov rdx, qword [rsp + 0xc0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003ea27
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x298]
cmp rdx, 8
jb 0x14003ea6f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x280]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ea6a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0e8
call fcn.14000410c
mov qword [rsp + 0x200], r13
mov qword [rsp + 0x210], r13
mov qword [rsp + 0x218], 7
mov word [rsp + 0x200], r13w
lea rdx, str.3F0FC462_CDC1_4CD9_8E84_84D89B914EAA
lea rcx, [rsp + 0x348]
call fcn.140009744
nop
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x348]
call fcn.14003d1b0
movzx ebx, al
mov rdx, qword [rsp + 0x360]
cmp rdx, 8
jb 0x14003eb09
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x348]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003eb04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f0ee
call fcn.14000410c
test bl, bl
je 0x14003ec2a
mov qword [rsp + 0x1c8], rsi
mov byte [rsp + 0x1d0], 1
mov edx, 0x11702
lea rcx, [rsp + 0x668]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0x1c8]
mov rdx, rax
call fcn.14004de80
nop
lea rcx, [rsp + 0x668]
call fcn.1400219f0
nop
mov qword [rsp + 0xc8], r12
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f0f4
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xd0], rax
lea rdx, [rsp + 0x200]
cmp qword [rsp + 0x218], 8
jb 0x14003eba6
mov rdx, qword [rsp + 0x200]
test rdx, rdx
jne 0x14003eba6
mov eax, r13d
jmp 0x14003ebba
mov rax, r15
nop dword [rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003ebb0
mov r8d, eax
lea rcx, [rsp + 0xd0]
call fcn.140002aa8
nop
mov edx, 0x11703
lea rcx, [rsp + 0x698]
call fcn.140021860
nop
xor r9d, r9d
lea r8, [rsp + 0xc8]
mov rdx, rax
call fcn.14004de80
nop
lea rcx, [rsp + 0x698]
call fcn.1400219f0
nop
mov qword [rsp + 0xc8], r12
mov rdx, qword [rsp + 0xd0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003ec2a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdi, r13
mov qword [rsp + 0xd8], r13
mov dword [rsp + 0xe0], r13d
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0x60], r13
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SOFTWAREJavaSoftJava_Runtime_Environment
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14003ec91
mov eax, r13d
mov rdi, qword [rsp + 0x60]
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xe0], r13d
test eax, eax
je 0x14003ecf6
mov qword [rsp + 0x68], r13
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0x20219
xor r8d, r8d
lea rdx, str.SOFTWAREJavaSoftJava_Runtime_Environment
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14003ef0b
mov eax, r13d
test rdi, rdi
je 0x14003ecd6
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xe0], 0x200
test eax, eax
jne 0x14003ef0b
call fcn.140010210
mov rcx, rax
test rax, rax
je 0x14003f0ff
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rdx, [0x1402b9b30]
cmp rdx, 0x10000
jae 0x14003ed35
movzx edx, dx
lea rcx, [rsp + 0x40]
call fcn.140010ac0
jmp 0x14003ed58
mov rax, r15
nop dword [rax + rax]
inc rax
cmp word [rdx + rax*2], 0
jne 0x14003ed40
mov r8d, eax
lea rcx, [rsp + 0x40]
call fcn.140002aa8
nop
xor r14b, r14b
mov esi, r13d
mov dword [rsp + 0x4c], 0x64
test r14b, r14b
jne 0x14003ee06
mov dword [rsp + 0x4c], 0x64
lea rax, [rsp + 0x1d8]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x4c]
lea r8, [rsp + 0x720]
mov edx, esi
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
cmp eax, 0x103
jne 0x14003edb7
mov r14b, 1
jmp 0x14003ed66
mov rax, qword [rsp + 0x40]
mov ebx, dword [rax - 0x10]
lea rcx, [rsp + 0x720]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, ebx
jle 0x14003edff
lea rcx, [rsp + 0x720]
mov rax, r15
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14003ede0
mov r8d, eax
lea rdx, [rsp + 0x720]
lea rcx, [rsp + 0x40]
call fcn.140002aa8
inc esi
jmp 0x14003ed66
mov rax, qword [rsp + 0x40]
cmp dword [rax - 0x10], 0
jle 0x14003eee5
mov edx, 0x5f
lea rcx, [rsp + 0x40]
call fcn.14003f120
mov rax, qword [rsp + 0x40]
mov r9d, dword [rax - 0x10]
add r9d, 0xfffffffe
mov r8d, 2
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x40]
call fcn.1400128c0
nop
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.14006a100
mov rbx, rax
mov edx, 0x1171e
lea rcx, [rsp + 0x6c8]
call fcn.140021860
nop
xor r9d, r9d
mov r8, rbx
mov rdx, rax
call fcn.14004de80
nop
lea rcx, [rsp + 0x6c8]
call fcn.1400219f0
nop
mov qword [rsp + 0xf0], r12
mov rdx, qword [rsp + 0xf8]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003eeb6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rax, vtable.srl::Value.0
mov qword [rsp + 0xf0], rax
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003eee5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x14003ef03
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdi, qword [rsp + 0xd8]
test rdi, rdi
je 0x14003ef1a
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov rdx, qword [rsp + 0x218]
cmp rdx, 8
jb 0x14003ef62
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x200]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ef5d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f10a
call fcn.14000410c
mov qword [rsp + 0x210], r13
mov qword [rsp + 0x218], 7
mov word [rsp + 0x200], r13w
mov rdx, qword [rsp + 0x1f8]
cmp rdx, 8
jb 0x14003efc7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003efc2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003f110
call fcn.14000410c
mov qword [rsp + 0x1f0], r13
mov qword [rsp + 0x1f8], 7
mov word [rsp + 0x1e0], r13w
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x14003eff8
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rcx, [rsp + 0x2a0]
call fcn.140017440
mov al, 1
mov rcx, qword [rsp + 0x7f0]
xor rcx, rsp
call fcn.140211970
lea r11, [rsp + 0x800]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
int3
mov ecx, 0x80004005
call fcn.140002d2c
nop
mov ecx, 0x80004005
call fcn.140002d2c
nop
call fcn.14021a9ac
nop
call fcn.14021a9ac
int3