Function at 0x1401e07a0
Capabilities:
Get common file path
Get program files directory
Query environment variable
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xf18]
sub rsp, 0xff0
mov qword [rbp + 0x98], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x140415a10]
xor rax, rsp
mov qword [rbp + 0xee0], rax
mov r13, rcx
mov qword [rbp + 0x28], rcx
lea rax, vtable.Core::Dictionary_class_Core::String__int_.0
mov qword [rbp], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
xor r15d, r15d
mov dword [rbp + 0x18], r15d
mov rdi, qword [rcx + 8]
mov qword [rbp - 8], rdi
mov edx, 0x104
lea rcx, [rbp + 0xb0]
cmp dword [rdi + 0x10], 1
jne 0x1401e0aa0
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140354160]
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0850
mov qword [rsp + 0x38], r15
lea r12, [0x140346ce0]
test ebx, ebx
jne 0x1401e0871
mov qword [rsp + 0x30], r12
jmp 0x1401e089a
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetSystemWow64DirectoryW]
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e08e0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e08fa
mov qword [rsp + 0x30], r12
jmp 0x1401e0923
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea r8, [0x140354160]
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0966
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0980
mov qword [rsp + 0x30], r12
jmp 0x1401e09a9
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov rax, qword [rdi + 0xa08]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1401e1a4a
nop dword [rax]
mov qword [rsp + 0x38], r15
mov edx, dword [rbx + 0x2c]
test edx, edx
jne 0x1401e09f3
mov qword [rsp + 0x30], r12
jmp 0x1401e0a18
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, dword [rbx + 0x2c]
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r8, qword [rbx + 0x20]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, dword [rbx + 0x2c]
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
cmp byte [rbx + 0x19], 0
jne 0x1401e0a8e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e0a6e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e0a8e
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e0a60
jmp 0x1401e0a8e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e0a8b
cmp rbx, qword [rax + 0x10]
jne 0x1401e0a8b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e0a78
mov rbx, rax
cmp rbx, qword [rdi + 0xa08]
jne 0x1401e09e0
jmp 0x1401e1a4a
call qword [sym.imp.KERNEL32.dll_GetSystemWow64DirectoryW]
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0ab1
mov qword [rsp + 0x38], r15
lea r12, [0x140346ce0]
test ebx, ebx
jne 0x1401e0ad2
mov qword [rsp + 0x30], r12
jmp 0x1401e0afb
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea r8, [0x140354160]
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0b40
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0b5a
mov qword [rsp + 0x30], r12
jmp 0x1401e0b83
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0bc0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0bda
mov qword [rsp + 0x30], r12
jmp 0x1401e0c03
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea r8, [0x140354160]
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0c46
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0c60
mov qword [rsp + 0x30], r12
jmp 0x1401e0c89
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._spool
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0ce0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0cfa
mov qword [rsp + 0x30], r12
jmp 0x1401e0d23
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov word [rbp + 0xb4], r15w
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0d56
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0d70
mov qword [rsp + 0x30], r12
jmp 0x1401e0d99
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0dd3
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0ded
mov qword [rsp + 0x30], r12
jmp 0x1401e0e16
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea r8, str.Temp
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0e56
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0e70
mov qword [rsp + 0x30], r12
jmp 0x1401e0e99
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str._system
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0ef0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0f0a
mov qword [rsp + 0x30], r12
jmp 0x1401e0f33
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str.help
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e0f90
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e0faa
mov qword [rsp + 0x30], r12
jmp 0x1401e0fd3
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str._assemblygac_32
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1030
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e104a
mov qword [rsp + 0x30], r12
jmp 0x1401e1073
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str._assemblygac_64
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e10d0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e10ea
mov qword [rsp + 0x30], r12
jmp 0x1401e1113
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 2
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str._assembly_temp
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1170
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e118a
mov qword [rsp + 0x30], r12
jmp 0x1401e11b3
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 4
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str.wbem
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1210
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e122a
mov qword [rsp + 0x30], r12
jmp 0x1401e1253
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x2c]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x1401e1300
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e12a0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e12ba
mov qword [rsp + 0x30], r12
jmp 0x1401e12e3
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x2b]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x1401e1390
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1330
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e134a
mov qword [rsp + 0x30], r12
jmp 0x1401e1373
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x26]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x1401e1440
lea r8, [0x140365128]
mov edx, 0x104
lea rcx, [rbp + 0xb0]
call fcn.1402b9308
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e13e0
mov qword [rsp + 0x38], r15
test ebx, ebx
jne 0x1401e13fa
mov qword [rsp + 0x30], r12
jmp 0x1401e1423
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x30]
call fcn.1401fde50
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r15
mov dword [rbp + 0x40], 0x104
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0xb0]
call qword [sym.imp.USERENV.dll_GetProfilesDirectoryW]
test eax, eax
je 0x1401e151f
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1475
test ebx, ebx
jle 0x1401e14ae
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x50]
call fcn.1402ba94c
jmp 0x1401e14b6
mov edx, dword [rsp + 0x5c]
test edx, edx
jle 0x1401e14c6
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fde50
mov edx, dword [rsp + 0x5c]
mov qword [rsp + 0x38], r15
test edx, edx
jne 0x1401e14d6
mov qword [rsp + 0x30], r12
jmp 0x1401e1501
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, dword [rsp + 0x5c]
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r8, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, dword [rsp + 0x5c]
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
lea rdx, [rbp + 0x4d0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1401e1575
mov r8d, 0x104
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x4d0]
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
je 0x1401e1575
lea rdx, [rbp + 0xb0]
lea rcx, [rbp - 0x48]
call fcn.1401faae0
mov r8d, 3
mov rdx, rax
lea rcx, [rbp]
call fcn.140160710
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x23]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x1401e168d
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e15a6
mov qword [rsp + 0x48], r15
test ebx, ebx
jne 0x1401e15c0
mov qword [rsp + 0x40], r12
jmp 0x1401e15e9
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x48]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x40]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fde50
nop
mov edx, dword [rsp + 0x4c]
movsxd rax, dword [rsp + 0x5c]
cmp edx, eax
jl 0x1401e1622
mov r8, rax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call fcn.1402b9158
test eax, eax
sete al
test al, al
jne 0x1401e167c
mov edx, dword [rsp + 0x4c]
mov qword [rsp + 0x38], r15
test edx, edx
jne 0x1401e1632
mov qword [rsp + 0x30], r12
jmp 0x1401e165d
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, dword [rsp + 0x4c]
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
nop
cmp dword [rsp + 0x48], 0
jle 0x1401e168d
mov rcx, qword [rsp + 0x40]
call fcn.1402b7350
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x16]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jne 0x1401e17b8
lea rax, [rbp + 0xb0]
or rbx, 0xffffffffffffffff
nop
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e16c0
mov qword [rsp + 0x48], r15
test ebx, ebx
jne 0x1401e16da
mov qword [rsp + 0x40], r12
jmp 0x1401e1703
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x48]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0xb0]
mov rcx, qword [rsp + 0x40]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fde50
nop
mov edx, dword [rsp + 0x4c]
movsxd rax, dword [rsp + 0x5c]
cmp edx, eax
jl 0x1401e173c
mov r8, rax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call fcn.1402b9158
test eax, eax
sete al
test al, al
jne 0x1401e17a7
mov edx, dword [rsp + 0x4c]
mov qword [rsp + 0x38], r15
test edx, edx
jne 0x1401e174c
mov qword [rsp + 0x30], r12
jmp 0x1401e1777
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, dword [rsp + 0x4c]
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
mov rdx, qword [rsp + 0x40]
lea rcx, str.Startup_path:__ls__n_r
call fcn.1402b7a88
nop
cmp dword [rsp + 0x48], 0
jle 0x1401e17b8
mov rcx, qword [rsp + 0x40]
call fcn.1402b7350
lea r8, [rsp + 0x78]
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersionProfileList
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x1401e1a26
call fcn.1400ce2d0
test al, al
je 0x1401e1979
lea r8, [rbp - 0x58]
lea rdx, str.S_1_5_19
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x1401e1979
mov dword [rbp + 0x20], 0x208
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.ProfileImagePath
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1401e196f
mov r8d, 0x104
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
je 0x1401e196f
lea rax, [rbp + 0x2c0]
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1401e1870
mov qword [rsp + 0x68], r15
test ebx, ebx
jne 0x1401e188a
mov qword [rsp + 0x60], r12
jmp 0x1401e18b3
mov edx, ebx
lea rcx, [rsp + 0x60]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x68]
inc eax
movsxd rdx, eax
lea r8, [rbp + 0x2c0]
mov rcx, qword [rsp + 0x60]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x60]
call fcn.1401fde50
nop
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x28]
call fcn.1400d2fc0
nop
cmp dword [rsp + 0x68], 0
jle 0x1401e18e0
mov rcx, qword [rsp + 0x60]
call fcn.1402b7350
mov edx, dword [rbp - 0x1c]
movsxd rax, dword [rsp + 0x5c]
cmp edx, eax
jl 0x1401e1909
mov r8, rax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rbp - 0x28]
call fcn.1402b9158
test eax, eax
sete al
test al, al
jne 0x1401e1960
mov edx, dword [rbp - 0x1c]
mov qword [rsp + 0x38], r15
test edx, edx
jne 0x1401e1919
mov qword [rsp + 0x30], r12
jmp 0x1401e1941
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
movsxd r9, dword [rbp - 0x1c]
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r8, qword [rbp - 0x28]
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, dword [rbp - 0x1c]
lea rcx, [rsp + 0x30]
call fcn.1401fde50
mov r8d, 1
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call fcn.140160710
nop
cmp dword [rbp - 0x20], 0
jle 0x1401e196f
mov rcx, qword [rbp - 0x28]
call fcn.1402b7350
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea r8, [rsp + 0x40]
lea rdx, str.S_1_5_18
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
jne 0x1401e1a1b
mov dword [rbp + 0x20], 0x208
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.ProfileImagePath
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1401e1a10
mov r8d, 0x104
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
je 0x1401e1a10
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp - 0x48]
call fcn.1401faae0
mov r8d, 1
mov rdx, rax
lea rcx, [rbp]
call fcn.140160710
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov r8, qword [r13 + 8]
mov edx, 4
lea rcx, [rbp]
call fcn.14015f620
nop
cmp dword [rsp + 0x58], 0
jle 0x1401e1a4a
mov rcx, qword [rsp + 0x50]
call fcn.1402b7350
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r15
call fcn.1400e29c0
mov qword [rbp - 0x38], rax
lea rax, str..sys
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..drv
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..dll
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..ocx
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, [0x14034be40]
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..lnk
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..cpl
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..tmp
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..com
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..pif
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..scr
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
lea rax, str..cmd
mov qword [rsp + 0x40], rax
movzx eax, byte [0x140429191]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x38]
call fcn.140157e70
mov qword [rbp + 0x48], r15
mov qword [rbp + 0x50], r15
call fcn.1400e29c0
mov qword [rbp + 0x48], rax
lea rax, vtable.Core::Dictionary_class_Core::String__int_::Enumerator.0
mov qword [rbp + 0x80], rax
lea rax, [rbp]
mov qword [rbp + 0x88], rax
mov r14, qword [rbp + 8]
mov qword [rbp + 0x90], r14
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
call fcn.14000a340
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r15
test r14, r14
je 0x1401e1f2a
mov edx, dword [r14 + 0x1c]
lea rcx, [rbp - 0x18]
call fcn.1401fcb40
movsxd r9, dword [r14 + 0x1c]
mov eax, dword [rbp - 0x10]
inc eax
movsxd rdx, eax
mov r8, qword [r14 + 0x10]
mov rcx, qword [rbp - 0x18]
call fcn.1402ba94c
mov edx, dword [r14 + 0x1c]
lea rcx, [rbp - 0x18]
call fcn.1401fde50
mov ebx, dword [r14 + 0x20]
mov r14, qword [r14]
mov qword [rbp + 0x90], r14
mov rcx, qword [r13 + 8]
add rcx, 0x2b8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 8]
test al, al
jne 0x1401e1f2a
lea rdx, [rbp - 0x18]
mov rcx, qword [r13 + 8]
call fcn.1400f8ca0
mov rdi, rax
test rax, rax
je 0x1401e1c95
mov ecx, dword [rbp - 0xc]
cmp ecx, 1
jl 0x1401e1d53
dec ecx
movsxd rdx, ecx
mov rcx, qword [rbp - 0x18]
lea rcx, [rcx + rdx*2]
mov r8d, 1
lea rdx, [0x140345f98]
call fcn.1402bc40c
test eax, eax
sete al
test al, al
je 0x1401e1d53
mov edx, dword [rbp - 0xc]
dec edx
mov r8d, 1
lea rcx, [rbp - 0x18]
call fcn.1401fdf50
cmp ebx, 3
jne 0x1401e1d84
mov r10, qword [rdi]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x48]
lea rdx, [rbp - 0x18]
mov rcx, rdi
call qword [r10 + 0x18]
jmp 0x1401e1c95
cmp ebx, 2
jne 0x1401e1e3f
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e1da3
mov ebx, r15d
mov qword [rsp + 0x58], r15
jmp 0x1401e1dc3
or rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e1db0
mov qword [rsp + 0x58], r15
test ebx, ebx
jne 0x1401e1dca
mov qword [rsp + 0x50], r12
jmp 0x1401e1def
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rsp + 0x50]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fde50
nop
mov r10, qword [rdi]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x18]
mov rcx, rdi
call qword [r10 + 0x10]
nop
cmp dword [rsp + 0x58], 0
jle 0x1401e1c95
mov rcx, qword [rsp + 0x50]
call fcn.1402b7350
jmp 0x1401e1c95
cmp ebx, 4
jne 0x1401e1ef1
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e1e5e
mov ebx, r15d
mov qword [rsp + 0x48], r15
jmp 0x1401e1e75
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e1e62
mov qword [rsp + 0x48], r15
test ebx, ebx
jne 0x1401e1e7c
mov qword [rsp + 0x40], r12
jmp 0x1401e1ea1
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x48]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rsp + 0x40]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x40]
call fcn.1401fde50
nop
mov r10, qword [rdi]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
mov r9b, 1
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x18]
mov rcx, rdi
call qword [r10 + 0x10]
nop
cmp dword [rsp + 0x48], 0
jle 0x1401e1c95
mov rcx, qword [rsp + 0x40]
call fcn.1402b7350
jmp 0x1401e1c95
cmp ebx, 2
jge 0x1401e1c95
mov r10, qword [rdi]
cmp ebx, 1
sete r9b
mov rax, qword [r13 + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x18]
mov rcx, rdi
call qword [r10 + 0x18]
jmp 0x1401e1c95
mov rcx, qword [r13 + 8]
add rcx, 0x2b8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 8]
test al, al
jne 0x1401e2667
mov word [rbp + 0x6e0], r15w
xor edx, edx
mov r8d, 0x7fe
lea rcx, [rbp + 0x6e2]
call fcn.1402bfa30
lea rax, [rbp + 0x6e0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 8]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov edx, 6
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
sete bl
mov byte [rsp + 0x70], bl
mov rax, qword [rbp - 0x68]
mov rsi, qword [rax]
cmp rsi, rax
je 0x1401e265d
nop word [rax + rax]
mov rcx, qword [r13 + 8]
add rcx, 0x2b8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 8]
test al, al
jne 0x1401e2658
lea rdx, [rsi + 0x20]
lea rcx, [rbp - 0x48]
call fcn.1400e3270
nop
xor r8d, r8d
lea rdx, str..lnk
lea rcx, [rbp - 0x48]
call fcn.1401fce20
test al, al
je 0x1401e25e4
cmp word [rbp + 0x6e0], 0
je 0x1401e2019
xor r8d, r8d
lea rdx, [rbp + 0x6e0]
lea rcx, [rsi + 0x20]
call fcn.1401ff2c0
test al, al
jne 0x1401e25f5
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x38], 0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 0
lea r9, [rsp + 0x60]
lea r8, [rbp + 0x30]
lea rdx, [rsi + 0x20]
call fcn.1401e3090
test al, al
je 0x1401e25c1
xor r15b, r15b
mov rcx, qword [rbp - 8]
mov rax, qword [rcx + 0xa08]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1401e22bb
movsxd rax, dword [rbx + 0x2c]
cmp dword [rsi + 0x2c], eax
jl 0x1401e208d
mov r8, rax
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rsi + 0x20]
call fcn.1402b9158
test eax, eax
sete al
test al, al
jne 0x1401e20ea
mov rcx, qword [rbp - 8]
cmp byte [rbx + 0x19], 0
jne 0x1401e20de
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e20be
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e20de
nop dword [rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e20b0
jmp 0x1401e20de
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e20db
cmp rbx, qword [rax + 0x10]
jne 0x1401e20db
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e20c8
mov rbx, rax
cmp rbx, qword [rcx + 0xa08]
jmp 0x1401e2061
mov r15b, 1
mov byte [rsp + 0x71], r15b
lea r8, [rsi + 0x20]
lea rdx, [rbp + 0x70]
call fcn.1401e2f00
nop
lea rdx, [rbp + 0x70]
call fcn.1401e2d20
test al, al
je 0x1401e22ac
mov r14, qword [rsi + 0x20]
test r14, r14
jne 0x1401e2124
xor eax, eax
mov ebx, eax
mov qword [rbp - 0x80], rax
jmp 0x1401e2145
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x1401e2130
xor eax, eax
mov qword [rbp - 0x80], rax
test ebx, ebx
jne 0x1401e214c
mov qword [rsp + 0x78], r12
jmp 0x1401e2170
mov edx, ebx
lea rcx, [rsp + 0x78]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rbp - 0x80]
inc eax
movsxd rdx, eax
mov r8, r14
mov rcx, qword [rsp + 0x78]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x78]
call fcn.1401fde50
nop
mov r8b, 1
lea rdx, [rsp + 0x78]
mov rcx, qword [r13 + 8]
call fcn.1400f8340
mov r15, rax
cmp dword [rbp - 0x80], 0
jle 0x1401e21a1
mov rcx, qword [rsp + 0x78]
call fcn.1402b7350
mov r14, qword [rsi + 0x20]
test r14, r14
jne 0x1401e21b4
xor eax, eax
mov ebx, eax
mov qword [rbp - 0x70], rax
jmp 0x1401e21d5
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x1401e21c0
xor eax, eax
mov qword [rbp - 0x70], rax
test ebx, ebx
jne 0x1401e21db
mov qword [rbp - 0x78], r12
jmp 0x1401e21fd
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rbp - 0x70]
inc eax
movsxd rdx, eax
mov r8, r14
mov rcx, qword [rbp - 0x78]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.1401fde50
nop
lea rdx, [rbp - 0x78]
mov rcx, r15
call fcn.1400eb2a0
nop
cmp dword [rbp - 0x70], 0
jle 0x1401e2225
mov rcx, qword [rbp - 0x78]
call fcn.1402b7350
xor eax, eax
mov qword [rsp + 0x38], rax
lea edx, [rax + 0x16]
lea rcx, [rsp + 0x30]
call fcn.1401fcb40
mov eax, dword [rsp + 0x38]
inc eax
movsxd rdx, eax
mov r9d, 0x16
lea r8, str.Trojan.Poweliks_Kovter
mov rcx, qword [rsp + 0x30]
call fcn.1402ba94c
mov edx, 0x16
lea rcx, [rsp + 0x30]
call fcn.1401fde50
nop
lea r8, [rsp + 0x30]
mov edx, 2
mov rcx, r15
call fcn.1400d9690
nop
cmp dword [rsp + 0x38], 0
jle 0x1401e228d
mov rcx, qword [rsp + 0x30]
call fcn.1402b7350
mov rax, qword [r15]
mov rdx, qword [r13 + 8]
mov rcx, r15
call qword [rax + 0x70]
mov rdx, r15
mov rcx, qword [r13 + 8]
call fcn.1400f8580
movzx r15d, byte [rsp + 0x71]
cmp dword [rbp + 0x78], 0
jle 0x1401e22bb
mov rcx, qword [rbp + 0x70]
call fcn.1402b7350
xor eax, eax
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x50], rax
call fcn.14000a340
mov qword [rbp - 0x58], rax
mov r14, qword [0x140416ee8]
test r14, r14
jne 0x1401e22e5
xor eax, eax
mov ebx, eax
mov qword [rsp + 0x58], rax
jmp 0x1401e2306
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x1401e22f0
xor eax, eax
mov qword [rsp + 0x58], rax
test ebx, ebx
jne 0x1401e230d
mov qword [rsp + 0x50], r12
jmp 0x1401e2332
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r8, r14
mov rcx, qword [rsp + 0x50]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fde50
nop
movzx eax, byte [0x14042918a]
mov byte [rsp + 0x20], al
lea r9, [rbp + 0x30]
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x58]
call fcn.1400e8550
mov edx, dword [rsp + 0x6c]
test edx, edx
jle 0x1401e23b8
lea rcx, [rsp + 0x50]
call fcn.1401fcb40
movsxd r9, dword [rsp + 0x6c]
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r8, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
call fcn.1402ba94c
mov edx, dword [rsp + 0x6c]
lea rcx, [rsp + 0x50]
call fcn.1401fde50
movzx eax, byte [0x14042918a]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x60]
lea rdx, [rbp + 0x58]
lea rcx, [rbp - 0x58]
call fcn.1400e8550
mov rax, qword [rbp - 0x58]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1401e24a8
nop dword [rax + rax]
xor eax, eax
mov qword [rbp - 0x20], rax
mov edx, dword [rbx + 0x2c]
test edx, edx
jne 0x1401e23e3
mov qword [rbp - 0x28], r12
jmp 0x1401e2405
lea rcx, [rbp - 0x28]
call fcn.1401fcb40
movsxd r9, dword [rbx + 0x2c]
mov eax, dword [rbp - 0x20]
inc eax
movsxd rdx, eax
mov r8, qword [rbx + 0x20]
mov rcx, qword [rbp - 0x28]
call fcn.1402ba94c
mov edx, dword [rbx + 0x2c]
lea rcx, [rbp - 0x28]
call fcn.1401fde50
nop
mov r8b, 1
lea rdx, [rbp - 0x28]
mov rcx, qword [r13 + 8]
call fcn.1400f8340
test rax, rax
je 0x1401e2440
lea rdx, [rsi + 0x20]
mov rcx, rax
test r15b, r15b
je 0x1401e243a
call fcn.1400eb2a0
jmp 0x1401e2440
call fcn.1400e4160
nop
cmp dword [rbp - 0x20], 0
jle 0x1401e244f
mov rcx, qword [rbp - 0x28]
call fcn.1402b7350
cmp byte [rbx + 0x19], 0
jne 0x1401e249e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e247e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e249e
nop dword [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e2470
jmp 0x1401e249e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e249b
cmp rbx, qword [rax + 0x10]
jne 0x1401e249b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e2488
mov rbx, rax
cmp rbx, qword [rbp - 0x58]
jne 0x1401e23d0
lea r9, [rsp + 0x50]
lea r8, [rbp + 0x30]
lea rdx, [rsi + 0x20]
mov rcx, qword [r13 + 8]
call fcn.1400f8830
nop
cmp dword [rsp + 0x58], 0
jle 0x1401e24d1
mov rcx, qword [rsp + 0x50]
call fcn.1402b7350
nop
mov rdi, qword [rbp - 0x58]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x1401e2545
mov r14, qword [rdi + 8]
mov rbx, r14
cmp byte [r14 + 0x19], 0
jne 0x1401e2525
nop dword [rax + rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x58]
call fcn.14000a240
mov rbx, qword [rbx]
cmp dword [r14 + 0x28], 0
jle 0x1401e2510
mov rcx, qword [r14 + 0x20]
call fcn.1402b7350
mov rcx, r14
call fcn.1402150f0
mov r14, rbx
cmp byte [rbx + 0x19], 0
je 0x1401e24f0
mov rdi, qword [rbp - 0x58]
mov qword [rdi + 8], rdi
mov rax, qword [rbp - 0x58]
mov qword [rax], rax
mov rax, qword [rbp - 0x58]
mov qword [rax + 0x10], rax
xor r15d, r15d
mov qword [rbp - 0x50], r15
mov rdi, qword [rbp - 0x58]
jmp 0x1401e25b8
cmp rbx, rdi
je 0x1401e25b5
nop word [rax + rax]
mov r8, rbx
cmp byte [rbx + 0x19], 0
jne 0x1401e259e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e257e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e259e
nop
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e2570
jmp 0x1401e259e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e259b
cmp rbx, qword [rax + 0x10]
jne 0x1401e259b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e2588
mov rbx, rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.140008e20
cmp rbx, rdi
jne 0x1401e2550
mov rdi, qword [rbp - 0x58]
xor r15d, r15d
mov rcx, rdi
call fcn.1402150f0
nop
cmp dword [rsp + 0x68], 0
jle 0x1401e25d3
mov rcx, qword [rsp + 0x60]
call fcn.1402b7350
nop
cmp dword [rbp + 0x38], 0
jle 0x1401e25f5
mov rcx, qword [rbp + 0x30]
call fcn.1402b7350
jmp 0x1401e25f5
mov r8b, 1
lea rdx, [rsi + 0x20]
mov rcx, qword [r13 + 8]
call fcn.1400f8340
nop
cmp dword [rbp - 0x40], 0
jle 0x1401e2604
mov rcx, qword [rbp - 0x48]
call fcn.1402b7350
cmp byte [rsi + 0x19], 0
jne 0x1401e264e
mov rax, qword [rsi + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e262e
mov rsi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e264e
mov rsi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e2620
jmp 0x1401e264e
mov rax, qword [rsi + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e264b
cmp rsi, qword [rax + 0x10]
jne 0x1401e264b
mov rsi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e2638
mov rsi, rax
cmp rsi, qword [rbp - 0x68]
jne 0x1401e1fb0
movzx ebx, byte [rsp + 0x70]
test bl, bl
je 0x1401e2667
call qword [sym.imp.ole32.dll_CoUninitialize]
mov rcx, qword [r13 + 8]
add rcx, 0x2b8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 8]
test al, al
jne 0x1401e2c3d
mov rax, qword [rbp - 0x68]
mov rdi, qword [rax + 8]
mov rbx, rdi
cmp byte [rdi + 0x19], 0
jne 0x1401e26c7
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x68]
call fcn.14000a240
mov rbx, qword [rbx]
cmp dword [rdi + 0x28], 0
jle 0x1401e26b2
mov rcx, qword [rdi + 0x20]
call fcn.1402b7350
mov rcx, rdi
call fcn.1402150f0
mov rdi, rbx
cmp byte [rbx + 0x19], 0
je 0x1401e2693
mov rax, qword [rbp - 0x68]
mov qword [rax + 8], rax
mov rax, qword [rbp - 0x68]
mov qword [rax], rax
mov rax, qword [rbp - 0x68]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x60], r15
mov eax, dword [0x140429a18]
lea rsi, vtable.Core::Win32::RegistryKey.0
test al, 1
jne 0x1401e2716
or eax, 1
mov dword [0x140429a18], eax
mov qword [0x1404299f0], rsi
mov qword [0x1404299f8], 0xffffffff80000002
lea rcx, [0x1402fedc0]
call fcn.1402b8a74
mov qword [rbp - 8], r15
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SOFTWAREMozilla
mov rcx, qword [0x1404299f8]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1401e2b87
lea ecx, [rax + 0x10]
call fcn.1402b6dbc
mov rbx, rax
mov qword [rbp - 0x58], rax
test rax, rax
je 0x1401e2b87
mov rcx, qword [rbp - 8]
mov qword [rax], rsi
mov qword [rax + 8], rcx
lea rax, vtable.Core::Array_class_Core::String_.0
mov qword [rbp + 0x58], rax
mov dword [rbp + 0x60], r15d
mov qword [rbp + 0x68], r15
lea rdx, [rbp + 0x58]
mov rcx, rbx
call fcn.1400ea910
test al, al
je 0x1401e2b5b
mov eax, dword [rbp + 0x60]
test eax, eax
jle 0x1401e2b5b
mov r15, qword [rbp + 0x68]
mov r13d, eax
xor r14d, r14d
nop word [rax + rax]
mov r8, qword [r15]
lea rdx, str._sextensions
lea rcx, [rbp - 0x48]
call fcn.1401fcfe0
nop
mov qword [rsp + 0x40], r14
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbx + 8]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1401e2b3b
lea ecx, [rax + 0x10]
call fcn.1402b6dbc
mov rdi, rax
test rax, rax
je 0x1401e2810
mov rax, qword [rsp + 0x40]
mov qword [rdi], rsi
mov qword [rdi + 8], rax
jmp 0x1401e2813
mov rdi, r14
test rdi, rdi
je 0x1401e2b3b
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e2831
mov ebx, r14d
mov qword [rbp - 0x80], rsi
jmp 0x1401e284b
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e2835
mov qword [rbp - 0x80], 0
test ebx, ebx
jne 0x1401e2852
mov qword [rsp + 0x78], r12
jmp 0x1401e2876
mov edx, ebx
lea rcx, [rsp + 0x78]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rbp - 0x80]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rsp + 0x78]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x78]
call fcn.1401fde50
nop
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e2899
mov ebx, r14d
mov qword [rsp + 0x58], rsi
jmp 0x1401e28b7
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e28a0
mov qword [rsp + 0x58], 0
test ebx, ebx
jne 0x1401e28be
mov qword [rsp + 0x50], r12
jmp 0x1401e28e3
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rsp + 0x50]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x50]
call fcn.1401fde50
nop
lea r8, [rsp + 0x78]
lea rdx, [0x140365200]
mov rcx, rdi
call fcn.1400d8ae0
lea r8, [rsp + 0x50]
lea rdx, str.Plugins
mov rcx, rdi
call fcn.1400d8ae0
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1401e2a06
or rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1401e2930
test rax, rax
sete al
mov rbx, qword [rbp + 0x28]
test al, al
jne 0x1401e2a0a
lea rdx, [rsp + 0x78]
mov rcx, qword [rbx + 8]
call fcn.1400f8ca0
mov r14, rax
test rax, rax
je 0x1401e2a0a
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e297c
xor eax, eax
mov ebx, eax
mov qword [rbp - 0x70], rax
jmp 0x1401e2994
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e2980
xor eax, eax
mov qword [rbp - 0x70], rax
test ebx, ebx
jne 0x1401e299a
mov qword [rbp - 0x78], r12
jmp 0x1401e29bc
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rbp - 0x70]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rbp - 0x78]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.1401fde50
nop
mov r10, qword [r14]
mov rbx, qword [rbp + 0x28]
mov rax, qword [rbx + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
mov r9b, 1
lea r8, [rbp - 0x78]
lea rdx, [rsp + 0x78]
mov rcx, r14
call qword [r10 + 0x10]
nop
cmp dword [rbp - 0x70], 0
jle 0x1401e2a0a
mov rcx, qword [rbp - 0x78]
call fcn.1402b7350
jmp 0x1401e2a0a
mov rbx, qword [rbp + 0x28]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1401e2afd
or rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1401e2a20
test rax, rax
sete al
test al, al
jne 0x1401e2afd
lea rdx, [rsp + 0x50]
mov rcx, qword [rbx + 8]
call fcn.1400f8ca0
mov r14, rax
test rax, rax
je 0x1401e2afd
mov rsi, qword [0x140416ee8]
test rsi, rsi
jne 0x1401e2a69
xor eax, eax
mov ebx, eax
mov qword [rsp + 0x68], rax
jmp 0x1401e2a85
or rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1401e2a70
xor eax, eax
mov qword [rsp + 0x68], rax
test ebx, ebx
jne 0x1401e2a8c
mov qword [rsp + 0x60], r12
jmp 0x1401e2ab1
mov edx, ebx
lea rcx, [rsp + 0x60]
call fcn.1401fcb40
movsxd r9, ebx
mov eax, dword [rsp + 0x68]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rsp + 0x60]
call fcn.1402ba94c
mov edx, ebx
lea rcx, [rsp + 0x60]
call fcn.1401fde50
nop
mov r10, qword [r14]
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
mov r9b, 1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x50]
mov rcx, r14
call qword [r10 + 0x10]
nop
cmp dword [rsp + 0x68], 0
jle 0x1401e2afd
mov rcx, qword [rsp + 0x60]
call fcn.1402b7350
mov rax, qword [rdi]
mov edx, 1
mov rcx, rdi
call qword [rax]
nop
cmp dword [rsp + 0x58], 0
jle 0x1401e2b1d
mov rcx, qword [rsp + 0x50]
call fcn.1402b7350
nop
cmp dword [rbp - 0x80], 0
jle 0x1401e2b2d
mov rcx, qword [rsp + 0x78]
call fcn.1402b7350
lea rsi, vtable.Core::Win32::RegistryKey.0
xor r14d, r14d
mov rbx, qword [rbp - 0x58]
cmp dword [rbp - 0x40], 0
jle 0x1401e2b4a
mov rcx, qword [rbp - 0x48]
call fcn.1402b7350
add r15, 0x10
dec r13
jne 0x1401e27b0
mov r13, qword [rbp + 0x28]
mov rax, qword [rbp + 0x68]
test rax, rax
je 0x1401e2b87
lea rbx, [rax - 8]
lea r9, [fcn.140005eb0]
mov r8d, dword [rbx]
mov edx, 0x10
mov rcx, rax
call fcn.1402b7cf4
mov rcx, rbx
call fcn.1402b712c
mov r8, qword [rbp - 0x68]
mov rbx, qword [r8]
cmp rbx, r8
je 0x1401e2c41
nop word [rax + rax]
mov r8d, 1
lea rdx, [0x14034bf38]
lea rcx, [rbx + 0x20]
call fcn.1401fc9f0
test al, al
jne 0x1401e2bdb
mov r8b, 1
lea rdx, [rbx + 0x20]
mov rcx, qword [r13 + 8]
call fcn.1400f8340
test rax, rax
je 0x1401e2bdb
lea rdx, [rbx + 0x20]
mov rcx, rax
call fcn.1400eb2a0
cmp byte [rbx + 0x19], 0
jne 0x1401e2c2e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401e2c0e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401e2c2e
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401e2c00
jmp 0x1401e2c2e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401e2c2b
cmp rbx, qword [rax + 0x10]
jne 0x1401e2c2b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401e2c18
mov rbx, rax
mov r8, qword [rbp - 0x68]
cmp rbx, r8
jne 0x1401e2ba0
jmp 0x1401e2c41
mov r8, qword [rbp - 0x68]
cmp dword [rbp - 0x10], 0
jle 0x1401e2c54
mov rcx, qword [rbp - 0x18]
call fcn.1402b7350
mov r8, qword [rbp - 0x68]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x68]
call fcn.140009b50
mov rcx, qword [rbp - 0x68]
call fcn.1402150f0
nop
mov r8, qword [rbp + 0x48]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x48]
call fcn.140009350
mov rcx, qword [rbp + 0x48]
call fcn.1402150f0
nop
mov r8, qword [rbp - 0x38]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x38]
call fcn.140009350
mov rcx, qword [rbp - 0x38]
call fcn.1402150f0
nop
lea rax, vtable.Core::Dictionary_class_Core::String__int_.0
mov qword [rbp], rax
mov rbx, qword [rbp + 8]
test rbx, rbx
je 0x1401e2ce9
mov rdi, qword [rbx]
cmp dword [rbx + 0x18], 0
jle 0x1401e2cd9
mov rcx, qword [rbx + 0x10]
call fcn.1402b7350
mov rcx, rbx
call fcn.1402150f0
mov rbx, rdi
test rdi, rdi
jne 0x1401e2cc7
mov al, 1
mov rcx, qword [rbp + 0xee0]
xor rcx, rsp
call fcn.1402b6d40
lea r11, [rsp + 0xff0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret