Function at 0x140025d70
Capabilities:
Get session user name
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x12c8]
mov eax, 0x13c8
call fcn.14003dfd0
sub rsp, rax
mov qword [rbp + 0x40], 0xfffffffffffffffe
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rbp + 0x12b0], rax
mov r14, r9
mov esi, r8d
mov r15, rdx
mov rbx, rcx
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x720]
call fcn.14003fab0
mov dword [rbp + 0x198], 0x80
xor r12d, r12d
mov dword [rbp + 0x1a4], r12d
mov qword [rbp + 0x190], r12
mov qword [rbp + 0x180], r12
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x420]
call fcn.14003fab0
lea rdx, [0x140055950]
lea rcx, [rbp + 0x2b0]
call fcn.14000a680
nop
lea rdx, [0x140055950]
lea rcx, [rbp + 0x1d0]
call fcn.14000a680
nop
test esi, esi
jne 0x140025e42
lea rdx, [0x14008a8b4]
lea rcx, [rbp + 0x1d0]
call fcn.1400029b0
jmp 0x140025e6c
mov rdx, rbx
lea rcx, [rbp + 0x270]
call fcn.140019f80
mov rdx, rax
lea rcx, [rbp + 0x1d0]
call fcn.14000a6e0
lea rcx, [rbp + 0x270]
call fcn.140002990
mov edx, 0x7f
lea rcx, [0x14008ea20]
call fcn.14000a780
mov r8, rax
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x390]
call fcn.14000a200
nop
lea rcx, [rbp + 0x390]
call fcn.140009de0
mov rdx, rax
lea rax, [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140027693
cmp dword [0x14008f410], eax
jne 0x140025ee6
cmp esi, 1
jne 0x140025ee6
lea rcx, [rbp + 0x1d0]
call fcn.14001e190
mov edi, r12d
lea r13, str.Connection
mov dword [rbp + 0x1a4], 0x40
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x420]
call fcn.14003fab0
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0x1a4]
lea r8, [rbp + 0x420]
mov edx, edi
mov rcx, qword [rbp + 0x190]
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x140026bcf
lea rcx, [rbp + 0x420]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140025f55
cmp rax, 4
jne 0x140026bc1
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x4a0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x6a0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x10a0]
call fcn.14003fab0
xor eax, eax
mov qword [rbp + 0x3f0], rax
mov qword [rbp + 0x3f8], rax
mov qword [rbp + 0x400], rax
mov qword [rbp + 0x408], rax
mov qword [rbp + 0x410], rax
mov qword [rbp + 0x418], rax
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xca0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xea0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xda0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x9a0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xba0]
call fcn.14003fab0
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x620]
call fcn.14003fab0
lea rcx, [rbp + 0x1b0]
call fcn.14000a6c0
nop
lea rdx, [0x140055950]
lea rcx, [rbp + 0x350]
call fcn.14000a680
nop
mov edx, 0x25
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
lea rcx, [rbp + 0x290]
call fcn.140002940
nop
lea r8, [0x1400770bc]
lea rdx, [rbp + 0x390]
lea rcx, [rbp + 0x148]
call fcn.14000a290
nop
lea r8, [rbp + 0x420]
mov rdx, rax
lea rcx, [rbp + 0x370]
call fcn.14000a1c0
nop
lea rcx, [rbp + 0x148]
call fcn.140002990
lea rcx, [rbp + 0x370]
call fcn.140009de0
mov rdx, rax
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400268e2
mov dword [rbp + 0x198], 0x100
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x4a0]
call fcn.14003fab0
mov edx, 0x3e
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x4a0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rbp + 0x198], 4
mov dword [rbp + 0x19c], r12d
lea rax, [rbp + 0x198]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x19c]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.Characteristics
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test byte [rbp + 0x19c], 4
jne 0x1400261c5
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140026b8e
test eax, eax
je 0x140026224
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x4a0]
call fcn.14003fab0
mov edx, 0x3f
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x4a0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rax, [rbp + 0x4a0]
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140026232
lea rcx, [rbp + 0x4a0]
call fcn.1400147c0
mov edx, 0x20
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x4a0]
call fcn.14003b9f0
test rax, rax
jne 0x1400262b2
lea edx, [rax + 0x1f]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x4a0]
call fcn.14003b9f0
test rax, rax
jne 0x1400262b2
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140026b8e
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x1b0]
call fcn.1400029b0
mov r8d, 5
lea rdx, [0x1400770bc]
lea rcx, [rbp + 0x1b0]
call fcn.140009ea0
mov r9d, eax
xor r8d, r8d
lea rdx, [rbp + 0x210]
lea rcx, [rbp + 0x1b0]
call fcn.14000ea00
mov rdx, rax
lea rcx, [rbp + 0x1b0]
call fcn.14000a6e0
lea rcx, [rbp + 0x210]
call fcn.140002990
mov dword [rbp + 0x198], 0x100
mov edx, 0x40
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x620]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140026808
mov qword [rbp + 0x178], r12
lea edx, [rax + 0x48]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x210]
call fcn.14000a680
nop
mov edx, 0x45
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x2f0]
call fcn.14000a680
nop
mov edx, 0x42
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x2d0]
call fcn.14000a680
nop
lea rdx, str.NameServer
lea rcx, [rbp + 0x310]
call fcn.14000a680
nop
lea rax, [rbp + 0x620]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140026410
lea rcx, [rbp + 0x620]
call fcn.1400147c0
mov edx, 0x7e
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rbx, rax
lea rcx, [rbp + 0x1d0]
call fcn.140009de0
lea rcx, [rbp + 0x620]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, str._s_s_s
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rax, [rbp + 0x178]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400265ce
mov dword [rbp + 0x168], r12d
mov dword [rbp + 0x198], 8
lea edx, [rax + 0x43]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x168]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp dword [rbp + 0x168], 1
jne 0x1400265ce
mov edx, 0x24
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
lea rcx, [rbp + 0x290]
call fcn.14000a730
mov edx, 0x49
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x210]
call fcn.1400029b0
mov edx, 0x44
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x2f0]
call fcn.1400029b0
mov edx, 0x46
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x2d0]
call fcn.1400029b0
mov edx, 0x47
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp + 0x310]
call fcn.1400029b0
mov dword [rbp + 0x198], 0x100
lea rcx, [rbp + 0x210]
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xca0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rbp + 0x198], 0x100
lea rcx, [rbp + 0x2f0]
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xea0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rbp + 0x198], 0x100
lea rcx, [rbp + 0x2d0]
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xda0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rbp + 0x198], 0x100
lea rcx, [rbp + 0x310]
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x9a0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, 0x80
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rbx, rax
lea rcx, [rbp + 0x1d0]
call fcn.140009de0
mov qword [rsp + 0x30], r13
lea rcx, [rbp + 0x620]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, str._s_s_s_s
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
mov qword [rbp + 0x188], r12
lea rax, [rbp + 0x188]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400267d5
mov dword [rbp + 0x198], 0x100
lea edx, [rax + 0x21]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xba0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x188]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rbp + 0x188]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rcx, [rbp + 0x310]
call fcn.140002990
nop
lea rcx, [rbp + 0x2d0]
call fcn.140002990
nop
lea rcx, [rbp + 0x2f0]
call fcn.140002990
nop
lea rcx, [rbp + 0x210]
call fcn.140002990
mov dword [rbp + 0x198], 0x200
mov edx, 0x38
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x10a0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x920]
call fcn.14003fab0
mov dword [rbp + 0x198], 0x80
mov edx, 0x3d
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x920]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400268d5
lea rdx, [rbp + 0x3f0]
lea rcx, [rbp + 0x920]
call fcn.140036fa0
mov rcx, qword [rbp + 0x180]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea r8, [0x140089758]
lea rdx, [rbp + 0x10a0]
lea rcx, [rsp + 0x40]
call fcn.1400158e0
nop
lea r8, [rbp + 0xba0]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.14000a1c0
nop
lea r8, [rbp + 0x350]
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.14000a180
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.14000a180
nop
lea r8, [rbp + 0x3f0]
mov rdx, rax
lea rcx, [rbp + 0xa8]
call fcn.14000a1c0
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0xc8]
call fcn.14000a180
nop
lea r8, [rbp + 0x1b0]
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.14000a180
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0x108]
call fcn.14000a180
nop
lea r8, [rbp + 0x290]
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.14000a180
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0x128]
call fcn.14000a180
nop
lea r8, [rbp + 0xca0]
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.14000a1c0
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.14000a180
nop
lea r8, [rbp + 0xda0]
mov rdx, rax
lea rcx, [rbp]
call fcn.14000a1c0
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.14000a180
nop
lea r8, [rbp + 0xea0]
mov rdx, rax
lea rcx, [rbp + 0x68]
call fcn.14000a1c0
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.14000a180
nop
lea r8, [rbp + 0x9a0]
mov rdx, rax
lea rcx, [rbp + 0x310]
call fcn.14000a1c0
nop
lea r8, [0x140089758]
mov rdx, rax
lea rcx, [rbp + 0x2d0]
call fcn.14000a180
nop
lea r8, [rbp + 0x620]
mov rdx, rax
lea rcx, [rbp + 0x2f0]
call fcn.14000a1c0
nop
lea r8, [0x1400896e8]
mov rdx, rax
lea rcx, [rbp + 0x210]
call fcn.14000a180
nop
mov rdx, rax
lea rcx, [rbp + 0x2b0]
call fcn.14000a830
nop
lea rcx, [rbp + 0x210]
call fcn.140002990
nop
lea rcx, [rbp + 0x2f0]
call fcn.140002990
nop
lea rcx, [rbp + 0x2d0]
call fcn.140002990
nop
lea rcx, [rbp + 0x310]
call fcn.140002990
nop
lea rcx, [rbp - 0x60]
call fcn.140002990
nop
lea rcx, [rbp + 0x68]
call fcn.140002990
nop
lea rcx, [rbp + 0x48]
call fcn.140002990
nop
lea rcx, [rbp]
call fcn.140002990
nop
lea rcx, [rbp - 0x20]
call fcn.140002990
nop
lea rcx, [rbp - 0x40]
call fcn.140002990
nop
lea rcx, [rbp + 0x128]
call fcn.140002990
nop
lea rcx, [rbp + 0x20]
call fcn.140002990
nop
lea rcx, [rbp + 0x108]
call fcn.140002990
nop
lea rcx, [rbp + 0xe8]
call fcn.140002990
nop
lea rcx, [rbp + 0xc8]
call fcn.140002990
nop
lea rcx, [rbp + 0xa8]
call fcn.140002990
nop
lea rcx, [rbp + 0x88]
call fcn.140002990
nop
lea rcx, [rbp - 0x80]
call fcn.140002990
nop
lea rcx, [rsp + 0x60]
call fcn.140002990
nop
lea rcx, [rsp + 0x40]
call fcn.140002990
nop
lea rcx, [rbp + 0x370]
call fcn.140002990
nop
lea rcx, [rbp + 0x290]
call fcn.140002990
nop
lea rcx, [rbp + 0x350]
call fcn.140002990
nop
lea rcx, [rbp + 0x1b0]
call fcn.140002990
inc edi
cmp edi, 0x80
jb 0x140025ef0
mov qword [rbp + 0x170], r12
lea rdx, [0x140055950]
lea rcx, [rbp + 0x230]
call fcn.14000a680
nop
lea rdx, [0x140055950]
lea rcx, [rbp + 0x1f0]
call fcn.14000a680
nop
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xaa0]
call fcn.14003fab0
lea rcx, [rbp + 0x270]
call fcn.14000a6c0
nop
mov dword [rbp + 0x1a0], r12d
lea rax, str.MicrosoftWindows_NTCurrentVersion
mov qword [rsp + 0x20], rax
mov r9, r15
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140026d9d
mov dword [rbp + 0x198], 0x100
lea edx, [rax + 0x3c]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xaa0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rbp + 0x168], r12d
mov dword [rbp + 0x198], 4
mov edx, 0x3b
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x168]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9, r14
mov r8d, esi
mov edx, dword [rbp + 0x168]
lea rcx, [rsp + 0x40]
call fcn.14002a1c0
mov rdx, rax
lea rcx, [rbp + 0x270]
call fcn.14000a6e0
lea rcx, [rsp + 0x40]
call fcn.140002990
mov dword [rbp + 0x198], 8
lea rax, [rbp + 0x198]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x140061f20]
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [rbp + 0x1a8], r12d
lea rdx, [0x140055950]
lea rcx, [rbp + 0x250]
call fcn.14000a680
nop
cmp esi, 1
jne 0x140026f78
lea edx, [rsi + 0x59]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov qword [rsp + 0x20], rax
mov r9, r15
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140026edb
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x9a0]
call fcn.14003fab0
mov dword [rbp + 0x198], 0x100
lea edx, [rsi + 0x36]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x9a0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rdx, [rbp + 0x9a0]
lea rcx, [rsp + 0x40]
call fcn.14000a680
lea r9d, [rsi + 1]
lea r8, [0x1400770bc]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140014e40
mov rdx, rax
lea rcx, [rbp + 0x1f0]
call fcn.14000a6e0
lea rcx, [rsp + 0x60]
call fcn.140002990
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, str.MicrosoftWindows_NTCurrentVersionEditionVersion
mov qword [rsp + 0x20], rax
mov r9, r15
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 0x20119
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140026f78
mov dword [rbp + 0x198], 8
lea rax, [rbp + 0x198]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.EditionBuildNumber
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xfa0]
call fcn.14003fab0
mov edx, 0x59
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rbx, rax
lea rcx, [rbp + 0x1d0]
call fcn.140009de0
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x720]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14002705d
mov dword [rbp + 0x198], 0x100
lea edx, [rax + 0x39]
lea rcx, [0x140089720]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xfa0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rbp + 0x170]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbp + 0x190]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rdx, [rbp + 0xaa0]
lea rcx, [rbp + 0x230]
call fcn.1400029b0
mov dword [rbp + 0x178], r12d
mov dword [rbp + 0x188], r12d
mov dword [rbp + 0x19c], r12d
mov dword [rbp + 0x168], r12d
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp + 0x5a0]
call fcn.14003fab0
lea r8, str.WindowsSystem32kernel32.dll
mov rdx, r14
lea rcx, [rbp + 0x3b0]
call fcn.14000a290
nop
test esi, esi
jne 0x1400271b2
lea r9, [0x140089cf4]
lea r8, [0x140061fc0]
lea edx, [rsi + 0x40]
lea rcx, [rbp + 0x5a0]
call fcn.14000e2d0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x10a0]
call fcn.14003fab0
lea rdx, [rbp + 0x198]
lea rcx, [rbp + 0x10a0]
call qword [sym.imp.ADVAPI32.dll_GetUserNameW]
lea edx, [rsi + 0x16]
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
lea rcx, [rbp + 0x1f0]
call fcn.14000a730
lea rdx, [rbp + 0x10a0]
lea rcx, [rbp + 0x1f0]
call fcn.14000a840
lea edx, [rsi + 0x17]
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
mov r8, r14
lea rcx, [rsp + 0x60]
call fcn.14000a200
nop
lea r8, [0x140061fcc]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14000a1c0
mov rdx, rax
lea rcx, [rbp + 0x250]
call fcn.14000a6e0
lea rcx, [rsp + 0x40]
call fcn.140002990
nop
lea rcx, [rsp + 0x60]
call fcn.140002990
lea rdx, [0x14008e554]
lea rcx, [rbp + 0x230]
call fcn.14000a730
jmp 0x140027372
lea rax, [rbp + 0x168]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x19c]
lea r8, [rbp + 0x188]
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0x3b0]
call fcn.14001e040
mov ecx, dword [rbp + 0x1a0]
cmp ecx, dword [rbp + 0x168]
cmovb ecx, dword [rbp + 0x168]
mov dword [rbp + 0x1a0], ecx
mov ebx, dword [rbp + 0x19c]
cmp dword [rbp + 0x1a8], ebx
cmova ebx, dword [rbp + 0x1a8]
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], ebx
mov esi, dword [rbp + 0x188]
mov dword [rsp + 0x20], esi
mov edi, dword [rbp + 0x178]
mov r9d, edi
lea r8, str.__d._d._d._d_
mov edx, 0x40
lea rcx, [rbp + 0x5a0]
call fcn.14000e2d0
mov edx, 0x19
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
lea r8, [rbp + 0x1f0]
lea rcx, [rsp + 0x40]
call fcn.14000a200
mov rdx, rax
lea rcx, [rbp + 0x1f0]
call fcn.14000a6e0
lea rcx, [rsp + 0x40]
call fcn.140002990
mov edx, 0x1a
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
mov r8, r14
lea rcx, [rbp - 0x80]
call fcn.14000a200
nop
lea r8, [0x140061fcc]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.14000a1c0
mov rdx, rax
lea rcx, [rbp + 0x250]
call fcn.14000a6e0
lea rcx, [rsp + 0x60]
call fcn.140002990
nop
lea rcx, [rbp - 0x80]
call fcn.140002990
cmp edi, 9
jbe 0x14002731f
cmp ebx, 0x55ef
jbe 0x140027372
xor r8d, r8d
lea rdx, [0x140061ff4]
lea rcx, [rbp + 0x230]
call fcn.140009ea0
cmp rax, 0xffffffffffffffff
je 0x140027372
lea r9, [0x140061ffc]
mov r8d, 2
mov rdx, rax
lea rcx, [rbp + 0x230]
call fcn.140014890
jmp 0x140027372
cmp word [rbp + 0xaa0], 0
jne 0x140027372
mov dword [rsp + 0x20], esi
mov r9d, edi
lea r8, str._d._d
mov edx, 0x100
lea rcx, [rbp + 0x720]
call fcn.14000e2d0
lea rdx, [rbp + 0x720]
lea rcx, [rsp + 0x40]
call fcn.140029c20
mov rdx, rax
lea rcx, [rbp + 0x230]
call fcn.14000a6e0
lea rcx, [rsp + 0x40]
call fcn.140002990
lea rcx, [rbp + 0x330]
call fcn.14000a6c0
nop
lea rcx, [rbp + 0x3b0]
call fcn.140009de0
mov rcx, rax
call fcn.140017360
lea rcx, [rbp + 0x330]
cmp eax, 0x40
lea rdx, [0x140062048]
je 0x1400273ad
lea rdx, [0x140062050]
call fcn.1400029b0
lea rdx, [rbp + 0x230]
lea rcx, [rbp + 0x250]
call fcn.14000a830
mov edx, 0xb
lea rcx, [0x14008ea20]
call fcn.14000a780
mov rdx, rax
lea rcx, [rbp + 0x3d0]
call fcn.140002940
nop
lea rdx, [0x140062058]
lea rcx, [rbp + 0x3d0]
call fcn.14000a840
lea r8, [rbp + 0xfa0]
lea rdx, [rbp + 0x3d0]
lea rcx, [rbp - 0x60]
call fcn.14000a290
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rbp + 0x68]
call fcn.14000a180
nop
lea r8, [rbp + 0x1f0]
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.14000a180
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rbp]
call fcn.14000a180
nop
lea r8, [rbp + 0x250]
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.14000a180
nop
lea r8, [0x140089738]
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.14000a180
nop
lea r8, [rbp + 0x5a0]
mov rdx, rax
lea rcx, [rbp + 0x128]
call fcn.14000a1c0
nop
lea r8, [0x140089738]
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.14000a180
nop
lea r8, [rbp + 0x330]
mov rdx, rax
lea rcx, [rbp + 0x108]
call fcn.14000a180
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.14000a180
nop
lea r8, [rbp + 0x270]
mov rdx, rax
lea rcx, [rbp + 0xc8]
call fcn.14000a180
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rbp + 0xa8]
call fcn.14000a180
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.14000a180
nop
lea r8, [0x14008e9b0]
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.14000a180
nop
lea r8, [0x14008e978]
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.14000a180
nop
lea r8, [rbp + 0x2b0]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14000a180
mov rdx, rax
lea rcx, [rbp + 0x2b0]
call fcn.14000a6e0
lea rcx, [rsp + 0x40]
call fcn.140002990
nop
lea rcx, [rsp + 0x60]
call fcn.140002990
nop
lea rcx, [rbp - 0x80]
call fcn.140002990
nop
lea rcx, [rbp + 0x88]
call fcn.140002990
nop
lea rcx, [rbp + 0xa8]
call fcn.140002990
nop
lea rcx, [rbp + 0xc8]
call fcn.140002990
nop
lea rcx, [rbp + 0xe8]
call fcn.140002990
nop
lea rcx, [rbp + 0x108]
call fcn.140002990
nop
lea rcx, [rbp + 0x20]
call fcn.140002990
nop
lea rcx, [rbp + 0x128]
call fcn.140002990
nop
lea rcx, [rbp - 0x40]
call fcn.140002990
nop
lea rcx, [rbp - 0x20]
call fcn.140002990
nop
lea rcx, [rbp]
call fcn.140002990
nop
lea rcx, [rbp + 0x48]
call fcn.140002990
nop
lea rcx, [rbp + 0x68]
call fcn.140002990
nop
lea rcx, [rbp - 0x60]
call fcn.140002990
mov rcx, r14
call fcn.140009de0
movzx ecx, word [rax]
shl rcx, 5
lea rax, [0x14008dd54]
add rcx, rax
lea rdx, [rbp + 0x2b0]
call fcn.14000a730
nop
lea rcx, [rbp + 0x3d0]
call fcn.140002990
nop
lea rcx, [rbp + 0x330]
call fcn.140002990
nop
lea rcx, [rbp + 0x3b0]
call fcn.140002990
nop
lea rcx, [rbp + 0x250]
call fcn.140002990
nop
lea rcx, [rbp + 0x270]
call fcn.140002990
nop
lea rcx, [rbp + 0x1f0]
call fcn.140002990
nop
lea rcx, [rbp + 0x230]
call fcn.140002990
nop
lea rcx, [rbp + 0x390]
call fcn.140002990
nop
lea rcx, [rbp + 0x1d0]
call fcn.140002990
nop
lea rcx, [rbp + 0x2b0]
call fcn.140002990
mov rcx, qword [rbp + 0x12b0]
xor rcx, rsp
call fcn.14003e040
add rsp, 0x13c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret