Function at 0x5b0e80
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
sub rsp, 0xb0
mov rbp, rsp
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x58], rbp
mov qword [rbp + 0xc0], rcx
mov qword [rbp + 0xc8], rdx
mov dword [rbp + 0xd0], r8d
mov qword [rbp + 0xd8], r9
lea rcx, [rbp + 0xc8]
call fcn.0040e7a0
nop
mov eax, dword [rbp + 0x74]
sub dword [rbp + 0xac], eax
mov byte [rbp + 0xab], 0
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b0f32
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0xac]
lea r8, [rbp + 0xac]
lea r9, [rbp + 0x74]
call fcn.0056b640
mov dword [rbp + 0x74], 0
mov eax, 0x3b8
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x74], eax
jne 0x5b0f5f
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x203
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x8e
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x70], 0
jne 0x5b0f8c
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b0f39
nop
mov dword [rbp + 0x74], 0
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
imul eax, eax, 0x67
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b0fcd
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov dword [rbp + 0xac], 0
add dword [rbp + 0xac], 0x39c
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b0f9e
nop
lea rcx, [rbp + 0x78]
call fcn.0040e5d0
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ecd0]
call fcn.0040fe40
mov eax, dword [rbp + 0x70]
sub eax, dword [rbp + 0x6c]
test eax, eax
jge 0x5b102a
mov eax, dword [rbp + 0x68]
sub eax, 0x1b5
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ece0]
call fcn.0040fe40
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b1051
mov eax, dword [rbp + 0x70]
imul eax, eax, 0xe1
mov dword [rbp + 0x70], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ed30]
call fcn.0040fe40
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ecd0]
call fcn.0040fe40
mov eax, dword [rbp + 0x74]
imul eax, eax, 0x3cc
mov dword [rbp + 0xac], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ecc8]
call fcn.0040fe40
mov dword [rbp + 0x68], 0
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ecb8]
call fcn.0040fe40
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b10cd
mov eax, dword [rbp + 0x70]
imul eax, eax, 0xe7
mov dword [rbp + 0x70], eax
lea rcx, [rbp + 0x50]
mov edx, 3
call fcn.0042c720
lea rcx, [rbp + 0x78]
mov rdx, qword [rbp + 0x50]
call fcn.0040fe40
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
lea rcx, [rbp + 0x48]
mov edx, 2
call fcn.0042c720
lea rcx, [rbp + 0x78]
mov rdx, qword [rbp + 0x48]
call fcn.0040fe40
mov eax, dword [rbp + 0x74]
add eax, 0x13
mov dword [rbp + 0xac], eax
lea rcx, [rbp + 0x78]
lea rdx, [0x005b2440]
call fcn.0040fe40
mov eax, dword [rbp + 0x68]
sub eax, 0x1b9
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ece0]
call fcn.0040fe40
mov eax, dword [rbp + 0x74]
sub dword [rbp + 0xac], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b117c
mov eax, dword [rbp + 0x6c]
imul eax, eax, 0xe9
mov dword [rbp + 0x70], eax
lea rcx, [rbp + 0x78]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 2
jge 0x5b11f1
add dword [rbp + 0x74], 1
mov eax, 0x3a0
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b11c6
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, 0x3b1
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
test eax, eax
jle 0x5b11eb
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x1fc
mov dword [rbp + 0x6c], eax
cmp dword [rbp + 0x74], 2
jl 0x5b1199
nop
mov dword [rbp + 0xac], 0
cmp dword [rbp + 0xac], 1
jge 0x5b1252
add dword [rbp + 0xac], 1
mov eax, 0x326
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
test eax, eax
jle 0x5b122c
mov eax, dword [rbp + 0x68]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x3f8
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x74], eax
jne 0x5b1249
mov eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
cmp dword [rbp + 0xac], 1
jl 0x5b1205
nop
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x24b
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b1296
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0xac]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0x74]
mov qword [rsp + 0x20], rax
call fcn.005625a0
mov dword [rbp + 0x70], 0
mov eax, dword [rbp + 0x74]
imul eax, eax, 0x3a2
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b12c6
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov eax, 0x3d7
sub eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
test eax, eax
jle 0x5b12fb
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x202
mov dword [rbp + 0x6c], eax
add dword [rbp + 0x70], 1
cmp dword [rbp + 0x70], 4
jne 0x5b129d
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b133d
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x6c]
lea r8, [rbp + 0x68]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
call fcn.0055d3d0
lea rcx, [rbp + 0x40]
mov rdx, qword [rbp + 0xc8]
call fcn.0040fc50
mov cx, 0x5c
mov rdx, qword [rbp + 0x40]
call fcn.005b0740
mov dword [rbp + 0x9c], eax
cmp dword [rbp + 0x9c], 0
jle 0x5b22c5
lea rcx, [rbp + 0x38]
mov rdx, qword [rbp + 0xc8]
mov r8d, 1
mov r9d, dword [rbp + 0x9c]
sub r9d, 1
call fcn.0040f9c0
lea rcx, [rbp + 0xa0]
mov rdx, qword [rbp + 0x38]
call fcn.0040fc50
mov dword [rbp + 0x74], 0
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x1d
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0xac]
cmp dword [rbp + 0x70], eax
jne 0x5b13ca
mov dword [rbp + 0xac], 0
mov eax, 0x3ce
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x74], eax
jne 0x5b13f0
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x239
mov dword [rbp + 0x68], eax
mov dword [rbp + 0x68], 0
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b13a6
nop
mov eax, dword [rbp + 0x6c]
sub eax, 0x1a5
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b142e
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x6c]
call fcn.00561b30
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b1472
lea rcx, [rbp + 0x74]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x68]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x74]
mov qword [rsp + 0x28], rax
call fcn.00548890
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b14aa
lea rcx, [rbp + 0x74]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x68]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xac]
mov qword [rsp + 0x28], rax
call fcn.00544370
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x74]
call fcn.005b09b0
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x6c]
call fcn.00536aa0
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
mov eax, 0x3e0
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0xac]
cmp dword [rbp + 0x70], eax
jne 0x5b1513
mov dword [rbp + 0x68], 0
mov eax, 0x3d1
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x6c]
sub ecx, dword [rbp + 0x68]
cmp eax, ecx
jle 0x5b1541
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0xac], 0x362
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b14ef
nop
add dword [rbp + 0xac], 0x32a
mov eax, dword [rbp + 0x74]
add eax, 0x312
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x1c2
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 1
jge 0x5b15e5
add dword [rbp + 0x74], 1
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x3cd
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp eax, dword [rbp + 0xac]
jle 0x5b15c8
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x3d9
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0xac]
cmp dword [rbp + 0x70], eax
jne 0x5b15df
mov eax, dword [rbp + 0x68]
sub eax, 0x27
mov dword [rbp + 0x6c], eax
cmp dword [rbp + 0x74], 1
jl 0x5b1598
nop
mov dword [rbp + 0x74], 0
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x80
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0xac]
cmp dword [rbp + 0x70], eax
jne 0x5b1622
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b15ed
nop
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 1
jge 0x5b169c
add dword [rbp + 0x74], 1
mov eax, dword [rbp + 0x68]
add eax, 0x159
cmp eax, dword [rbp + 0x70]
jge 0x5b1666
mov dword [rbp + 0x68], 0
mov eax, 0x3dd
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x74], eax
jne 0x5b168c
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x228
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0xac], 0
cmp dword [rbp + 0x74], 1
jl 0x5b164d
nop
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x376
mov eax, dword [rbp + 0x70]
sub eax, dword [rbp + 0x6c]
test eax, eax
jge 0x5b16c4
mov eax, dword [rbp + 0x68]
sub eax, 0x1e1
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0xac]
jle 0x5b16df
add dword [rbp + 0xac], 0x34b
mov eax, dword [rbp + 0x6c]
add eax, 0x91
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x70], 0
jne 0x5b1700
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b16a4
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 1
jge 0x5b176b
add dword [rbp + 0x74], 1
add dword [rbp + 0xac], 0x33c
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x70]
sub ecx, dword [rbp + 0x6c]
cmp eax, ecx
jle 0x5b1751
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x227
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0xac], 0
add dword [rbp + 0xac], 0x391
cmp dword [rbp + 0x74], 1
jl 0x5b1727
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0x70]
sub eax, dword [rbp + 0x6c]
test eax, eax
jge 0x5b1799
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0xac]
call fcn.00563310
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x373
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b17d9
mov eax, dword [rbp + 0x68]
sub eax, 0x19e
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0xac]
jle 0x5b17f6
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x8e
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x70], 0
jne 0x5b180f
mov dword [rbp + 0x68], 0
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b17b0
nop
mov eax, dword [rbp + 0x6c]
sub eax, 0x180
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x34e
mov eax, dword [rbp + 0x6c]
add eax, 0x94
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x70], 0
jne 0x5b185c
mov dword [rbp + 0x68], 0
add dword [rbp + 0xac], 0x344
mov eax, dword [rbp + 0x6c]
add eax, 0x89
mov dword [rbp + 0x70], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b1839
nop
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov rcx, qword [rbp + 0xa0]
call fcn.0040fb00
mov rcx, qword [rbp + 0xc0]
mov rdx, rax
xor r8, r8
mov r9d, 0x20019
lea rax, [rbp + 0x90]
mov qword [rsp + 0x20], rax
call sub.advapi32.dll_RegOpenKeyExW_1
mov dword [rbp + 0x80], eax
cmp dword [rbp + 0x80], 0
jne 0x5b22c5
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
test eax, eax
jle 0x5b18e4
lea rcx, [rbp + 0x68]
call fcn.00570de0
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x35c
mov eax, dword [rbp + 0x70]
sub eax, dword [rbp + 0x6c]
test eax, eax
jge 0x5b1912
mov eax, dword [rbp + 0x68]
sub eax, 0x1a7
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0xac]
jge 0x5b192d
add dword [rbp + 0xac], 0x351
mov eax, dword [rbp + 0x6c]
add eax, 0x97
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x70], 0
jne 0x5b1946
mov dword [rbp + 0x68], 0
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b18f2
nop
mov eax, dword [rbp + 0x6c]
sub eax, 0x168
mov dword [rbp + 0x70], eax
mov dword [rbp + 0x64], 0
cmp qword [rbp + 0xc8], 0
je 0x5b197e
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax - 4]
shr eax, 1
mov dword [rbp + 0x64], eax
lea rcx, [rbp + 0x30]
mov rdx, qword [rbp + 0xc8]
mov r8d, dword [rbp + 0x9c]
add r8d, 1
mov r9d, dword [rbp + 0x64]
sub r9d, dword [rbp + 0x9c]
call fcn.0040f9c0
lea rcx, [rbp + 0xa0]
mov rdx, qword [rbp + 0x30]
call fcn.0040fc50
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x74]
lea r8, [rbp + 0x6c]
call fcn.00536250
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x1d1
mov dword [rbp + 0x6c], eax
mov rcx, qword [rbp + 0xa0]
call fcn.0040fb00
mov rcx, qword [rbp + 0x90]
mov rdx, rax
xor r8, r8
lea r9, [rbp + 0x98]
mov qword [rsp + 0x20], 0
lea rax, [rbp + 0x84]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_RegQueryValueExW_1
test eax, eax
jne 0x5b1ece
mov ecx, dword [rbp + 0x84]
call fcn.00409020
mov qword [rbp + 0x88], rax
mov rcx, qword [rbp + 0xa0]
call fcn.0040fb00
mov rcx, qword [rbp + 0x90]
mov rdx, rax
xor r8, r8
lea r9, [rbp + 0x98]
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x84]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_RegQueryValueExW_1
test eax, eax
jne 0x5b1dd9
mov eax, dword [rbp + 0xd0]
cmp eax, dword [rbp + 0x98]
jne 0x5b1bd6
mov dword [rbp + 0xac], 0
cmp dword [rbp + 0xac], 1
jge 0x5b1ad5
add dword [rbp + 0xac], 1
mov eax, dword [rbp + 0x70]
add eax, 0x3aa
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x74], eax
jne 0x5b1ab6
mov eax, dword [rbp + 0x74]
mov dword [rbp + 0x68], eax
add dword [rbp + 0x74], 0x3b
cmp dword [rbp + 0x70], 0
jne 0x5b1acc
mov eax, dword [rbp + 0x74]
add eax, 0x2a6
mov dword [rbp + 0x68], eax
cmp dword [rbp + 0xac], 1
jl 0x5b1a92
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x70]
sub ecx, dword [rbp + 0x6c]
cmp eax, ecx
jle 0x5b1b19
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0xac]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0x74]
mov qword [rsp + 0x20], rax
call fcn.00567c50
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 2
jge 0x5b1b64
add dword [rbp + 0x74], 1
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
sub eax, 0x4a
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp eax, dword [rbp + 0xac]
jle 0x5b1b54
mov dword [rbp + 0x68], 0
add dword [rbp + 0xac], 0x37a
cmp dword [rbp + 0x74], 2
jl 0x5b1b26
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov rax, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0x88]
mov qword [rax], rcx
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0x84]
mov dword [rax], ecx
lea rcx, [rbp + 0x74]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x68]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
call fcn.0053c730
mov eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x68]
sub eax, 0x1ac
mov dword [rbp + 0x6c], eax
mov byte [rbp + 0xab], 1
jmp 0x5b1ece
mov rcx, qword [rbp + 0x88]
call fcn.00409050
mov dword [rbp + 0x74], 0
mov eax, 0x3ce
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b1c12
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x84
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b1c44
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b1be9
nop
mov dword [rbp + 0x74], 0
mov eax, 0x318
sub eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b1c87
mov eax, dword [rbp + 0x68]
sub eax, 0x1c3
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp eax, dword [rbp + 0xac]
jle 0x5b1ca1
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x52
mov dword [rbp + 0xac], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b1c56
nop
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x362
mov eax, dword [rbp + 0x6c]
add eax, 0x88
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b1cfb
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov dword [rbp + 0xac], 0
mov eax, dword [rbp + 0x70]
imul eax, eax, 0x39c
mov dword [rbp + 0xac], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 4
jne 0x5b1ccb
nop
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
mov dword [rbp + 0xac], 0
add dword [rbp + 0xac], 0x391
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b1d69
mov eax, dword [rbp + 0x6c]
add eax, 0x17c
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x70]
add eax, dword [rbp + 0x68]
cmp eax, dword [rbp + 0xac]
jle 0x5b1d7e
mov dword [rbp + 0x68], 0
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b1d36
nop
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 1
jge 0x5b1dd3
add dword [rbp + 0x74], 1
add dword [rbp + 0xac], 0x34f
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
test eax, eax
jle 0x5b1dba
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x1da
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0x68], 0
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
cmp dword [rbp + 0x74], 1
jl 0x5b1d96
nop
jmp 0x5b1ece
mov rcx, qword [rbp + 0x88]
call fcn.00409050
mov eax, dword [rbp + 0x68]
sub eax, 0x197
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
sub eax, 0x184
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x170
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x70]
add eax, eax
add eax, eax
lea rax, [rax + rax*8]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b1e73
mov eax, dword [rbp + 0xac]
imul eax, eax, 0x24f
mov dword [rbp + 0x68], eax
add dword [rbp + 0xac], 0x2f4
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b1e3c
nop
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b1ece
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x6c]
lea r8, [rbp + 0x68]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
call fcn.0055e470
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 2
jge 0x5b1f2b
add dword [rbp + 0x74], 1
add dword [rbp + 0xac], 0x35e
mov eax, dword [rbp + 0x74]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b1f0c
mov eax, dword [rbp + 0x68]
sub eax, 0x1e9
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0xac], 0x353
cmp dword [rbp + 0x74], 2
jl 0x5b1ee2
nop
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x21a
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x70]
cmp eax, ecx
jge 0x5b1f6f
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x6c]
lea r8, [rbp + 0x68]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
call fcn.0055e470
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x74]
lea r8, [rbp + 0x70]
call fcn.00536390
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 2
jge 0x5b1fd5
add dword [rbp + 0x74], 1
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
sub eax, 0x5a
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0xac]
jle 0x5b1fc6
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
imul eax, eax, 0x4b
mov dword [rbp + 0x70], eax
cmp dword [rbp + 0x74], 2
jl 0x5b1f90
nop
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x81
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b201f
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
add dword [rbp + 0xac], 0x330
mov eax, dword [rbp + 0x6c]
add eax, 0x76
mov dword [rbp + 0x70], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b1fed
nop
mov eax, dword [rbp + 0xac]
imul eax, dword [rbp + 0x74]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0x74], 0
mov dword [rbp + 0xac], 0
add dword [rbp + 0xac], 0x38a
mov eax, dword [rbp + 0x70]
sub eax, dword [rbp + 0x6c]
test eax, eax
jge 0x5b207e
mov eax, dword [rbp + 0x68]
sub eax, 0x1b5
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp eax, dword [rbp + 0xac]
jle 0x5b2098
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b2054
nop
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x226
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
sub eax, 0x169
mov dword [rbp + 0x70], eax
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x74]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x6c]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xac]
mov qword [rsp + 0x28], rax
call fcn.0053a570
call fcn.005a83a0
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
add dword [rbp + 0xac], 0x344
mov eax, dword [rbp + 0x6c]
add eax, 0x8a
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0xac]
cmp dword [rbp + 0x70], eax
jne 0x5b2129
mov dword [rbp + 0x68], 0
mov eax, 0x3da
sub eax, dword [rbp + 0x70]
mov dword [rbp + 0xac], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 3
jne 0x5b20fe
nop
mov dword [rbp + 0x68], 0
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b218a
lea rcx, [rbp + 0x70]
lea rdx, [rbp + 0x6c]
lea r8, [rbp + 0x68]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0xac]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x74]
mov qword [rsp + 0x28], rax
call fcn.00563e10
mov rcx, qword [rbp + 0x90]
call sub.advapi32.dll_RegCloseKey_1
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x74]
sub eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x70]
sub ecx, dword [rbp + 0x6c]
cmp eax, ecx
jle 0x5b21df
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0xac]
lea r9, [rbp + 0xac]
lea rax, [rbp + 0x74]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x28], rax
call fcn.00569860
mov eax, dword [rbp + 0x68]
sub eax, 0x1bd
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0x74]
lea r8, [rbp + 0x70]
lea r9, [rbp + 0x70]
lea rax, [rbp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.005a7480
mov eax, dword [rbp + 0x68]
imul eax, eax, 0x22a
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0xac]
lea r8, [rbp + 0x70]
lea r9, [rbp + 0x6c]
lea rax, [rbp + 0x6c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0xac]
mov qword [rsp + 0x28], rax
call fcn.005b0550
mov dword [rbp + 0x68], 0
mov dword [rbp + 0x74], 0
cmp dword [rbp + 0x74], 2
jge 0x5b22a4
add dword [rbp + 0x74], 1
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0x6c]
add eax, 0x86
mov dword [rbp + 0x70], eax
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b2292
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0xac]
mov dword [rbp + 0x68], eax
mov eax, dword [rbp + 0xac]
mov dword [rbp + 0xac], eax
cmp dword [rbp + 0x74], 2
jl 0x5b225c
nop
mov eax, dword [rbp + 0x68]
sub eax, 0x1dd
mov dword [rbp + 0x6c], eax
jmp 0x5b22c5
mov eax, dword [rbp + 0xac]
cmp eax, dword [rbp + 0x74]
jle 0x5b22e5
lea rcx, [rbp + 0x74]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x68]
call fcn.00543a90
mov dword [rbp + 0x68], 0
mov dword [rbp + 0xac], 0
cmp dword [rbp + 0xac], 1
jge 0x5b2350
add dword [rbp + 0xac], 1
add dword [rbp + 0x74], 0x2f5
mov eax, dword [rbp + 0xac]
add eax, dword [rbp + 0x74]
mov ecx, dword [rbp + 0x70]
add ecx, dword [rbp + 0x6c]
cmp eax, ecx
jge 0x5b2326
mov eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x70]
add eax, eax
add eax, eax
add eax, eax
lea rax, [rax + rax*4]
mov dword [rbp + 0x74], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
cmp dword [rbp + 0x70], eax
jne 0x5b2347
mov eax, dword [rbp + 0x68]
mov dword [rbp + 0x68], eax
cmp dword [rbp + 0xac], 1
jl 0x5b22ff
nop
mov eax, dword [rbp + 0x68]
sub eax, 0x1ba
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0xac]
lea rdx, [rbp + 0xac]
call fcn.0059a0d0
nop
lea rcx, [rbp + 0x30]
mov edx, 2
call fcn.0040e710
lea rcx, [rbp + 0x40]
mov edx, 3
call fcn.0040e6b0
lea rcx, [rbp + 0x78]
call fcn.0040e5d0
lea rcx, [rbp + 0xa0]
call fcn.0040e5d0
lea rcx, [rbp + 0xc8]
call fcn.0040e670
movzx rax, byte [rbp + 0xab]
lea rsp, [rbp + 0xb0]
pop rbp
ret