Function at 0x14002d730
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, 0x5d0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14014d040]
xor rax, rsp
mov qword [rbp + 0x550], rax
xor r12d, r12d
mov rdx, qword [0x1401f1258]
mov rcx, qword [0x1401f0828]
test rdx, rdx
jne 0x14002d7ce
test rcx, rcx
je 0x14002d7bb
cmp dword [0x1401f0820], r12d
je 0x14002d7bb
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x148]
mov rdx, qword [0x1401f10f0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
mov rdx, qword [rbp + 0x148]
mov qword [0x1401f1258], rdx
test rdx, rdx
je 0x14002d825
test rcx, rcx
je 0x14002d7ff
cmp dword [0x1401f0820], r12d
je 0x14002d7ff
add rdx, 8
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x120]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
mov rax, qword [rbp + 0x120]
mov qword [0x1401f1260], rax
mov rdx, qword [0x1401f1268]
test rdx, rdx
je 0x14002d861
test rax, rax
jne 0x14002d866
mov byte [0x1401f1508], 1
xor al, al
mov rcx, qword [rbp + 0x550]
xor rcx, rsp
call fcn.140095db0
lea r11, [rsp + 0x5d0]
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 rax, rax
je 0x14002d825
test rdx, rdx
jne 0x14002d8b6
test rcx, rcx
je 0x14002d89f
cmp dword [0x1401f0820], r12d
je 0x14002d89f
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x158]
mov rdx, qword [0x1401f10f8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
mov rdx, qword [rbp + 0x158]
mov qword [0x1401f1268], rdx
test rdx, rdx
je 0x14002d825
cmp qword [0x1401f1270], r12
jne 0x14002d918
test rdx, rdx
jne 0x14002d8d0
mov qword [0x1401f1270], r12
jmp 0x14002d825
test rcx, rcx
je 0x14002d901
cmp dword [0x1401f0820], r12d
je 0x14002d901
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 [0x1401f0828]
mov rax, qword [rbp + 0x1d0]
mov qword [0x1401f1270], rax
test rax, rax
je 0x14002d825
cmp qword [0x1401f1280], r12
jne 0x14002d965
test rcx, rcx
je 0x14002d94e
cmp dword [0x1401f0820], r12d
je 0x14002d94e
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x180]
mov rdx, qword [0x1401f1108]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rbp + 0x180]
mov qword [0x1401f1280], rax
test rax, rax
je 0x14002d825
lea rcx, [0x1401f1290]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14002d982
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov eax, dword [0x1401f12dc]
cmp eax, 0x7fffffff
jne 0x14002d9a3
dec eax
mov dword [0x1401f12dc], eax
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rbx, qword [0x1401f1330]
mov rdi, qword [0x1401f1338]
cmp rbx, rdi
je 0x14002d9e5
lea rcx, [rbx + 0x48]
call fcn.140005070
lea rcx, [rbx + 0x18]
call fcn.140003250
add rbx, 0xa0
cmp rbx, rdi
jne 0x14002d9b6
mov rbx, qword [0x1401f1330]
mov rdi, rbx
mov qword [0x1401f1338], rbx
cmp rdi, qword [0x1401f1340]
je 0x14002da32
lea rcx, [0x1401f1330]
cmp rbx, rdi
jne 0x14002da01
call fcn.140003170
jmp 0x14002da32
sub rdi, rbx
movabs rax, 0x6666666666666667
imul rdi
sar rdx, 6
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rbp + 0x180], rdx
lea rdx, [rbp + 0x180]
call fcn.140033b70
mov rsi, r12
movabs r15, 0x100000001b3
mov r14d, 4
lea r13, [0x140000000]
xorps xmm7, xmm7
movss xmm6, dword [0x14013e944]
mov rcx, qword [0x1401f0828]
movabs rdi, 0xccccccccccccb
mov rdx, qword [0x1401f1270]
test rdx, rdx
je 0x14002e25b
test rcx, rcx
je 0x14002daac
cmp dword [0x1401f0820], 0
je 0x14002daac
add rdx, 0x108
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x180]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
cmp rsi, qword [rbp + 0x180]
jae 0x14002e25b
mov rdx, qword [0x1401f1270]
test rdx, rdx
je 0x14002db4a
test rcx, rcx
je 0x14002dafd
cmp dword [0x1401f0820], 0
je 0x14002dafd
add rdx, 0x100
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
mov r8, qword [rbp + 0x1d0]
test r8, r8
je 0x14002db4a
test rcx, rcx
je 0x14002db41
cmp dword [0x1401f0820], 0
je 0x14002db41
mov eax, esi
shl eax, 4
movsxd rdx, eax
add rdx, r8
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1d8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rcx, qword [0x1401f0828]
mov rbx, qword [rbp + 0x1d8]
jmp 0x14002db4d
mov rbx, r12
mov qword [rbp + 0x120], rbx
lea rax, [rbx - 1]
cmp rax, rdi
ja 0x14002e253
mov rcx, rbx
call fcn.14001f660
test eax, eax
je 0x14002db7d
and eax, 0x1fc000
cmp eax, 0x6c000
ja 0x14002e24c
lea rcx, [rbx + 0x280]
call fcn.140023470
comiss xmm7, xmm0
jae 0x14002e24c
lea rcx, [rbx + 0x280]
call fcn.140023470
comiss xmm6, xmm0
jae 0x14002e24c
lea rcx, [rbp + 0x50]
call fcn.14001e7b0
nop
mov qword [rbp + 0x50], rbx
mov dword [rbp + 0x58], esi
cmp rbx, qword [0x1401f1260]
sete byte [rbp + 0x60]
mov rcx, rbx
call fcn.14001f770
movzx r10d, al
mov byte [rbp + 0x61], al
movzx edx, bl
movabs rdi, 0xcbf29ce484222325
xor rdx, rdi
imul rdx, r15
movzx ecx, byte [rbp + 0x121]
xor rdx, rcx
imul rdx, r15
movzx ecx, byte [rbp + 0x122]
xor rdx, rcx
imul rdx, r15
movzx eax, byte [rbp + 0x123]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x124]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x125]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x126]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x127]
xor rdx, rax
imul rdx, r15
and rdx, qword [0x1401f1080]
mov rax, rdx
add rax, rax
mov r8, qword [0x1401f1068]
mov rcx, qword [r8 + rax*8 + 8]
mov r9, qword [0x1401f1058]
cmp rcx, r9
je 0x14002dc91
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rbx, qword [rcx + 0x10]
je 0x14002dc94
nop word [rax + rax]
cmp rcx, rax
je 0x14002dc91
mov rcx, qword [rcx + 8]
cmp rbx, qword [rcx + 0x10]
jne 0x14002dc80
jmp 0x14002dc94
mov rcx, r12
mov rax, r9
test rcx, rcx
cmovne rax, rcx
cmp rax, r9
setne byte [rbp + 0x90]
test r10b, r10b
mov r10, qword [0x1401f0828]
jne 0x14002dd4a
mov rdx, qword [0x1401f0728]
add rdx, rbx
test r10, r10
je 0x14002dcf2
cmp dword [0x1401f0820], 0
je 0x14002dcf2
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x148]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x1401f0828]
cmp qword [rbp + 0x148], 0
jne 0x14002dd04
mov eax, r12d
mov dword [rbp + 0x5c], eax
jmp 0x14002dd51
mov rdx, qword [rbp + 0x148]
add rdx, qword [0x1401f0708]
test r10, r10
je 0x14002dd3f
cmp dword [0x1401f0820], 0
je 0x14002dd3f
mov qword [rsp + 0x20], r12
mov r9, r14
lea r8, [rbp + 0x158]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x1401f0828]
mov eax, dword [rbp + 0x158]
mov dword [rbp + 0x5c], eax
jmp 0x14002dd51
mov dword [rbp + 0x5c], 0xffffffff
mov rdx, qword [0x1401f06f8]
add rdx, rbx
test r10, r10
je 0x14002de01
cmp dword [0x1401f0820], 0
je 0x14002dd8f
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1e0]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x1401f0828]
test r10, r10
je 0x14002de01
cmp dword [0x1401f0820], 0
je 0x14002ddca
mov rdx, qword [rbp + 0x1e0]
add rdx, 0x68
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0x1e8]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r10, qword [0x1401f0828]
test r10, r10
je 0x14002de01
cmp dword [0x1401f0820], 0
je 0x14002de01
mov rdx, qword [rbp + 0x1e8]
add rdx, 0x178
mov qword [rsp + 0x20], r12
mov r9d, 8
lea r8, [rbp + 0xe0]
mov rcx, r10
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x88], rax
lea rcx, [rbp + 0x1f0]
call fcn.14001e7b0
mov qword [rbp + 0x288], 0
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x1f0], rax
mov eax, dword [rbp + 0x58]
mov dword [rbp + 0x1f8], eax
mov eax, dword [rbp + 0x5c]
mov dword [rbp + 0x1fc], eax
movzx eax, byte [rbp + 0x60]
mov byte [rbp + 0x200], al
movzx eax, byte [rbp + 0x61]
mov byte [rbp + 0x201], al
lea rdx, [rbp + 0x68]
cmp qword [rbp + 0x80], 0xf
cmova rdx, qword [rbp + 0x68]
mov r8, qword [rbp + 0x78]
lea rcx, [rbp + 0x208]
call fcn.1400124b0
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x228], rax
movzx eax, byte [rbp + 0x90]
mov byte [rbp + 0x230], al
lea rax, [rbp + 0x238]
mov qword [rbp + 0x120], rax
mov eax, dword [rbp + 0x98]
mov dword [rbp + 0x238], eax
mov rdx, qword [rbp + 0xa0]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rbp + 0x240]
call fcn.140034150
mov rdx, qword [rbp + 0x248]
lea rcx, [rbp + 0x238]
call fcn.14001ed90
mov rdx, rax
lea rcx, [rbp + 0x238]
call fcn.14001ebe0
mov qword [rbp + 0x120], r12
lea rcx, [rbp + 0x120]
call fcn.14001ee30
cmp qword [rbp + 0x218], 0
jne case.0x14002df20.0
movzx eax, byte [0x1401f1200]
cmp eax, 9
ja case.0x14002df20.3
mov ecx, dword [r13 + rax*4 + 0x2fb84]
add rcx, r13
jmp rcx
mov rcx, qword [0x1401f1208]
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
jmp 0x14002df3e
mov rax, qword [0x1401f1208]
cmp qword [rax + 8], 0
sete al
test al, al
jne case.0x14002df20.0
cmp qword [0x1401f1220], 0
je case.0x14002df20.0
movzx edx, byte [rbp + 0x1fc]
xor rdx, rdi
imul rdx, r15
movzx eax, byte [rbp + 0x1fd]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x1fe]
xor rdx, rax
imul rdx, r15
movzx eax, byte [rbp + 0x1ff]
xor rdx, rax
imul rdx, r15
and rdx, qword [0x1401f1240]
mov rax, rdx
add rax, rax
mov r8, qword [0x1401f1228]
mov rcx, qword [r8 + rax*8 + 8]
mov r9, qword [0x1401f1218]
mov eax, dword [rbp + 0x1fc]
cmp rcx, r9
je 0x14002dfd6
add rdx, rdx
mov r8, qword [r8 + rdx*8]
cmp eax, dword [rcx + 0x10]
je 0x14002dfd9
cmp rcx, r8
je 0x14002dfd6
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x14002dfc6
jmp 0x14002dfd9
mov rcx, r12
mov rdx, r9
test rcx, rcx
cmovne rdx, rcx
cmp rdx, r9
je 0x14002e018
cmp eax, 0xffffffff
je 0x14002e018
add rdx, 0x18
lea rax, [rbp + 0x208]
cmp rax, rdx
je case.0x14002df20.0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14002e0c1
mov rdx, qword [rdx]
jmp 0x14002e0c1
movabs rax, 0x4581e737d6831420
mov qword [rbp + 0x120], rax
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x2a0], rax
movabs rcx, 0x8c199fe0e228d88e
mov qword [rbp + 0x120], rcx
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0x120], rax
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x120], rcx
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14002e0b0
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x208]
call fcn.1400124b0
mov rcx, qword [0x1401f0828]
test rcx, rcx
je 0x14002e0fe
cmp dword [0x1401f0820], 0
je 0x14002e0fe
lea rdx, [rbx + 0x90]
mov qword [rsp + 0x20], r12
mov r9d, 0xc
lea r8, [rbp + 4]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsd xmm0, qword [rbp + 4]
movsd qword [rbp + 0x278], xmm0
mov eax, dword [rbp + 0xc]
mov dword [rbp + 0x280], eax
lea rdx, [rbp + 0x1f0]
lea rcx, [rbp + 0x340]
call fcn.14001e860
mov r9d, 0x796e
mov r8, rax
lea rdx, [rbp + 0x190]
call fcn.140030380
movsd xmm0, qword [rax]
movsd qword [rbp + 0x10], xmm0
mov eax, dword [rax + 8]
mov dword [rbp + 0x18], eax
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x20]
call fcn.140031ae0
movsd xmm0, qword [rax]
movsd qword [rbp + 0x288], xmm0
mov rcx, rbx
call fcn.14001f6e0
mov byte [rbp + 0x284], al
cmp byte [rbp + 0x200], 0
je 0x14002e1db
mov qword [0x1401f1348], rbx
movzx eax, byte [rbp + 0x61]
mov byte [0x1401f1250], al
mov dword [0x1401f1350], esi
movsd xmm0, qword [rbp + 0x278]
movsd qword [0x1401f135c], xmm0
mov eax, dword [rbp + 0x280]
mov dword [0x1401f1364], eax
movsd qword [rbp + 0x160], xmm0
mov dword [rbp + 0x168], eax
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x150]
call fcn.140031ae0
movsd xmm0, qword [rax]
movsd qword [0x1401f1354], xmm0
mov rax, qword [0x1401f1338]
cmp rax, qword [0x1401f1340]
je 0x14002e207
lea rdx, [rbp + 0x1f0]
mov rcx, rax
call fcn.14001e860
add qword [0x1401f1338], 0xa0
jmp 0x14002e21e
lea r8, [rbp + 0x1f0]
mov rdx, rax
lea rcx, [0x1401f1330]
call fcn.140034c20
nop
lea rcx, [rbp + 0x238]
call fcn.140005070
lea rcx, [rbp + 0x208]
call fcn.140003250
nop
lea rcx, [rbp + 0x98]
call fcn.140005070
lea rcx, [rbp + 0x68]
call fcn.140003250
mov rcx, qword [0x1401f0828]
inc rsi
jmp 0x14002da5e
lea rcx, [0x1401f1290]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
cmp byte [0x1401f1250], 0
jne 0x14002fb5c
cmp qword [0x1401f11d0], 2
jae 0x14002fb5c
lea rdi, [0x1401f11a0]
cmp qword [0x1401f1190], 0
je 0x14002e2a2
cmp qword [0x1401f11b0], 0
jne 0x14002ecc3
mov dword [rbp + 0x158], 0x208
movabs rax, 0x20b8861fa4a96706
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x300], rax
movabs rax, 0x8c5c9fb2e269d8d9
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x308], rax
movabs rax, 0x32cd6dce01ba1c9b
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x310], rax
movabs rax, 0x8a56eb1372a81019
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x318], rax
movabs rax, 0xcfd636f9fa6e263f
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x320], rax
movabs rax, 0xa3e713b9706c2bcb
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x328], rax
movabs rdx, 0xfc2c38537798857b
mov qword [rbp + 0xe0], rdx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x330], rax
movabs rcx, 0x55686af26ab7d404
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x338], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2c0], rax
movabs rax, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2c8], rax
movabs rax, 0x32b96da701f91cc7
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2d0], rax
movabs r15, 0x8a38eb7672d21070
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2d8], rax
movabs r13, 0xcf9036a5fa362679
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2e0], rax
movabs rsi, 0xa3aa13dc701a2ba2
mov qword [rbp + 0xe0], rsi
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2e8], rax
mov qword [rbp + 0xe0], rdx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2f0], rax
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2f8], rax
vmovdqu ymm0, ymmword [rbp + 0x300]
vpxor ymm1, ymm0, ymmword [rbp + 0x2c0]
vmovdqa ymmword [rbp + 0x300], ymm1
vmovdqu ymm0, ymmword [rbp + 0x320]
vpxor ymm1, ymm0, ymmword [rbp + 0x2e0]
vmovdqa ymmword [rbp + 0x320], ymm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
vzeroupper
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 0x14002e544
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x14002e544
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, 0xd9dc76bf
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14002e53f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x14002e520
cmp edx, 0x93a0957c
je 0x14002e549
test r9d, r9d
jne 0x14002e500
mov rax, qword [rax]
jmp 0x14002e4d0
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 + 0x148]
mov qword [rsp + 0x20], rcx
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x300]
mov rcx, 0xffffffff80000001
call rax
test eax, eax
jne 0x14002ecab
movabs rax, 0x2098862aa4876719
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2c0], rax
movabs rax, 0x8c779f95e27ad8ae
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2c8], rax
movabs rax, 0x32da6dc801b51ce7
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2d0], rax
movabs rax, 0x8a57eb1f72a61011
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2d8], rax
movabs rax, 0xcf9036a5fa362617
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0xe0], rsi
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2e8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x300], rax
movabs rax, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x308], rax
movabs rbx, 0x32b96da701f91cc7
mov qword [rbp + 0xe0], rbx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x310], rax
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x318], rax
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x320], rax
mov qword [rbp + 0xe0], rsi
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x328], rax
vmovdqu ymm0, ymmword [rbp + 0x2c0]
vpxor ymm1, ymm0, ymmword [rbp + 0x300]
vmovdqa ymmword [rbp + 0x2c0], ymm1
vmovdqa xmm0, xmmword [rbp + 0x2e0]
vxorps xmm0, xmm0, xmmword [rbp + 0x320]
vmovdqa xmmword [rbp + 0x2e0], xmm0
lea rax, [rbp + 0x158]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x340]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x2c0]
mov rcx, qword [rbp + 0x148]
vzeroupper
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14002ebe2
movabs rsi, 0x438de505c5920631
mov qword [rbp + 0xe0], rsi
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
movabs r15, 0xe46afe928174bde6
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movabs r13, 0x32b914d5759c71a8
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x110], rax
movabs rcx, 0x8a38eb7672d21070
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x118], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
movabs rax, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
mov qword [rbp + 0xe0], rbx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2b8], rax
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vmovdqa ymmword [rbp + 0x100], ymm1
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x28]
vzeroupper
call fcn.140032fd0
mov rdx, rax
lea rcx, [rbp + 0x2c0]
call fcn.140094b80
nop
lea rcx, [rbp + 0x100]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], 0
jne 0x14002e875
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.1400032b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x1a0], r12
mov qword [rbp + 0x1a8], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x190], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1a0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp + 0x2c0]
call fcn.140003250
lea rax, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 0xf
cmova rax, qword [rbp + 0x190]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x108], rax
call fcn.140095898
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x100], xmm0
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, [rbp + 0x160]
call fcn.1400270e0
nop
lea rcx, [rbp + 0x160]
cmp qword [rbp + 0x178], 7
cmova rcx, qword [rbp + 0x160]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x100]
call fcn.1400959d4
mov r8d, eax
test eax, eax
jne 0x14002e99a
mov edx, dword [rbp + 0x110]
mov ecx, edx
shr ecx, 0xa
test cl, 1
je 0x14002e98e
mov eax, dword [rbp + 0x114]
cmp eax, 0xa000000c
je 0x14002e9b8
cmp eax, 0xa0000003
jne 0x14002e98e
mov r14d, 0xa
jmp 0x14002e9b8
shr edx, 4
and edx, 1
lea r14d, [rdx + 2]
jmp 0x14002e9b8
sub eax, 2
je 0x14002e9b2
sub eax, 1
je 0x14002e9b2
sub eax, 0x32
je 0x14002e9b2
cmp eax, 0x46
je 0x14002e9b2
xor al, al
jmp 0x14002e9b4
mov al, 1
movzx r14d, al
mov dword [rbp + 0x100], r8d
lea rax, [0x14014d0c8]
mov qword [rbp + 0x108], rax
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
test r14d, r14d
je 0x14002ec79
mov dword [rbp + 0x2a0], r12d
mov qword [rbp + 0x2a8], rax
cmp r14d, 1
setne bl
lea rcx, [rbp + 0x160]
call fcn.140033680
test bl, bl
je 0x14002ebd6
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x100]
call fcn.140032fd0
mov rdx, rax
lea rcx, [rbp + 0x2a0]
call fcn.140094b80
mov rdx, rax
lea rcx, [0x1401f1180]
call fcn.140033110
lea rcx, [rbp + 0x2a0]
call fcn.140003250
mov qword [rbp + 0xe0], rsi
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x110], rax
movabs rcx, 0x8a38eb7672d21070
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x118], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
movabs rax, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x32b96da701f91cc7
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0xe0], rcx
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2b8], rax
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vmovdqa ymmword [rbp + 0x100], ymm1
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x160]
vzeroupper
call fcn.140032fd0
mov rdx, rax
lea rcx, [rbp + 0x300]
call fcn.140094b80
nop
lea rcx, [rbp + 0x100]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rcx + r8], 0
jne 0x14002eb70
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.1400032b0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x100], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x110], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rbp + 0x100]
mov rcx, rdi
call fcn.140033110
lea rcx, [rbp + 0x100]
call fcn.140003250
nop
lea rcx, [rbp + 0x300]
call fcn.140003250
nop
lea rcx, [rbp + 0x190]
call fcn.140003250
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
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 0x14002ec74
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x14002ec74
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, 0x47b20f37
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14002ec6f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x14002ec50
cmp edx, 0x9df897b8
je 0x14002ec89
test r9d, r9d
jne 0x14002ec30
mov rax, qword [rax]
jmp 0x14002ec00
xor bl, bl
test r8d, r8d
jne 0x14002fb69
jmp 0x14002e9fa
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 + 0x148]
call rax
cmp qword [0x1401f11b0], 0
jne 0x14002ecc3
cmp qword [0x1401f11d0], 0
jne 0x14002fa9e
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x340]
call sub.VCRUNTIME140.dll_memset
cmp qword [0x1401f11b8], 0xf
cmova rdi, qword [0x1401f11a0]
mov rdx, rdi
lea rcx, [rbp + 0x340]
call fcn.140033480
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
lea r13, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x340], r13
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x33c], edx
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x1c0], r12
mov qword [rbp + 0x1c8], 0xf
mov byte [rbp + 0x1b0], 0
cmp qword [rbp + 0x3d0], 0
je 0x14002fa40
xor eax, eax
movups xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x2a0], r12
mov word [rbp + 0x2a8], 1
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x388]
mov qword [rbp + 0x190], rax
test rax, rax
sete byte [rbp + 0x198]
mov byte [rbp + 0x199], 0
movdqu xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x170], r12
lea rcx, [rbp + 0x160]
mov qword [rbp + 0xe0], rcx
movaps xmm0, xmmword [rbp + 0x2a0]
movdqa xmmword [rbp + 0x2a0], xmm0
movaps xmm1, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x190], xmm1
movzx esi, byte [rbp + 0x199]
mov rbx, qword [rbp + 0x190]
movzx r15d, byte [rbp + 0x2a8]
mov rdi, qword [rbp + 0x2a0]
test rax, rax
jne 0x14002ee0b
movzx r14d, byte [rbp + 0x198]
jmp 0x14002ee30
test rbx, rbx
je 0x14002ee23
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 0x14002ee23
movzx esi, al
jmp 0x14002ee26
mov rbx, r12
mov r14b, 1
nop dword [rax]
test r15b, r15b
jne 0x14002ee4e
test rdi, rdi
je 0x14002ee48
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 0x14002ee4b
mov rdi, r12
mov r15b, 1
test rbx, rbx
jne 0x14002eea2
test rdi, rdi
jne 0x14002eea7
mov qword [rbp + 0xe0], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], r12
mov rdx, qword [rbp + 0x160]
cmp rdx, qword [rbp + 0x168]
jne 0x14002ef25
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
jmp 0x14002ef3b
test rdi, rdi
jne 0x14002ee58
test r14b, r14b
jne 0x14002eec7
test rbx, rbx
je 0x14002eec4
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 0x14002eec4
movzx esi, al
jmp 0x14002eec7
mov rbx, r12
mov byte [rbp], sil
mov rax, qword [rbp + 0x168]
cmp rax, qword [rbp + 0x170]
je 0x14002eee7
mov byte [rax], sil
inc qword [rbp + 0x168]
jmp 0x14002eefe
lea r8, [rbp]
mov rdx, qword [rbp + 0x168]
lea rcx, [rbp + 0x160]
call fcn.14001a650
test rbx, rbx
je 0x14002ee23
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 0x14002ee23
mov byte [rbp + 0x198], 0
jmp 0x14002ee0b
mov r8, qword [rbp + 0x168]
sub r8, rdx
lea rcx, [rbp + 0x100]
call fcn.140003ea0
mov rdx, qword [rbp + 0x1c8]
cmp rdx, 0xf
jbe 0x14002ef7f
inc rdx
mov rcx, qword [rbp + 0x1b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ef7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ef7a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140096054
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x1b0], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x1c0], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
lea rcx, [rbp + 0x100]
call fcn.140003250
cmp qword [rbp + 0x1c0], 0
jbe 0x14002f9bf
movabs rax, 0x5289f506d0950639
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
movabs rax, 0x8c75ed95bd5abdf8
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
movabs r15, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp byte [rax + rdi], 0
jne 0x14002f070
lea r14, [rbp + 0x1b0]
mov r13, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x1c8]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x1c0]
cmp rdi, rsi
ja 0x14002f12e
test rdi, rdi
jne 0x14002f0b3
mov rbx, r12
jmp 0x14002f135
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 0x14002f11a
nop
mov r8, rdi
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002f2c8
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 0x14002f0e0
mov rcx, qword [rbp + 0x1c8]
xor r12d, r12d
movabs r15, 0x8c199fe0e228d88e
mov rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
je 0x14002f9b8
add rbx, 0xf
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
mov qword [rbp + 0x138], r12
mov qword [rbp + 0x140], r12
cmp rsi, rbx
jb 0x14002fb7d
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x1b0]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x128]
call fcn.140003ea0
nop
movabs rax, 0x5289f506d0950639
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
movabs r13, 0x8c75ed95bd5abdf8
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov rdi, 0xffffffffffffffff
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x14002f230
lea rsi, [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova rsi, qword [rbp + 0x128]
mov rax, qword [rbp + 0x138]
cmp rdi, rax
ja 0x14002f2ed
test rdi, rdi
je 0x14002f514
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 0x14002f2ed
mov r8, rdi
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002f2e4
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 0x14002f293
jmp 0x14002f2ed
sub rbx, r14
mov rcx, qword [rbp + 0x1c8]
xor r12d, r12d
movabs r15, 0x8c199fe0e228d88e
jmp 0x14002f135
cmp rbx, rsi
je 0x14002f514
movabs rax, 0x5289f506d0950639
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
mov qword [rbp + 0xe0], r13
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
movabs rax, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x14002f384
lea r14, [rbp + 0x128]
mov r13, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x140]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x138]
cmp rdi, rsi
ja 0x14002f437
test rdi, rdi
jne 0x14002f3c7
mov rbx, r12
jmp 0x14002f43e
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 0x14002f42d
mov r8, rdi
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002f5f8
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 0x14002f3f3
mov rcx, qword [rbp + 0x140]
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 0x14002fb63
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x128]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x100]
call fcn.140003ea0
mov rdx, qword [rbp + 0x140]
cmp rdx, 0xf
jbe 0x14002f4d3
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f4ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f721
call fcn.140096054
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x128], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x138], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
lea rcx, [rbp + 0x100]
call fcn.140003250
movabs rax, 0x5289f506d0950639
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
movabs rax, 0x8c199fe0e25abdf8
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
movabs r15, 0x8c199fe0e228d88e
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x14002f5b5
lea r14, [rbp + 0x128]
mov r13, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x140]
cmp rcx, 0xf
cmova r14, r13
mov rsi, qword [rbp + 0x138]
cmp rdi, rsi
ja 0x14002f68e
test rdi, rdi
jne 0x14002f60a
mov rbx, r12
jmp 0x14002f695
sub rbx, r14
mov rcx, qword [rbp + 0x140]
xor r12d, r12d
jmp 0x14002f43e
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 0x14002f67a
nop word [rax + rax]
mov r8, rdi
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002f728
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 0x14002f640
mov rcx, qword [rbp + 0x140]
xor r12d, r12d
movabs r15, 0x8c199fe0e228d88e
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 0x14002fb63
sub rsi, rbx
mov r8, 0xffffffffffffffff
cmp rsi, r8
cmovb r8, rsi
lea rdx, [rbp + 0x128]
cmp rcx, 0xf
cmova rdx, r13
add rdx, rbx
lea rcx, [rbp + 0x100]
call fcn.140003ea0
mov rdx, qword [rbp + 0x140]
cmp rdx, 0xf
jbe 0x14002f749
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f744
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002f744
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
sub rbx, r14
mov rcx, qword [rbp + 0x140]
xor r12d, r12d
movabs r15, 0x8c199fe0e228d88e
jmp 0x14002f695
call fcn.140096054
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x128], xmm0
movups xmm1, xmmword [rbp + 0x110]
movups xmmword [rbp + 0x138], xmm1
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
lea rcx, [rbp + 0x100]
call fcn.140003250
movabs rax, 0x20ec8659a4e6676f
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a0], rax
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x2a8], rax
movabs rax, 0x20ec8659a4e66755
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0xe0], r15
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x14002f817
lea rsi, [rbp + 0x128]
mov r13, qword [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova rsi, r13
mov r12, qword [rbp + 0x138]
cmp rdi, r12
ja 0x14002f8ba
test rdi, rdi
jne 0x14002f84f
xor ebx, ebx
jmp 0x14002f8c1
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 0x14002f8ba
nop dword [rax + rax]
mov r8, rdi
lea rdx, [rbp + 0x2a0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002fa32
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 0x14002f880
mov rbx, 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], 0
mov qword [rbp + 0x118], 0
mov r8, rbx
cmp r12, rbx
cmovb r8, r12
lea rdx, [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova rdx, r13
lea rcx, [rbp + 0x100]
call fcn.140003ea0
lea rdx, [rbp + 0x100]
lea rcx, [0x1401f11c0]
call fcn.140033110
lea rcx, [rbp + 0x100]
call fcn.140003250
lea rcx, [rbx + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xor r12d, r12d
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], r12
mov rax, qword [rbp + 0x138]
cmp rax, rcx
jb 0x14002fb63
lea r8, [rbx + 5]
sub rax, rcx
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova rdx, qword [rbp + 0x128]
add rdx, rcx
lea rcx, [rbp + 0x100]
call fcn.140003ea0
lea rdx, [rbp + 0x100]
lea rcx, [0x1401f11e0]
call fcn.140033110
lea rcx, [rbp + 0x100]
call fcn.140003250
nop
lea rcx, [rbp + 0x128]
call fcn.140003250
lea r13, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea rcx, [rbp + 0x350]
call fcn.1400333c0
test rax, rax
jne 0x14002f9f4
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x340]
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 + 0x160]
test rcx, rcx
je 0x14002fa40
mov rdx, qword [rbp + 0x170]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fa3a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002fa3a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
sub rbx, rsi
jmp 0x14002f8c1
call fcn.140096054
nop
lea rcx, [rbp + 0x1b0]
call fcn.140003250
nop
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x340], r13
mov rax, qword [rbp + 0x340]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x33c], edx
lea rcx, [rbp + 0x350]
call fcn.140032f60
lea rcx, [rbp + 0x358]
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 + 0x3f0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
cmp qword [0x1401f11d0], 5
jb 0x14002fb55
cmp qword [0x1401f11f0], 2
jb 0x14002fb55
mov ecx, 8
call fcn.140095dd0
lea rcx, [0x1401f1050]
mov qword [rax], rcx
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x2a8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r12d
mov r9, rax
lea r8, [0x140034fa0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x2a0], rax
test rax, rax
je 0x14002fb42
cmp dword [rbp + 0x2a8], 0
je 0x14002fb36
movaps xmm0, xmmword [rbp + 0x2a0]
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0x100]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x14002fb36
mov al, 1
jmp 0x14002d827
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rbp + 0x2a8], r12d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov byte [0x1401f1250], 1
mov al, 1
jmp 0x14002d827
call fcn.140012a70
nop
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x2a0]
call fcn.1400278d0
nop
call fcn.140012a70
int3