Function at 0x1400031d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc940]
mov eax, 0xca40
call fcn.140016ab0
sub rsp, rax
movaps xmmword [rsp + 0xca30], xmm6
movaps xmmword [rsp + 0xca20], xmm7
movaps xmmword [rsp + 0xca10], xmm8
mov rax, qword [0x140024010]
xor rax, rsp
mov qword [rbp + 0xc900], rax
mov rax, qword [0x14005b2c8]
test rax, rax
je 0x140004696
cmp dword [rax + 8], 3
je 0x140003261
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
cmp rax, qword [0x140026c90]
je 0x140003252
jl 0x140004696
call fcn.140003100
call fcn.140006350
jmp 0x140004696
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002f40
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x14005b2c8]
call fcn.1400067f0
xor r14d, r14d
test al, al
je 0x140004543
lea edi, [r14 + 0x1f]
lea r15d, [r14 + 4]
movabs r12, 0xffffffffffff
mov r13d, 0x1000
mov esi, dword [0x140024018]
nop
mov eax, dword [str.P_C8]
mov dword [rbp - 0x7c], eax
cmp byte [0x1400177db], 0
je 0x1400033a0
cmp esi, 2
jl 0x140003363
movdqa xmm3, xmmword [0x1400219d0]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140021a80]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140021a80]
shufps xmm2, xmm0, 0xdd
movd xmm0, r15d
psrad xmm2, xmm0
movd xmm0, edi
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400219f0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140021a50]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x7c], xmm2
jmp 0x1400033a0
lea r9, [rbp - 0x7c]
mov r8d, r14d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140003370
mov qword [rbp + 0x20], r14
lea r8, [rbp - 0x7c]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x4060]
call fcn.140005e60
mov eax, dword [rbp + 0x4060]
shl rax, 5
mov rcx, qword [rbp + 0x4068]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x20]
cmp rcx, rax
je 0x1400033f8
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400033f8
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x1400033fb
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x1400033fb
mov rbx, r14
mov eax, dword [str._YY_:]
mov dword [rsp + 0x20], eax
movzx eax, word [0x140017810]
mov word [rsp + 0x24], ax
mov byte [rsp + 0x20], 0x6e
xor byte [rsp + 0x21], 0x36
xor byte [rsp + 0x22], 0x37
xor byte [rsp + 0x23], 0x38
xor byte [rsp + 0x24], 0x39
xor byte [rsp + 0x25], 0x3a
mov qword [rbp + 0x28], r14
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x4060]
call fcn.140005e60
mov eax, dword [rbp + 0x4060]
shl rax, 5
mov rcx, qword [rbp + 0x4068]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x28]
cmp rcx, rax
je 0x14000378d
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000378d
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x14000348e
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x14000378d
test rbx, rbx
je 0x1400044fb
mov eax, dword [str.pdewk:]
mov dword [rsp + 0x3c], eax
movzx eax, word [0x140017818]
mov word [rsp + 0x40], ax
mov byte [rsp + 0x3c], 0x45
xor byte [rsp + 0x3d], 0x36
xor byte [rsp + 0x3e], 0x37
xor byte [rsp + 0x3f], 0x38
xor al, 0x39
mov byte [rsp + 0x40], al
xor byte [rsp + 0x41], 0x3a
lea rdx, [rsp + 0x3c]
sub rdx, rbx
nop dword [rax]
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x1400034f2
inc rbx
test eax, eax
jne 0x1400034e0
test ecx, ecx
jne 0x1400044fb
mov eax, dword [str.QWCY9]
mov dword [rsp + 0x5c], eax
movzx eax, byte [0x1400177ac]
mov byte [rsp + 0x5c], 0x64
xor byte [rsp + 0x5d], 0x36
xor byte [rsp + 0x5e], 0x37
xor byte [rsp + 0x5f], 0x38
xor al, 0x39
mov byte [rsp + 0x60], al
mov qword [rbp + 0x30], r14
lea r8, [rsp + 0x5c]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x4060]
call fcn.140005e60
mov eax, dword [rbp + 0x4060]
shl rax, 5
mov rcx, qword [rbp + 0x4068]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x30]
cmp rcx, rax
je 0x140003569
cmp word [rcx + 0x1e], 3
lea rbx, [rcx + 0x10]
je 0x14000356c
mov rbx, r14
mov eax, dword [str.VYS_9]
mov dword [rsp + 0x34], eax
movzx eax, byte [0x1400177bc]
mov byte [rsp + 0x34], 0x63
xor byte [rsp + 0x35], 0x36
xor byte [rsp + 0x36], 0x37
xor byte [rsp + 0x37], 0x38
xor al, 0x39
mov byte [rsp + 0x38], al
test rbx, rbx
je 0x1400035c0
mov qword [rbp + 0x48], r14
lea r8, [rsp + 0x34]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.140005e60
nop dword [rax]
nop word [rax + rax]
mov byte [rsp + 0x58], 0
mov rax, qword [str.XSDKX__cmd]
mov qword [rbp - 0x78], rax
cmp byte [0x140017827], 0
je 0x140003720
cmp esi, 2
jl 0x1400036dd
movdqa xmm4, xmmword [0x140021a80]
movd xmm6, r15d
movd xmm5, edi
movdqa xmm2, xmmword [0x1400219d0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140021a50]
movd xmm0, dword [rbp - 0x78]
xorps xmm2, xmm0
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x1400219e0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140021a50]
movd xmm0, dword [rbp - 0x74]
xorps xmm2, xmm0
movd dword [rbp - 0x74], xmm2
jmp 0x140003720
lea r9, [rbp - 0x78]
mov r8d, r14d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x31
movzx eax, r8b
sub al, dl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400036f0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.140003040
mov r8, rax
test rax, rax
je 0x14000377d
lea rax, [0x14005b2d0]
mov rcx, rax
movzx edx, byte [r8]
test dl, dl
je 0x14000377a
mov r9d, 1
sub r9, rax
sub r8, rax
nop word [rax + rax]
lea rax, [rcx + r9]
cmp rax, 0x100
jae 0x14000377a
mov byte [rcx], dl
inc rcx
movzx edx, byte [rcx + r8]
test dl, dl
jne 0x140003760
mov byte [rcx], 0
mov eax, 1
xchg byte [0x140025bd8], al
jmp 0x1400044fb
test rbx, rbx
je 0x1400044fb
mov eax, dword [str.QWCY9]
mov dword [rsp + 0x64], eax
movzx eax, byte [0x1400177ac]
mov byte [rsp + 0x64], 0x64
xor byte [rsp + 0x65], 0x36
xor byte [rsp + 0x66], 0x37
xor byte [rsp + 0x67], 0x38
xor al, 0x39
mov byte [rsp + 0x68], al
mov qword [rbp + 0x38], r14
lea r8, [rsp + 0x64]
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x4060]
call fcn.140005e60
mov eax, dword [rbp + 0x4060]
shl rax, 5
mov rcx, qword [rbp + 0x4068]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x38]
cmp rcx, rax
je 0x140003805
cmp word [rcx + 0x1e], 3
lea rdi, [rcx + 0x10]
je 0x140003808
mov rdi, r14
movsd xmm0, qword [str.tucqosoebtp_t]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [0x1400177d0]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1400177d4]
mov word [rbp - 0x54], ax
mov r9, rbx
cmp byte [0x1400177d5], 0
je 0x140003990
mov r8d, r14d
cmp esi, 2
jl 0x14000394e
movdqa xmm4, xmmword [0x140021a80]
movd xmm6, r15d
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x1400219d0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
mov eax, dword [0x140021a50]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.tucqosoebtp_t]
xorps xmm2, xmm0
movd dword [rbp - 0x60], xmm2
movdqa xmm3, xmmword [0x1400219e0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x5c]
xorps xmm2, xmm1
movd dword [rbp - 0x5c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r10, [rbp - 0x60]
add r10, rax
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0xe
jl 0x140003960
mov rax, r9
lea r8, [rbp - 0x60]
sub r8, r9
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400039b3
inc rax
test ecx, ecx
jne 0x1400039a0
test edx, edx
jne 0x140003aaf
mov eax, dword [str.FSTJN_]
mov dword [rsp + 0x74], eax
movzx ecx, word [0x1400177b4]
mov word [rsp + 0x78], cx
movzx eax, byte [0x1400177b6]
mov byte [rsp + 0x74], 0x73
xor byte [rsp + 0x75], 0x36
xor byte [rsp + 0x76], 0x37
xor byte [rsp + 0x77], 0x38
xor cl, 0x39
mov byte [rsp + 0x78], cl
xor byte [rsp + 0x79], 0x3a
xor al, 0x3b
mov byte [rsp + 0x7a], al
test rdi, rdi
je 0x1400044f6
mov qword [rbp + 0x40], r14
lea r8, [rsp + 0x74]
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.140005e60
mov eax, dword [rdi]
shl rax, 5
mov rcx, qword [rdi + 8]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x40]
cmp rcx, rax
je 0x1400044f6
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400044f6
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003a5b
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400044f6
lea rdx, [0x140057090]
cmp byte [rcx], 0
je 0x140003a9c
mov r8d, 1
sub r8, rcx
nop dword [rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003a9c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003a80
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140025bd5], al
jmp 0x1400044f6
movups xmm0, xmmword [str.tucqosoebmo]
movups xmmword [rbp - 0x40], xmm0
movzx eax, word [0x140017808]
mov word [rbp - 0x30], ax
cmp byte [0x140017809], 0
je 0x140003c60
mov r8d, r14d
cmp esi, 2
jl 0x140003c23
movdqa xmm5, xmmword [0x1400219d0]
movdqa xmm4, xmmword [0x140021a80]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400219f0]
mov r10d, 0x1f
movd xmm8, r10d
movdqa xmm0, xmmword [0x140021a50]
movdqa xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x3c]
mov edx, dword [rbp - 0x70]
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 [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], 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 [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140003b20
cmp r8d, 0x12
jge 0x140003c66
movsxd rax, r8d
lea r10, [rbp - 0x40]
add r10, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x12
jl 0x140003c30
mov r10d, 0x1f
mov rax, r9
lea r8, [rbp - 0x40]
sub r8, r9
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140003c83
inc rax
test ecx, ecx
jne 0x140003c70
test edx, edx
jne 0x140003d7f
mov eax, dword [str.FSTJN_]
mov dword [rsp + 0x7c], eax
movzx ecx, word [0x1400177b4]
mov word [rbp - 0x80], cx
movzx eax, byte [0x1400177b6]
mov byte [rsp + 0x7c], 0x73
xor byte [rsp + 0x7d], 0x36
xor byte [rsp + 0x7e], 0x37
xor byte [rsp + 0x7f], 0x38
xor cl, 0x39
mov byte [rbp - 0x80], cl
xor byte [rbp - 0x7f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x7e], al
test rdi, rdi
je 0x1400044f6
mov qword [rbp - 0x10], r14
lea r8, [rsp + 0x7c]
lea rdx, [rbp - 0x10]
mov rcx, rdi
call fcn.140005e60
mov eax, dword [rdi]
shl rax, 5
mov rcx, qword [rdi + 8]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp - 0x10]
cmp rcx, rax
je 0x1400044f6
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400044f6
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003d27
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400044f6
lea rdx, [0x14005b3d0]
cmp byte [rcx], 0
je 0x140003d6c
mov r8d, 1
sub r8, rcx
nop word [rax + rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003d6c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003d50
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140025bd7], al
jmp 0x1400044f6
movups xmm0, xmmword [0x140017790]
movups xmmword [rbp - 0x28], xmm0
mov eax, dword [0x1400177a0]
mov dword [rbp - 0x18], eax
movzx eax, word [0x1400177a4]
mov word [rbp - 0x14], ax
cmp byte [0x1400177a5], 0
je 0x140003f30
mov r8d, r14d
cmp esi, 2
jl 0x140003ef3
movdqa xmm5, xmmword [0x1400219d0]
movdqa xmm4, xmmword [0x140021a80]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400219f0]
movd xmm8, r10d
movdqa xmm0, xmmword [0x140021a50]
movdqa xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x24]
mov edx, dword [rbp - 0x70]
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 [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], 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 [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140003df0
cmp r8d, 0x16
jge 0x140003f30
movsxd rax, r8d
lea r10, [rbp - 0x28]
add r10, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x16
jl 0x140003f00
lea rdx, [rbp - 0x28]
sub rdx, r9
nop word [rax + rax]
movzx ecx, byte [r9]
movzx eax, byte [r9 + rdx]
sub ecx, eax
jne 0x140003f54
inc r9
test eax, eax
jne 0x140003f40
test ecx, ecx
jne 0x1400044f6
mov eax, dword [str._ERJ9]
mov dword [rsp + 0x6c], eax
movzx eax, byte [0x14001777c]
mov byte [rsp + 0x6c], 0x75
xor byte [rsp + 0x6d], 0x36
xor byte [rsp + 0x6e], 0x37
xor byte [rsp + 0x6f], 0x38
xor al, 0x39
mov byte [rsp + 0x70], al
test rdi, rdi
je 0x140003fca
mov qword [rbp - 8], r14
lea r8, [rsp + 0x6c]
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.140005e60
mov eax, dword [rdi]
shl rax, 5
mov rcx, qword [rdi + 8]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp - 8]
cmp rcx, rax
je 0x140003fca
cmp word [rcx + 0x1e], 3
jne 0x140003fca
lea r15, [rcx + 0x10]
mov rdi, r15
jmp 0x140003fd0
mov r15, r14
mov rdi, r14
movzx eax, word [0x1400177c0]
mov word [rsp + 0x30], ax
movzx eax, byte [0x1400177c2]
mov byte [rsp + 0x30], 0x69
xor byte [rsp + 0x31], 0x36
xor al, 0x37
mov byte [rsp + 0x32], al
test r15, r15
je 0x14000404e
mov qword [rbp], r14
lea r8, [rsp + 0x30]
lea rdx, [rbp]
mov rcx, r15
call fcn.140005e60
lea rdx, [r15 + 8]
mov qword [rbp - 0x70], rdx
mov eax, dword [r15]
shl rax, 5
mov rcx, qword [rdx]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp]
cmp rcx, rax
je 0x14000404e
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000404e
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x140004059
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x140004059
mov rbx, r14
lea rdx, [rdi + 8]
mov qword [rbp - 0x70], rdx
movsd xmm0, qword [str._ERJW_VY]
movzx ecx, byte [0x140017788]
movsd qword [rsp + 0x48], xmm0
mov byte [rsp + 0x48], 0x75
xor byte [rsp + 0x49], 0x36
xor byte [rsp + 0x4a], 0x37
xor byte [rsp + 0x4b], 0x38
xor byte [rsp + 0x4c], 0x39
xor byte [rsp + 0x4d], 0x3a
xor byte [rsp + 0x4e], 0x3b
xor byte [rsp + 0x4f], 0x3c
xor cl, 0x3d
mov byte [rsp + 0x50], cl
test r15, r15
je 0x1400040fc
mov qword [rbp + 8], r14
lea r8, [rsp + 0x48]
lea rdx, [rbp + 8]
mov rcx, r15
call fcn.140005e60
mov eax, dword [r15]
shl rax, 5
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rdx]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 8]
cmp rcx, rax
je 0x1400040fc
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400040fc
lea r13, [rcx + 0x10]
mov eax, 0x1000
test word [r13 + 0xe], ax
jne 0x1400040f7
mov r13, qword [r13 + 8]
and r13, r12
mov rsi, r13
jmp 0x140004106
mov r13, r14
mov rsi, r14
mov qword [rbp - 0x70], rdx
mov eax, dword [str.T_VLXH_]
mov dword [rsp + 0x28], eax
movzx eax, word [0x1400177f4]
mov word [rsp + 0x2c], ax
movzx eax, byte [0x1400177f6]
mov byte [rsp + 0x28], 0x61
xor byte [rsp + 0x29], 0x36
xor byte [rsp + 0x2a], 0x37
xor byte [rsp + 0x2b], 0x38
xor byte [rsp + 0x2c], 0x39
xor byte [rsp + 0x2d], 0x3a
xor al, 0x3b
mov byte [rsp + 0x2e], al
test r15, r15
je 0x1400041a2
mov qword [rbp + 0x10], r14
lea r8, [rsp + 0x28]
lea rdx, [rbp + 0x10]
mov rcx, r15
call fcn.140005e60
mov eax, dword [r15]
shl rax, 5
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rdx]
and rcx, r12
add rax, rcx
mov rcx, qword [rbp + 0x10]
cmp rcx, rax
je 0x1400041a2
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400041a2
lea rdi, [rcx + 0x10]
mov eax, 0x1000
test word [rdi + 0xe], ax
jne 0x1400041a5
mov rdi, qword [rdi + 8]
and rdi, r12
jmp 0x1400041a5
mov rdi, r14
mov eax, dword [0x140026c38]
cmp eax, 8
jb 0x1400041b5
mov r12, r14
jmp 0x1400041d6
mov r12d, 1
lock xadd dword [0x140026c30], r12d
and r12d, 7
shl r12, 9
lea rax, [0x140025c30]
add r12, rax
test rbx, rbx
je 0x1400044da
test r13, r13
je 0x1400044da
test r12, r12
je 0x1400044da
mov rcx, r12
cmp byte [rbx], 0
je 0x140004220
mov r8d, 1
sub r8, rbx
mov qword [rbp - 0x70], rdx
lea rax, [r8 + rbx]
cmp rax, 0x20
jae 0x140004220
movzx eax, byte [rbx]
mov byte [rcx], al
inc rcx
inc rbx
cmp byte [rbx], 0
jne 0x140004206
mov byte [rcx], 0
lea rcx, [r12 + 0x20]
cmp byte [r13], 0
je 0x14000425c
mov edx, 1
sub rdx, r13
nop word [rax + rax]
lea rax, [rdx + rsi]
cmp rax, 0x158
jae 0x14000425c
movzx eax, byte [rsi]
mov byte [rcx], al
inc rcx
inc rsi
cmp byte [rsi], 0
jne 0x140004240
mov byte [rcx], 0
movsd xmm0, qword [str.Q_D_KSVUS_K_3B]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x1400177e8]
mov dword [rbp - 0x48], eax
movzx eax, word [0x1400177ec]
mov word [rbp - 0x44], ax
mov esi, dword [0x140024018]
cmp byte [0x1400177ed], 0
je 0x1400043f0
mov r8d, r14d
cmp esi, 2
jl 0x1400043ac
movdqa xmm4, xmmword [0x140021a80]
mov eax, 4
movd xmm6, eax
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x1400219d0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
mov eax, dword [0x140021a50]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.Q_D_KSVUS_K_3B]
xorps xmm2, xmm0
movd dword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x1400219e0]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400219f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140021a30]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x4c]
xorps xmm2, xmm1
movd dword [rbp - 0x4c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x1400043c0
test r15, r15
je 0x140004492
mov qword [rbp + 0x18], r14
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x18]
mov rcx, r15
call fcn.140005e60
mov eax, dword [r15]
shl rax, 5
mov rcx, qword [rbp - 0x70]
mov rcx, qword [rcx]
movabs rdx, 0xffffffffffff
and rcx, rdx
add rax, rcx
mov rcx, qword [rbp + 0x18]
cmp rcx, rax
je 0x140004492
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
mov r13d, 0x1000
test al, 1
je 0x140004498
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140004458
mov rcx, qword [rcx + 8]
and rcx, rdx
test rcx, rcx
je 0x140004498
lea rdx, [r12 + 0x178]
cmp byte [rcx], 0
je 0x14000448d
mov r8d, 1
sub r8, rcx
lea rax, [r8 + rcx]
cmp rax, 8
jae 0x14000448d
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140004473
mov byte [rdx], 0
jmp 0x140004498
mov r13d, 0x1000
lea rcx, [r12 + 0x180]
test rdi, rdi
je 0x1400044ce
cmp byte [rdi], 0
je 0x1400044ce
mov edx, 1
sub rdx, rdi
lea rax, [rdx + rdi]
cmp rax, 0x80
jae 0x1400044ce
movzx eax, byte [rdi]
mov byte [rcx], al
inc rcx
inc rdi
cmp byte [rdi], 0
jne 0x1400044b2
mov byte [rcx], 0
lock inc dword [0x140026c38]
jmp 0x1400044e6
mov r13d, 0x1000
mov esi, dword [0x140024018]
movabs r12, 0xffffffffffff
mov r15d, 4
mov edi, 0x1f
lea rcx, [rbp + 0x4060]
call fcn.1400046f0
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002f40
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x14005b2c8]
call fcn.1400067f0
test al, al
jne 0x1400032c0
lea rcx, [rbp + 0x4060]
call fcn.1400046f0
xchg byte [0x140025bd6], r14b
test r14b, r14b
je 0x140004641
cmp qword [0x1400572c0], 0
je 0x140004641
lea rcx, [0x140026c40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x1400046d5
cmp dword [0x140026c8c], 0x7fffffff
je 0x1400045f3
mov rbx, qword [0x1400572c0]
mov qword [rbp + 0x50], rbx
test rbx, rbx
je 0x1400045b5
mov r8, rbx
lea rdx, [0x1400572c8]
lea rcx, [rbp + 0x58]
call sub.VCRUNTIME140.dll_memcpy
mov rbx, qword [rbp + 0x50]
lea rcx, [0x140026c40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov r8, rbx
lea rdx, [rbp + 0x58]
call fcn.1400066f0
test al, al
jne 0x140004641
lea rcx, [0x140026c40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x1400046d5
cmp dword [0x140026c8c], 0x7fffffff
jne 0x140004609
mov dword [0x140026c8c], 0x7ffffffe
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov r8, qword [rbp + 0x50]
mov qword [0x1400572c0], r8
test r8, r8
je 0x140004629
lea rdx, [rbp + 0x58]
lea rcx, [0x1400572c8]
call sub.VCRUNTIME140.dll_memcpy
mov eax, 1
xchg byte [0x140025bd6], al
lea rcx, [0x140026c40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov eax, dword [0x140046ce8]
test eax, eax
je 0x140004696
lea rbx, [0x140026ca0]
nop dword [rax]
nop word [rax + rax]
mov eax, 1
lock xadd dword [0x140046ce4], eax
and eax, 7
imul r8, rax, 0x4008
lea rdx, [rbx + 8]
add rdx, r8
mov r8, qword [r8 + rbx]
call fcn.1400066f0
lock dec dword [0x140046ce8]
mov eax, dword [0x140046ce8]
jne 0x140004660
mov rcx, qword [rbp + 0xc900]
xor rcx, rsp
call fcn.140015b70
lea r11, [rsp + 0xca40]
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]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3