Function at 0x140003280
Capabilities:
Encode data using base64
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.1400121e0
sub rsp, rax
movaps xmmword [rsp + 0xca30], xmm6
movaps xmmword [rsp + 0xca20], xmm7
movaps xmmword [rsp + 0xca10], xmm8
mov rax, qword [0x140020010]
xor rax, rsp
mov qword [rbp + 0xc900], rax
mov rax, qword [0x1400572c8]
test rax, rax
je 0x140004766
cmp dword [rax + 8], 3
je 0x140003311
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
cmp rax, qword [0x140022c90]
je 0x140003302
jl 0x140004766
call fcn.1400031b0
call fcn.140006460
jmp 0x140004766
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002ff0
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x1400572c8]
call fcn.140006900
xor r14d, r14d
lea r15d, [r14 + 5]
test al, al
je 0x140004621
lea edi, [r14 + 0x1f]
movabs r12, 0xffffffffffff
mov r13d, 0x1000
mov esi, dword [0x140020018]
nop
mov eax, dword [str.LO_ZU_Y]
mov dword [rbp - 0x7c], eax
cmp byte [0x14001386b], 0
je 0x140003453
cmp esi, 2
jl 0x140003417
movdqa xmm3, xmmword [0x14001d220]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001d2e0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001d2e0]
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 [0x14001d260]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14001d2a0]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x7c], xmm2
jmp 0x140003453
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, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140003420
mov qword [rbp + 0x20], r14
lea r8, [rbp - 0x7c]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x4060]
call fcn.140005f70
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 0x1400034ab
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400034ab
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x1400034ae
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x1400034ae
mov rbx, r14
mov eax, dword [str.WUU_X_]
mov dword [rsp + 0x20], eax
movzx eax, word [0x1400137fc]
mov word [rsp + 0x24], ax
mov byte [rsp + 0x20], 0x6e
xor byte [rsp + 0x21], 0x3a
xor byte [rsp + 0x22], 0x3b
xor byte [rsp + 0x23], 0x3c
xor byte [rsp + 0x24], 0x3d
xor byte [rsp + 0x25], 0x3e
mov qword [rbp + 0x28], r14
lea r8, [rsp + 0x20]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x4060]
call fcn.140005f70
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 0x14000383d
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000383d
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003541
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x14000383d
test rbx, rbx
je 0x1400045d9
mov eax, dword [str.hiso_]
mov dword [rsp + 0x3c], eax
movzx eax, word [0x140013854]
mov word [rsp + 0x40], ax
mov byte [rsp + 0x3c], 0x45
xor byte [rsp + 0x3d], 0x3a
xor byte [rsp + 0x3e], 0x3b
xor byte [rsp + 0x3f], 0x3c
xor al, 0x3d
mov byte [rsp + 0x40], al
xor byte [rsp + 0x41], 0x3e
lea rdx, [rsp + 0x3c]
sub rdx, rbx
movzx ecx, byte [rbx]
movzx eax, byte [rbx + rdx]
sub ecx, eax
jne 0x1400035a2
inc rbx
test eax, eax
jne 0x140003590
test ecx, ecx
jne 0x1400045d9
mov eax, dword [str.__O_]
mov dword [rsp + 0x5c], eax
movzx eax, byte [0x1400137d4]
mov byte [rsp + 0x5c], 0x64
xor byte [rsp + 0x5d], 0x3a
xor byte [rsp + 0x5e], 0x3b
xor byte [rsp + 0x5f], 0x3c
xor al, 0x3d
mov byte [rsp + 0x60], al
mov qword [rbp + 0x30], r14
lea r8, [rsp + 0x5c]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x4060]
call fcn.140005f70
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 0x140003619
cmp word [rcx + 0x1e], 3
lea rbx, [rcx + 0x10]
je 0x14000361c
mov rbx, r14
mov eax, dword [0x14001386c]
mov dword [rsp + 0x34], eax
movzx eax, byte [0x140013870]
mov byte [rsp + 0x34], 0x63
xor byte [rsp + 0x35], 0x3a
xor byte [rsp + 0x36], 0x3b
xor byte [rsp + 0x37], 0x3c
xor al, 0x3d
mov byte [rsp + 0x38], al
test rbx, rbx
je 0x140003670
mov qword [rbp + 0x48], r14
lea r8, [rsp + 0x34]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.140005f70
nop dword [rax]
nop word [rax + rax]
mov byte [rsp + 0x58], 0
mov rax, qword [str.T_HOYZ_xyoukwk]
mov qword [rbp - 0x78], rax
cmp byte [0x140013807], 0
je 0x1400037d3
cmp esi, 2
jl 0x140003795
movdqa xmm4, xmmword [0x14001d2e0]
movd xmm6, r15d
movd xmm5, edi
movdqa xmm2, xmmword [0x14001d220]
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 [0x14001d260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14001d2a0]
movd xmm0, dword [rbp - 0x78]
xorps xmm2, xmm0
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x14001d230]
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 [0x14001d260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14001d2a0]
movd xmm0, dword [rbp - 0x74]
xorps xmm2, xmm0
movd dword [rbp - 0x74], xmm2
jmp 0x1400037d3
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, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400037a0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.1400030f0
mov r8, rax
test rax, rax
je 0x14000382d
lea rax, [0x1400572d0]
mov rcx, rax
movzx edx, byte [r8]
test dl, dl
je 0x14000382a
mov r9d, 1
sub r9, rax
sub r8, rax
nop word [rax + rax]
lea rax, [rcx + r9]
cmp rax, 0x100
jae 0x14000382a
mov byte [rcx], dl
inc rcx
movzx edx, byte [rcx + r8]
test dl, dl
jne 0x140003810
mov byte [rcx], 0
mov eax, 1
xchg byte [0x140021bd8], al
jmp 0x1400045d9
test rbx, rbx
je 0x1400045d9
mov eax, dword [str.__O_]
mov dword [rsp + 0x64], eax
movzx eax, byte [0x1400137d4]
mov byte [rsp + 0x64], 0x64
xor byte [rsp + 0x65], 0x3a
xor byte [rsp + 0x66], 0x3b
xor byte [rsp + 0x67], 0x3c
xor al, 0x3d
mov byte [rsp + 0x68], al
mov qword [rbp + 0x38], r14
lea r8, [rsp + 0x64]
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x4060]
call fcn.140005f70
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 0x1400038b5
cmp word [rcx + 0x1e], 3
lea rdi, [rcx + 0x10]
je 0x1400038b8
mov rdi, r14
movsd xmm0, qword [0x1400137e8]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [0x1400137f0]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1400137f4]
mov word [rbp - 0x54], ax
mov r9, rbx
cmp byte [0x1400137f5], 0
je 0x140003a43
mov r8d, r14d
cmp esi, 2
jl 0x140003a06
movdqa xmm4, xmmword [0x14001d2e0]
movd xmm6, r15d
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x14001d220]
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 [0x14001d260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
packuswb xmm2, xmm2
mov eax, dword [0x14001d2a0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1400137e8]
xorps xmm2, xmm0
movd dword [rbp - 0x60], xmm2
movdqa xmm3, xmmword [0x14001d230]
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 [0x14001d260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
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, 0x39
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0xe
jl 0x140003a10
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 0x140003a63
inc rax
test ecx, ecx
jne 0x140003a50
test edx, edx
jne 0x140003b5f
mov eax, dword [str.J_XNXJ_]
mov dword [rsp + 0x74], eax
movzx ecx, word [0x1400137cc]
mov word [rsp + 0x78], cx
movzx eax, byte [0x1400137ce]
mov byte [rsp + 0x74], 0x73
xor byte [rsp + 0x75], 0x3a
xor byte [rsp + 0x76], 0x3b
xor byte [rsp + 0x77], 0x3c
xor cl, 0x3d
mov byte [rsp + 0x78], cl
xor byte [rsp + 0x79], 0x3e
xor al, 0x3f
mov byte [rsp + 0x7a], al
test rdi, rdi
je 0x1400045d4
mov qword [rbp + 0x40], r14
lea r8, [rsp + 0x74]
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.140005f70
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 0x1400045d4
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400045d4
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003b0b
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400045d4
lea rdx, [0x140053090]
cmp byte [rcx], 0
je 0x140003b4c
mov r8d, 1
sub r8, rcx
nop dword [rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003b4c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003b30
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140021bd5], al
jmp 0x1400045d4
movups xmm0, xmmword [0x140013808]
movups xmmword [rbp - 0x40], xmm0
movzx eax, word [0x140013818]
mov word [rbp - 0x30], ax
cmp byte [0x140013819], 0
je 0x140003d23
mov r8d, r14d
cmp esi, 2
jl 0x140003cdb
movdqa xmm5, xmmword [0x14001d220]
movdqa xmm4, xmmword [0x14001d2e0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14001d260]
mov r10d, 0x1f
movd xmm8, r10d
movdqa xmm0, xmmword [0x14001d2a0]
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 [0x14001d280]
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 [0x14001d280]
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 0x140003bd0
cmp r8d, 0x12
jge 0x140003d29
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, 0x39
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x12
jl 0x140003cf0
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 0x140003d46
inc rax
test ecx, ecx
jne 0x140003d33
test edx, edx
jne 0x140003e3f
mov eax, dword [str.J_XNXJ_]
mov dword [rsp + 0x7c], eax
movzx ecx, word [0x1400137cc]
mov word [rbp - 0x80], cx
movzx eax, byte [0x1400137ce]
mov byte [rsp + 0x7c], 0x73
xor byte [rsp + 0x7d], 0x3a
xor byte [rsp + 0x7e], 0x3b
xor byte [rsp + 0x7f], 0x3c
xor cl, 0x3d
mov byte [rbp - 0x80], cl
xor byte [rbp - 0x7f], 0x3e
xor al, 0x3f
mov byte [rbp - 0x7e], al
test rdi, rdi
je 0x1400045d4
mov qword [rbp - 0x10], r14
lea r8, [rsp + 0x7c]
lea rdx, [rbp - 0x10]
mov rcx, rdi
call fcn.140005f70
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 0x1400045d4
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400045d4
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x140003dea
mov rcx, qword [rcx + 8]
and rcx, r12
test rcx, rcx
je 0x1400045d4
lea rdx, [0x1400573d0]
cmp byte [rcx], 0
je 0x140003e2c
mov r8d, 1
sub r8, rcx
nop dword [rax + rax]
lea rax, [r8 + rcx]
cmp rax, 0x100
jae 0x140003e2c
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140003e10
mov byte [rdx], 0
mov eax, 1
xchg byte [0x140021bd7], al
jmp 0x1400045d4
movups xmm0, xmmword [str.xyoukwk]
movups xmmword [rbp - 0x28], xmm0
mov eax, dword [0x140013848]
mov dword [rbp - 0x18], eax
movzx eax, word [0x14001384c]
mov word [rbp - 0x14], ax
cmp byte [0x14001384d], 0
je 0x140004003
mov r8d, r14d
cmp esi, 2
jl 0x140003fbb
movdqa xmm5, xmmword [0x14001d220]
movdqa xmm4, xmmword [0x14001d2e0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14001d260]
movd xmm8, r10d
movdqa xmm0, xmmword [0x14001d2a0]
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 [0x14001d280]
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 [0x14001d280]
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 0x140003eb0
cmp r8d, 0x16
jge 0x140004003
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, 0x39
xor byte [r10], al
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0x16
jl 0x140003fd0
lea rdx, [rbp - 0x28]
sub rdx, r9
nop word [rax + rax]
movzx ecx, byte [r9]
movzx eax, byte [r9 + rdx]
sub ecx, eax
jne 0x140004024
inc r9
test eax, eax
jne 0x140004010
test ecx, ecx
jne 0x1400045d4
mov eax, dword [str.LIN]
mov dword [rsp + 0x6c], eax
movzx eax, byte [0x140013820]
mov byte [rsp + 0x6c], 0x75
xor byte [rsp + 0x6d], 0x3a
xor byte [rsp + 0x6e], 0x3b
xor byte [rsp + 0x6f], 0x3c
xor al, 0x3d
mov byte [rsp + 0x70], al
test rdi, rdi
je 0x14000409a
mov qword [rbp - 8], r14
lea r8, [rsp + 0x6c]
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.140005f70
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 0x14000409a
cmp word [rcx + 0x1e], 3
jne 0x14000409a
lea r15, [rcx + 0x10]
mov rdi, r15
jmp 0x1400040a0
mov r15, r14
mov rdi, r14
movzx eax, word [0x1400137e0]
mov word [rsp + 0x30], ax
movzx eax, byte [0x1400137e2]
mov byte [rsp + 0x30], 0x69
xor byte [rsp + 0x31], 0x3a
xor al, 0x3b
mov byte [rsp + 0x32], al
test r15, r15
je 0x14000411e
mov qword [rbp], r14
lea r8, [rsp + 0x30]
lea rdx, [rbp]
mov rcx, r15
call fcn.140005f70
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 0x14000411e
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x14000411e
lea rbx, [rcx + 0x10]
test word [rbx + 0xe], r13w
jne 0x140004129
mov rbx, qword [rbx + 8]
and rbx, r12
jmp 0x140004129
mov rbx, r14
lea rdx, [rdi + 8]
mov qword [rbp - 0x70], rdx
movsd xmm0, qword [str.LINS_R_A]
movzx ecx, byte [0x140013830]
movsd qword [rsp + 0x48], xmm0
mov byte [rsp + 0x48], 0x75
xor byte [rsp + 0x49], 0x3a
xor byte [rsp + 0x4a], 0x3b
xor byte [rsp + 0x4b], 0x3c
xor byte [rsp + 0x4c], 0x3d
xor byte [rsp + 0x4d], 0x3e
xor byte [rsp + 0x4e], 0x3f
xor byte [rsp + 0x4f], 0x40
xor cl, 0x41
mov byte [rsp + 0x50], cl
test r15, r15
je 0x1400041cc
mov qword [rbp + 8], r14
lea r8, [rsp + 0x48]
lea rdx, [rbp + 8]
mov rcx, r15
call fcn.140005f70
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 0x1400041cc
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x1400041cc
lea r13, [rcx + 0x10]
mov eax, 0x1000
test word [r13 + 0xe], ax
jne 0x1400041c7
mov r13, qword [r13 + 8]
and r13, r12
mov rsi, r13
jmp 0x1400041d6
mov r13, r14
mov rsi, r14
mov qword [rbp - 0x70], rdx
mov eax, dword [str.XLZHL_]
mov dword [rsp + 0x28], eax
movzx eax, word [0x1400137dc]
mov word [rsp + 0x2c], ax
movzx eax, byte [0x1400137de]
mov byte [rsp + 0x28], 0x61
xor byte [rsp + 0x29], 0x3a
xor byte [rsp + 0x2a], 0x3b
xor byte [rsp + 0x2b], 0x3c
xor byte [rsp + 0x2c], 0x3d
xor byte [rsp + 0x2d], 0x3e
xor al, 0x3f
mov byte [rsp + 0x2e], al
test r15, r15
je 0x140004272
mov qword [rbp + 0x10], r14
lea r8, [rsp + 0x28]
lea rdx, [rbp + 0x10]
mov rcx, r15
call fcn.140005f70
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 0x140004272
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
test al, 1
je 0x140004272
lea rdi, [rcx + 0x10]
mov eax, 0x1000
test word [rdi + 0xe], ax
jne 0x140004275
mov rdi, qword [rdi + 8]
and rdi, r12
jmp 0x140004275
mov rdi, r14
mov eax, dword [0x140022c38]
cmp eax, 8
jb 0x140004285
mov r12, r14
jmp 0x1400042a6
mov r12d, 1
lock xadd dword [0x140022c30], r12d
and r12d, 7
shl r12, 9
lea rax, [0x140021c30]
add r12, rax
test rbx, rbx
je 0x1400045b8
test r13, r13
je 0x1400045b8
test r12, r12
je 0x1400045b8
mov rcx, r12
cmp byte [rbx], 0
je 0x1400042f0
mov r8d, 1
sub r8, rbx
mov qword [rbp - 0x70], rdx
lea rax, [r8 + rbx]
cmp rax, 0x20
jae 0x1400042f0
movzx eax, byte [rbx]
mov byte [rcx], al
inc rcx
inc rbx
cmp byte [rbx], 0
jne 0x1400042d6
mov byte [rcx], 0
lea rcx, [r12 + 0x20]
cmp byte [r13], 0
je 0x14000432c
mov edx, 1
sub rdx, r13
nop word [rax + rax]
lea rax, [rdx + rsi]
cmp rax, 0x158
jae 0x14000432c
movzx eax, byte [rsi]
mov byte [rcx], al
inc rcx
inc rsi
cmp byte [rsi], 0
jne 0x140004310
mov byte [rcx], 0
movsd xmm0, qword [str._SH_OWR__77F]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x140013860]
mov dword [rbp - 0x48], eax
movzx eax, word [0x140013864]
mov word [rbp - 0x44], ax
mov esi, dword [0x140020018]
cmp byte [0x140013865], 0
je 0x1400044c3
mov r8d, r14d
cmp esi, 2
jl 0x140004484
movdqa xmm4, xmmword [0x14001d2e0]
mov eax, 5
movd xmm6, eax
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x14001d220]
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 [0x14001d260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
packuswb xmm2, xmm2
mov eax, dword [0x14001d2a0]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str._SH_OWR__77F]
xorps xmm2, xmm0
movd dword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x14001d230]
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 [0x14001d260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d280]
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, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x140004490
test r15, r15
je 0x140004565
mov qword [rbp + 0x18], r14
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x18]
mov rcx, r15
call fcn.140005f70
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 0x140004565
movzx eax, word [rcx + 0x1e]
shr ax, 0xa
mov r13d, 0x1000
test al, 1
je 0x14000456b
add rcx, 0x10
test word [rcx + 0xe], r13w
jne 0x14000452b
mov rcx, qword [rcx + 8]
and rcx, rdx
test rcx, rcx
je 0x14000456b
lea rdx, [r12 + 0x178]
cmp byte [rcx], 0
je 0x140004560
mov r8d, 1
sub r8, rcx
lea rax, [r8 + rcx]
cmp rax, 8
jae 0x140004560
movzx eax, byte [rcx]
mov byte [rdx], al
inc rdx
inc rcx
cmp byte [rcx], 0
jne 0x140004546
mov byte [rdx], 0
jmp 0x14000456b
mov r13d, 0x1000
lea rcx, [r12 + 0x180]
test rdi, rdi
je 0x1400045ac
cmp byte [rdi], 0
je 0x1400045ac
mov edx, 1
sub rdx, rdi
nop word [rax + rax]
lea rax, [rdx + rdi]
cmp rax, 0x80
jae 0x1400045ac
movzx eax, byte [rdi]
mov byte [rcx], al
inc rcx
inc rdi
cmp byte [rdi], 0
jne 0x140004590
mov byte [rcx], 0
lock inc dword [0x140022c38]
jmp 0x1400045c4
mov r13d, 0x1000
mov esi, dword [0x140020018]
movabs r12, 0xffffffffffff
mov r15d, 5
mov edi, 0x1f
lea rcx, [rbp + 0x4060]
call fcn.1400047b0
xor edx, edx
mov r8d, 0x88a0
lea rcx, [rbp + 0x4060]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x4060]
call fcn.140002ff0
nop
lea rdx, [rbp + 0x4060]
mov rcx, qword [0x1400572c8]
call fcn.140006900
test al, al
jne 0x140003370
lea rcx, [rbp + 0x4060]
call fcn.1400047b0
xchg byte [0x140021bd6], r14b
test r14b, r14b
je 0x14000471f
cmp qword [0x1400532c0], 0
je 0x14000471f
lea rcx, [0x140022c40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x1400047a5
cmp dword [0x140022c8c], 0x7fffffff
je 0x1400046d1
mov rbx, qword [0x1400532c0]
mov qword [rbp + 0x50], rbx
test rbx, rbx
je 0x140004693
mov r8, rbx
lea rdx, [0x1400532c8]
lea rcx, [rbp + 0x58]
call sub.VCRUNTIME140.dll_memcpy
mov rbx, qword [rbp + 0x50]
lea rcx, [0x140022c40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov r8, rbx
lea rdx, [rbp + 0x58]
call fcn.140006800
test al, al
jne 0x14000471f
lea rcx, [0x140022c40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x1400047a5
cmp dword [0x140022c8c], 0x7fffffff
jne 0x1400046e7
mov dword [0x140022c8c], 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 [0x1400532c0], r8
test r8, r8
je 0x140004707
lea rdx, [rbp + 0x58]
lea rcx, [0x1400532c8]
call sub.VCRUNTIME140.dll_memcpy
mov eax, 1
xchg byte [0x140021bd6], al
lea rcx, [0x140022c40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov eax, dword [0x140042ce8]
test eax, eax
je 0x140004766
lea rbx, [0x140022ca0]
mov eax, 1
lock xadd dword [0x140042ce4], eax
and eax, 7
imul r8, rax, 0x4008
lea rdx, [rbx + 8]
add rdx, r8
mov r8, qword [r8 + rbx]
call fcn.140006800
lock dec dword [0x140042ce8]
mov eax, dword [0x140042ce8]
jne 0x140004730
mov rcx, qword [rbp + 0xc900]
xor rcx, rsp
call fcn.140011290
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