Function at 0x1800169a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
mov r10, rcx
test rcx, rcx
je 0x18001714a
movzx ecx, word [0x18006c810]
movzx eax, byte [0x18006c812]
movsd xmm0, qword [str.rPAVdYWN_K:]
xor al, 0x3a
mov r10, qword [r10]
movsd qword [rbp - 0x39], xmm0
xor byte [rbp - 0x38], 0x31
xor byte [rbp - 0x37], 0x32
xor byte [rbp - 0x36], 0x33
xor byte [rbp - 0x35], 0x34
xor byte [rbp - 0x34], 0x35
xor byte [rbp - 0x33], 0x36
xor byte [rbp - 0x32], 0x37
mov word [rbp - 0x31], cx
xor cl, 0x38
xor byte [rbp - 0x30], 0x39
mov byte [rbp - 0x31], cl
lea rcx, [0x18006b8ff]
mov byte [rbp - 0x2f], al
mov rax, rcx
mov byte [rbp - 0x39], 0x42
test r10, r10
je 0x180016a19
mov rax, qword [r10 + 0x10]
lea r9, [rbp - 0x39]
sub r9, rax
movzx r8d, byte [rax]
movzx edx, byte [rax + r9]
sub r8d, edx
jne 0x180016a35
inc rax
test edx, edx
jne 0x180016a20
test r8d, r8d
je 0x180017152
mov eax, dword [0x18006c820]
xor r8d, r8d
cmp byte [0x18006c825], r8b
movsd xmm0, qword [str.aqcXTORJxJD]
mov dword [rbp - 0x1a], eax
movzx eax, word [0x18006c824]
mov word [rbp - 0x16], ax
movsd qword [rbp - 0x22], xmm0
je 0x180016bc1
cmp dword [0x180201ee0], 2
mov r9d, r8d
jl 0x180016b78
movdqa xmm2, xmmword [0x18006eb00]
mov r9d, 8
movdqa xmm4, xmmword [0x18006eec0]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006eb10]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [str.aqcXTORJxJD]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006eb70]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000]
xorps xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rbp - 0x22], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp - 0x1e]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006eb70]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000]
xorps xmm2, xmm0
movd dword [rbp - 0x1e], xmm2
movsxd rax, r9d
lea r11, [rbp - 0x22]
add r11, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
lea r11, [r11 + 1]
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x34
movzx eax, r9b
inc r9d
sub al, dl
add al, 0x30
xor byte [r11 - 1], al
cmp r9d, 0xe
jl 0x180016b90
mov rax, rcx
test r10, r10
je 0x180016bcd
mov rax, qword [r10 + 0x10]
lea r11, [rbp - 0x22]
sub r11, rax
nop dword [rax]
nop dword [rax + rax]
movzx r9d, byte [rax]
movzx edx, byte [rax + r11]
sub r9d, edx
jne 0x180016bf5
inc rax
test edx, edx
jne 0x180016be0
test r9d, r9d
je 0x180017152
cmp byte [0x18006c833], r8b
movsd xmm0, qword [str.aqAGRRJH_]
mov eax, dword [0x18006c830]
movsd qword [rbp - 0x2e], xmm0
mov dword [rbp - 0x26], eax
je 0x180016d71
cmp dword [0x180201ee0], 2
mov r9d, r8d
jl 0x180016d30
movdqa xmm2, xmmword [0x18006eb00]
mov r9d, 8
movdqa xmm4, xmmword [0x18006eec0]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006eb10]
movdqa xmm0, xmm2
mov eax, dword [str.0000000000000000]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006eb70]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.aqAGRRJH_]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x2e], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006eb70]
movd xmm1, dword [rbp - 0x2a]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x2a], xmm2
movsxd rax, r9d
lea r11, [rbp - 0x2e]
add r11, rax
nop word [rax + rax]
mov eax, 0x4ec4ec4f
lea r11, [r11 + 1]
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x34
movzx eax, r9b
inc r9d
sub al, dl
add al, 0x30
xor byte [r11 - 1], al
cmp r9d, 0xc
jl 0x180016d40
mov rax, rcx
test r10, r10
je 0x180016d7d
mov rax, qword [r10 + 0x10]
lea r11, [rbp - 0x2e]
sub r11, rax
nop dword [rax]
nop dword [rax + rax]
movzx r9d, byte [rax]
movzx edx, byte [rax + r11]
sub r9d, edx
jne 0x180016da5
inc rax
test edx, edx
jne 0x180016d90
test r9d, r9d
je 0x180017152
cmp byte [0x18006c841], r8b
movsd xmm0, qword [str.aqcXTORJ9]
movzx eax, word [0x18006c840]
movsd qword [rbp - 0x57], xmm0
mov word [rbp - 0x4f], ax
je 0x180016df7
xor byte [rbp - 0x56], 0x31
xor byte [rbp - 0x55], 0x32
xor byte [rbp - 0x54], 0x33
xor byte [rbp - 0x53], 0x34
xor byte [rbp - 0x52], 0x35
xor byte [rbp - 0x51], 0x36
xor byte [rbp - 0x50], 0x37
xor byte [rbp - 0x4f], 0x38
xor byte [rbp - 0x4e], 0x39
mov byte [rbp - 0x57], 0x4e
mov rax, rcx
test r10, r10
je 0x180016e03
mov rax, qword [r10 + 0x10]
lea r11, [rbp - 0x57]
sub r11, rax
nop word [rax + rax]
movzx r9d, byte [rax]
movzx edx, byte [rax + r11]
sub r9d, edx
jne 0x180016e25
inc rax
test edx, edx
jne 0x180016e10
test r9d, r9d
je 0x180017152
movzx eax, byte [0x18006c850]
movsd xmm0, qword [str.xD_RZft8]
xor al, 0x38
movsd qword [rbp - 0x60], xmm0
xor byte [rbp - 0x5f], 0x31
xor byte [rbp - 0x5e], 0x32
xor byte [rbp - 0x5d], 0x33
xor byte [rbp - 0x5c], 0x34
xor byte [rbp - 0x5b], 0x35
xor byte [rbp - 0x5a], 0x36
xor byte [rbp - 0x59], 0x37
mov byte [rbp - 0x58], al
mov rax, rcx
mov byte [rbp - 0x60], 0x48
test r10, r10
je 0x180016e73
mov rax, qword [r10 + 0x10]
lea r11, [rbp - 0x60]
sub r11, rax
nop word [rax + rax]
movzx r9d, byte [rax]
movzx edx, byte [rax + r11]
sub r9d, edx
jne 0x180016e95
inc rax
test edx, edx
jne 0x180016e80
test r9d, r9d
je 0x180017152
cmp byte [0x18006c861], r8b
movsd xmm0, qword [str.cR_VZA_DL9]
movzx eax, word [0x18006c860]
movsd qword [rbp - 0x4d], xmm0
mov word [rbp - 0x45], ax
je 0x180016ee7
xor byte [rbp - 0x4c], 0x31
xor byte [rbp - 0x4b], 0x32
xor byte [rbp - 0x4a], 0x33
xor byte [rbp - 0x49], 0x34
xor byte [rbp - 0x48], 0x35
xor byte [rbp - 0x47], 0x36
xor byte [rbp - 0x46], 0x37
xor byte [rbp - 0x45], 0x38
xor byte [rbp - 0x44], 0x39
mov byte [rbp - 0x4d], 0x53
mov rax, rcx
test r10, r10
je 0x180016ef3
mov rax, qword [r10 + 0x10]
lea r11, [rbp - 0x4d]
sub r11, rax
nop word [rax + rax]
movzx r9d, byte [rax]
movzx edx, byte [rax + r11]
sub r9d, edx
jne 0x180016f15
inc rax
test edx, edx
jne 0x180016f00
test r9d, r9d
je 0x180017152
cmp byte [0x18006c875], r8b
mov eax, dword [0x18006c870]
movsd xmm0, qword [str.dD_QYr__UVN]
mov dword [rbp - 0xc], eax
movzx eax, word [0x18006c874]
mov word [rbp - 8], ax
movsd qword [rbp - 0x14], xmm0
je 0x1800170a1
cmp dword [0x180201ee0], 2
jl 0x180017058
movdqa xmm2, xmmword [0x18006eb00]
mov r8d, 8
movdqa xmm4, xmmword [0x18006eec0]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006eb10]
movdqa xmm0, xmm2
mov eax, dword [str.0000000000000000]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006eb70]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.dD_QYr__UVN]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x14], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006eb50]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006eb70]
movd xmm1, dword [rbp - 0x10]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x10], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x14]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, dl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180017070
mov rax, rcx
test r10, r10
je 0x1800170ad
mov rax, qword [r10 + 0x10]
lea r9, [rbp - 0x14]
sub r9, rax
nop dword [rax]
nop dword [rax + rax]
movzx r8d, byte [rax]
movzx edx, byte [rax + r9]
sub r8d, edx
jne 0x1800170d5
inc rax
test edx, edx
jne 0x1800170c0
test r8d, r8d
je 0x180017152
cmp byte [0x18006c881], 0
movsd xmm0, qword [str.xecXTORJ9]
movzx eax, word [0x18006c880]
movsd qword [rbp - 0x43], xmm0
mov word [rbp - 0x3b], ax
je 0x180017123
xor byte [rbp - 0x42], 0x31
xor byte [rbp - 0x41], 0x32
xor byte [rbp - 0x40], 0x33
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
mov byte [rbp - 0x43], 0x48
test r10, r10
je 0x18001712c
mov rcx, qword [r10 + 0x10]
lea r8, [rbp - 0x43]
sub r8, rcx
movzx edx, byte [rcx]
movzx eax, byte [rcx + r8]
sub edx, eax
jne 0x180017146
inc rcx
test eax, eax
jne 0x180017133
test edx, edx
je 0x180017152
xor al, al
add rsp, 0x60
pop rbp
ret
mov al, 1
add rsp, 0x60
pop rbp
ret