Function at 0x140015720
Capabilities:
Authenticate hmac
Check if file exists
Encode data using xor
Hash data using fnv
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x890
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
mov rax, qword [0x14006f0d0]
xor rax, rsp
mov qword [rsp + 0x850], rax
xor edi, edi
mov dword [rsp + 0x34], edi
mov ebx, edi
mov dword [rsp + 0xe0], ebx
movups xmm0, xmmword [0x140061598]
movups xmmword [rsp + 0x2e8], xmm0
movups xmm1, xmmword [0x1400615a8]
movups xmmword [rsp + 0x2f8], xmm1
movzx eax, word [0x1400615b8]
mov word [rsp + 0x308], ax
movzx eax, byte [0x1400615ba]
mov byte [rsp + 0x30a], al
mov r8d, edi
mov esi, dword [0x14006f0d8]
lea r12d, [rdi + 4]
lea r13d, [rdi + 0x1f]
cmp esi, 2
jl 0x140015913
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x2e8]
mov edx, dword [rsp + 0xa0]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140015810
cmp r8d, 0x23
jge 0x140015960
movsxd rax, r8d
lea r9, [rsp + 0x2e8]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x23
jl 0x140015930
lea rax, [rsp + 0x558]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rsp + 0x2e8]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x140018312
mov dword [rsp + 0x56c], edi
movsd xmm0, qword [0x140061778]
movsd qword [rsp + 0x80], xmm0
movzx ecx, word [0x140061780]
mov word [rsp + 0x88], cx
movzx eax, byte [0x140061782]
mov byte [rsp + 0x80], 0x41
xor byte [rsp + 0x81], 0x3a
xor byte [rsp + 0x82], 0x3b
xor byte [rsp + 0x83], 0x3c
xor byte [rsp + 0x84], 0x3d
xor byte [rsp + 0x85], 0x3e
xor byte [rsp + 0x86], 0x3f
xor byte [rsp + 0x87], 0x40
xor cl, 0x41
mov byte [rsp + 0x88], cl
xor byte [rsp + 0x89], 0x42
xor al, 0x43
mov byte [rsp + 0x8a], al
lea rax, [rsp + 0x56c]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x5d4]
xor r8d, r8d
lea rdx, [rsp + 0x80]
mov rcx, qword [rsp + 0x558]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x140015dad
mov dword [rsp + 0x568], edi
movsd xmm0, qword [0x140061778]
movsd qword [rsp + 0x70], xmm0
movzx ecx, word [0x140061780]
mov word [rsp + 0x78], cx
movzx eax, byte [0x140061782]
mov byte [rsp + 0x70], 0x41
xor byte [rsp + 0x71], 0x3a
xor byte [rsp + 0x72], 0x3b
xor byte [rsp + 0x73], 0x3c
xor byte [rsp + 0x74], 0x3d
xor byte [rsp + 0x75], 0x3e
xor byte [rsp + 0x76], 0x3f
xor byte [rsp + 0x77], 0x40
xor cl, 0x41
mov byte [rsp + 0x78], cl
xor byte [rsp + 0x79], 0x42
xor al, 0x43
mov byte [rsp + 0x7a], al
lea rax, [rsp + 0x56c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x568]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x5d4]
xor r8d, r8d
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x558]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x140015b08
mov ebx, dword [rsp + 0x568]
mov dword [rsp + 0xe0], ebx
jmp 0x140016005
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r10d, eax
movups xmm0, xmmword [str.HISO]
movups xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [0x140061890]
movups xmmword [rsp + 0x140], xmm1
mov ecx, dword [0x1400618a0]
mov dword [rsp + 0x150], ecx
movzx ecx, word [0x1400618a4]
mov word [rsp + 0x154], cx
mov r8d, edi
cmp esi, 2
jl 0x140015ca3
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x130]
mov edx, dword [rsp + 0xa0]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140015ba0
cmp r8d, 0x26
jge 0x140015cf0
movsxd rax, r8d
lea r9, [rsp + 0x130]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x26
jl 0x140015cc0
movzx eax, word [0x140061164]
mov word [rsp + 0x30], ax
cmp byte [0x140061165], bl
je 0x140015d0e
mov byte [rsp + 0x30], 0x2d
xor byte [rsp + 0x31], 0x3a
movsd xmm0, qword [0x140061778]
movsd qword [rsp + 0x170], xmm0
movzx eax, word [0x140061780]
mov word [rsp + 0x178], ax
movzx eax, byte [0x140061782]
mov byte [rsp + 0x17a], al
movups xmm0, xmmword [0x140061598]
movaps xmmword [rsp + 0xf0], xmm0
movups xmm1, xmmword [0x1400615a8]
movaps xmmword [rsp + 0x100], xmm1
movzx eax, word [0x1400615b8]
mov word [rsp + 0x110], ax
movzx eax, byte [0x1400615ba]
mov byte [rsp + 0x112], al
mov dword [rsp + 0x28], r10d
lea rax, [rsp + 0x170]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xf0]
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x30]
mov ecx, 0xc
call fcn.1400011a0
jmp 0x140016005
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r10d, eax
movups xmm0, xmmword [str.z_UeI]
movups xmmword [rsp + 0xf0], xmm0
movsd xmm0, qword [0x140061630]
movsd qword [rsp + 0x100], xmm0
mov ecx, dword [0x140061638]
mov dword [rsp + 0x108], ecx
movzx ecx, word [0x14006163c]
mov word [rsp + 0x10c], cx
mov r8d, edi
cmp esi, 2
jl 0x140015f43
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0xf0]
mov edx, dword [rsp + 0xa0]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140015e40
cmp r8d, 0x1e
jge 0x140015f90
movsxd rax, r8d
lea r9, [rsp + 0xf0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x140015f60
movzx eax, word [0x140061164]
mov word [rsp + 0x30], ax
mov byte [rsp + 0x30], 0x2d
xor byte [rsp + 0x31], 0x3a
movups xmm0, xmmword [0x140061598]
movaps xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [0x1400615a8]
movaps xmmword [rsp + 0x140], xmm1
movzx eax, word [0x1400615b8]
mov word [rsp + 0x150], ax
movzx eax, byte [0x1400615ba]
mov byte [rsp + 0x152], al
mov dword [rsp + 0x20], r10d
lea r9, [rsp + 0x130]
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0x30]
mov ecx, 0xc
call fcn.1400011a0
mov rcx, qword [rsp + 0x558]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
je 0x140018312
mov r14d, edi
mov dword [rsp + 0x90], edi
movups xmm0, xmmword [str.jU_HJ_M_]
movups xmmword [rsp + 0xc0], xmm0
mov eax, dword [0x1400615e0]
mov dword [rsp + 0xd0], eax
movzx eax, byte [0x1400615e4]
mov byte [rsp + 0xd4], al
mov r8d, edi
cmp esi, 2
jl 0x1400161a3
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0xc0]
mov edx, dword [rsp + 0xa0]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x1400160a0
cmp r8d, 0x15
jge 0x1400161f0
movsxd rax, r8d
lea r10, [rsp + 0xc0]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x15
jl 0x1400161c0
lea rax, [rsp + 0x550]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rsp + 0xc0]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x140017c54
mov dword [rsp + 0x548], edi
movsd xmm0, qword [0x140065e10]
movsd qword [rsp + 0x60], xmm0
movzx eax, word [0x140065e18]
mov word [rsp + 0x68], ax
cmp byte [0x140065e19], dil
je 0x14001627f
mov byte [rsp + 0x60], 0x53
xor byte [rsp + 0x61], 0x3a
xor byte [rsp + 0x62], 0x3b
xor byte [rsp + 0x63], 0x3c
xor byte [rsp + 0x64], 0x3d
xor byte [rsp + 0x65], 0x3e
xor byte [rsp + 0x66], 0x3f
xor byte [rsp + 0x67], 0x40
xor byte [rsp + 0x68], 0x41
xor byte [rsp + 0x69], 0x42
lea rax, [rsp + 0x548]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x5d0]
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x550]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x1400180be
mov ecx, dword [rsp + 0x548]
call fcn.140022cd4
mov rbx, rax
movsd xmm0, qword [0x140065e10]
movsd qword [rsp + 0x50], xmm0
movzx ecx, word [0x140065e18]
mov word [rsp + 0x58], cx
cmp byte [0x140065e19], dil
je 0x14001631b
mov byte [rsp + 0x50], 0x53
xor byte [rsp + 0x51], 0x3a
xor byte [rsp + 0x52], 0x3b
xor byte [rsp + 0x53], 0x3c
xor byte [rsp + 0x54], 0x3d
xor byte [rsp + 0x55], 0x3e
xor byte [rsp + 0x56], 0x3f
xor byte [rsp + 0x57], 0x40
xor byte [rsp + 0x58], 0x41
xor byte [rsp + 0x59], 0x42
lea rax, [rsp + 0x548]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x5d0]
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rcx, qword [rsp + 0x550]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x140017e41
mov qword [rsp + 0x580], rbx
mov r14, 0xffffffffffffffff
mov rax, r14
inc rax
cmp byte [rbx + rax], dil
jne 0x140016365
mov qword [rsp + 0x588], rax
call fcn.140021da4
movaps xmm0, xmmword [rsp + 0x580]
movdqa xmmword [rsp + 0x420], xmm0
lea r8, [rsp + 0x420]
mov edx, eax
lea rcx, [rsp + 0x680]
call fcn.14000d440
nop
lea rax, str.userdata
mov qword [rsp + 0x580], rax
mov qword [rsp + 0x588], 8
call fcn.140021da4
movaps xmm0, xmmword [rsp + 0x580]
movdqa xmmword [rsp + 0x430], xmm0
lea r8, [rsp + 0x430]
mov edx, eax
lea rcx, [rsp + 0x398]
call fcn.14000d440
mov esi, 0x78000
mov dword [rsp + 0x34], esi
lea r8, [rsp + 0x398]
lea rdx, [rsp + 0x680]
lea rcx, [rsp + 0x650]
call fcn.14000db20
nop
mov rdx, qword [rsp + 0x3b0]
cmp rdx, 8
jb 0x14001645b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x398]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016456
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018569
call fcn.140022b70
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x570], xmm1
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x570]
call fcn.14001a530
test eax, eax
jne 0x14001856f
xorps xmm0, xmm0
movups xmmword [rsp + 0x600], xmm0
mov rcx, qword [rsp + 0x578]
test rcx, rcx
je 0x1400164a4
lock inc dword [rcx + 8]
mov esi, dword [rsp + 0x34]
movaps xmm0, xmmword [rsp + 0x570]
movdqa xmmword [rsp + 0x600], xmm0
mov rcx, qword [rsp + 0x578]
test rcx, rcx
je 0x1400164ca
lock inc dword [rcx + 8]
mov esi, dword [rsp + 0x34]
xorps xmm0, xmm0
movups xmmword [rsp + 0x670], xmm0
mov qword [rsp + 0x670], rdi
mov qword [rsp + 0x298], rdi
mov qword [rsp + 0x678], rdi
mov rcx, qword [rsp + 0x578]
test rcx, rcx
je 0x140016536
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140016532
mov rbx, qword [rsp + 0x578]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140016532
mov rcx, qword [rsp + 0x578]
mov rax, qword [rcx]
call qword [rax + 8]
mov esi, dword [rsp + 0x34]
movabs r15, 0x100000001b3
mov ebx, dword [0x14006f0d8]
nop word [rax + rax]
mov rax, qword [rsp + 0x600]
cmp rax, qword [rsp + 0x298]
je 0x140017af8
mov ecx, dword [rsp + 0x90]
inc ecx
mov dword [rsp + 0x90], ecx
mov dword [rsp + 0x120], ecx
lea rcx, [rax + 0x20]
cmp qword [rax + 0x38], 8
jb 0x14001658c
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x30]
lea rdx, [rcx + rax*2]
mov r10, rdx
call fcn.14000d5b0
cmp rax, rdx
je 0x1400165dc
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x1400165b0
cmp cx, 0x2f
jne 0x1400165b9
add rax, 2
cmp rax, rdx
jne 0x1400165a1
cmp rax, rdx
je 0x1400165dc
nop
lea r8, [r10 - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x1400165dc
cmp cx, 0x2f
je 0x1400165dc
mov r10, r8
cmp rax, r8
jne 0x1400165c0
sub rdx, r10
sar rdx, 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], rdi
mov qword [rsp + 0x198], rdi
mov r8, rdx
mov rdx, r10
lea rcx, [rsp + 0x180]
call fcn.140008b30
or esi, 7
lea rdx, [rsp + 0x590]
lea rcx, [rsp + 0x180]
call fcn.14000d6e0
nop
mov rdx, qword [rsp + 0x198]
cmp rdx, 8
jb 0x140016671
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001666c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001857f
call fcn.140022b70
mov qword [rsp + 0x190], rdi
mov qword [rsp + 0x198], 7
mov word [rsp + 0x180], di
lea rax, [rsp + 0x590]
cmp qword [rsp + 0x5a8], 0x10
cmovae rax, qword [rsp + 0x590]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x5a0]
mov qword [rsp + 0x318], rax
call fcn.140021da4
movaps xmm0, xmmword [rsp + 0x310]
movdqa xmmword [rsp + 0x440], xmm0
lea r8, [rsp + 0x440]
mov edx, eax
lea rcx, [rsp + 0x260]
call fcn.14000d440
or esi, 0x18
lea r8, [rsp + 0x260]
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x610]
call fcn.14000db20
nop
mov rdx, qword [rsp + 0x278]
cmp rdx, 8
jb 0x140016755
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016750
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018585
call fcn.140022b70
mov qword [rsp + 0x270], rdi
mov qword [rsp + 0x278], 7
mov word [rsp + 0x260], di
lea rax, str.localconfig.vdf
mov qword [rsp + 0x320], rax
mov qword [rsp + 0x328], 0xf
call fcn.140021da4
movaps xmm0, xmmword [rsp + 0x320]
movdqa xmmword [rsp + 0x3f0], xmm0
lea r8, [rsp + 0x3f0]
mov edx, eax
lea rcx, [rsp + 0x2a0]
call fcn.14000d440
or esi, 0xc0
lea rax, str.config
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x338], 6
call fcn.140021da4
movaps xmm0, xmmword [rsp + 0x330]
movdqa xmmword [rsp + 0x410], xmm0
lea r8, [rsp + 0x410]
mov edx, eax
lea rcx, [rsp + 0x220]
call fcn.14000d440
or esi, 0x300
mov dword [rsp + 0x34], esi
lea rdx, [rsp + 0x610]
lea rcx, [rsp + 0x240]
call fcn.14000dbf0
bts esi, 0xa
mov dword [rsp + 0x34], esi
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x240]
call fcn.14000d7d0
lea r8, [rsp + 0x2a0]
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x5d8]
call fcn.14000db20
nop
btr esi, 0xa
mov dword [rsp + 0x34], esi
mov rdx, qword [rsp + 0x258]
cmp rdx, 8
jb 0x1400168b1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400168ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001858b
call fcn.140022b70
mov qword [rsp + 0x250], rdi
mov qword [rsp + 0x258], 7
mov word [rsp + 0x240], di
mov rdx, qword [rsp + 0x238]
cmp rdx, 8
jb 0x140016915
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016910
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018591
call fcn.140022b70
mov qword [rsp + 0x230], rdi
mov qword [rsp + 0x238], 7
mov word [rsp + 0x220], di
mov rdx, qword [rsp + 0x2b8]
cmp rdx, 8
jb 0x140016979
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016974
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018597
call fcn.140022b70
mov qword [rsp + 0x2b0], rdi
mov qword [rsp + 0x2b8], 7
mov word [rsp + 0x2a0], di
lea rcx, [rsp + 0x5d8]
call fcn.14000ec20
test al, al
jne 0x140016d03
movups xmm0, xmmword [0x140066120]
movups xmmword [rsp + 0x2c0], xmm0
movups xmm1, xmmword [0x140066130]
movups xmmword [rsp + 0x2d0], xmm1
mov eax, dword [0x140066140]
mov dword [rsp + 0x2e0], eax
movzx eax, word [0x140066144]
mov word [rsp + 0x2e4], ax
movzx eax, byte [0x140066146]
mov byte [rsp + 0x2e6], al
mov r8d, edi
cmp ebx, 2
jl 0x140016b43
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x2c0]
mov edx, dword [rsp + 0xa0]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140016a40
cmp r8d, 0x27
jge 0x140016b90
movsxd rax, r8d
lea r9, [rsp + 0x2c0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x27
jl 0x140016b60
movzx eax, word [0x140061164]
mov word [rsp + 0x38], ax
cmp byte [0x140061165], 0
je 0x140016baf
mov byte [rsp + 0x38], 0x2d
xor byte [rsp + 0x39], 0x3a
movups xmm0, xmmword [rsp + 0x590]
movaps xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [rsp + 0x5a0]
movaps xmmword [rsp + 0x4c0], xmm1
lea r9, [rsp + 0x4b0]
lea r8, [rsp + 0x2c0]
lea rdx, [rsp + 0x38]
mov ecx, 0xc
call fcn.1400011a0
nop
mov rdx, qword [rsp + 0x5f0]
cmp rdx, 8
jb 0x140016c37
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x5d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016c32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018646
call fcn.140022b70
mov qword [rsp + 0x5e8], rdi
mov qword [rsp + 0x5f0], 7
mov word [rsp + 0x5d8], di
mov rdx, qword [rsp + 0x628]
cmp rdx, 8
jb 0x140016c9b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x610]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016c96
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001864c
call fcn.140022b70
mov qword [rsp + 0x620], rdi
mov qword [rsp + 0x628], 7
mov word [rsp + 0x610], di
mov rdx, qword [rsp + 0x5a8]
cmp rdx, 0x10
jb 0x140017ad3
inc rdx
mov rcx, qword [rsp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016cf9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018652
call fcn.140022b70
jmp 0x140017ad3
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x740]
call fcn.1400253f0
lea rdx, [rsp + 0x5d8]
cmp qword [rsp + 0x5f0], 8
cmovae rdx, qword [rsp + 0x5d8]
lea rcx, [rsp + 0x740]
call fcn.14000c170
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x740], rax
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x73c], edx
mov word [rsp + 0xb0], 1
mov byte [rsp + 0xb2], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x5b0], xmm0
mov qword [rsp + 0x5c0], rdi
mov qword [rsp + 0x5c8], 0xf
mov byte [rsp + 0x5b0], 0
bts esi, 0xe
mov dword [rsp + 0x34], esi
mov r8d, 2
lea rcx, [rsp + 0x740]
call fcn.14001ce40
lea rdx, [rsp + 0x530]
lea rcx, [rsp + 0x740]
call fcn.14001cd60
mov rdx, qword [rax + 8]
add rdx, qword [rax]
xor r8d, r8d
lea rcx, [rsp + 0x5b0]
call fcn.14001b850
mov rax, qword [rsp + 0x5c0]
test rax, rax
jne 0x140016e06
mov dword [rsp + 0x34], edi
jmp 0x140016e51
xor r8d, r8d
lea rcx, [rsp + 0x740]
call fcn.14001ce40
lea rdx, [rsp + 0x5b0]
cmp qword [rsp + 0x5c8], 0x10
cmovae rdx, qword [rsp + 0x5b0]
mov r8, qword [rsp + 0x5c0]
lea rcx, [rsp + 0x740]
call fcn.14001d030
mov dword [rsp + 0x34], edi
mov rax, qword [rsp + 0x5c0]
lea rcx, [rsp + 0x5b0]
cmp qword [rsp + 0x5c8], 0x10
jb 0x140016e72
mov rdx, qword [rsp + 0x5b0]
lea r8, [rdx + rax]
jmp 0x140016e7e
lea r8, [rcx + rax]
lea rdx, [rsp + 0x5b0]
lea r9, [rsp + 0xb0]
lea rcx, [rsp + 0x6a0]
call fcn.14001c610
nop
mov rdx, qword [rsp + 0x5c8]
cmp rdx, 0x10
jb 0x140016ed7
inc rdx
mov rcx, qword [rsp + 0x5b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016ed2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001859d
call fcn.140022b70
mov qword [rsp + 0x5c0], rdi
mov qword [rsp + 0x5c8], 0xf
mov byte [rsp + 0x5b0], 0
mov esi, 0x3000
mov dword [rsp + 0x34], esi
lea rcx, [rsp + 0x6a0]
cmp qword [rsp + 0x6b8], 0x10
cmovae rcx, qword [rsp + 0x6a0]
mov r8, qword [rsp + 0x6b0]
cmp r8, 0x14
jne 0x140018622
lea rdx, str.UserLocalConfigStore
call fcn.140025830
test eax, eax
jne 0x140018622
xorps xmm0, xmm0
movups xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], rdi
mov qword [rsp + 0x218], rdi
lea r8d, [rax + 7]
lea rdx, str.friends
lea rcx, [rsp + 0x200]
call fcn.140008c60
lea rdx, [rsp + 0x200]
mov r14, qword [rsp + 0x218]
cmp r14, 0x10
setae r12b
mov rbx, qword [rsp + 0x200]
cmovae rdx, rbx
movabs r9, 0xcbf29ce484222325
mov rcx, rdi
mov r8, qword [rsp + 0x210]
test r8, r8
je 0x140016fc3
nop dword [rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r15
inc rcx
cmp rcx, r8
jb 0x140016fb0
lea r8, [rsp + 0x200]
lea rdx, [rsp + 0x4f0]
lea rcx, [rsp + 0x700]
call fcn.14001c290
mov r15, qword [rax + 8]
test r12b, r12b
je 0x14001701a
lea rdx, [r14 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140017012
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400185a3
mov rcx, rbx
call fcn.140022b70
test r15, r15
je 0x1400185a9
xorps xmm0, xmm0
movups xmmword [rsp + 0x580], xmm0
xorps xmm1, xmm1
movups xmmword [rsp + 0x1c0], xmm1
mov qword [rsp + 0x1d0], rdi
mov qword [rsp + 0x1d8], rdi
mov r8d, 7
lea rdx, str.friends
lea rcx, [rsp + 0x1c0]
call fcn.140008c60
nop
lea r8, [rsp + 0x1c0]
lea rdx, [rsp + 0x500]
lea rcx, [rsp + 0x700]
call fcn.14001a740
mov rax, qword [rax]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140017095
lock inc dword [rcx + 8]
mov esi, dword [rsp + 0x34]
mov rbx, qword [rax + 0x30]
mov qword [rsp + 0x580], rbx
mov rax, qword [rax + 0x38]
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x588], rax
mov rdx, qword [rsp + 0x1d8]
cmp rdx, 0x10
jb 0x1400170f8
inc rdx
mov rcx, qword [rsp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400170f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400185cd
call fcn.140022b70
mov qword [rsp + 0x1d0], rdi
mov qword [rsp + 0x1d8], 0xf
mov byte [rsp + 0x1c0], 0
lea r15, [rbx + 0x20]
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
mov qword [rsp + 0x1f0], rdi
mov qword [rsp + 0x1f8], rdi
mov r8d, 0xb
lea rdx, str.PersonaName
lea rcx, [rsp + 0x1e0]
call fcn.140008c60
lea rdx, [rsp + 0x1e0]
mov r14, qword [rsp + 0x1f8]
cmp r14, 0x10
setae r13b
mov rbx, qword [rsp + 0x1e0]
cmovae rdx, rbx
movabs r9, 0xcbf29ce484222325
mov rcx, rdi
mov r8, qword [rsp + 0x1f0]
test r8, r8
je 0x1400171b3
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x1400171a0
lea r8, [rsp + 0x1e0]
lea rdx, [rsp + 0x510]
mov rcx, r15
call fcn.14001c290
mov r12, qword [rax + 8]
test r13b, r13b
je 0x140017205
lea rdx, [r14 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400171fd
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018616
mov rcx, rbx
call fcn.140022b70
test r12, r12
je 0x1400185d3
xorps xmm0, xmm0
movups xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1b0], rdi
mov qword [rsp + 0x1b8], rdi
mov r8d, 0xb
lea rdx, str.PersonaName
lea rcx, [rsp + 0x1a0]
call fcn.140008c60
nop
lea r8, [rsp + 0x1a0]
lea rdx, [rsp + 0x520]
mov rcx, r15
call fcn.14001aa20
mov rdx, qword [rax]
add rdx, 0x30
lea rcx, [rsp + 0x630]
call fcn.1400067a0
nop
mov rdx, qword [rsp + 0x1b8]
cmp rdx, 0x10
jb 0x1400172b4
inc rdx
mov rcx, qword [rsp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400172af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400185f7
call fcn.140022b70
mov qword [rsp + 0x1b0], rdi
mov qword [rsp + 0x1b8], 0xf
mov byte [rsp + 0x1a0], 0
lea r15, [rsp + 0x630]
cmp qword [rsp + 0x648], 0x10
cmovae r15, qword [rsp + 0x630]
call fcn.14002ea5c
mov r14, rax
lea rbx, [rsp + 0x590]
cmp qword [rsp + 0x5a8], 0x10
cmovae rbx, qword [rsp + 0x590]
mov dword [rax], edi
mov r8d, 0xa
lea rdx, [rsp + 0x560]
mov rcx, rbx
call fcn.14002f580
cmp rbx, qword [rsp + 0x560]
je 0x1400185fd
cmp dword [r14], 0x22
je 0x140018609
mov r8d, edi
cmp eax, dword [rsp + 0xe0]
jne 0x14001758e
movups xmm0, xmmword [0x140065ec8]
movups xmmword [rsp + 0x340], xmm0
movups xmm1, xmmword [0x140065ed8]
movups xmmword [rsp + 0x350], xmm1
mov eax, dword [0x140065ee8]
mov dword [rsp + 0x360], eax
movzx eax, word [0x140065eec]
mov word [rsp + 0x364], ax
cmp dword [0x14006f0d8], 2
jl 0x1400174e3
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x140066270]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x340]
mov edx, dword [rsp + 0xa0]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x1400173e0
cmp r8d, 0x26
jge 0x140017530
movsxd rax, r8d
lea r9, [rsp + 0x340]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x26
jl 0x140017500
movzx eax, word [0x14006112c]
mov word [rsp + 0x3c], ax
cmp byte [0x14006112d], 0
je 0x14001754f
mov byte [rsp + 0x3c], 0x2b
xor byte [rsp + 0x3d], 0x3a
movups xmm0, xmmword [rsp + 0x590]
movaps xmmword [rsp + 0x490], xmm0
movups xmm1, xmmword [rsp + 0x5a0]
movaps xmmword [rsp + 0x4a0], xmm1
lea rax, [rsp + 0x490]
lea r8, [rsp + 0x340]
lea rdx, [rsp + 0x3c]
mov ecx, 0xa
jmp 0x1400177d9
movups xmm0, xmmword [0x1400618d8]
movups xmmword [rsp + 0x368], xmm0
movups xmm1, xmmword [0x1400618e8]
movups xmmword [rsp + 0x378], xmm1
movsd xmm0, qword [0x1400618f8]
movsd qword [rsp + 0x388], xmm0
movzx eax, byte [0x140061900]
mov byte [rsp + 0x390], al
cmp dword [0x14006f0d8], 2
jl 0x140017733
movdqa xmm5, xmmword [0x140066250]
mov r8d, edi
movdqa xmm4, xmmword [0x1400662a0]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x140066270]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x368]
mov edx, dword [rsp + 0xa0]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x140017630
cmp r8d, 0x29
jge 0x140017780
movsxd rax, r8d
lea r9, [rsp + 0x368]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x29
jl 0x140017750
movzx eax, word [0x140061130]
mov word [rsp + 0x40], ax
cmp byte [0x140061131], 0
je 0x14001779f
mov byte [rsp + 0x40], 0x21
xor byte [rsp + 0x41], 0x3a
movups xmm0, xmmword [rsp + 0x590]
movaps xmmword [rsp + 0x450], xmm0
movups xmm1, xmmword [rsp + 0x5a0]
movaps xmmword [rsp + 0x460], xmm1
lea rax, [rsp + 0x450]
lea r8, [rsp + 0x368]
lea rdx, [rsp + 0x40]
mov ecx, 0xc
mov qword [rsp + 0x20], rax
mov r9, r15
call fcn.1400011a0
nop
mov rdx, qword [rsp + 0x648]
cmp rdx, 0x10
jb 0x14001782a
inc rdx
mov rcx, qword [rsp + 0x630]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017825
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018616
call fcn.140022b70
mov qword [rsp + 0x640], rdi
mov qword [rsp + 0x648], 0xf
mov byte [rsp + 0x630], 0
mov rcx, qword [rsp + 0xb8]
mov r14, 0xffffffffffffffff
test rcx, rcx
je 0x140017896
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140017892
mov rbx, qword [rsp + 0x588]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140017892
mov rcx, qword [rsp + 0x588]
mov rax, qword [rcx]
call qword [rax + 8]
mov esi, dword [rsp + 0x34]
lea rcx, [rsp + 0x700]
call fcn.140018760
lea rcx, [rsp + 0x6c0]
call fcn.1400186f0
mov rdx, qword [rsp + 0x6b8]
cmp rdx, 0x10
jb 0x1400178f3
inc rdx
mov rcx, qword [rsp + 0x6a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400178ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001861c
call fcn.140022b70
mov qword [rsp + 0x6b0], rdi
mov qword [rsp + 0x6b8], 0xf
mov byte [rsp + 0x6a0], 0
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x740], rax
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x73c], edx
lea rcx, [rsp + 0x750]
call fcn.140006040
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x740], rax
mov rax, qword [rsp + 0x740]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x73c], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x7f0], rax
lea rcx, [rsp + 0x7f0]
call fcn.140021654
nop
jmp 0x1400179b8
movabs r15, 0x100000001b3
mov rdx, qword [rsp + 0x5f0]
cmp rdx, 8
jb 0x140017a0a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x5d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017a05
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018646
call fcn.140022b70
mov qword [rsp + 0x5e8], rdi
mov qword [rsp + 0x5f0], 7
mov word [rsp + 0x5d8], di
mov rdx, qword [rsp + 0x628]
cmp rdx, 8
jb 0x140017a6e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x610]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017a69
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001864c
call fcn.140022b70
mov qword [rsp + 0x620], rdi
mov qword [rsp + 0x628], 7
mov word [rsp + 0x610], di
mov rdx, qword [rsp + 0x5a8]
cmp rdx, 0x10
jb 0x140017acd
inc rdx
mov rcx, qword [rsp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017ac8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018652
call fcn.140022b70
mov ebx, dword [0x14006f0d8]
lea rcx, [rsp + 0x600]
call fcn.14000e760
test eax, eax
mov r12d, 4
lea r13d, [r12 + 0x1b]
jne 0x140018658
jmp 0x140016550
mov rcx, qword [rsp + 0x608]
test rcx, rcx
je 0x140017b3e
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140017b3e
mov rbx, qword [rsp + 0x608]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140017b3e
mov rcx, qword [rsp + 0x608]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x578]
test rcx, rcx
je 0x140017b83
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140017b83
mov rbx, qword [rsp + 0x578]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140017b83
mov rcx, qword [rsp + 0x578]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x668]
cmp rdx, 8
jb 0x140017bcb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x650]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017bc6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018660
call fcn.140022b70
mov qword [rsp + 0x660], rdi
mov qword [rsp + 0x668], 7
mov word [rsp + 0x650], di
mov rdx, qword [rsp + 0x698]
cmp rdx, 8
jb 0x140017c2f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x680]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017c2a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018666
call fcn.140022b70
mov r14d, dword [rsp + 0x90]
mov esi, dword [0x14006f0d8]
mov rcx, qword [rsp + 0x550]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test r14d, r14d
jne 0x140017e3a
movups xmm0, xmmword [0x1400617c0]
movups xmmword [rsp + 0xc0], xmm0
movsd xmm0, qword [0x1400617d0]
movsd qword [rsp + 0xd0], xmm0
movzx eax, byte [0x1400617d8]
mov byte [rsp + 0xd8], al
cmp esi, 2
jl 0x140017dd0
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0xc0]
mov edx, dword [rsp + 0xa0]
nop dword [rax]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add edi, 8
mov eax, edi
lea rcx, [rcx + 8]
cmp edi, 0x18
jl 0x140017cd0
cmp eax, 0x19
jge 0x140017e0d
movsxd rax, edi
lea r8, [rsp + 0xc0]
add r8, rax
nop
mov eax, 0x4bda12f7
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, dil
sub al, cl
add al, 0x39
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x19
jl 0x140017de0
movzx eax, word [0x140061130]
mov word [rsp + 0x30], ax
mov byte [rsp + 0x30], 0x21
xor byte [rsp + 0x31], 0x3a
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x30]
mov ecx, 0xe
call fcn.1400011a0
xor eax, eax
jmp 0x140018528
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r10d, eax
movups xmm0, xmmword [str.HISO]
movups xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [0x140061890]
movups xmmword [rsp + 0x140], xmm1
mov ecx, dword [0x1400618a0]
mov dword [rsp + 0x150], ecx
movzx ecx, word [0x1400618a4]
mov word [rsp + 0x154], cx
mov r8d, edi
cmp esi, 2
jl 0x140017fd5
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x130]
mov edx, dword [rsp + 0xa0]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140017ed2
cmp r8d, 0x26
jge 0x140018020
movsxd rax, r8d
lea r9, [rsp + 0x130]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x26
jl 0x140017ff0
movzx eax, word [0x140061164]
mov word [rsp + 0x30], ax
cmp byte [0x140061165], dil
je 0x14001803f
mov byte [rsp + 0x30], 0x2d
xor byte [rsp + 0x31], 0x3a
movsd xmm0, qword [0x140065e10]
movsd qword [rsp + 0x50], xmm0
movzx eax, word [0x140065e18]
mov word [rsp + 0x58], ax
movups xmm0, xmmword [str.jU_HJ_M_]
movaps xmmword [rsp + 0xc0], xmm0
mov eax, dword [0x1400615e0]
mov dword [rsp + 0xd0], eax
movzx eax, byte [0x1400615e4]
mov byte [rsp + 0xd4], al
mov dword [rsp + 0x28], r10d
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xc0]
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x30]
mov ecx, 0xc
call fcn.1400011a0
mov rcx, rbx
call fcn.140022b70
jmp 0x140017c3d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r10d, eax
movups xmm0, xmmword [str.z_UeI]
movups xmmword [rsp + 0xf0], xmm0
movsd xmm0, qword [0x140061630]
movsd qword [rsp + 0x100], xmm0
mov ecx, dword [0x140061638]
mov dword [rsp + 0x108], ecx
movzx ecx, word [0x14006163c]
mov word [rsp + 0x10c], cx
mov r8d, edi
cmp esi, 2
jl 0x140018254
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0xf0]
mov edx, dword [rsp + 0xa0]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140018151
cmp r8d, 0x1e
jge 0x1400182a0
movsxd rax, r8d
lea r9, [rsp + 0xf0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x140018270
movzx eax, word [0x140061164]
mov word [rsp + 0x30], ax
cmp byte [0x140061165], dil
je 0x1400182bf
mov byte [rsp + 0x30], 0x2d
xor byte [rsp + 0x31], 0x3a
movups xmm0, xmmword [str.jU_HJ_M_]
movaps xmmword [rsp + 0xc0], xmm0
mov eax, dword [0x1400615e0]
mov dword [rsp + 0xd0], eax
movzx eax, byte [0x1400615e4]
mov byte [rsp + 0xd4], al
mov dword [rsp + 0x20], r10d
lea r9, [rsp + 0xc0]
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0x30]
mov ecx, 0xc
call fcn.1400011a0
jmp 0x140017c3d
movups xmm0, xmmword [0x1400661d8]
movups xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [0x1400661e8]
movups xmmword [rsp + 0x140], xmm1
movups xmm0, xmmword [0x1400661f8]
movups xmmword [rsp + 0x150], xmm0
mov eax, dword [0x140066208]
mov dword [rsp + 0x160], eax
movzx eax, word [0x14006620c]
mov word [rsp + 0x164], ax
cmp esi, 2
jl 0x1400184b0
movdqa xmm5, xmmword [0x140066250]
movdqa xmm4, xmmword [0x1400662a0]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140066270]
movd xmm8, r13d
movdqa xmm0, xmmword [str.9999999999999999]
movdqa xmmword [rsp + 0xa0], xmm0
lea rcx, [rsp + 0x130]
mov edx, dword [rsp + 0xa0]
nop word [rax + rax]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140066280]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add edi, 8
mov eax, edi
lea rcx, [rcx + 8]
cmp edi, 0x30
jl 0x1400183b0
cmp eax, 0x36
jge 0x1400184ed
movsxd rax, edi
lea r8, [rsp + 0x130]
add r8, rax
nop
mov eax, 0x4bda12f7
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, dil
sub al, cl
add al, 0x39
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x36
jl 0x1400184c0
movzx eax, word [0x140061164]
mov word [rsp + 0x30], ax
cmp byte [0x140061165], 0
je 0x14001850c
mov byte [rsp + 0x30], 0x2d
xor byte [rsp + 0x31], 0x3a
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x30]
mov ecx, 0xc
call fcn.1400011a0
mov eax, 0xc0000001
mov rcx, qword [rsp + 0x850]
xor rcx, rsp
call fcn.140022b50
lea r11, [rsp + 0x890]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.14002e910
nop
lea r8, [rsp + 0x650]
mov edx, eax
call fcn.14000e530
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
int3
lea rax, str.Invalid_Friends
mov qword [rsp + 0x290], rax
lea rdx, [0x14006d560]
lea rcx, [rsp + 0x290]
call fcn.140024c58
nop
call fcn.14002e910
int3
lea rax, str.Invalid_PersonaName
mov qword [rsp + 0x288], rax
lea rdx, [0x14006d560]
lea rcx, [rsp + 0x288]
call fcn.140024c58
nop
call fcn.14002e910
int3
lea rcx, str.invalid_stol_argument
call fcn.14002114c
lea rcx, str.stol_argument_out_of_range
call fcn.140021194
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
lea rax, str.Invalid_Root
mov qword [rsp + 0x280], rax
lea rdx, [0x14006d560]
lea rcx, [rsp + 0x280]
call fcn.140024c58
nop
call fcn.14002e910
nop
call fcn.14002e910
nop
call fcn.14002e910
int3
mov edx, eax
call fcn.14000e440
nop
call fcn.14002e910
nop
call fcn.14002e910
int3