Function at 0x140020e70
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, 0x5f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x140274040]
xor rax, rsp
mov qword [rbp + 0x570], rax
xor r12d, r12d
mov rdx, qword [0x1402976f0]
mov rcx, qword [0x140297408]
test rdx, rdx
jne 0x140020f12
test rcx, rcx
je 0x140020efb
cmp dword [0x14029735c], r12d
je 0x140020efb
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x160]
mov rdx, qword [0x1402975a8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rdx, qword [rbp + 0x160]
mov qword [0x1402976f0], rdx
test rdx, rdx
je 0x140020fc2
test rcx, rcx
je 0x140020f43
cmp dword [0x14029735c], r12d
je 0x140020f43
add rdx, 8
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rax, qword [rbp + 0xe0]
mov qword [0x1402976f8], rax
test rax, rax
je 0x140020fc2
mov rdx, qword [0x140297700]
test rdx, rdx
jne 0x140020fa9
test rcx, rcx
je 0x140020f96
cmp dword [0x14029735c], r12d
je 0x140020f96
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x170]
mov rdx, qword [0x1402975b0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rdx, qword [rbp + 0x170]
mov qword [0x140297700], rdx
test rdx, rdx
je 0x140020fc2
cmp qword [0x140297708], r12
jne 0x140021042
test rdx, rdx
jne 0x140020ffe
mov qword [0x140297708], r12
xor al, al
mov rcx, qword [rbp + 0x570]
xor rcx, rsp
call fcn.14006de40
lea r11, [rsp + 0x5f0]
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
test rcx, rcx
je 0x14002102f
cmp dword [0x14029735c], r12d
je 0x14002102f
add rdx, 0x18
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rax, qword [rbp + 0x1d0]
mov qword [0x140297708], rax
test rax, rax
je 0x140020fc2
cmp qword [0x140297718], r12
jne 0x14002108f
test rcx, rcx
je 0x140021078
cmp dword [0x14029735c], r12d
je 0x140021078
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1c8]
mov rdx, qword [0x1402975c0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rbp + 0x1c8]
mov qword [0x140297718], rax
test rax, rax
je 0x140020fc2
lea rcx, [0x140297728]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x1400210ac
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov eax, dword [0x140297774]
cmp eax, 0x7fffffff
jne 0x1400210cd
dec eax
mov dword [0x140297774], eax
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rbx, qword [0x1402977c8]
mov rdi, qword [0x1402977d0]
cmp rbx, rdi
je 0x140021105
mov rcx, rbx
call fcn.140004d30
add rbx, 0xa0
cmp rbx, rdi
jne 0x1400210e0
mov rbx, qword [0x1402977c8]
mov rdi, rbx
mov qword [0x1402977d0], rbx
cmp rdi, qword [0x1402977d8]
je 0x140021152
lea rcx, [0x1402977c8]
cmp rbx, rdi
jne 0x140021121
call fcn.140002f70
jmp 0x140021152
sub rdi, rbx
movabs rax, 0x6666666666666667
imul rdi
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rbp + 0x160], rdx
lea rdx, [rbp + 0x160]
call fcn.1400271e0
mov rdi, r12
mov esi, 4
movabs r13, 0xccccccccccccb
movabs r14, 0x100000001b3
lea r15, [0x140000000]
xorps xmm6, xmm6
movss xmm7, dword [0x140267b60]
mov rcx, qword [0x140297408]
nop word [rax + rax]
mov rdx, qword [0x140297708]
test rdx, rdx
jne 0x1400211a1
mov rax, r12
jmp 0x1400211dc
test rcx, rcx
je 0x1400211d5
cmp dword [0x14029735c], 0
je 0x1400211d5
add rdx, 0x108
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1d8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rax, qword [rbp + 0x1d8]
cmp rdi, rax
jae 0x140021b08
mov rdx, qword [0x140297708]
test rdx, rdx
je 0x140021276
test rcx, rcx
je 0x140021229
cmp dword [0x14029735c], 0
je 0x140021229
add rdx, 0x100
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov r8, qword [rbp + 0x1e0]
test r8, r8
je 0x140021276
test rcx, rcx
je 0x14002126d
cmp dword [0x14029735c], 0
je 0x14002126d
mov eax, edi
shl eax, 4
movsxd rdx, eax
add rdx, r8
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1e8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
mov rbx, qword [rbp + 0x1e8]
jmp 0x140021279
mov rbx, r12
mov qword [rbp + 0xe0], rbx
lea rax, [rbx - 1]
cmp rax, r13
ja 0x140021af9
mov rcx, rbx
call fcn.140016a00
test eax, eax
je 0x1400212a9
and eax, 0x1fc000
cmp eax, 0x6c000
ja 0x140021af2
mov rcx, qword [0x140297408]
test rcx, rcx
je 0x1400212e1
cmp dword [0x14029735c], 0
je 0x1400212e1
lea rdx, [rbx + 0x280]
mov qword [rsp + 0x20], r12
mov r9, rsi
lea r8, [rbp + 0x1c0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
comiss xmm6, dword [rbp + 0x1c0]
jae 0x140021af9
test rcx, rcx
je 0x14002131f
cmp dword [0x14029735c], 0
je 0x14002131f
lea rdx, [rbx + 0x280]
mov qword [rsp + 0x20], r12
mov r9, rsi
lea r8, [rbp + 0x1c8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x140297408]
comiss xmm7, dword [rbp + 0x1c8]
jae 0x140021af9
xorps xmm0, xmm0
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x70], 0xf
mov byte [rbp + 0x58], 0
mov byte [rbp + 0x80], 0
lea rax, [rbp + 0x88]
mov qword [rbp], rax
mov dword [rbp + 0x1d0], 0
mov eax, dword [rbp + 0x1d0]
mov dword [rbp + 0x88], eax
mov qword [rbp + 0x90], r12
mov qword [rbp + 0x98], r12
mov ecx, 0x18
call fcn.14006de60
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp + 0x90], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], r12
mov qword [rbp + 0xb8], 7
mov qword [rbp + 0xc0], 8
mov dword [rbp + 0x88], 0x3f800000
mov r8, rax
mov edx, 0x10
lea rcx, [rbp + 0xa0]
call fcn.1400031e0
nop
mov qword [rbp + 0x40], rbx
mov dword [rbp + 0x48], edi
cmp rbx, qword [0x1402976f8]
sete byte [rbp + 0x50]
mov rcx, rbx
call fcn.140016a80
movzx r10d, al
mov byte [rbp + 0x51], al
movzx edx, bl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
imul rdx, r14
movzx ecx, byte [rbp + 0xe1]
xor rdx, rcx
imul rdx, r14
movzx ecx, byte [rbp + 0xe2]
xor rdx, rcx
imul rdx, r14
movzx eax, byte [rbp + 0xe3]
xor rdx, rax
imul rdx, r14
movzx eax, byte [rbp + 0xe4]
xor rdx, rax
imul rdx, r14
movzx eax, byte [rbp + 0xe5]
xor rdx, rax
imul rdx, r14
movzx eax, byte [rbp + 0xe6]
xor rdx, rax
imul rdx, r14
movzx eax, byte [rbp + 0xe7]
xor rdx, rax
imul rdx, r14
and rdx, qword [0x140297590]
mov rax, rdx
add rax, rax
mov r8, qword [0x140297578]
mov rcx, qword [r8 + rax*8 + 8]
mov r9, qword [0x140297568]
cmp rcx, r9
je 0x1400214b2
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rbx, qword [rcx + 0x10]
je 0x1400214b5
cmp rcx, rax
je 0x1400214b2
mov rcx, qword [rcx + 8]
cmp rbx, qword [rcx + 0x10]
jne 0x1400214a1
jmp 0x1400214b5
mov rcx, r12
mov rax, r9
test rcx, rcx
cmovne rax, rcx
cmp rax, r9
setne byte [rbp + 0x80]
test r10b, r10b
mov r10, qword [0x140297408]
jne 0x14002156b
mov rdx, qword [0x1402972e0]
add rdx, rbx
test r10, r10
je 0x140021513
cmp dword [0x14029735c], 0
je 0x140021513
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x160]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x140297408]
cmp qword [rbp + 0x160], 0
jne 0x140021525
mov eax, r12d
mov dword [rbp + 0x4c], eax
jmp 0x140021572
mov rdx, qword [rbp + 0x160]
add rdx, qword [0x1402972f0]
test r10, r10
je 0x140021560
cmp dword [0x14029735c], 0
je 0x140021560
mov qword [rsp + 0x20], r12
mov r9, rsi
lea r8, [rbp + 0x170]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x140297408]
mov eax, dword [rbp + 0x170]
mov dword [rbp + 0x4c], eax
jmp 0x140021572
mov dword [rbp + 0x4c], 0xffffffff
mov rdx, qword [0x1402972e8]
add rdx, rbx
test r10, r10
je 0x140021622
cmp dword [0x14029735c], 0
je 0x1400215b0
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1f0]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x140297408]
test r10, r10
je 0x140021622
cmp dword [0x14029735c], 0
je 0x1400215eb
mov rdx, qword [rbp + 0x1f0]
add rdx, 0x68
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1f8]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x140297408]
test r10, r10
je 0x140021622
cmp dword [0x14029735c], 0
je 0x140021622
mov rdx, qword [rbp + 0x1f8]
add rdx, 0x178
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0xd0]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x78], rax
lea rcx, [rbp + 0x200]
call fcn.140015970
mov qword [rbp + 0x298], 0
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x200], rax
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x208], eax
mov eax, dword [rbp + 0x4c]
mov dword [rbp + 0x20c], eax
movzx eax, byte [rbp + 0x50]
mov byte [rbp + 0x210], al
movzx eax, byte [rbp + 0x51]
mov byte [rbp + 0x211], al
lea rdx, [rbp + 0x58]
cmp qword [rbp + 0x70], 0xf
cmova rdx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x68]
lea rcx, [rbp + 0x218]
call fcn.140008f10
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x238], rax
movzx eax, byte [rbp + 0x80]
mov byte [rbp + 0x240], al
lea rax, [rbp + 0x248]
mov qword [rbp + 0xe0], rax
mov eax, dword [rbp + 0x88]
mov dword [rbp + 0x248], eax
mov rdx, qword [rbp + 0x90]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rbp + 0x250]
call fcn.1400277c0
mov rdx, qword [rbp + 0x258]
lea rcx, [rbp + 0x248]
call fcn.140015f50
mov rdx, rax
lea rcx, [rbp + 0x248]
call fcn.140015da0
mov qword [rbp + 0xe0], r12
lea rcx, [rbp + 0xe0]
call fcn.140015ff0
cmp qword [rbp + 0x228], 0
jne case.0x140021738.0
movzx eax, byte [0x140297698]
cmp eax, 9
ja case.0x140021738.3
mov ecx, dword [r15 + rax*4 + 0x2373c]
add rcx, r15
jmp rcx
mov rcx, qword [0x1402976a0]
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
jmp 0x140021756
mov rax, qword [0x1402976a0]
cmp qword [rax + 8], 0
sete al
test al, al
jne case.0x140021738.0
cmp qword [0x1402976b8], 0
je case.0x140021738.0
movzx ecx, byte [rbp + 0x20c]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x20d]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x20e]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x20f]
xor rcx, rax
imul rcx, r14
mov rdx, qword [0x1402976d8]
and rdx, rcx
mov rax, rdx
add rax, rax
mov r8, qword [0x1402976c0]
mov rcx, qword [r8 + rax*8 + 8]
mov r9, qword [0x1402976b0]
mov eax, dword [rbp + 0x20c]
cmp rcx, r9
je 0x140021800
add rdx, rdx
mov r8, qword [r8 + rdx*8]
cmp eax, dword [rcx + 0x10]
je 0x140021803
nop dword [rax + rax]
cmp rcx, r8
je 0x140021800
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x1400217f0
jmp 0x140021803
mov rcx, r12
mov rdx, r9
test rcx, rcx
cmovne rdx, rcx
cmp rdx, r9
je 0x140021842
cmp eax, 0xffffffff
je 0x140021842
add rdx, 0x18
lea rax, [rbp + 0x218]
cmp rax, rdx
je case.0x140021738.0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1400218f1
mov rdx, qword [rdx]
jmp 0x1400218f1
movabs rax, 0x5fc7faa99c5642b8
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x120], rax
movabs rcx, 0xec367e86f456d4c6
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x120]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400218e0
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x218]
call fcn.140008f10
mov rcx, qword [0x140297408]
test rcx, rcx
je 0x14002192e
cmp dword [0x14029735c], 0
je 0x14002192e
lea rdx, [rbx + 0x90]
mov qword [rsp + 0x20], r12
mov r9d, 0xc
lea r8, [rbp + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsd xmm0, qword [rbp + 8]
movsd qword [rbp + 0x288], xmm0
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x290], eax
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x360]
call fcn.140015a20
mov r9d, 0x796e
mov r8, rax
lea rdx, [rbp + 0x180]
call fcn.140023fd0
movsd xmm0, qword [rax]
movsd qword [rbp + 0x20], xmm0
mov eax, dword [rax + 8]
mov dword [rbp + 0x28], eax
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x30]
call fcn.140025250
movsd xmm0, qword [rax]
movsd qword [rbp + 0x298], xmm0
mov rdx, qword [0x140297318]
add rdx, rbx
mov rcx, qword [0x140297408]
test rcx, rcx
je 0x1400219cb
cmp dword [0x14029735c], 0
je 0x1400219cb
mov qword [rsp + 0x20], r12
mov r9d, 1
lea r8, [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movzx eax, byte [rbp + 0xd8]
test al, 0xdb
jne 0x1400219de
cmp al, 0x20
je 0x1400219de
xor al, al
jmp 0x1400219e0
mov al, 1
mov byte [rbp + 0x294], al
cmp byte [rbp + 0x210], 0
je 0x140021a4f
mov qword [0x1402977e0], rbx
movzx eax, byte [rbp + 0x51]
mov byte [0x1402976e8], al
mov dword [0x1402977e8], edi
movsd xmm0, qword [rbp + 0x288]
movsd qword [0x1402977f4], xmm0
mov eax, dword [rbp + 0x290]
mov dword [0x1402977fc], eax
movsd qword [rbp + 0x2a0], xmm0
mov dword [rbp + 0x2a8], eax
lea r8, [rbp + 0x2a0]
lea rdx, [rbp + 0x168]
call fcn.140025250
movsd xmm0, qword [rax]
movsd qword [0x1402977ec], xmm0
mov rax, qword [0x1402977d0]
cmp rax, qword [0x1402977d8]
je 0x140021a7b
lea rdx, [rbp + 0x200]
mov rcx, rax
call fcn.140015a20
add qword [0x1402977d0], 0xa0
jmp 0x140021a92
lea r8, [rbp + 0x200]
mov rdx, rax
lea rcx, [0x1402977c8]
call fcn.140028260
nop
lea rcx, [rbp + 0x200]
call fcn.140004d30
nop
lea rcx, [rbp + 0x88]
call fcn.140004da0
mov rdx, qword [rbp + 0x70]
cmp rdx, 0xf
jbe 0x140021ae2
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021add
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021b01
call fcn.14006e0e4
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x70], 0xf
mov byte [rbp + 0x58], 0
mov rcx, qword [0x140297408]
inc rdi
jmp 0x140021190
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, [0x140297728]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
cmp byte [0x1402976e8], 0
jne 0x140023712
cmp qword [0x140297668], 2
jae 0x140023712
cmp qword [0x140297628], 0
je 0x140021b48
cmp qword [0x140297648], 0
jne 0x140022783
mov dword [rbp + 0x170], 0x208
movabs rax, 0x3afe9b81ee7c319e
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x320], rax
movabs rax, 0xec737ed4f417d491
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x328], rax
movabs rax, 0xdd9f17a487af10c3
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x330], rax
movabs rax, 0xa4d2730901f60b59
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x338], rax
movabs rax, 0xaef5d6176fc06dc7
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x340], rax
movabs rax, 0x574b3c1f36a0f0e3
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x348], rax
movabs rdx, 0x5aadcc01fe393693
mov qword [rbp + 0xd0], rdx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x350], rax
movabs rcx, 0x571de6d04e708824
mov qword [rbp + 0xd0], rcx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x358], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2e0], rax
movabs rax, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2e8], rax
movabs r15, 0xddeb17cd87ec109f
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2f0], rax
movabs r13, 0xa4bc736c018c0b30
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2f8], rax
movabs r14, 0xaeb3d64b6f986d81
mov qword [rbp + 0xd0], r14
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x300], rax
movabs rdi, 0x57063c7a36d6f08a
mov qword [rbp + 0xd0], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x308], rax
mov qword [rbp + 0xd0], rdx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x310], rax
mov qword [rbp + 0xd0], rcx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x318], rax
vmovdqu ymm0, ymmword [rbp + 0x320]
vpxor ymm1, ymm0, ymmword [rbp + 0x2e0]
vmovdqa ymmword [rbp + 0x320], ymm1
vmovdqu ymm0, ymmword [rbp + 0x340]
vpxor ymm1, ymm0, ymmword [rbp + 0x300]
vmovdqa ymmword [rbp + 0x340], ymm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
vzeroupper
nop dword [rax]
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 0x140021df4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140021df4
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, 0xb7ecedf1
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140021def
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140021dd0
cmp edx, 0x5de4190a
je 0x140021df9
test r9d, r9d
jne 0x140021db0
mov rax, qword [rax]
jmp 0x140021d80
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 + 0x160]
mov qword [rsp + 0x20], rcx
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x320]
mov rcx, 0xffffffff80000001
call rax
test eax, eax
jne 0x14002276b
movabs rax, 0x3ade9bb4ee523181
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2e0], rax
movabs rax, 0xec587ef3f404d4e6
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2e8], rax
movabs rax, 0xdd8817a287a010bf
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2f0], rax
movabs rax, 0xa4d3730501f80b51
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2f8], rax
movabs rax, 0xaeb3d64b6f986def
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x300], rax
mov qword [rbp + 0xd0], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x308], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x320], rax
movabs rbx, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], rbx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x328], rax
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x330], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x338], rax
mov qword [rbp + 0xd0], r14
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x340], rax
mov qword [rbp + 0xd0], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x348], rax
vmovdqu ymm0, ymmword [rbp + 0x2e0]
vpxor ymm1, ymm0, ymmword [rbp + 0x320]
vmovdqa ymmword [rbp + 0x2e0], ymm1
vmovdqa xmm0, xmmword [rbp + 0x300]
vxorps xmm0, xmm0, xmmword [rbp + 0x340]
vmovdqa xmmword [rbp + 0x300], xmm0
lea rax, [rbp + 0x170]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x360]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x2e0]
mov rcx, qword [rbp + 0x160]
vzeroupper
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400226bc
movabs rdi, 0x59cbf89b8f4750a9
mov qword [rbp + 0xd0], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
movabs r14, 0x84451ff4970ab1ae
mov qword [rbp + 0xd0], r14
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movabs r15, 0xddeb6ebff3897df0
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x118], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2c0], rax
mov qword [rbp + 0xd0], rbx
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2c8], rax
movabs rax, 0xddeb17cd87ec109f
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2d0], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2d8], rax
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x2c0]
vmovdqa ymmword [rbp + 0x100], ymm1
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x2e0]
vzeroupper
call fcn.1400267d0
mov rdx, rax
lea rcx, [rbp + 0x2c0]
call fcn.14006cdb0
nop
lea rcx, [rbp + 0x100]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], 0
jne 0x140022114
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.140003050
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], r12
mov qword [rbp + 0x198], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x180], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x190], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x2d8]
cmp rdx, 0xf
jbe 0x1400221ad
inc rdx
mov rcx, qword [rbp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400221a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400221a8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
mov qword [rbp + 0x2d0], r12
mov qword [rbp + 0x2d8], 0xf
mov byte [rbp + 0x2c0], 0
lea rax, [rbp + 0x180]
cmp qword [rbp + 0x198], 0xf
cmova rax, qword [rbp + 0x180]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x190]
mov qword [rbp + 0x108], rax
call fcn.14006d920
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x100], xmm0
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, [rbp + 0x2a0]
call fcn.14001b180
nop
lea rcx, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 7
cmova rcx, qword [rbp + 0x2a0]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x100]
call fcn.14006da5c
mov r8d, eax
test eax, eax
jne 0x140022288
mov edx, dword [rbp + 0x110]
mov ecx, edx
shr ecx, 0xa
test cl, 1
je 0x14002227d
mov eax, dword [rbp + 0x114]
cmp eax, 0xa000000c
je 0x1400222a5
cmp eax, 0xa0000003
jne 0x14002227d
mov esi, 0xa
jmp 0x1400222a5
shr edx, 4
and edx, 1
lea esi, [rdx + 2]
jmp 0x1400222a5
sub eax, 2
je 0x1400222a0
sub eax, 1
je 0x1400222a0
sub eax, 0x32
je 0x1400222a0
cmp eax, 0x46
je 0x1400222a0
xor al, al
jmp 0x1400222a2
mov al, 1
movzx esi, al
mov dword [rbp + 0x100], r8d
lea rax, [0x1402740c8]
mov qword [rbp + 0x108], rax
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x120], xmm0
test esi, esi
je 0x140022325
mov dword [rbp + 0x120], r12d
mov qword [rbp + 0x128], rax
cmp esi, 1
setne bl
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 7
jbe 0x140022337
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022332
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140022332
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xor bl, bl
test r8d, r8d
jne 0x14002371f
jmp 0x1400222e1
call fcn.14006e0e4
mov qword [rbp + 0x2b0], r12
mov qword [rbp + 0x2b8], 7
mov word [rbp + 0x2a0], r12w
test bl, bl
je 0x14002265f
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x120]
call fcn.1400267d0
mov rdx, rax
lea rcx, [rbp + 0x100]
call fcn.14006cdb0
mov rbx, rax
lea rax, [0x140297618]
cmp rax, rbx
je 0x140022404
mov rdx, qword [0x140297630]
cmp rdx, 0xf
jbe 0x1400223c7
mov rcx, qword [0x140297618]
inc rdx
cmp rdx, 0x1000
jb 0x1400223c2
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002243c
mov rcx, r8
call fcn.14006e0e4
mov qword [0x140297628], r12
mov qword [0x140297630], 0xf
mov byte [0x140297618], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x140297618], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140297628], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rbp + 0x118]
cmp rdx, 0xf
jbe 0x140022448
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022443
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140022443
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
mov qword [rbp + 0xd0], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xd0], r14
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x118], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2a0], rax
movabs rax, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0xddeb17cd87ec109f
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x2b8], rax
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vmovdqa ymmword [rbp + 0x100], ymm1
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x320]
vzeroupper
call fcn.1400267d0
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.14006cdb0
nop
lea rcx, [rbp + 0x100]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], 0
jne 0x140022573
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.140003050
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x2e0], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2f0], xmm7
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [0x140297650]
cmp rdx, 0xf
jbe 0x1400225ed
mov rcx, qword [0x140297638]
inc rdx
cmp rdx, 0x1000
jb 0x1400225e8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002263a
mov rcx, r8
call fcn.14006e0e4
movups xmmword [0x140297638], xmm6
movups xmmword [0x140297648], xmm7
mov rdx, qword [rbp + 0x138]
cmp rdx, 0xf
jbe 0x140022646
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022641
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140022641
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14006e0e4
mov qword [rbp + 0x130], r12
mov qword [rbp + 0x138], 0xf
mov byte [rbp + 0x120], 0
mov rdx, qword [rbp + 0x198]
cmp rdx, 0xf
jbe 0x1400226a3
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002269e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002269e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
mov qword [rbp + 0x190], r12
mov qword [rbp + 0x198], 0xf
mov byte [rbp + 0x180], 0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140022744
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140022744
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, 0x251a3745
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14002273f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140022720
cmp edx, 0xe2291dca
je 0x140022749
test r9d, r9d
jne 0x140022700
mov rax, qword [rax]
jmp 0x1400226d0
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 + 0x160]
call rax
cmp qword [0x140297648], 0
jne 0x140022783
cmp qword [0x140297668], 0
jne 0x140023654
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x360]
call sub.VCRUNTIME140.dll_memset
lea rdx, [0x140297638]
cmp qword [0x140297650], 0xf
cmova rdx, qword [0x140297638]
lea rcx, [rbp + 0x360]
call fcn.140026bf0
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x360], rbx
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x35c], edx
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r12
mov qword [rbp + 0x1b8], 0xf
mov byte [rbp + 0x1a0], 0
cmp qword [rbp + 0x3f0], 0
je 0x1400235a5
xor eax, eax
movups xmmword [rbp + 0x2a0], xmm0
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x120], r12
mov word [rbp + 0x128], 1
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x3a8]
mov qword [rbp + 0x180], rax
test rax, rax
sete byte [rbp + 0x188]
mov byte [rbp + 0x189], 0
movdqu xmmword [rbp + 0x2a0], xmm0
mov qword [rbp + 0x2b0], r12
lea rcx, [rbp + 0x2a0]
mov qword [rbp + 0xd0], rcx
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
movaps xmm1, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x180], xmm1
movzx esi, byte [rbp + 0x189]
mov rbx, qword [rbp + 0x180]
movzx r15d, byte [rbp + 0x128]
mov rdi, qword [rbp + 0x120]
test rax, rax
jne 0x1400228cf
movzx r14d, byte [rbp + 0x188]
jmp 0x1400228f0
test rbx, rbx
je 0x1400228e7
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void____ptr64]
cmp eax, 0xffffffff
je 0x1400228e7
movzx esi, al
jmp 0x1400228ea
mov rbx, r12
mov r14b, 1
nop dword [rax]
test r15b, r15b
jne 0x14002290e
test rdi, rdi
je 0x140022908
mov rcx, rdi
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void____ptr64]
cmp eax, 0xffffffff
jne 0x14002290b
mov rdi, r12
mov r15b, 1
test rbx, rbx
jne 0x140022962
test rdi, rdi
jne 0x140022967
mov qword [rbp + 0xd0], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], r12
mov rdx, qword [rbp + 0x2a0]
cmp rdx, qword [rbp + 0x2a8]
jne 0x1400229eb
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
jmp 0x140022a01
test rdi, rdi
jne 0x140022918
test r14b, r14b
jne 0x140022987
test rbx, rbx
je 0x140022984
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void____ptr64]
cmp eax, 0xffffffff
je 0x140022984
movzx esi, al
jmp 0x140022987
mov rbx, r12
mov byte [rbp + 0xd8], sil
mov rax, qword [rbp + 0x2a8]
cmp rax, qword [rbp + 0x2b0]
je 0x1400229aa
mov byte [rax], sil
inc qword [rbp + 0x2a8]
jmp 0x1400229c4
lea r8, [rbp + 0xd8]
mov rdx, qword [rbp + 0x2a8]
lea rcx, [rbp + 0x2a0]
call fcn.1400104a0
test rbx, rbx
je 0x1400228e7
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sbumpc_void____ptr64]
cmp eax, 0xffffffff
je 0x1400228e7
mov byte [rbp + 0x188], 0
jmp 0x1400228cf
mov r8, qword [rbp + 0x2a8]
sub r8, rdx
lea rcx, [rbp + 0x100]
call fcn.140003c30
mov rax, qword [rbp + 0x1b8]
cmp rax, 0xf
jbe 0x140022a46
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022a41
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140022a41
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x1a0], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x1b0], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
movq rax, xmm1
test rax, rax
je 0x140023526
movabs rax, 0x48cfe8989a4050a1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x120], rax
movabs rax, 0xec5a0cf3ab24b1b0
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
movabs r15, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov rdi, 0xffffffffffffffff
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140022b30
lea r14, [rbp + 0x1a0]
mov r13, qword [rbp + 0x1a0]
mov rcx, qword [rbp + 0x1b8]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x1b0]
cmp rdi, rsi
ja 0x140022bee
test rdi, rdi
jne 0x140022b73
mov rbx, r12
jmp 0x140022bf5
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 0x140022bda
nop
mov r8, rdi
lea rdx, [rbp + 0x120]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140022d88
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 0x140022ba0
mov rcx, qword [rbp + 0x1b8]
xor r12d, r12d
movabs r15, 0xec367e86f456d4c6
mov rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
je 0x140023526
add rbx, 0xf
xorps xmm0, xmm0
movups xmmword [rbp + 0x140], xmm0
mov qword [rbp + 0x150], r12
mov qword [rbp + 0x158], r12
cmp rsi, rbx
jb 0x140023733
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x1a0]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x140]
call fcn.140003c30
nop
movabs rax, 0x48cfe8989a4050a1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x120], rax
movabs r13, 0xec5a0cf3ab24b1b0
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov rdi, 0xffffffffffffffff
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140022cf0
lea rsi, [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rsi, qword [rbp + 0x140]
mov rax, qword [rbp + 0x150]
cmp rdi, rax
ja 0x140022dad
test rdi, rdi
je 0x140022fc8
sub rax, rdi
lea r14, [rax + rsi]
movq rax, xmm0
movsx r15d, al
lea r8, [r14 + 1]
sub r8, rsi
mov edx, r15d
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x140022dad
mov r8, rdi
lea rdx, [rbp + 0x120]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140022da4
inc rbx
lea r8, [r14 + 1]
sub r8, rbx
mov edx, r15d
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x140022d53
jmp 0x140022dad
sub rbx, r14
mov rcx, qword [rbp + 0x1b8]
xor r12d, r12d
movabs r15, 0xec367e86f456d4c6
jmp 0x140022bf5
cmp rbx, rsi
je 0x140022fc8
movabs rax, 0x48cfe8989a4050a1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x120], rax
mov qword [rbp + 0xd0], r13
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
movabs rax, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x140022e44
lea r14, [rbp + 0x140]
mov r13, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x158]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x150]
cmp rdi, rsi
ja 0x140022ef7
test rdi, rdi
jne 0x140022e87
mov rbx, r12
jmp 0x140022efe
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 0x140022eed
mov r8, rdi
lea rdx, [rbp + 0x120]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400230b3
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 0x140022eb3
mov rcx, qword [rbp + 0x158]
xor r12d, r12d
mov rbx, 0xffffffffffffffff
add rbx, 0xf
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], r12
cmp rsi, rbx
jb 0x140023719
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x140]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x100]
call fcn.140003c30
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x140022f93
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022f8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002351a
call fcn.14006e0e4
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x140], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x150], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
movabs rax, 0x48cfe8989a4050a1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x120], rax
movabs rax, 0xec367e86f424b1b0
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
movabs r15, 0xec367e86f456d4c6
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140023070
lea r14, [rbp + 0x140]
mov r13, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x158]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x150]
cmp rdi, rsi
ja 0x14002313f
test rdi, rdi
jne 0x1400230c5
mov rbx, r12
jmp 0x140023146
sub rbx, r14
mov rcx, qword [rbp + 0x158]
xor r12d, r12d
jmp 0x140022efe
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 0x14002312b
mov r8, rdi
lea rdx, [rbp + 0x120]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400232df
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 0x1400230f1
mov rcx, qword [rbp + 0x158]
xor r12d, r12d
movabs r15, 0xec367e86f456d4c6
mov rbx, 0xffffffffffffffff
add rbx, 0xb
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], r12
cmp rsi, rbx
jb 0x140023719
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x140]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x100]
call fcn.140003c30
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x1400231db
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400231d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002351a
call fcn.14006e0e4
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x140], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x150], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
movabs rax, 0x3aaa9bc7ee3331f7
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x120], rax
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x128], rax
movabs rax, 0x3aaa9bc7ee3331cd
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xd0], r15
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x120], xmm0
lea rax, [rbp + 0x120]
mov rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400232a0
lea rsi, [rbp + 0x140]
mov r13, qword [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rsi, r13
mov r12, qword [rbp + 0x150]
cmp rdi, r12
ja 0x14002336a
test rdi, rdi
jne 0x1400232fb
xor ebx, ebx
jmp 0x140023371
sub rbx, r14
mov rcx, qword [rbp + 0x158]
xor r12d, r12d
movabs r15, 0xec367e86f456d4c6
jmp 0x140023146
mov r14, r12
sub r14, rdi
movq rax, xmm0
movsx r15d, al
lea r8, [rsi + 1]
add r8, r14
sub r8, rsi
mov edx, r15d
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x14002336a
nop word [rax + rax]
mov r8, rdi
lea rdx, [rbp + 0x120]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140023512
inc rbx
lea r8, [rsi + 1]
add r8, r14
sub r8, rbx
mov edx, r15d
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x140023330
mov rbx, 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c0], xmm0
mov qword [rbp + 0x2d0], 0
mov qword [rbp + 0x2d8], 0
mov r8, rbx
cmp r12, rbx
cmovb r8, r12
lea rdx, [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rdx, r13
lea rcx, [rbp + 0x2c0]
call fcn.140003c30
mov rdx, qword [0x140297670]
cmp rdx, 0xf
jbe 0x1400233fb
mov rcx, qword [0x140297658]
inc rdx
cmp rdx, 0x1000
jb 0x1400233f6
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002351a
mov rcx, r8
call fcn.14006e0e4
movups xmm0, xmmword [rbp + 0x2c0]
movups xmmword [0x140297658], xmm0
movups xmm1, xmmword [rbp + 0x2d0]
movups xmmword [0x140297668], xmm1
lea rcx, [rbx + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c0], xmm0
xor r12d, r12d
mov qword [rbp + 0x2d0], r12
mov qword [rbp + 0x2d8], r12
mov rax, qword [rbp + 0x150]
cmp rax, rcx
jb 0x140023719
lea r8, [rbx + 5]
sub rax, rcx
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x140]
cmp qword [rbp + 0x158], 0xf
cmova rdx, qword [rbp + 0x140]
add rdx, rcx
lea rcx, [rbp + 0x2c0]
call fcn.140003c30
mov rdx, qword [0x140297690]
cmp rdx, 0xf
jbe 0x1400234b7
mov rcx, qword [0x140297678]
inc rdx
cmp rdx, 0x1000
jb 0x1400234b2
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002351a
mov rcx, r8
call fcn.14006e0e4
movups xmm0, xmmword [rbp + 0x2c0]
movups xmmword [0x140297678], xmm0
movups xmm1, xmmword [rbp + 0x2d0]
movups xmmword [0x140297688], xmm1
mov rdx, qword [rbp + 0x158]
cmp rdx, 0xf
jbe 0x140023526
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023521
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140023521
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
sub rbx, rsi
jmp 0x140023371
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14006e0e4
lea rcx, [rbp + 0x370]
call fcn.140026b30
test rax, rax
jne 0x14002355b
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x360]
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]
nop
mov rcx, qword [rbp + 0x2a0]
test rcx, rcx
je 0x14002359e
mov rdx, qword [rbp + 0x2b0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023599
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140023599
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov rax, qword [rbp + 0x1b8]
cmp rax, 0xf
jbe 0x1400235ea
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400235e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400235e5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e0e4
mov qword [rbp + 0x1b0], r12
mov qword [rbp + 0x1b8], 0xf
mov byte [rbp + 0x1a0], 0
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x360], rbx
mov rax, qword [rbp + 0x360]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x35c], edx
lea rcx, [rbp + 0x370]
call fcn.140026760
lea rcx, [rbp + 0x378]
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 + 0x410]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
cmp qword [0x140297668], 5
jb 0x14002370b
cmp qword [0x140297688], 2
jb 0x14002370b
mov ecx, 8
call fcn.14006de60
lea rcx, [0x140297520]
mov qword [rax], rcx
mov qword [rbp + 0x168], rax
lea rcx, [rbp + 0x128]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r12d
mov r9, rax
lea r8, [0x140028440]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x120], rax
test rax, rax
je 0x1400236f8
cmp dword [rbp + 0x128], 0
je 0x1400236ec
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0x100]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x1400236ec
mov al, 1
jmp 0x140020fc4
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rbp + 0x128], r12d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov byte [0x1402976e8], 1
mov al, 1
jmp 0x140020fc4
call fcn.1400090b0
nop
lea r8, [rbp + 0x2a0]
lea rdx, [rbp + 0x120]
call fcn.14001bbe0
nop
call fcn.1400090b0
int3