Function at 0x140139acb
Capabilities:
Query or enumerate registry value

Disassembly:
jmp 0x1401f9550
mov qword [rsp + 8], rcx
push r13
push rbp
push rsi
push rdi
mov eax, 0x1f78
call fcn.14013359f
sub rsp, rax
lea r13, [rsp + 0x30]
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
lea rdi, [rsp + 0x30]
mov ecx, 0x652
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x1fa8]
mov rax, qword [0x1405c6ac0]
xor rax, r13
mov qword [rbp + 0x1f10], rax
mov dword [rbp + 0x1ec4], 0
lea rcx, [0x1405f501a]
call fcn.140139936
nop
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x248], 0
jne 0x1401f9600
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0xa8]
call fcn.140132bea
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x248], rax
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x248], 0
jne 0x1401f9600
xor al, al
jmp 0x1401fac16
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0x248]
call fcn.1401373bb
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x250], rax
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x258], 0
je 0x1401f9651
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x250], 0
jne 0x1401f9651
mov byte [0x1405c81d4], 1
xor al, al
jmp 0x1401fac16
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x250], 0
jne 0x1401f9669
xor al, al
jmp 0x1401fac16
movzx eax, byte [0x1405c8480]
test eax, eax
jne 0x1401f978d
mov rax, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp + 0x1ed8], rax
lea rax, [rbp + 0xd14]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0xd34]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0xd54]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0xd14]
movzx r8d, byte [rbp + 0xd34]
movzx edx, byte [rbp + 0xd54]
lea rcx, [rbp + 0xce0]
call fcn.1401df330
mov rcx, rax
call fcn.140136e43
mov qword [rbp + 0x1ee0], rax
mov rdx, qword [rbp + 0x1ee0]
mov rcx, qword [rbp + 0x1ed8]
call fcn.140132cee
mov qword [rbp + 0x1ee8], rax
lea rdx, [0x140138e87]
mov rcx, qword [rbp + 0x1ee8]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov qword [rbp + 0x1ef0], rax
lea rdx, [0x140137a14]
mov rcx, qword [rbp + 0x1ef0]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov qword [rbp + 0x1ef8], rax
mov rax, qword [r13 + 0x1f70]
mov rax, qword [rax + 0x250]
mov qword [rbp + 0x1f00], rax
mov rdx, qword [rbp + 0x1f00]
mov rcx, qword [rbp + 0x1ef8]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___void_const____ptr64____ptr64]
mov qword [rbp + 0x1f08], rax
lea rdx, [0x140132492]
mov rcx, qword [rbp + 0x1f08]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov byte [0x1405c8480], 1
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x258], 0
jne 0x1401f97d7
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0xb0]
call fcn.140132bea
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x258], rax
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x258], 0
jne 0x1401f97d7
xor al, al
jmp 0x1401fac16
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x260], 0
jne 0x1401f9821
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0x258]
call fcn.14013a507
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x260], rax
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x260], 0
jne 0x1401f9821
xor al, al
jmp 0x1401fac16
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x270], 0
jne 0x1401f986b
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0xc0]
call fcn.140132bea
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x270], rax
mov rax, qword [r13 + 0x1f70]
cmp qword [rax + 0x270], 0
jne 0x1401f986b
xor al, al
jmp 0x1401fac16
mov rax, qword [r13 + 0x1f70]
add rax, 0x280
mov rcx, rax
call fcn.140136cbd
nop
mov rax, qword [r13 + 0x1f70]
add rax, 0x320
mov rcx, rax
call fcn.140138b4e
nop
mov rax, qword [r13 + 0x1f70]
add rax, 0x320
mov rcx, rax
call fcn.140135a2f
nop
mov qword [rbp + 8], 0
jmp 0x1401f98c2
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0x260]
call fcn.140138554
cmp qword [rbp + 8], rax
jae 0x1401f9e80
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rax + 0x260]
call fcn.140136beb
mov qword [rbp + 0x1ed8], rax
mov edx, dword [rbp + 8]
mov rcx, qword [rbp + 0x1ed8]
call fcn.1401349d1
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0
jne 0x1401f9915
jmp 0x1401f98b7
movabs rax, 0xccccccccccccc
cmp qword [rbp + 0x28], rax
jbe 0x1401f9927
jmp 0x1401f98b7
mov rcx, qword [rbp + 0x28]
call fcn.14013221c
movzx eax, al
test eax, eax
je 0x1401f993c
jmp 0x1401f98b7
mov rcx, qword [rbp + 0x28]
call fcn.140133ad1
xorps xmm1, xmm1
comiss xmm1, xmm0
jae 0x1401f9963
mov rcx, qword [rbp + 0x28]
call fcn.140133ad1
movss xmm1, dword [0x1403ce684]
comiss xmm1, xmm0
jb 0x1401f9968
jmp 0x1401f98b7
lea rcx, [rbp + 0x50]
call fcn.140139328
nop
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x50], rax
mov eax, dword [rbp + 8]
mov dword [rbp + 0x58], eax
mov rax, qword [r13 + 0x1f70]
mov rax, qword [rax + 0x250]
cmp qword [rbp + 0x28], rax
jne 0x1401f99a0
mov dword [rbp + 0x1ed4], 1
jmp 0x1401f99aa
mov dword [rbp + 0x1ed4], 0
movzx eax, byte [rbp + 0x1ed4]
mov byte [rbp + 0x60], al
mov rcx, qword [rbp + 0x28]
call fcn.140134094
mov byte [rbp + 0x61], al
mov rax, qword [r13 + 0x1f70]
mov qword [rbp + 0x1ed8], rax
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0xd98]
mov rcx, qword [rbp + 0x1ed8]
call fcn.140133ba3
mov qword [rbp + 0x1ee0], rax
mov rax, qword [rbp + 0x1ee0]
mov qword [rbp + 0x1ee8], rax
mov rax, qword [r13 + 0x1f70]
mov qword [rbp + 0x1ef0], rax
lea rdx, [rbp + 0xdc8]
mov rcx, qword [rbp + 0x1ef0]
call fcn.14013767c
mov qword [rbp + 0x1ef8], rax
mov rax, qword [rbp + 0x1ef8]
mov qword [rbp + 0x1f00], rax
mov rdx, qword [rbp + 0x1f00]
mov rcx, qword [rbp + 0x1ee8]
call fcn.1401373ed
mov byte [rbp + 0xd74], al
lea rcx, [rbp + 0xdc8]
call fcn.1401385a9
lea rcx, [rbp + 0xd98]
call fcn.1401385a9
movzx eax, byte [rbp + 0xd74]
test eax, eax
je 0x1401f9a75
mov byte [rbp + 0x98], 1
jmp 0x1401f9a7c
mov byte [rbp + 0x98], 0
movzx eax, byte [rbp + 0x61]
test eax, eax
jne 0x1401f9a9a
mov rcx, qword [rbp + 0x28]
call fcn.1401342b0
mov rcx, rax
call fcn.140133cb1
mov dword [rbp + 0x5c], eax
jmp 0x1401f9aa1
mov dword [rbp + 0x5c], 0xffffffff
mov rax, qword [0x1405c8418]
mov rcx, qword [rbp + 0x28]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14013701e
add rax, 0x68
mov rcx, rax
call fcn.140132bea
add rax, 0x178
mov rcx, rax
call fcn.140132bea
mov qword [rbp + 0x90], rax
lea rcx, [rbp + 0x110]
call fcn.1401392d8
nop
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x110]
call fcn.14013598a
nop
lea rcx, [rbp + 0x128]
call fcn.140133ae0
movzx eax, al
test eax, eax
je 0x1401f9ce2
mov rax, qword [r13 + 0x1f70]
add rax, 0x1e0
mov rcx, rax
call fcn.1401386b7
movzx eax, al
test eax, eax
jne 0x1401f9ce2
mov rax, qword [r13 + 0x1f70]
add rax, 0x1f0
mov rcx, rax
call fcn.140134274
movzx eax, al
test eax, eax
jne 0x1401f9ce2
mov edx, 0x18
lea rcx, [rbp + 0x1e8]
call fcn.140134e18
mov rax, qword [r13 + 0x1f70]
add rax, 0x1f0
mov qword [rbp + 0x1ed8], rax
lea r8, [rbp + 0x11c]
lea rdx, [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1ed8]
call fcn.140139b16
nop
mov rax, qword [r13 + 0x1f70]
add rax, 0x1f0
mov qword [rbp + 0x1ed8], rax
lea rdx, [rbp + 0xe18]
mov rcx, qword [rbp + 0x1ed8]
call fcn.1401369ca
mov qword [rbp + 0x1ee0], rax
mov eax, dword [rbp + 0x1ec4]
or eax, 1
mov dword [rbp + 0x1ec4], eax
mov rdx, qword [rbp + 0x1ee0]
lea rcx, [rbp + 0x1e8]
call fcn.1401344a9
movzx eax, al
test eax, eax
je 0x1401f9bfc
cmp dword [rbp + 0x11c], 0xffffffff
je 0x1401f9bfc
mov dword [rbp + 0x1ee8], 1
jmp 0x1401f9c06
mov dword [rbp + 0x1ee8], 0
movzx eax, byte [rbp + 0x1ee8]
mov byte [rbp + 0xdf4], al
mov eax, dword [rbp + 0x1ec4]
and eax, 1
test eax, eax
je 0x1401f9c34
and dword [rbp + 0x1ec4], 0xfffffffe
lea rcx, [rbp + 0xe18]
call fcn.14013244c
nop
movzx eax, byte [rbp + 0xdf4]
test eax, eax
je 0x1401f9c61
lea rcx, [rbp + 0x1e8]
call fcn.140134daa
add rax, 8
mov rdx, rax
lea rcx, [rbp + 0x128]
call fcn.1401382c0
nop
jmp 0x1401f9cd5
lea rax, [rbp + 0xe74]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0xe94]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0xeb4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0xe74]
movzx r8d, byte [rbp + 0xe94]
movzx edx, byte [rbp + 0xeb4]
lea rcx, [rbp + 0xe50]
call fcn.1401e0200
mov rcx, rax
call fcn.14013963e
mov rdx, rax
lea rcx, [rbp + 0x128]
call fcn.14013245b
nop
lea rcx, [rbp + 0x1e8]
call fcn.14013244c
nop
lea rdx, [rbp + 0xed4]
mov rcx, qword [rbp + 0x28]
call fcn.140137e2e
lea rcx, [rbp + 0x1b0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0xc
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xef8]
mov qword [rbp + 0xfc8], rax
lea rdx, [rbp + 0x110]
mov rcx, qword [rbp + 0xfc8]
call fcn.140133fd6
mov qword [rbp + 0x1ed8], rax
mov r9d, 0x796e
mov r8, qword [rbp + 0x1ed8]
lea rdx, [rbp + 0xfe4]
mov rcx, qword [r13 + 0x1f70]
call fcn.140134116
lea rcx, [rbp + 0x1e10]
mov rdi, rcx
mov rsi, rax
mov ecx, 0xc
rep movsb byte [rdi], byte [rsi]
lea r8, [rbp + 0x1e10]
lea rdx, [rbp + 0x1004]
mov rcx, qword [r13 + 0x1f70]
call fcn.140134c9c
mov rax, qword [rax]
mov qword [rbp + 0x1c0], rax
mov rcx, qword [rbp + 0x28]
call fcn.140136a01
mov byte [rbp + 0x1bc], al
movzx eax, byte [rbp + 0x120]
test eax, eax
je 0x1401f9e3c
mov rax, qword [r13 + 0x1f70]
mov rcx, qword [rbp + 0x28]
mov qword [rax + 0x340], rcx
mov rax, qword [r13 + 0x1f70]
movzx ecx, byte [rbp + 0x61]
mov byte [rax + 0x240], cl
mov rax, qword [r13 + 0x1f70]
mov ecx, dword [rbp + 8]
mov dword [rax + 0x348], ecx
mov rax, qword [r13 + 0x1f70]
lea rcx, [rbp + 0x1b0]
lea rdi, [rax + 0x354]
mov rsi, rcx
mov ecx, 0xc
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1e40]
lea rcx, [rbp + 0x1b0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0xc
rep movsb byte [rdi], byte [rsi]
lea r8, [rbp + 0x1e40]
lea rdx, [rbp + 0x1024]
mov rcx, qword [r13 + 0x1f70]
call fcn.140134c9c
mov rax, qword [rax]
mov rcx, qword [r13 + 0x1f70]
mov qword [rcx + 0x34c], rax
mov rax, qword [r13 + 0x1f70]
add rax, 0x320
mov qword [rbp + 0x1ed8], rax
lea rdx, [rbp + 0x110]
mov rcx, qword [rbp + 0x1ed8]
call fcn.140132244
nop
lea rcx, [rbp + 0x110]
call fcn.140139d96
nop
lea rcx, [rbp + 0x50]
call fcn.140137b0e
nop
jmp 0x1401f98b7
mov rax, qword [r13 + 0x1f70]
add rax, 0x280
mov rcx, rax
call fcn.14013a2a5
nop
mov rax, qword [r13 + 0x1f70]
movzx eax, byte [rax + 0x240]
test eax, eax
jne 0x1401fac14
mov rax, qword [r13 + 0x1f70]
add rax, 0x190
mov rcx, rax
call fcn.14013765e
cmp rax, 2
jae 0x1401fac14
mov rax, qword [r13 + 0x1f70]
add rax, 0x140
mov rcx, rax
call fcn.140133ae0
movzx eax, al
test eax, eax
jne 0x1401f9f07
mov rax, qword [r13 + 0x1f70]
add rax, 0x168
mov rcx, rax
call fcn.140133ae0
movzx eax, al
test eax, eax
je 0x1401fa37e
mov dword [rbp + 0x464], 0x208
lea rax, [rbp + 0x218]
mov qword [rbp + 0x1068], rax
mov dword [rbp + 0x1084], 0x20019
mov dword [rbp + 0x10a4], 0
lea rax, [rbp + 0x1154]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1174]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1194]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1154]
movzx r8d, byte [rbp + 0x1174]
movzx edx, byte [rbp + 0x1194]
lea rcx, [rbp + 0x1100]
call fcn.1401e1230
mov rcx, rax
call fcn.1401358f9
mov qword [rbp + 0x10c8], rax
mov qword [rbp + 0x11b8], 0xffffffff80000001
lea rax, [rbp + 0x1068]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1084]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x10a4]
lea r8, [rbp + 0x10c8]
lea rdx, [rbp + 0x11b8]
lea rcx, [rbp + 0x1044]
call fcn.14013619b
test eax, eax
jne 0x1401fa37e
lea rax, [rbp + 0x1234]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1254]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1274]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1234]
movzx r8d, byte [rbp + 0x1254]
movzx edx, byte [rbp + 0x1274]
lea rcx, [rbp + 0x11e0]
call fcn.1401e1fe0
mov rcx, rax
call fcn.1401327ee
mov qword [rbp + 0x1ed8], rax
mov rax, qword [rbp + 0x218]
mov qword [rbp + 0x1ee0], rax
lea rax, [rbp + 0x464]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x240]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x1ed8]
mov rcx, qword [rbp + 0x1ee0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1401fa36a
lea rax, [rbp + 0x12d4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x12f4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1314]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x12d4]
movzx r8d, byte [rbp + 0x12f4]
movzx edx, byte [rbp + 0x1314]
lea rcx, [rbp + 0x12a0]
call fcn.1401e2d00
mov rcx, rax
call fcn.140132b86
mov qword [rbp + 0x1ed8], rax
lea rax, [rbp + 0x1338]
mov qword [rbp + 0x1378], rax
lea rdx, [rbp + 0x240]
mov rcx, qword [rbp + 0x1378]
call fcn.1401347a6
mov qword [rbp + 0x1ee0], rax
mov rdx, qword [rbp + 0x1ee0]
lea rcx, [rbp + 0x1398]
call fcn.1401356c9
mov qword [rbp + 0x1ee8], rax
mov rax, qword [rbp + 0x1ee8]
mov qword [rbp + 0x1ef0], rax
mov rax, qword [rbp + 0x1ef0]
mov qword [rbp + 0x1ef8], rax
mov r8, qword [rbp + 0x1ed8]
mov rdx, qword [rbp + 0x1ef8]
lea rcx, [rbp + 0x488]
call fcn.140138ea0
nop
lea rcx, [rbp + 0x1398]
call fcn.1401335f9
nop
xor r8d, r8d
lea rdx, [rbp + 0x488]
lea rcx, [rbp + 0x13f8]
call fcn.140137f64
nop
lea rcx, [rbp + 0x13f8]
call fcn.140135647
mov byte [rbp + 0x13d4], al
lea rcx, [rbp + 0x13f8]
call fcn.140138e4b
movzx eax, byte [rbp + 0x13d4]
test eax, eax
je 0x1401fa35d
lea rax, [rbp + 0x1438]
mov qword [rbp + 0x1478], rax
lea rdx, [rbp + 0x240]
mov rcx, qword [rbp + 0x1478]
call fcn.1401347a6
mov qword [rbp + 0x1ed8], rax
mov rdx, qword [rbp + 0x1ed8]
lea rcx, [rbp + 0x1498]
call fcn.1401356c9
mov qword [rbp + 0x1ee0], rax
mov rax, qword [r13 + 0x1f70]
add rax, 0x140
mov rdx, qword [rbp + 0x1ee0]
mov rcx, rax
call fcn.140133fcc
lea rcx, [rbp + 0x1498]
call fcn.1401335f9
nop
lea rax, [rbp + 0x1514]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1534]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1554]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1514]
movzx r8d, byte [rbp + 0x1534]
movzx edx, byte [rbp + 0x1554]
lea rcx, [rbp + 0x14e0]
call fcn.1401e3000
mov rcx, rax
call fcn.140132b86
mov qword [rbp + 0x1ed8], rax
lea rax, [rbp + 0x1578]
mov qword [rbp + 0x15b8], rax
lea rdx, [rbp + 0x240]
mov rcx, qword [rbp + 0x15b8]
call fcn.1401347a6
mov qword [rbp + 0x1ee0], rax
mov rdx, qword [rbp + 0x1ee0]
lea rcx, [rbp + 0x15d8]
call fcn.1401356c9
mov qword [rbp + 0x1ee8], rax
mov rax, qword [rbp + 0x1ee8]
mov qword [rbp + 0x1ef0], rax
mov rax, qword [rbp + 0x1ef0]
mov qword [rbp + 0x1ef8], rax
mov r8, qword [rbp + 0x1ed8]
mov rdx, qword [rbp + 0x1ef8]
lea rcx, [rbp + 0x1618]
call fcn.140138ea0
mov qword [rbp + 0x1f00], rax
mov rax, qword [r13 + 0x1f70]
add rax, 0x168
mov rdx, qword [rbp + 0x1f00]
mov rcx, rax
call fcn.140133fcc
lea rcx, [rbp + 0x1618]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x15d8]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x488]
call fcn.1401335f9
nop
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x1654]
call fcn.14013525a
nop
mov rax, qword [r13 + 0x1f70]
add rax, 0x168
mov rcx, rax
call fcn.140133ae0
movzx eax, al
test eax, eax
je 0x1401fa3ba
mov rax, qword [r13 + 0x1f70]
add rax, 0x190
mov rcx, rax
call fcn.140133ae0
movzx eax, al
test eax, eax
je 0x1401faa1b
mov edx, 0x110
lea rcx, [rbp + 0x4d0]
call fcn.14013718b
mov rax, qword [r13 + 0x1f70]
add rax, 0x168
mov dword [rsp + 0x20], 1
mov r9d, 0x40
mov r8d, 0x20
mov rdx, rax
lea rcx, [rbp + 0x4d0]
call fcn.140137c53
nop
lea rcx, [rbp + 0x5f8]
call fcn.1401398a0
nop
lea rcx, [rbp + 0x4d0]
call fcn.140132361
movzx eax, al
test eax, eax
je 0x1401faa01
mov edx, 0x20
lea rcx, [rbp + 0x638]
call fcn.140138581
lea rcx, [rbp + 0x1674]
call fcn.140133b08
mov qword [rbp + 0x1ed8], rax
lea rcx, [rbp + 0x1698]
call fcn.14013791f
lea rcx, [rbp + 0x1728]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1788]
lea rcx, [rbp + 0x1728]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdx, [rbp + 0x4d0]
lea rcx, [rbp + 0x16c8]
call fcn.1401368d0
lea rcx, [rbp + 0x16f8]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1758]
lea rcx, [rbp + 0x16f8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1ea0]
lea rcx, [rbp + 0x1788]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0x1e70]
lea rcx, [rbp + 0x1758]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov r9, qword [rbp + 0x1ed8]
lea r8, [rbp + 0x1ea0]
lea rdx, [rbp + 0x1e70]
lea rcx, [rbp + 0x638]
call fcn.1401391b6
nop
lea rcx, [rbp + 0x17f4]
call fcn.140133b08
mov qword [rbp + 0x1ed8], rax
lea rax, [rbp + 0x1818]
mov qword [rbp + 0x1848], rax
mov rdx, qword [rbp + 0x1848]
lea rcx, [rbp + 0x638]
call fcn.140132884
mov qword [rbp + 0x1ee0], rax
mov rax, qword [rbp + 0x1ee0]
mov qword [rbp + 0x1ee8], rax
lea rax, [rbp + 0x1868]
mov qword [rbp + 0x1898], rax
mov rdx, qword [rbp + 0x1898]
lea rcx, [rbp + 0x638]
call fcn.14013527d
mov qword [rbp + 0x1ef0], rax
mov rax, qword [rbp + 0x1ef0]
mov qword [rbp + 0x1ef8], rax
mov r9, qword [rbp + 0x1ed8]
mov r8, qword [rbp + 0x1ee8]
mov rdx, qword [rbp + 0x1ef8]
lea rcx, [rbp + 0x17b8]
call fcn.140134f08
mov qword [rbp + 0x1f00], rax
mov rdx, qword [rbp + 0x1f00]
lea rcx, [rbp + 0x5f8]
call fcn.140133fcc
lea rcx, [rbp + 0x17b8]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x5f8]
call fcn.14013765e
test rax, rax
jbe 0x1401fa9e7
lea rax, [rbp + 0x18e4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1904]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1924]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x18e4]
movzx r8d, byte [rbp + 0x1904]
movzx edx, byte [rbp + 0x1924]
lea rcx, [rbp + 0x18c0]
call fcn.1401e3300
mov rcx, rax
call fcn.140132b90
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x5f8]
call fcn.140134b89
mov qword [rbp + 0x678], rax
cmp qword [rbp + 0x678], 0xffffffffffffffff
je 0x1401fa9e7
mov rax, qword [rbp + 0x678]
add rax, 0xf
mov r9, 0xffffffffffffffff
mov r8, rax
lea rdx, [rbp + 0x698]
lea rcx, [rbp + 0x5f8]
call fcn.140135d1d
nop
lea rax, [rbp + 0x1974]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1994]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x19b4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1974]
movzx r8d, byte [rbp + 0x1994]
movzx edx, byte [rbp + 0x19b4]
lea rcx, [rbp + 0x1950]
call fcn.1401e34f0
mov rcx, rax
call fcn.140132b90
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.140134b89
test rax, rax
je 0x1401fa7e6
lea rax, [rbp + 0x1a04]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1a24]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1a44]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1a04]
movzx r8d, byte [rbp + 0x1a24]
movzx edx, byte [rbp + 0x1a44]
lea rcx, [rbp + 0x19e0]
call fcn.1401e36e0
mov rcx, rax
call fcn.140132b90
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.140134b89
add rax, 0xf
mov r9, 0xffffffffffffffff
mov r8, rax
lea rdx, [rbp + 0x1a68]
lea rcx, [rbp + 0x698]
call fcn.140135d1d
mov qword [rbp + 0x1ed8], rax
mov rdx, qword [rbp + 0x1ed8]
lea rcx, [rbp + 0x698]
call fcn.140133fcc
lea rcx, [rbp + 0x1a68]
call fcn.1401335f9
nop
lea rax, [rbp + 0x1ad4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1af4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1b14]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1ad4]
movzx r8d, byte [rbp + 0x1af4]
movzx edx, byte [rbp + 0x1b14]
lea rcx, [rbp + 0x1ab0]
call fcn.1401de250
mov rcx, rax
call fcn.1401385d6
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.140134b89
mov qword [rbp + 0x678], rax
mov rax, qword [rbp + 0x678]
add rax, 0xb
mov r9, 0xffffffffffffffff
mov r8, rax
lea rdx, [rbp + 0x1b38]
lea rcx, [rbp + 0x698]
call fcn.140135d1d
mov qword [rbp + 0x1ed8], rax
mov rdx, qword [rbp + 0x1ed8]
lea rcx, [rbp + 0x698]
call fcn.140133fcc
lea rcx, [rbp + 0x1b38]
call fcn.1401335f9
nop
lea rax, [rbp + 0x1ba4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1bc4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1be4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1ba4]
movzx r8d, byte [rbp + 0x1bc4]
movzx edx, byte [rbp + 0x1be4]
lea rcx, [rbp + 0x1b80]
call fcn.1401de440
mov rcx, rax
call fcn.14013398c
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.140134b89
mov qword [rbp + 0x678], rax
mov r9, qword [rbp + 0x678]
xor r8d, r8d
lea rdx, [rbp + 0x1c08]
lea rcx, [rbp + 0x698]
call fcn.140135d1d
mov qword [rbp + 0x1ed8], rax
mov rax, qword [r13 + 0x1f70]
add rax, 0x190
mov rdx, qword [rbp + 0x1ed8]
mov rcx, rax
call fcn.140133fcc
lea rcx, [rbp + 0x1c08]
call fcn.1401335f9
nop
mov rax, qword [rbp + 0x678]
add rax, 5
mov rcx, qword [rbp + 0x678]
inc rcx
mov r9, rax
mov r8, rcx
lea rdx, [rbp + 0x1c48]
lea rcx, [rbp + 0x698]
call fcn.140135d1d
mov qword [rbp + 0x1ed8], rax
mov rax, qword [r13 + 0x1f70]
add rax, 0x1b8
mov rdx, qword [rbp + 0x1ed8]
mov rcx, rax
call fcn.140133fcc
lea rcx, [rbp + 0x1c48]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x698]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x4d0]
call fcn.1401362d1
nop
lea rcx, [rbp + 0x638]
call fcn.140138d88
nop
lea rcx, [rbp + 0x5f8]
call fcn.1401335f9
nop
lea rcx, [rbp + 0x4d0]
call fcn.1401332ac
nop
mov rax, qword [r13 + 0x1f70]
add rax, 0x190
mov rcx, rax
call fcn.14013765e
cmp rax, 5
jb 0x1401faa51
mov rax, qword [r13 + 0x1f70]
add rax, 0x1b8
mov rcx, rax
call fcn.14013765e
cmp rax, 2
jae 0x1401faa64
mov rax, qword [r13 + 0x1f70]
mov byte [rax + 0x240], 1
jmp 0x1401fac14
mov rax, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp + 0x1ed8], rax
lea rax, [rbp + 0x1d54]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1d74]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1d94]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1d54]
movzx r8d, byte [rbp + 0x1d74]
movzx edx, byte [rbp + 0x1d94]
lea rcx, [rbp + 0x1d20]
call fcn.1401de5a0
mov rcx, rax
call fcn.140132b86
mov qword [rbp + 0x1ee0], rax
mov rdx, qword [rbp + 0x1ee0]
mov rcx, qword [rbp + 0x1ed8]
call fcn.140132cee
mov rcx, qword [r13 + 0x1f70]
add rcx, 0x190
mov rdx, rcx
mov rcx, rax
call fcn.140138a63
mov qword [rbp + 0x1ee8], rax
lea rax, [rbp + 0x1cb4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1cd4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rbp + 0x1cf4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx r9d, byte [rbp + 0x1cb4]
movzx r8d, byte [rbp + 0x1cd4]
movzx edx, byte [rbp + 0x1cf4]
lea rcx, [rbp + 0x1c90]
call fcn.1401de7d0
mov rcx, rax
call fcn.14013398c
mov qword [rbp + 0x1ef0], rax
mov rdx, qword [rbp + 0x1ef0]
mov rcx, qword [rbp + 0x1ee8]
call fcn.140132cee
mov rcx, qword [r13 + 0x1f70]
add rcx, 0x1b8
mov rdx, rcx
mov rcx, rax
call fcn.140138a63
mov qword [rbp + 0x1ef8], rax
lea rdx, [0x140132492]
mov rcx, qword [rbp + 0x1ef8]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rdx, qword [r13 + 0x1f70]
lea rcx, [rbp + 0x1de8]
call fcn.1401eba90
mov rdx, rax
lea rcx, [rbp + 0x1db8]
call fcn.1401dea30
mov qword [rbp + 0x1ed8], rax
mov rax, qword [rbp + 0x1ed8]
mov qword [rbp + 0x1ee0], rax
mov rcx, qword [rbp + 0x1ee0]
call fcn.14013a093
nop
lea rcx, [rbp + 0x1db8]
call fcn.14013561a
nop
mov al, 1
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x1403ca160]
call fcn.1401383d8
mov rax, rdi
mov rcx, qword [rbp + 0x1f10]
xor rcx, r13
call fcn.1401359d0
lea rsp, [r13 + 0x1f48]
pop rdi
pop rsi
pop rbp
pop r13
ret