Function at 0x140013a20
Capabilities:
Access peb ldr_data
Create thread
Encode data using xor
Hash data using fnv
Query or enumerate registry value
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x570
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1400ba040]
xor rax, rsp
mov qword [rbp + 0x4f0], rax
xor r15d, r15d
mov rdx, qword [0x14022e920]
mov rcx, qword [0x14022d9b0]
test rdx, rdx
jne 0x140013ad2
test rcx, rcx
je 0x140013ab8
cmp dword [0x14022d804], r15d
je 0x140013ab8
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0x100]
mov rdx, qword [0x14022e7b0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x140013ab8
mov rdx, qword [rbp + 0x100]
jmp 0x140013ac2
mov rdx, r15
mov qword [rbp + 0x100], rdx
mov qword [0x14022e920], rdx
test rdx, rdx
je 0x140015ad9
test rcx, rcx
je 0x140013b10
cmp dword [0x14022d804], r15d
je 0x140013b10
add rdx, 8
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0xf8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x140013b10
mov rax, qword [rbp + 0xf8]
jmp 0x140013b1a
mov rax, r15
mov qword [rbp + 0xf8], rax
mov qword [0x14022e928], rax
test rax, rax
je 0x140015ad9
mov rdx, qword [0x14022e930]
test rdx, rdx
jne 0x140013b91
test rcx, rcx
je 0x140013b77
cmp dword [0x14022d804], r15d
je 0x140013b77
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0x140]
mov rdx, qword [0x14022e7b8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x140013b77
mov rdx, qword [rbp + 0x140]
jmp 0x140013b81
mov rdx, r15
mov qword [rbp + 0x140], rdx
mov qword [0x14022e930], rdx
test rdx, rdx
je 0x140015ad9
cmp qword [0x14022e938], r15
jne 0x140013c03
test rdx, rdx
jne 0x140013bab
mov qword [0x14022e938], r15
jmp 0x140015ad9
test rcx, rcx
je 0x140013be9
cmp dword [0x14022d804], r15d
je 0x140013be9
add rdx, 0x18
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0x148]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x140013be9
mov rax, qword [rbp + 0x148]
jmp 0x140013bf3
mov rax, r15
mov qword [rbp + 0x148], rax
mov qword [0x14022e938], rax
test rax, rax
je 0x140015ad9
cmp qword [0x14022e940], r15
jne 0x140013c60
test rcx, rcx
je 0x140013c46
cmp dword [0x14022d804], r15d
je 0x140013c46
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0x150]
mov rdx, qword [0x14022e7c8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140013c46
mov rax, qword [rbp + 0x150]
jmp 0x140013c50
mov rax, r15
mov qword [rbp + 0x150], rax
mov qword [0x14022e940], rax
test rax, rax
je 0x140015ad9
lea rcx, [0x14022e950]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x140013c7d
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov eax, dword [0x14022e99c]
cmp eax, 0x7fffffff
jne 0x140013c9e
dec eax
mov dword [0x14022e99c], eax
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rbx, qword [0x14022e9a0]
mov rdi, qword [0x14022e9a8]
cmp rbx, rdi
je 0x140013cd6
mov rcx, rbx
call fcn.14000b740
add rbx, 0x88
cmp rbx, rdi
jne 0x140013cb1
mov rbx, qword [0x14022e9a0]
mov rdi, rbx
mov qword [0x14022e9a8], rbx
cmp rdi, qword [0x14022e9b0]
je 0x140013d1d
lea rcx, [0x14022e9a0]
cmp rbx, rdi
jne 0x140013cf2
call fcn.1400097f0
jmp 0x140013d1d
sub rdi, rbx
movabs rax, 0x7878787878787879
imul rdi
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rbp + 0x60], rdx
lea rdx, [rbp + 0x60]
call fcn.14001dcf0
mov rdi, r15
movabs rsi, 0x100000001b3
movabs r12, 0xcbf29ce484222325
movabs r13, 0xf73bc34ed1c111a5
lea r14, [0x140000000]
xorps xmm6, xmm6
movss xmm7, dword [0x1400a92a4]
mov rcx, qword [0x14022e938]
test rcx, rcx
je 0x1400147b6
add rcx, 0x110
call fcn.14001d670
cmp rdi, rax
jae 0x1400147b6
mov rcx, qword [0x14022e938]
test rcx, rcx
je 0x1400147a0
add rcx, 0x100
call fcn.14001d670
test rax, rax
je 0x1400147a0
mov r10, qword [0x14022d9b0]
test r10, r10
je 0x140013de9
cmp dword [0x14022d804], 0
je 0x140013de9
mov ecx, edi
shl ecx, 4
movsxd rdx, ecx
add rdx, rax
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0x150]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x14022d9b0]
test eax, eax
je 0x140013de9
mov rdx, qword [rbp + 0x150]
jmp 0x140013df3
mov rdx, r15
mov qword [rbp + 0x150], rdx
mov qword [rbp + 0x100], rdx
test rdx, rdx
je 0x1400147a7
test r10, r10
je 0x140013e45
cmp dword [0x14022d804], 0
je 0x140013e45
add rdx, 0x280
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rbp + 0x148]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp + 0x100]
mov r10, qword [0x14022d9b0]
test eax, eax
jne 0x140013e4c
mov qword [rbp + 0x148], r15
comiss xmm6, dword [rbp + 0x148]
jae 0x1400147a7
test rdx, rdx
jne 0x140013e72
movaps xmm0, xmm6
movss dword [rbp + 0x160], xmm6
mov qword [rbp + 0x164], rdx
jmp 0x140013ebc
test r10, r10
je 0x140013eb0
cmp dword [0x14022d804], 0
je 0x140013eb0
add rdx, 0x90
mov qword [rsp + 0x20], r15
mov r9d, 0xc
lea r8, [rbp + 0x160]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140013eb0
movss xmm0, dword [rbp + 0x160]
jmp 0x140013ebc
mov qword [rbp + 0x160], r15
movd xmm0, r15d
movss xmm2, dword [rbp + 0x168]
addss xmm2, xmm7
movss xmm1, dword [rbp + 0x164]
unpcklps xmm0, xmm1
movsd qword [rbp + 0x30], xmm0
movss dword [rbp + 0x38], xmm2
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x50]
lea rcx, [0x14022e710]
call fcn.140015c80
mov r8, qword [rbp + 0x100]
movzx edx, r8b
xor rdx, r12
imul rdx, rsi
movzx eax, byte [rbp + 0x101]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x102]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x103]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x104]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x105]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x106]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x107]
xor rdx, rax
imul rdx, rsi
and rdx, qword [0x14022e9e8]
mov rax, rdx
add rax, rax
mov r10, qword [0x14022e9d0]
mov rcx, qword [r10 + rax*8 + 8]
mov r9, qword [0x14022e9c0]
cmp rcx, r9
je 0x140013fa8
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp r8, qword [rcx + 0x10]
je 0x140013fab
cmp rcx, rax
je 0x140013fa8
mov rcx, qword [rcx + 8]
cmp r8, qword [rcx + 0x10]
jne 0x140013f97
jmp 0x140013fab
mov rcx, r15
mov rax, r9
test rcx, rcx
cmovne rax, rcx
cmp rax, r9
jne 0x140014254
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], 0
lea rax, [rbp + 0xa8]
mov qword [rbp + 0x58], rax
mov dword [rbp + 0xf8], 0
mov eax, dword [rbp + 0xf8]
mov dword [rbp + 0xa8], eax
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xb8], r15
mov ecx, 0x18
call fcn.140098a00
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp + 0xb0], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], r15
mov qword [rbp + 0xd8], 7
mov qword [rbp + 0xe0], 8
mov dword [rbp + 0xa8], 0x3f800000
mov r8, rax
mov edx, 0x10
lea rcx, [rbp + 0xc0]
call fcn.1400099d0
nop
mov r8, qword [rbp + 0x100]
mov qword [rbp + 0x70], r8
mov dword [rbp + 0x78], edi
cmp r8, qword [0x14022e928]
sete byte [rbp + 0x80]
mov rcx, qword [0x14022d9b0]
test r8, r8
je 0x140014431
mov rdx, qword [0x14022d7d0]
add rdx, r8
test rcx, rcx
je 0x1400140e6
cmp dword [0x14022d804], 0
je 0x1400140e6
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rbp + 0x140]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r8, qword [rbp + 0x100]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x1400140e6
mov rax, qword [rbp + 0x140]
jmp 0x1400140f0
mov rax, r15
mov qword [rbp + 0x140], rax
test eax, eax
je 0x140014431
and eax, 0x1fc000
cmp eax, 0x8000
je 0x140014431
mov byte [rbp + 0x81], 1
mov dword [rbp + 0x7c], 0xffffffff
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x280]
lea rcx, [0x14022e9b8]
call fcn.14001d9e0
mov rbx, qword [rax]
mov rax, qword [rbp + 0x70]
mov qword [rbx + 0x18], rax
mov eax, dword [rbp + 0x78]
mov dword [rbx + 0x20], eax
mov eax, dword [rbp + 0x7c]
mov dword [rbx + 0x24], eax
movzx eax, byte [rbp + 0x80]
mov byte [rbx + 0x28], al
movzx eax, byte [rbp + 0x81]
mov byte [rbx + 0x29], al
lea rcx, [rbx + 0x30]
lea rax, [rbp + 0x88]
cmp rcx, rax
je 0x14001418e
lea rdx, [rbp + 0x88]
cmp qword [rbp + 0xa0], 0xf
cmova rdx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
call fcn.14001ca30
add rbx, 0x50
lea rax, [rbp + 0xa8]
cmp rbx, rax
je 0x1400141ee
mov qword [rbp + 0xf8], rbx
mov eax, dword [rbp + 0xa8]
mov dword [rbx], eax
lea rcx, [rbx + 8]
mov rdx, qword [rbp + 0xb0]
mov r8, rdx
mov rdx, qword [rdx]
call fcn.14001e460
mov rdx, qword [rbx + 0x10]
mov rcx, rbx
call fcn.14001d0c0
mov rdx, rax
mov rcx, rbx
call fcn.14001cf10
mov qword [rbp + 0xf8], r15
lea rcx, [rbp + 0xf8]
call fcn.14001cbd0
nop
lea rcx, [rbp + 0xa8]
call fcn.14000b7b0
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x14001423b
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014236
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400147af
call fcn.140098850
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], 0
lea rcx, [rbp + 0x190]
call fcn.140015b70
nop
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x220]
lea rcx, [0x14022e9b8]
call fcn.14001d9e0
mov rbx, qword [rax]
mov rax, qword [rbx + 0x18]
mov qword [rbp + 0x190], rax
mov eax, dword [rbx + 0x20]
mov dword [rbp + 0x198], eax
mov r8d, dword [rbx + 0x24]
mov dword [rbp + 0x19c], r8d
movzx eax, byte [rbx + 0x28]
mov byte [rbp + 0x1a0], al
movzx eax, byte [rbx + 0x29]
mov byte [rbp + 0x1a1], al
lea rdx, [rbx + 0x30]
lea rax, [rbp + 0x1a8]
cmp rax, rdx
je 0x1400142e2
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1400142cf
mov rdx, qword [rdx]
lea rcx, [rbp + 0x1a8]
call fcn.14001ca30
mov r8d, dword [rbp + 0x19c]
lea rdx, [rbx + 0x50]
lea rax, [rbp + 0x1c8]
cmp rax, rdx
je 0x14001435a
lea rax, [rbp + 0x1c8]
mov qword [rbp + 0xf8], rax
mov eax, dword [rdx]
mov dword [rbp + 0x1c8], eax
mov rdx, qword [rdx + 8]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rbp + 0x1d0]
call fcn.14001e460
mov rdx, qword [rbp + 0x1d8]
lea rcx, [rbp + 0x1c8]
call fcn.14001d0c0
mov rdx, rax
lea rcx, [rbp + 0x1c8]
call fcn.14001cf10
mov qword [rbp + 0xf8], r15
lea rcx, [rbp + 0xf8]
call fcn.14001cbd0
mov r8d, dword [rbp + 0x19c]
cmp qword [rbp + 0x1b8], 0
jne case.0x14001442f.0
movabs rbx, 0x7185c3f3be04b908
cmp byte [rbp + 0x1a1], 0
je 0x140014414
mov qword [rbp + 0xf8], r13
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0xf8], rbx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x18], rax
movabs rax, 0xf73bc34ed18241eb
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x2c0], rax
mov qword [rbp + 0xf8], rbx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x2c8], rax
movdqa xmm0, xmmword [rbp + 0x10]
xorps xmm0, xmmword [rbp + 0x2c0]
movdqa xmmword [rbp + 0x10], xmm0
lea rax, [rbp + 0x10]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1400143f3
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x1a8]
call fcn.14001ca30
mov r8d, dword [rbp + 0x19c]
movzx eax, byte [0x14022e8c8]
cmp eax, 9
ja case.0x14001442f.3
mov ecx, dword [r14 + rax*4 + 0x15b3c]
add rcx, r14
jmp rcx
mov byte [rbp + 0x81], 0
cmp byte [0x14022e918], 0
jne 0x14001410f
test r8, r8
je 0x1400144ea
mov rdx, qword [0x14022d7c0]
add rdx, r8
test rcx, rcx
je 0x140014492
cmp dword [0x14022d804], 0
je 0x140014492
mov qword [rsp + 0x20], r15
mov r9d, 8
lea r8, [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x14022d9b0]
test eax, eax
je 0x140014492
mov rdx, qword [rbp + 0xf0]
jmp 0x14001449c
mov rdx, r15
mov qword [rbp + 0xf0], rdx
test rdx, rdx
je 0x1400144ea
add rdx, qword [0x14022d7e0]
test rcx, rcx
je 0x1400144db
cmp dword [0x14022d804], 0
je 0x1400144db
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x1400144db
mov rax, qword [rbp + 0x60]
mov dword [rbp + 0x7c], eax
jmp 0x140014116
mov rax, r15
mov qword [rbp + 0x60], rax
mov dword [rbp + 0x7c], eax
jmp 0x140014116
mov eax, r15d
mov dword [rbp + 0x7c], eax
jmp 0x140014116
mov rcx, qword [0x14022e8d0]
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
jmp 0x140014511
mov rax, qword [0x14022e8d0]
cmp qword [rax + 8], 0
sete al
test al, al
jne case.0x14001442f.0
cmp qword [0x14022e8e8], 0
je case.0x14001442f.0
movzx edx, r8b
xor rdx, r12
imul rdx, rsi
movzx eax, byte [rbp + 0x19d]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x19e]
xor rdx, rax
imul rdx, rsi
movzx eax, byte [rbp + 0x19f]
xor rdx, rax
imul rdx, rsi
and rdx, qword [0x14022e908]
mov rax, rdx
add rax, rax
mov r10, qword [0x14022e8f0]
mov rcx, qword [r10 + rax*8 + 8]
mov r9, qword [0x14022e8e0]
cmp rcx, r9
je 0x1400145a2
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp r8d, dword [rcx + 0x10]
je 0x1400145a5
cmp rcx, rax
je 0x1400145a2
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x140014591
jmp 0x1400145a5
mov rcx, r15
mov rdx, r9
test rcx, rcx
cmovne rdx, rcx
cmp rdx, r9
je 0x1400145e5
cmp r8d, 0xffffffff
je 0x1400145e5
add rdx, 0x18
lea rax, [rbp + 0x1a8]
cmp rax, rdx
je case.0x14001442f.0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140014681
mov rdx, qword [rdx]
jmp 0x140014681
movabs rcx, 0xf73bc34ed18241eb
mov qword [rbp + 0xf8], rcx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0xf8], rbx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x118], rax
mov qword [rbp + 0xf8], rcx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x260], rax
mov qword [rbp + 0xf8], rbx
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x110], xmm0
lea rax, [rbp + 0x110]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140014670
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x1a8]
call fcn.14001ca30
mov rax, qword [rbp + 0x100]
test rax, rax
jne 0x1400146a4
mov qword [rbp], rax
movss dword [rbp + 8], xmm6
jmp 0x1400146e4
mov rcx, qword [0x14022d9b0]
test rcx, rcx
je 0x1400146e0
cmp dword [0x14022d804], 0
je 0x1400146e0
lea rdx, [rax + 0x90]
mov qword [rsp + 0x20], r15
mov r9d, 0xc
lea r8, [rbp]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
mov rax, qword [rbp + 0x100]
jne 0x1400146e4
mov qword [rbp], r15
movsd xmm0, qword [rbp]
movsd qword [rbp + 0x208], xmm0
mov ecx, dword [rbp + 8]
mov dword [rbp + 0x210], ecx
cmp byte [rbp + 0x1a0], 0
je 0x140014749
mov qword [0x14022e9f8], rax
mov dword [0x14022ea00], edi
movsd qword [0x14022ea0c], xmm0
mov dword [0x14022ea14], ecx
movsd qword [rbp + 0x40], xmm0
mov dword [rbp + 0x48], ecx
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x158]
lea rcx, [0x14022e710]
call fcn.140015c80
movsd xmm0, qword [rax]
movsd qword [0x14022ea04], xmm0
mov rax, qword [0x14022e9a8]
cmp rax, qword [0x14022e9b0]
je 0x140014775
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.140029300
add qword [0x14022e9a8], 0x88
jmp 0x14001478c
lea r8, [rbp + 0x190]
mov rdx, rax
lea rcx, [0x14022e9a0]
call fcn.1400224a0
nop
lea rcx, [rbp + 0x190]
call fcn.14000b740
inc rdi
jmp 0x140013d50
mov qword [rbp + 0x100], r15
inc rdi
jmp 0x140013d50
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, [0x14022e950]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
cmp qword [0x14022e898], 0
jne 0x140015ad9
cmp byte [0x14022e918], 0
jne 0x140015ad9
lea rdi, [0x14022e868]
cmp qword [0x14022e858], 0
je 0x1400147fd
cmp qword [0x14022e878], 0
jne 0x1400151b0
mov dword [rbp + 0xf8], 0x208
movabs rax, 0xf76fc308d1cd41b8
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x220], rax
movabs rax, 0x71c0c3a1be45b95f
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x228], rax
movabs rax, 0xe1cd659dbcc74b31
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x230], rax
movabs rax, 0xab54ad8cfc8db7d3
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x238], rax
movabs rax, 0xedbc848686246209
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x240], rax
movabs rax, 0xa3f1667a6d574335
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x248], rax
movabs rdx, 0x643f4b508af4a821
mov qword [rbp + 0x60], rdx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x250], rax
movabs rcx, 0x5dff3b52bd0911e
mov qword [rbp + 0x60], rcx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x258], rax
movabs rax, 0xf73bc34ed18241eb
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x280], rax
movabs rax, 0x7185c3f3be04b908
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x288], rax
movabs r14, 0xe1b965f4bc844b6d
mov qword [rbp + 0x60], r14
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x290], rax
movabs rsi, 0xab3aade9fcf7b7ba
mov qword [rbp + 0x60], rsi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x298], rax
movabs r13, 0xedfa84da867c624f
mov qword [rbp + 0x60], r13
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x2a0], rax
movabs r12, 0xa3bc661f6d21435c
mov qword [rbp + 0x60], r12
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x2a8], rax
mov qword [rbp + 0x60], rdx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x60], rcx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x2b8], rax
vmovdqu ymm0, ymmword [rbp + 0x220]
vpxor ymm1, ymm0, ymmword [rbp + 0x280]
vmovdqa ymmword [rbp + 0x220], ymm1
vmovdqu ymm0, ymmword [rbp + 0x240]
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vmovdqa ymmword [rbp + 0x240], ymm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
vzeroupper
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140014a44
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140014a44
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x40cbdc22
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014a3f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014a20
cmp edx, 0xdc27a36f
je 0x140014a49
test r9d, r9d
jne 0x140014a00
mov rax, qword [rax]
jmp 0x1400149d0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x20], rcx
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x220]
mov rcx, 0xffffffff80000001
call rax
test eax, eax
jne 0x140015198
movabs rax, 0xf74fc33dd1e341a7
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x280], rax
movabs rax, 0x71ebc386be56b928
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x288], rax
movabs rax, 0xe1da659bbcc84b4d
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x290], rax
movabs rax, 0xab55ad80fc83b7db
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x298], rax
movabs rax, 0xedfa84da867c6221
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x2a0], rax
mov qword [rbp + 0xf0], r12
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0xf73bc34ed18241eb
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x220], rax
movabs rbx, 0x7185c3f3be04b908
mov qword [rbp + 0xf0], rbx
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x228], rax
mov qword [rbp + 0xf0], r14
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x230], rax
mov qword [rbp + 0xf0], rsi
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x238], rax
mov qword [rbp + 0xf0], r13
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x240], rax
mov qword [rbp + 0xf0], r12
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x248], rax
vmovdqu ymm0, ymmword [rbp + 0x280]
vpxor ymm1, ymm0, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x280], ymm1
vmovdqa xmm0, xmmword [rbp + 0x2a0]
vxorps xmm0, xmm0, xmmword [rbp + 0x240]
vmovdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0xf8]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x2e0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x280]
mov rcx, qword [rbp + 0x60]
vzeroupper
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400150ed
movabs rax, 0x945aa012b0f6208f
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x280], rax
movabs rax, 0x19f6a281dd58dc60
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x288], rax
movabs rax, 0xe1b91c86c8e12602
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x290], rax
mov qword [rbp + 0xf0], rsi
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x298], rax
movabs rax, 0xf73bc34ed18241eb
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0xf0], rbx
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x228], rax
mov qword [rbp + 0xf0], r14
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x230], rax
mov qword [rbp + 0xf0], rsi
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x238], rax
vmovdqu ymm0, ymmword [rbp + 0x280]
vpxor ymm1, ymm0, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x280], ymm1
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x2c0], xmm0
mov qword [rbp + 0x2d0], r15
mov qword [rbp + 0x2d8], r15
lea rax, [rbp + 0x2e0]
mov r8, 0xffffffffffffffff
vzeroupper
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140014d50
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x2c0]
call fcn.14001e330
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x10]
call fcn.140092fb0
nop
lea rcx, [rbp + 0x280]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rcx + r8], 0
jne 0x140014d90
lea rdx, [rbp + 0x280]
mov rcx, rax
call fcn.1400098d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x220], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x230], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140014e23
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014e1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140014e1e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140098850
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
lea rax, [rbp + 0x220]
cmp qword [rbp + 0x238], 0xf
cmova rax, qword [rbp + 0x220]
mov qword [rbp + 0x260], rax
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x268], rax
call fcn.140097cf4
movaps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x260], xmm0
lea r8, [rbp + 0x260]
mov edx, eax
lea rcx, [rbp + 0x280]
call fcn.14000c3e0
nop
mov qword [rbp + 0x110], r15
lea rax, [0x14022c7e0]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x280]
call fcn.14000cec0
movzx ebx, al
cmp dword [rbp + 0x110], 0
jne 0x140015b19
mov rdx, qword [rbp + 0x298]
cmp rdx, 7
jbe 0x140014f0a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x280]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014f05
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140014f05
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140098850
mov qword [rbp + 0x290], r15
mov qword [rbp + 0x298], 7
mov word [rbp + 0x280], r15w
test bl, bl
je 0x140015090
xorps xmm0, xmm0
movups xmmword [rbp + 0x280], xmm0
mov qword [rbp + 0x290], r15
mov qword [rbp + 0x298], r15
lea rax, [rbp + 0x2e0]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x140014f52
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x280]
call fcn.14001e330
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x260]
call fcn.140092fb0
mov rbx, rax
lea rax, [0x14022e848]
cmp rax, rbx
je 0x14001500c
mov rdx, qword [0x14022e860]
cmp rdx, 0xf
jbe 0x140014fcf
mov rcx, qword [0x14022e848]
inc rdx
cmp rdx, 0x1000
jb 0x140014fca
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140015044
mov rcx, r8
call fcn.140098850
mov qword [0x14022e858], r15
mov qword [0x14022e860], 0xf
mov byte [0x14022e848], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x14022e848], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14022e858], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp + 0x278]
cmp rdx, 0xf
jbe 0x140015050
inc rdx
mov rcx, qword [rbp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001504b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001504b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140098850
mov qword [rbp + 0x270], r15
mov qword [rbp + 0x278], 0xf
mov byte [rbp + 0x260], 0
lea rdx, [rbp + 0x220]
cmp qword [rbp + 0x238], 0xf
cmova rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x230]
mov rcx, rdi
call fcn.14001ca30
nop
mov rdx, qword [rbp + 0x238]
cmp rdx, 0xf
jbe 0x1400150d4
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400150cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400150cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140098850
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], 0xf
mov byte [rbp + 0x220], 0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015174
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015174
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x3bb93d54
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001516f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015150
cmp edx, 0x84d73879
je 0x140015179
test r9d, r9d
jne 0x140015130
mov rax, qword [rax]
jmp 0x140015100
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov rcx, qword [rbp + 0x60]
call rax
cmp qword [0x14022e878], 0
jne 0x1400151b0
cmp qword [0x14022e898], 0
jne 0x140015a2e
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x2e0]
call sub.VCRUNTIME140.dll_memset
cmp qword [0x14022e880], 0xf
cmova rdi, qword [0x14022e868]
mov r8d, 1
mov rdx, rdi
lea rcx, [rbp + 0x2e0]
call fcn.14001c920
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x2e0], rbx
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2dc], edx
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], r15
mov eax, 0xf
mov qword [rbp + 0x188], rax
mov byte [rbp + 0x170], 0
cmp qword [rbp + 0x370], 0
je 0x140015978
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x2e0]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0x2e0]
call fcn.140022150
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator_bool_void_const___ptr64]
test al, al
je 0x14001593d
movabs r12, 0x855eb011a5f12087
mov qword [rbp + 0x60], r12
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x110], rax
movabs rax, 0x71e9b186e176dc7e
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
movabs rax, 0xf73bc34ed18241eb
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
movabs rax, 0x7185c3f3be04b908
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x110], xmm0
lea rax, [rbp + 0x110]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x140015322
lea r14, [rbp + 0x170]
mov r13, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x188]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x180]
cmp rdi, rsi
ja 0x1400153df
test rdi, rdi
jne 0x140015365
mov rbx, r15
jmp 0x1400153e6
mov r15, rsi
sub r15, rdi
movq rax, xmm0
movsx r12d, al
lea r8, [r14 + 1]
add r8, r15
sub r8, r14
mov edx, r12d
mov rcx, r14
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x1400153cb
mov r8, rdi
lea rdx, [rbp + 0x110]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140015786
inc rbx
lea r8, [r14 + 1]
add r8, r15
sub r8, rbx
mov edx, r12d
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x140015391
mov rcx, qword [rbp + 0x188]
xor r15d, r15d
movabs r12, 0x855eb011a5f12087
mov rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
je 0x140015936
add rbx, 0xf
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], r15
mov qword [rbp + 0x138], r15
cmp rsi, rbx
jb 0x140015b34
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x170]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x120]
call fcn.140004d70
nop
mov qword [rbp + 0x60], r12
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x110], rax
movabs rax, 0x7185c3f3be76dc7e
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
movabs rdi, 0xf73bc34ed18241eb
mov qword [rbp + 0x60], rdi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
movabs rbx, 0x7185c3f3be04b908
mov qword [rbp + 0x60], rbx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x110], xmm0
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x120]
call fcn.14001c2e0
lea rdx, [rax + 0xb]
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], r15
mov rcx, qword [rbp + 0x130]
cmp rcx, rdx
jb 0x140015b13
sub rcx, rdx
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
add rdx, rax
lea rcx, [rbp + 0x220]
call fcn.140004d70
mov rdx, qword [rbp + 0x138]
cmp rdx, 0xf
jbe 0x14001556d
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015568
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001592a
call fcn.140098850
movups xmm0, xmmword [rbp + 0x220]
movups xmmword [rbp + 0x120], xmm0
movups xmm1, xmmword [rbp + 0x230]
movups xmmword [rbp + 0x130], xmm1
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], 0xf
mov byte [rbp + 0x220], 0
movabs rax, 0xf73bc34ed18241d1
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x60], rbx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
mov qword [rbp + 0x60], rdi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
mov qword [rbp + 0x60], rbx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x110], xmm0
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x120]
call fcn.14001c2e0
mov r13, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], r15
mov r8, rax
cmp qword [rbp + 0x130], rax
cmovb r8, qword [rbp + 0x130]
lea rdx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rdx, qword [rbp + 0x120]
lea rcx, [rbp + 0x220]
call fcn.140004d70
mov rdx, qword [0x14022e8a0]
cmp rdx, 0xf
jbe 0x1400156a3
mov rcx, qword [0x14022e888]
inc rdx
cmp rdx, 0x1000
jb 0x14001569e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001592a
mov rcx, r8
call fcn.140098850
movups xmm0, xmmword [rbp + 0x220]
movups xmmword [0x14022e888], xmm0
movups xmm1, xmmword [rbp + 0x230]
movups xmmword [0x14022e898], xmm1
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], 0xf
mov byte [rbp + 0x220], 0
movabs rax, 0xf73bc34ed18241e0
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x60], rbx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
mov qword [rbp + 0x60], rdi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
mov qword [rbp + 0x60], rbx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x110], xmm0
lea rax, [rbp + 0x110]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x140015743
lea r14, [rbp + 0x120]
mov rdx, qword [rbp + 0x120]
mov r8, qword [rbp + 0x138]
cmp r8, 0xf
cmova r14, rdx
mov rsi, qword [rbp + 0x130]
cmp rdi, rsi
ja 0x14001581b
test rdi, rdi
jne 0x1400157a2
mov rbx, r15
jmp 0x140015822
sub rbx, r14
mov rcx, qword [rbp + 0x188]
xor r15d, r15d
movabs r12, 0x855eb011a5f12087
jmp 0x1400153e6
mov r15, rsi
sub r15, rdi
movq rax, xmm0
movsx r12d, al
lea r8, [r14 + 1]
add r8, r15
sub r8, r14
mov edx, r12d
mov rcx, r14
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x14001580a
nop
mov r8, rdi
lea rdx, [rbp + 0x110]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140015911
inc rbx
lea r8, [r14 + 1]
add r8, r15
sub r8, rbx
mov edx, r12d
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x1400157d0
mov rdx, qword [rbp + 0x120]
mov r8, qword [rbp + 0x138]
xor r15d, r15d
mov rbx, 0xffffffffffffffff
lea rcx, [r13 + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], r15
cmp rsi, rcx
jb 0x140015b13
sub rbx, r13
dec rbx
sub rsi, rcx
cmp rsi, rbx
cmovb rbx, rsi
lea rax, [rbp + 0x120]
cmp r8, 0xf
cmova rax, rdx
lea rdx, [rax + rcx]
mov r8, rbx
lea rcx, [rbp + 0x220]
call fcn.140004d70
mov rdx, qword [0x14022e8c0]
cmp rdx, 0xf
jbe 0x1400158b6
mov rcx, qword [0x14022e8a8]
inc rdx
cmp rdx, 0x1000
jb 0x1400158b1
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001592a
mov rcx, r8
call fcn.140098850
movups xmm0, xmmword [rbp + 0x220]
movups xmmword [0x14022e8a8], xmm0
movups xmm1, xmmword [rbp + 0x230]
movups xmmword [0x14022e8b8], xmm1
mov rdx, qword [rbp + 0x138]
cmp rdx, 0xf
jbe 0x140015936
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015931
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140015931
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
sub rbx, r14
mov rdx, qword [rbp + 0x120]
mov r8, qword [rbp + 0x138]
xor r15d, r15d
jmp 0x140015822
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140098850
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea rcx, [rbp + 0x2f0]
call fcn.14001c860
test rax, rax
jne 0x140015971
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x2e0]
add rcx, rax
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rax, qword [rbp + 0x188]
cmp rax, 0xf
jbe 0x1400159b6
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x170]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400159b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400159b1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140098850
mov qword [rbp + 0x180], r15
mov qword [rbp + 0x188], 0xf
mov byte [rbp + 0x170], 0
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x2e0], rbx
mov rax, qword [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2dc], edx
lea rcx, [rbp + 0x2f0]
call fcn.14001bbd0
lea rcx, [rbp + 0x2f8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x390]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
cmp qword [0x14022e898], 0
je 0x140015ad2
cmp qword [0x14022e8b8], 0
je 0x140015ad2
mov ecx, 8
call fcn.140098a00
lea rcx, [0x14022e710]
mov qword [rax], rcx
mov qword [rbp + 0x158], rax
lea rcx, [rbp + 0x118]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x140026010]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x110], rax
test rax, rax
je 0x140015abf
cmp dword [rbp + 0x118], 0
je 0x140015ab3
movaps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x260], xmm0
lea rcx, [rbp + 0x260]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x140015ab3
jmp 0x140015ad9
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rbp + 0x118], r15d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov byte [0x14022e918], 1
mov rcx, qword [rbp + 0x4f0]
xor rcx, rsp
call fcn.140098830
lea r11, [rsp + 0x570]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14001d160
nop
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0x110]
lea rcx, str.exists
call fcn.14000ce60
nop
call fcn.14001d160
int3