Function at 0x140003270
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.140014b10
sub rsp, rax
movaps xmmword [rsp + 0xca30], xmm6
movaps xmmword [rsp + 0xca20], xmm7
movaps xmmword [rsp + 0xca10], xmm8
mov rax, qword [0x140022010]
xor rax, rsp
mov qword [rbp + 0xc900], rax
mov rax, qword [0x14005d738]
test rax, rax
je 0x140004756
cmp dword [rax + 8], 3
je 0x140003301
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
cmp rax, qword [0x140029100]
je 0x1400032f2
jl 0x140004756
call fcn.1400031a0
call fcn.140006450
jmp 0x140004756
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002fe0
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x14005d738]
call fcn.1400068f0
xor r14d, r14d
lea r15d, [r14 + 5]
test al, al
je 0x140004611
lea edi, [r14 + 0x1f]
movabs r12, 0xffffffffffff
mov r13d, 0x1000
mov esi, dword [0x140022018]
nop
mov eax, dword [str.VBA6RBTBVJ9]
mov dword [rbp - 0x7c], eax
cmp byte [0x1400157f3], 0
je 0x140003443
cmp esi, 2
jl 0x140003407
movdqa xmm3, xmmword [0x14001f820]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001f8b0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001f8b0]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
movd xmm0, r15d
psrad xmm2, xmm0
movd xmm0, edi
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14001f850]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.3333333333333333]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x7c], xmm2
jmp 0x140003443
lea r9, [rbp - 0x7c]
mov r8d, r14d
nop
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140003410
mov qword [rbp + 0x20], r14
lea r8, [rbp - 0x7c]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x4060]
call fcn.140005f60
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 0x14000349b
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000349b
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x14000349e
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x14000349e
mov rbx, r14
mov eax, dword [0x1400157e8]
mov dword [rsp + 0x20], eax
movzx eax, word [0x1400157ec]
mov word [rsp + 0x24], ax
mov byte [rsp + 0x20], 0x6e
xor byte [rsp + 0x21], 0x34
xor byte [rsp + 0x22], 0x35
xor byte [rsp + 0x23], 0x36
xor byte [rsp + 0x24], 0x37
xor byte [rsp + 0x25], 0x38
mov qword [rbp + 0x28], r14
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x4060]
call fcn.140005f60
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 0x14000382d
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000382d
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003531
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x14000382d
test rbx, rbx
je 0x1400045c9
mov eax, dword [str.vfgye8]
mov dword [rsp + 0x3c], eax
movzx eax, word [0x140015794]
mov word [rsp + 0x40], ax
mov byte [rsp + 0x3c], 0x45
xor byte [rsp + 0x3d], 0x34
xor byte [rsp + 0x3e], 0x35
xor byte [rsp + 0x3f], 0x36
xor al, 0x37
mov byte [rsp + 0x40], al
xor byte [rsp + 0x41], 0x38
lea rdx, [rsp + 0x3c]
sub rdx, rbx
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x140003592
inc rbx
test eax, eax
jne 0x140003580
test ecx, ecx
jne 0x1400045c9
mov eax, dword [str.WUAW7]
mov dword [rsp + 0x5c], eax
movzx eax, byte [0x1400157dc]
mov byte [rsp + 0x5c], 0x64
xor byte [rsp + 0x5d], 0x34
xor byte [rsp + 0x5e], 0x35
xor byte [rsp + 0x5f], 0x36
xor al, 0x37
mov byte [rsp + 0x60], al
mov qword [rbp + 0x30], r14
lea r8, [rsp + 0x5c]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x4060]
call fcn.140005f60
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 0x140003609
cmp word [rcx + 0x1e], 3
lea rbx, [rcx + 0x10]
je 0x14000360c
mov rbx, r14
mov eax, dword [str.P_QS7]
mov dword [rsp + 0x34], eax
movzx eax, byte [0x140015800]
mov byte [rsp + 0x34], 0x63
xor byte [rsp + 0x35], 0x34
xor byte [rsp + 0x36], 0x35
xor byte [rsp + 0x37], 0x36
xor al, 0x37
mov byte [rsp + 0x38], al
test rbx, rbx
je 0x140003660
mov qword [rbp + 0x48], r14
lea r8, [rsp + 0x34]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.140005f60
nop dword [rax]
nop word [rax + rax]
mov byte [rsp + 0x58], 0
mov rax, qword [str.QFEV_:___UR8]
mov qword [rbp - 0x78], rax
cmp byte [0x1400157e7], 0
je 0x1400037c3
cmp esi, 2
jl 0x140003785
movdqa xmm4, xmmword [0x14001f8b0]
movd xmm6, r15d
movd xmm5, edi
movdqa xmm2, xmmword [0x14001f820]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.3333333333333333]
movd xmm0, dword [rbp - 0x78]
xorps xmm2, xmm0
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x14001f830]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.3333333333333333]
movd xmm0, dword [rbp - 0x74]
xorps xmm2, xmm0
movd dword [rbp - 0x74], xmm2
jmp 0x1400037c3
lea r9, [rbp - 0x78]
mov r8d, r14d
nop dword [rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x3a
movzx eax, r8b
sub al, dl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140003790
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.1400030e0
mov r8, rax
test rax, rax
je 0x14000381d
lea rax, [0x14005d740]
mov rcx, rax
movzx edx, byte [r8]
test dl, dl
je 0x14000381a
mov r9d, 1
sub r9, rax
sub r8, rax
nop word [rax + rax]
lea rax, [rcx + r9]
cmp rax, 0x100
jae 0x14000381a
mov byte [rcx], dl
inc rcx
movzx edx, byte [rcx + r8]
test dl, dl
jne 0x140003800
mov byte [rcx], 0
mov eax, 1
xchg byte [0x140028048], al
jmp 0x1400045c9
test rbx, rbx
je 0x1400045c9
mov eax, dword [str.WUAW7]
mov dword [rsp + 0x64], eax
movzx eax, byte [0x1400157dc]
mov byte [rsp + 0x64], 0x64
xor byte [rsp + 0x65], 0x34
xor byte [rsp + 0x66], 0x35
xor byte [rsp + 0x67], 0x36
xor al, 0x37
mov byte [rsp + 0x68], al
mov qword [rbp + 0x38], r14
lea r8, [rsp + 0x64]
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x4060]
call fcn.140005f60
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 0x1400038a5
cmp word [rcx + 0x1e], 3
lea rdi, [rcx + 0x10]
je 0x1400038a8
mov rdi, r14
movsd xmm0, qword [0x140015778]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [0x140015780]
mov dword [rbp - 0x58], eax
movzx eax, word [0x140015784]
mov word [rbp - 0x54], ax
mov r9, rbx
cmp byte [0x140015785], 0
je 0x140003a33
mov r8d, r14d
cmp esi, 2
jl 0x1400039f6
movdqa xmm4, xmmword [0x14001f8b0]
movd xmm6, r15d
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x14001f820]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
packuswb xmm2, xmm2
mov eax, dword [str.3333333333333333]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140015778]
xorps xmm2, xmm0
movd dword [rbp - 0x60], xmm2
movdqa xmm3, xmmword [0x14001f830]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
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
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0xe
jl 0x140003a00
mov rax, r9
lea r8, [rbp - 0x60]
sub r8, r9
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140003a53
inc rax
test ecx, ecx
jne 0x140003a40
test edx, edx
jne 0x140003b4f
mov eax, dword [str._QVDRL9]
mov dword [rsp + 0x74], eax
movzx ecx, word [0x140015808]
mov word [rsp + 0x78], cx
movzx eax, byte [0x14001580a]
mov byte [rsp + 0x74], 0x73
xor byte [rsp + 0x75], 0x34
xor byte [rsp + 0x76], 0x35
xor byte [rsp + 0x77], 0x36
xor cl, 0x37
mov byte [rsp + 0x78], cl
xor byte [rsp + 0x79], 0x38
xor al, 0x39
mov byte [rsp + 0x7a], al
test rdi, rdi
je 0x1400045c4
mov qword [rbp + 0x40], r14
lea r8, [rsp + 0x74]
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.140005f60
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 0x1400045c4
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400045c4
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003afb
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400045c4
lea rdx, [0x140059500]
cmp byte [rcx], 0
je 0x140003b3c
mov r8d, 1
sub r8, rcx
nop dword [rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003b3c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003b20
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140028045], al
jmp 0x1400045c4
movups xmm0, xmmword [0x1400157a8]
movups xmmword [rbp - 0x40], xmm0
movzx eax, word [0x1400157b8]
mov word [rbp - 0x30], ax
cmp byte [0x1400157b9], 0
je 0x140003d13
mov r8d, r14d
cmp esi, 2
jl 0x140003ccb
movdqa xmm5, xmmword [0x14001f820]
movdqa xmm4, xmmword [0x14001f8b0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14001f850]
mov r10d, 0x1f
movd xmm8, r10d
movdqa xmm0, xmmword [str.3333333333333333]
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
paddd xmm1, xmm2
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 [0x14001f870]
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
paddd xmm1, xmm3
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 [0x14001f870]
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 0x140003bc0
cmp r8d, 0x12
jge 0x140003d19
movsxd rax, r8d
lea r10, [rbp - 0x40]
add r10, rax
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x12
jl 0x140003ce0
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 0x140003d36
inc rax
test ecx, ecx
jne 0x140003d23
test edx, edx
jne 0x140003e2f
mov eax, dword [str._QVDRL9]
mov dword [rsp + 0x7c], eax
movzx ecx, word [0x140015808]
mov word [rbp - 0x80], cx
movzx eax, byte [0x14001580a]
mov byte [rsp + 0x7c], 0x73
xor byte [rsp + 0x7d], 0x34
xor byte [rsp + 0x7e], 0x35
xor byte [rsp + 0x7f], 0x36
xor cl, 0x37
mov byte [rbp - 0x80], cl
xor byte [rbp - 0x7f], 0x38
xor al, 0x39
mov byte [rbp - 0x7e], al
test rdi, rdi
je 0x1400045c4
mov qword [rbp - 0x10], r14
lea r8, [rsp + 0x7c]
lea rdx, [rbp - 0x10]
mov rcx, rdi
call fcn.140005f60
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 0x1400045c4
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400045c4
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003dda
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400045c4
lea rdx, [0x14005d840]
cmp byte [rcx], 0
je 0x140003e1c
mov r8d, 1
sub r8, rcx
nop dword [rax + rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003e1c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003e00
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140028047], al
jmp 0x1400045c4
movups xmm0, xmmword [0x1400157c0]
movups xmmword [rbp - 0x28], xmm0
mov eax, dword [0x1400157d0]
mov dword [rbp - 0x18], eax
movzx eax, word [0x1400157d4]
mov word [rbp - 0x14], ax
cmp byte [0x1400157d5], 0
je 0x140003ff3
mov r8d, r14d
cmp esi, 2
jl 0x140003fab
movdqa xmm5, xmmword [0x14001f820]
movdqa xmm4, xmmword [0x14001f8b0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14001f850]
movd xmm8, r10d
movdqa xmm0, xmmword [str.3333333333333333]
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
paddd xmm1, xmm2
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 [0x14001f870]
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
paddd xmm1, xmm3
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 [0x14001f870]
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 0x140003ea0
cmp r8d, 0x16
jge 0x140003ff3
movsxd rax, r8d
lea r10, [rbp - 0x28]
add r10, rax
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x16
jl 0x140003fc0
lea rdx, [rbp - 0x28]
sub rdx, r9
nop word [rax + rax]
movzx ecx, byte [r9]
movzx eax, byte [r9 + rdx]
sub ecx, eax
jne 0x140004014
inc r9
test eax, eax
jne 0x140004000
test ecx, ecx
jne 0x1400045c4
mov eax, dword [str.FGPD7]
mov dword [rsp + 0x6c], eax
movzx eax, byte [0x14001578c]
mov byte [rsp + 0x6c], 0x75
xor byte [rsp + 0x6d], 0x34
xor byte [rsp + 0x6e], 0x35
xor byte [rsp + 0x6f], 0x36
xor al, 0x37
mov byte [rsp + 0x70], al
test rdi, rdi
je 0x14000408a
mov qword [rbp - 8], r14
lea r8, [rsp + 0x6c]
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.140005f60
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 0x14000408a
cmp word [rcx + 0x1e], 3
jne 0x14000408a
lea r15, [rcx + 0x10]
mov rdi, r15
jmp 0x140004090
mov r15, r14
mov rdi, r14
movzx eax, word [0x1400157a4]
mov word [rsp + 0x30], ax
movzx eax, byte [0x1400157a6]
mov byte [rsp + 0x30], 0x69
xor byte [rsp + 0x31], 0x34
xor al, 0x35
mov byte [rsp + 0x32], al
test r15, r15
je 0x14000410e
mov qword [rbp], r14
lea r8, [rsp + 0x30]
lea rdx, [rbp]
mov rcx, r15
call fcn.140005f60
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 0x14000410e
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000410e
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x140004119
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x140004119
mov rbx, r14
lea rdx, [rdi + 8]
mov qword [rbp - 0x70], rdx
movsd xmm0, qword [str.FGPDYYT__]
movzx ecx, byte [0x1400157a0]
movsd qword [rsp + 0x48], xmm0
mov byte [rsp + 0x48], 0x75
xor byte [rsp + 0x49], 0x34
xor byte [rsp + 0x4a], 0x35
xor byte [rsp + 0x4b], 0x36
xor byte [rsp + 0x4c], 0x37
xor byte [rsp + 0x4d], 0x38
xor byte [rsp + 0x4e], 0x39
xor byte [rsp + 0x4f], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x50], cl
test r15, r15
je 0x1400041bc
mov qword [rbp + 8], r14
lea r8, [rsp + 0x48]
lea rdx, [rbp + 8]
mov rcx, r15
call fcn.140005f60
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 0x1400041bc
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400041bc
lea r13, [rcx + 0x10]
mov eax, 0x1000
test word [r13 + 0xe], ax
jne 0x1400041b7
mov r13, qword [r13 + 8]
and r13, r12
mov rsi, r13
jmp 0x1400041c6
mov r13, r14
mov rsi, r14
mov qword [rbp - 0x70], rdx
mov eax, dword [0x1400157f4]
mov dword [rsp + 0x28], eax
movzx eax, word [0x1400157f8]
mov word [rsp + 0x2c], ax
movzx eax, byte [0x1400157fa]
mov byte [rsp + 0x28], 0x61
xor byte [rsp + 0x29], 0x34
xor byte [rsp + 0x2a], 0x35
xor byte [rsp + 0x2b], 0x36
xor byte [rsp + 0x2c], 0x37
xor byte [rsp + 0x2d], 0x38
xor al, 0x39
mov byte [rsp + 0x2e], al
test r15, r15
je 0x140004262
mov qword [rbp + 0x10], r14
lea r8, [rsp + 0x28]
lea rdx, [rbp + 0x10]
mov rcx, r15
call fcn.140005f60
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 0x140004262
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x140004262
lea rdi, [rcx + 0x10]
mov eax, 0x1000
test word [rdi + 0xe], ax
jne 0x140004265
mov rdi, qword [rdi + 8]
and rdi, r12
jmp 0x140004265
mov rdi, r14
mov eax, dword [0x1400290a8]
cmp eax, 8
jb 0x140004275
mov r12, r14
jmp 0x140004296
mov r12d, 1
lock xadd dword [0x1400290a0], r12d
and r12d, 7
shl r12, 9
lea rax, [0x1400280a0]
add r12, rax
test rbx, rbx
je 0x1400045a8
test r13, r13
je 0x1400045a8
test r12, r12
je 0x1400045a8
mov rcx, r12
cmp byte [rbx], 0
je 0x1400042e0
mov r8d, 1
sub r8, rbx
mov qword [rbp - 0x70], rdx
lea rax, [r8 + rbx]
cmp rax, 0x20
jae 0x1400042e0
movzx eax, byte [rbx]
mov byte [rcx], al
inc rcx
inc rbx
cmp byte [rbx], 0
jne 0x1400042c6
mov byte [rcx], 0
lea rcx, [r12 + 0x20]
cmp byte [r13], 0
je 0x14000431c
mov edx, 1
sub rdx, r13
nop word [rax + rax]
lea rax, [rdx + rsi]
cmp rax, 0x158
jae 0x14000431c
movzx eax, byte [rsi]
mov byte [rcx], al
inc rcx
inc rsi
cmp byte [rsi], 0
jne 0x140004300
mov byte [rcx], 0
movsd xmm0, qword [str.W_FUEQTSU_IQM_]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x140015770]
mov dword [rbp - 0x48], eax
movzx eax, word [0x140015774]
mov word [rbp - 0x44], ax
mov esi, dword [0x140022018]
cmp byte [0x140015775], 0
je 0x1400044b3
mov r8d, r14d
cmp esi, 2
jl 0x140004474
movdqa xmm4, xmmword [0x14001f8b0]
mov eax, 5
movd xmm6, eax
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x14001f820]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
packuswb xmm2, xmm2
mov eax, dword [str.3333333333333333]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.W_FUEQTSU_IQM_]
xorps xmm2, xmm0
movd dword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x14001f830]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001f850]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001f870]
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
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x140004480
test r15, r15
je 0x140004555
mov qword [rbp + 0x18], r14
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x18]
mov rcx, r15
call fcn.140005f60
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 0x140004555
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
mov r13d, 0x1000
test al, 1
je 0x14000455b
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x14000451b
mov rcx, qword [rcx + 8]
and rcx, rdx
test rcx, rcx
je 0x14000455b
lea rdx, [r12 + 0x178]
cmp byte [rcx], 0
je 0x140004550
mov r8d, 1
sub r8, rcx
lea rax, [r8 + rcx]
cmp rax, 8
jae 0x140004550
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140004536
mov byte [rdx], 0
jmp 0x14000455b
mov r13d, 0x1000
lea rcx, [r12 + 0x180]
test rdi, rdi
je 0x14000459c
cmp byte [rdi], 0
je 0x14000459c
mov edx, 1
sub rdx, rdi
nop word [rax + rax]
lea rax, [rdx + rdi]
cmp rax, 0x80
jae 0x14000459c
movzx eax, byte [rdi]
mov byte [rcx], al
inc rcx
inc rdi
cmp byte [rdi], 0
jne 0x140004580
mov byte [rcx], 0
lock inc dword [0x1400290a8]
jmp 0x1400045b4
mov r13d, 0x1000
mov esi, dword [0x140022018]
movabs r12, 0xffffffffffff
mov r15d, 5
mov edi, 0x1f
lea rcx, [rbp + 0x4060]
call fcn.1400047a0
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002fe0
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x14005d738]
call fcn.1400068f0
test al, al
jne 0x140003360
lea rcx, [rbp + 0x4060]
call fcn.1400047a0
xchg byte [0x140028046], r14b
test r14b, r14b
je 0x14000470f
cmp qword [0x140059730], 0
je 0x14000470f
lea rcx, [0x1400290b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x140004795
cmp dword [0x1400290fc], 0x7fffffff
je 0x1400046c1
mov rbx, qword [0x140059730]
mov qword [rbp + 0x50], rbx
test rbx, rbx
je 0x140004683
mov r8, rbx
lea rdx, [0x140059738]
lea rcx, [rbp + 0x58]
call sub.VCRUNTIME140.dll_memcpy
mov rbx, qword [rbp + 0x50]
lea rcx, [0x1400290b0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov r8, rbx
lea rdx, [rbp + 0x58]
call fcn.1400067f0
test al, al
jne 0x14000470f
lea rcx, [0x1400290b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x140004795
cmp dword [0x1400290fc], 0x7fffffff
jne 0x1400046d7
mov dword [0x1400290fc], 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 [0x140059730], r8
test r8, r8
je 0x1400046f7
lea rdx, [rbp + 0x58]
lea rcx, [0x140059738]
call sub.VCRUNTIME140.dll_memcpy
mov eax, 1
xchg byte [0x140028046], al
lea rcx, [0x1400290b0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov eax, dword [0x140049158]
test eax, eax
je 0x140004756
lea rbx, [0x140029110]
mov eax, 1
lock xadd dword [0x140049154], eax
and eax, 7
imul r8, rax, 0x4008
lea rdx, [rbx + 8]
add rdx, r8
mov r8, qword [r8 + rbx]
call fcn.1400067f0
lock dec dword [0x140049158]
mov eax, dword [0x140049158]
jne 0x140004720
mov rcx, qword [rbp + 0xc900]
xor rcx, rsp
call fcn.140013bd0
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, r15d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3