Function at 0x140014300
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 0x1400143b2
test rcx, rcx
je 0x140014398
cmp dword [0x14022d804], r15d
je 0x140014398
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 0x140014398
mov rdx, qword [rbp + 0x100]
jmp 0x1400143a2
mov rdx, r15
mov qword [rbp + 0x100], rdx
mov qword [0x14022e920], rdx
test rdx, rdx
je 0x1400163b9
test rcx, rcx
je 0x1400143f0
cmp dword [0x14022d804], r15d
je 0x1400143f0
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 0x1400143f0
mov rax, qword [rbp + 0xf8]
jmp 0x1400143fa
mov rax, r15
mov qword [rbp + 0xf8], rax
mov qword [0x14022e928], rax
test rax, rax
je 0x1400163b9
mov rdx, qword [0x14022e930]
test rdx, rdx
jne 0x140014471
test rcx, rcx
je 0x140014457
cmp dword [0x14022d804], r15d
je 0x140014457
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 0x140014457
mov rdx, qword [rbp + 0x140]
jmp 0x140014461
mov rdx, r15
mov qword [rbp + 0x140], rdx
mov qword [0x14022e930], rdx
test rdx, rdx
je 0x1400163b9
cmp qword [0x14022e938], r15
jne 0x1400144e3
test rdx, rdx
jne 0x14001448b
mov qword [0x14022e938], r15
jmp 0x1400163b9
test rcx, rcx
je 0x1400144c9
cmp dword [0x14022d804], r15d
je 0x1400144c9
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 0x1400144c9
mov rax, qword [rbp + 0x148]
jmp 0x1400144d3
mov rax, r15
mov qword [rbp + 0x148], rax
mov qword [0x14022e938], rax
test rax, rax
je 0x1400163b9
cmp qword [0x14022e940], r15
jne 0x140014540
test rcx, rcx
je 0x140014526
cmp dword [0x14022d804], r15d
je 0x140014526
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 0x140014526
mov rax, qword [rbp + 0x150]
jmp 0x140014530
mov rax, r15
mov qword [rbp + 0x150], rax
mov qword [0x14022e940], rax
test rax, rax
je 0x1400163b9
lea rcx, [0x14022e950]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14001455d
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 0x14001457e
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 0x1400145b6
mov rcx, rbx
call fcn.14000bfd0
add rbx, 0x88
cmp rbx, rdi
jne 0x140014591
mov rbx, qword [0x14022e9a0]
mov rdi, rbx
mov qword [0x14022e9a8], rbx
cmp rdi, qword [0x14022e9b0]
je 0x1400145fd
lea rcx, [0x14022e9a0]
cmp rbx, rdi
jne 0x1400145d2
call fcn.14000a080
jmp 0x1400145fd
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.14001e610
mov rdi, r15
movabs rsi, 0x100000001b3
movabs r12, 0xcbf29ce484222325
movabs r13, 0x6260932390cbcbab
lea r14, [0x140000000]
xorps xmm6, xmm6
movss xmm7, dword [0x1400a9274]
mov rcx, qword [0x14022e938]
test rcx, rcx
je 0x140015096
add rcx, 0x110
call fcn.14001df90
cmp rdi, rax
jae 0x140015096
mov rcx, qword [0x14022e938]
test rcx, rcx
je 0x140015080
add rcx, 0x100
call fcn.14001df90
test rax, rax
je 0x140015080
mov r10, qword [0x14022d9b0]
test r10, r10
je 0x1400146c9
cmp dword [0x14022d804], 0
je 0x1400146c9
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 0x1400146c9
mov rdx, qword [rbp + 0x150]
jmp 0x1400146d3
mov rdx, r15
mov qword [rbp + 0x150], rdx
mov qword [rbp + 0x100], rdx
test rdx, rdx
je 0x140015087
test r10, r10
je 0x140014725
cmp dword [0x14022d804], 0
je 0x140014725
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 0x14001472c
mov qword [rbp + 0x148], r15
comiss xmm6, dword [rbp + 0x148]
jae 0x140015087
test rdx, rdx
jne 0x140014752
movaps xmm0, xmm6
movss dword [rbp + 0x160], xmm6
mov qword [rbp + 0x164], rdx
jmp 0x14001479c
test r10, r10
je 0x140014790
cmp dword [0x14022d804], 0
je 0x140014790
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 0x140014790
movss xmm0, dword [rbp + 0x160]
jmp 0x14001479c
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.140016560
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 0x140014888
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp r8, qword [rcx + 0x10]
je 0x14001488b
cmp rcx, rax
je 0x140014888
mov rcx, qword [rcx + 8]
cmp r8, qword [rcx + 0x10]
jne 0x140014877
jmp 0x14001488b
mov rcx, r15
mov rax, r9
test rcx, rcx
cmovne rax, rcx
cmp rax, r9
jne 0x140014b34
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.140099320
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.14000a260
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 0x140014d11
mov rdx, qword [0x14022d7d0]
add rdx, r8
test rcx, rcx
je 0x1400149c6
cmp dword [0x14022d804], 0
je 0x1400149c6
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 0x1400149c6
mov rax, qword [rbp + 0x140]
jmp 0x1400149d0
mov rax, r15
mov qword [rbp + 0x140], rax
test eax, eax
je 0x140014d11
and eax, 0x1fc000
cmp eax, 0x8000
je 0x140014d11
mov byte [rbp + 0x81], 1
mov dword [rbp + 0x7c], 0xffffffff
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x280]
lea rcx, [0x14022e9b8]
call fcn.14001e300
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 0x140014a6e
lea rdx, [rbp + 0x88]
cmp qword [rbp + 0xa0], 0xf
cmova rdx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x98]
call fcn.14001d350
add rbx, 0x50
lea rax, [rbp + 0xa8]
cmp rbx, rax
je 0x140014ace
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.14001ed80
mov rdx, qword [rbx + 0x10]
mov rcx, rbx
call fcn.14001d9e0
mov rdx, rax
mov rcx, rbx
call fcn.14001d830
mov qword [rbp + 0xf8], r15
lea rcx, [rbp + 0xf8]
call fcn.14001d4f0
nop
lea rcx, [rbp + 0xa8]
call fcn.14000c040
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x140014b1b
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014b16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001508f
call fcn.140099170
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], 0
lea rcx, [rbp + 0x190]
call fcn.140016450
nop
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x220]
lea rcx, [0x14022e9b8]
call fcn.14001e300
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 0x140014bc2
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140014baf
mov rdx, qword [rdx]
lea rcx, [rbp + 0x1a8]
call fcn.14001d350
mov r8d, dword [rbp + 0x19c]
lea rdx, [rbx + 0x50]
lea rax, [rbp + 0x1c8]
cmp rax, rdx
je 0x140014c3a
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.14001ed80
mov rdx, qword [rbp + 0x1d8]
lea rcx, [rbp + 0x1c8]
call fcn.14001d9e0
mov rdx, rax
lea rcx, [rbp + 0x1c8]
call fcn.14001d830
mov qword [rbp + 0xf8], r15
lea rcx, [rbp + 0xf8]
call fcn.14001d4f0
mov r8d, dword [rbp + 0x19c]
cmp qword [rbp + 0x1b8], 0
jne case.0x140014d0f.0
movabs rbx, 0x37fc1c6acb68fbae
cmp byte [rbp + 0x1a1], 0
je 0x140014cf4
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, 0x6260932390889be5
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 0x140014cd3
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x1a8]
call fcn.14001d350
mov r8d, dword [rbp + 0x19c]
movzx eax, byte [0x14022e8c8]
cmp eax, 9
ja case.0x140014d0f.3
mov ecx, dword [r14 + rax*4 + 0x1641c]
add rcx, r14
jmp rcx
mov byte [rbp + 0x81], 0
cmp byte [0x14022e918], 0
jne 0x1400149ef
test r8, r8
je 0x140014dca
mov rdx, qword [0x14022d7c0]
add rdx, r8
test rcx, rcx
je 0x140014d72
cmp dword [0x14022d804], 0
je 0x140014d72
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 0x140014d72
mov rdx, qword [rbp + 0xf0]
jmp 0x140014d7c
mov rdx, r15
mov qword [rbp + 0xf0], rdx
test rdx, rdx
je 0x140014dca
add rdx, qword [0x14022d7e0]
test rcx, rcx
je 0x140014dbb
cmp dword [0x14022d804], 0
je 0x140014dbb
mov qword [rsp + 0x20], r15
mov r9d, 4
lea r8, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140014dbb
mov rax, qword [rbp + 0x60]
mov dword [rbp + 0x7c], eax
jmp 0x1400149f6
mov rax, r15
mov qword [rbp + 0x60], rax
mov dword [rbp + 0x7c], eax
jmp 0x1400149f6
mov eax, r15d
mov dword [rbp + 0x7c], eax
jmp 0x1400149f6
mov rcx, qword [0x14022e8d0]
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
jmp 0x140014df1
mov rax, qword [0x14022e8d0]
cmp qword [rax + 8], 0
sete al
test al, al
jne case.0x140014d0f.0
cmp qword [0x14022e8e8], 0
je case.0x140014d0f.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 0x140014e82
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp r8d, dword [rcx + 0x10]
je 0x140014e85
cmp rcx, rax
je 0x140014e82
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x140014e71
jmp 0x140014e85
mov rcx, r15
mov rdx, r9
test rcx, rcx
cmovne rdx, rcx
cmp rdx, r9
je 0x140014ec5
cmp r8d, 0xffffffff
je 0x140014ec5
add rdx, 0x18
lea rax, [rbp + 0x1a8]
cmp rax, rdx
je case.0x140014d0f.0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140014f61
mov rdx, qword [rdx]
jmp 0x140014f61
movabs rcx, 0x6260932390889be5
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 0x140014f50
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x1a8]
call fcn.14001d350
mov rax, qword [rbp + 0x100]
test rax, rax
jne 0x140014f84
mov qword [rbp], rax
movss dword [rbp + 8], xmm6
jmp 0x140014fc4
mov rcx, qword [0x14022d9b0]
test rcx, rcx
je 0x140014fc0
cmp dword [0x14022d804], 0
je 0x140014fc0
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 0x140014fc4
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 0x140015029
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.140016560
movsd xmm0, qword [rax]
movsd qword [0x14022ea04], xmm0
mov rax, qword [0x14022e9a8]
cmp rax, qword [0x14022e9b0]
je 0x140015055
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.140029c20
add qword [0x14022e9a8], 0x88
jmp 0x14001506c
lea r8, [rbp + 0x190]
mov rdx, rax
lea rcx, [0x14022e9a0]
call fcn.140022dc0
nop
lea rcx, [rbp + 0x190]
call fcn.14000bfd0
inc rdi
jmp 0x140014630
mov qword [rbp + 0x100], r15
inc rdi
jmp 0x140014630
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 0x1400163b9
cmp byte [0x14022e918], 0
jne 0x1400163b9
lea rdi, [0x14022e868]
cmp qword [0x14022e858], 0
je 0x1400150dd
cmp qword [0x14022e878], 0
jne 0x140015a90
mov dword [rbp + 0xf8], 0x208
movabs rax, 0x6234936590c79bb6
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x220], rax
movabs rax, 0x37b91c38cb29fbf9
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x228], rax
movabs rax, 0x8f967c30aa5d816b
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x230], rax
movabs rax, 0x7c0eb48df2504ea1
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x238], rax
movabs rax, 0x4c30f35b90c9685f
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x240], rax
movabs rax, 0xedda09ab2773299b
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x248], rax
movabs rdx, 0x56e969edabce0eeb
mov qword [rbp + 0x60], rdx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x250], rax
movabs rcx, 0x613e0ffc07dd6d8c
mov qword [rbp + 0x60], rcx
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x258], rax
movabs rax, 0x6260932390889be5
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x280], rax
movabs rax, 0x37fc1c6acb68fbae
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x288], rax
movabs r14, 0x8fe27c59aa1e8137
mov qword [rbp + 0x60], r14
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x290], rax
movabs rsi, 0x7c60b4e8f22a4ec8
mov qword [rbp + 0x60], rsi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x298], rax
movabs r13, 0x4c76f30790916819
mov qword [rbp + 0x60], r13
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x2a0], rax
movabs r12, 0xed9709ce270529f2
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 0x140015324
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015324
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, 0xb881589f
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001531f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015300
cmp edx, 0x41a70e9c
je 0x140015329
test r9d, r9d
jne 0x1400152e0
mov rax, qword [rax]
jmp 0x1400152b0
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 0x140015a78
movabs rax, 0x6214935090e99ba9
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x280], rax
movabs rax, 0x37921c1fcb3afb8e
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x288], rax
movabs rax, 0x8f817c36aa528117
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x290], rax
movabs rax, 0x7c0fb481f25e4ea9
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x298], rax
movabs rax, 0x4c76f30790916877
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, 0x6260932390889be5
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x220], rax
movabs rbx, 0x37fc1c6acb68fbae
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 0x1400159cd
movabs rax, 0x101f07ff1fcfa81
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x280], rax
movabs rax, 0x5f8f7d18a8349ec6
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x288], rax
movabs rax, 0x8fe2052bde7bec58
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, 0x6260932390889be5
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 0x140015630
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x2c0]
call fcn.14001ec50
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x10]
call fcn.1400938d0
nop
lea rcx, [rbp + 0x280]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rcx + r8], 0
jne 0x140015670
lea rdx, [rbp + 0x280]
mov rcx, rax
call fcn.14000a160
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 0x140015703
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400156fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400156fe
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140099170
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.140098614
movaps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x260], xmm0
lea r8, [rbp + 0x260]
mov edx, eax
lea rcx, [rbp + 0x280]
call fcn.14000cc70
nop
mov qword [rbp + 0x110], r15
lea rax, [0x14022c7e0]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x280]
call fcn.14000d750
movzx ebx, al
cmp dword [rbp + 0x110], 0
jne 0x1400163f9
mov rdx, qword [rbp + 0x298]
cmp rdx, 7
jbe 0x1400157ea
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x280]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400157e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400157e5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140099170
mov qword [rbp + 0x290], r15
mov qword [rbp + 0x298], 7
mov word [rbp + 0x280], r15w
test bl, bl
je 0x140015970
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 0x140015832
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x280]
call fcn.14001ec50
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x260]
call fcn.1400938d0
mov rbx, rax
lea rax, [0x14022e848]
cmp rax, rbx
je 0x1400158ec
mov rdx, qword [0x14022e860]
cmp rdx, 0xf
jbe 0x1400158af
mov rcx, qword [0x14022e848]
inc rdx
cmp rdx, 0x1000
jb 0x1400158aa
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140015924
mov rcx, r8
call fcn.140099170
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 0x140015930
inc rdx
mov rcx, qword [rbp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001592b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001592b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140099170
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.14001d350
nop
mov rdx, qword [rbp + 0x238]
cmp rdx, 0xf
jbe 0x1400159b4
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400159af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400159af
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140099170
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 0x140015a54
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015a54
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, 0x47172689
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015a4f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015a30
cmp edx, 0x35779ca6
je 0x140015a59
test r9d, r9d
jne 0x140015a10
mov rax, qword [rax]
jmp 0x1400159e0
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 0x140015a90
cmp qword [0x14022e898], 0
jne 0x14001630e
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.14001d240
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 0x140016258
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.140022a70
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 0x14001621d
movabs r12, 0x1005e07ce4fbfa89
mov qword [rbp + 0x60], r12
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x110], rax
movabs rax, 0x37906e1f941a9ed8
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
movabs rax, 0x6260932390889be5
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
movabs rax, 0x37fc1c6acb68fbae
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 0x140015c02
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 0x140015cbf
test rdi, rdi
jne 0x140015c45
mov rbx, r15
jmp 0x140015cc6
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 0x140015cab
mov r8, rdi
lea rdx, [rbp + 0x110]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140016066
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 0x140015c71
mov rcx, qword [rbp + 0x188]
xor r15d, r15d
movabs r12, 0x1005e07ce4fbfa89
mov rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
je 0x140016216
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 0x140016414
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, 0x37fc1c6acb1a9ed8
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x118], rax
movabs rdi, 0x6260932390889be5
mov qword [rbp + 0x60], rdi
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x260], rax
movabs rbx, 0x37fc1c6acb68fbae
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.14001cc00
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 0x1400163f3
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 0x140015e4d
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015e48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001620a
call fcn.140099170
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, 0x6260932390889bdf
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.14001cc00
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 0x140015f83
mov rcx, qword [0x14022e888]
inc rdx
cmp rdx, 0x1000
jb 0x140015f7e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001620a
mov rcx, r8
call fcn.140099170
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, 0x6260932390889bee
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 0x140016023
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 0x1400160fb
test rdi, rdi
jne 0x140016082
mov rbx, r15
jmp 0x140016102
sub rbx, r14
mov rcx, qword [rbp + 0x188]
xor r15d, r15d
movabs r12, 0x1005e07ce4fbfa89
jmp 0x140015cc6
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 0x1400160ea
nop
mov r8, rdi
lea rdx, [rbp + 0x110]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400161f1
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 0x1400160b0
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 0x1400163f3
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 0x140016196
mov rcx, qword [0x14022e8a8]
inc rdx
cmp rdx, 0x1000
jb 0x140016191
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001620a
mov rcx, r8
call fcn.140099170
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 0x140016216
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016211
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140016211
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 0x140016102
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140099170
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea rcx, [rbp + 0x2f0]
call fcn.14001d180
test rax, rax
jne 0x140016251
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 0x140016296
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x170]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016291
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140016291
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140099170
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.14001c4f0
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 0x1400163b2
cmp qword [0x14022e8b8], 0
je 0x1400163b2
mov ecx, 8
call fcn.140099320
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, [0x140026930]
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 0x14001639f
cmp dword [rbp + 0x118], 0
je 0x140016393
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 0x140016393
jmp 0x1400163b9
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.140099150
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.14001da80
nop
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0x110]
lea rcx, str.exists
call fcn.14000d6f0
nop
call fcn.14001da80
int3