Function at 0x7ff715087f80
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x98
movaps xmmword [rsp + 0x80], xmm6
xor edx, edx
mov cl, 0x45
movaps xmmword [rsp + 0x70], xmm7
call fcn.7ff71505ecc0
mov edx, 1
mov byte [rbp + 0x67], al
mov cl, 0x61
mov byte [rbp - 0x39], al
call fcn.7ff71505ecc0
mov edx, 2
mov byte [rbp + 0x77], al
mov cl, 0x73
mov byte [rbp - 0x38], al
call fcn.7ff71505ecc0
mov edx, 3
mov byte [rbp - 0x37], al
mov cl, 0x79
call fcn.7ff71505ecc0
mov edx, 4
mov byte [rbp - 0x36], al
mov cl, 0x41
call fcn.7ff71505ecc0
mov edx, 5
mov byte [rbp - 0x35], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 6
mov byte [rbp - 0x34], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 7
mov byte [rbp - 0x33], al
mov cl, 0x69
call fcn.7ff71505ecc0
mov edx, 8
mov byte [rbp - 0x32], al
mov cl, 0x43
call fcn.7ff71505ecc0
mov edx, 9
mov byte [rbp - 0x31], al
mov cl, 0x68
call fcn.7ff71505ecc0
mov edx, 0xa
mov byte [rbp - 0x30], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 0xb
mov byte [rbp - 0x2f], al
mov cl, 0x61
call fcn.7ff71505ecc0
mov edx, 0xc
mov byte [rbp - 0x2e], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0xd
mov byte [rbp - 0x2d], al
mov cl, 0x2e
call fcn.7ff71505ecc0
mov edx, 0xe
mov byte [rbp - 0x2c], al
mov cl, 0x73
call fcn.7ff71505ecc0
mov edx, 0xf
mov byte [rbp - 0x2b], al
mov cl, 0x79
call fcn.7ff71505ecc0
mov edx, 0x10
mov byte [rbp - 0x2a], al
mov cl, 0x73
call fcn.7ff71505ecc0
movdqa xmm0, xmmword [0x7ff7150a3e40]
movdqa xmm7, xmmword [0x7ff7150a3dc0]
movdqa xmm6, xmmword [0x7ff7150a3e20]
mov byte [rbp - 0x29], al
xor eax, eax
xor ebx, ebx
mov byte [rbp - 0x28], al
mov r10d, ebx
movdqa xmmword [rbp - 0x59], xmm0
movdqa xmmword [rbp - 0x49], xmm0
mov r11d, dword [rbp - 0x59]
nop dword [rax + rax]
movsxd r9, r10d
lea eax, [r10 + 7]
lea ecx, [r10 + 6]
movd xmm1, r10d
pshufd xmm1, xmm1, 0
lea edx, [r10 + 5]
paddd xmm1, xmm7
movd xmm2, ecx
andps xmm1, xmm6
movd xmm0, r11d
packuswb xmm1, xmm1
lea r8d, [r10 + 4]
packuswb xmm1, xmm1
lea ecx, [r10 + 0xa]
paddb xmm1, xmm0
movd xmm3, r8d
movd xmm0, dword [rbp + r9 - 0x39]
lea r8d, [r10 + 8]
xorps xmm1, xmm0
movd xmm0, edx
punpckldq xmm3, xmm0
lea edx, [r10 + 9]
movd dword [rbp + r9 - 0x39], xmm1
movd xmm1, eax
lea eax, [r10 + 0xb]
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
movd xmm1, eax
packuswb xmm3, xmm3
lea eax, [r10 + 0xf]
packuswb xmm3, xmm3
movd xmm0, r11d
paddb xmm3, xmm0
movd xmm2, ecx
movd xmm0, dword [rbp + r9 - 0x35]
lea ecx, [r10 + 0xe]
xorps xmm3, xmm0
punpckldq xmm2, xmm1
movd dword [rbp + r9 - 0x35], xmm3
movd xmm0, edx
lea edx, [r10 + 0xd]
movd xmm3, r8d
lea r8d, [r10 + 0xc]
punpckldq xmm3, xmm0
add r10d, 0x10
punpcklqdq xmm3, xmm2
movd xmm0, r11d
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm1, eax
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x31]
movd xmm2, ecx
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x31], xmm3
movd xmm0, edx
movd xmm3, r8d
punpckldq xmm3, xmm0
movd xmm0, r11d
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x2d]
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x2d], xmm3
cmp r10d, 0x10
jb 0x7ff7150880e0
cmp r10d, 0x11
jae 0x7ff715088239
movsxd rax, r10d
lea rcx, [rbp - 0x39]
add rcx, rax
lea eax, [r10 + 0x72]
inc r10d
xor byte [rcx], al
cmp r10d, 0x11
jb 0x7ff715088220
lea rcx, [rbp - 0x39]
mov byte [rbp - 0x28], bl
call fcn.7ff715088a60
xor edx, edx
mov qword [rbp + 0x7f], rax
mov cl, 0x42
call fcn.7ff71505ecc0
mov edx, 1
mov byte [rbp + 0x6f], al
mov cl, 0x45
movzx r13d, al
call fcn.7ff71505ecc0
mov edx, 2
mov cl, 0x44
movzx r12d, al
call fcn.7ff71505ecc0
mov edx, 3
mov cl, 0x61
movzx r15d, al
call fcn.7ff71505ecc0
mov edx, 4
mov cl, 0x69
movzx r14d, al
call fcn.7ff71505ecc0
mov edx, 5
mov cl, 0x73
movzx esi, al
call fcn.7ff71505ecc0
mov edx, 6
mov cl, 0x79
movzx edi, al
call fcn.7ff71505ecc0
mov edx, 7
mov cl, 0x2e
movzx r11d, al
call fcn.7ff71505ecc0
mov edx, 8
mov cl, 0x73
movzx r10d, al
call fcn.7ff71505ecc0
mov edx, 9
mov cl, 0x79
movzx r9d, al
call fcn.7ff71505ecc0
mov edx, 0xa
mov cl, 0x73
movzx r8d, al
call fcn.7ff71505ecc0
xor ecx, ecx
xor r11b, 0x78
mov byte [rbp - 0x4e], cl
xor r10b, 0x79
xor r9b, 0x7a
mov byte [rbp - 0x53], r11b
xor r8b, 0x7b
mov byte [rbp - 0x52], r10b
xor al, 0x7c
mov byte [rbp - 0x51], r9b
xor r13b, 0x72
mov byte [rbp - 0x50], r8b
xor r12b, 0x73
mov byte [rbp - 0x59], r13b
xor r15b, 0x74
mov byte [rbp - 0x58], r12b
xor r14b, 0x75
mov byte [rbp - 0x57], r15b
xor sil, 0x76
mov byte [rbp - 0x56], r14b
xor dil, 0x77
mov byte [rbp - 0x55], sil
lea rcx, [rbp - 0x59]
mov byte [rbp - 0x54], dil
mov byte [rbp - 0x4f], al
call fcn.7ff715088a60
cmp qword [rbp + 0x7f], rbx
je 0x7ff71508869d
movzx eax, byte [rbp + 0x67]
mov edx, 1
mov cl, 0x41
mov byte [rbp - 0x39], al
call fcn.7ff71505ecc0
mov edx, 2
mov byte [rbp - 0x38], al
mov cl, 0x43
call fcn.7ff71505ecc0
mov edx, 3
mov byte [rbp - 0x37], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 4
mov byte [rbp - 0x36], al
mov cl, 0x43
call fcn.7ff71505ecc0
mov edx, 5
mov byte [rbp - 0x35], al
mov cl, 0x75
call fcn.7ff71505ecc0
mov edx, 6
mov byte [rbp - 0x34], al
mov cl, 0x72
call fcn.7ff71505ecc0
mov edx, 7
mov byte [rbp - 0x33], al
call fcn.7ff71505ecc0
mov edx, 8
mov byte [rbp - 0x32], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 9
mov byte [rbp - 0x31], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0xa
mov byte [rbp - 0x30], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0xb
mov byte [rbp - 0x2f], al
mov cl, 0x6c
call fcn.7ff71505ecc0
mov edx, 0xc
mov byte [rbp - 0x2e], al
mov cl, 0x79
call fcn.7ff71505ecc0
mov edx, 0xd
mov byte [rbp - 0x2d], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 0xe
mov byte [rbp - 0x2c], al
mov cl, 0x52
call fcn.7ff71505ecc0
mov edx, 0xf
mov byte [rbp - 0x2b], al
mov cl, 0x75
call fcn.7ff71505ecc0
mov edx, 0x10
mov byte [rbp - 0x2a], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0x11
mov byte [rbp - 0x29], al
call fcn.7ff71505ecc0
mov edx, 0x12
mov byte [rbp - 0x28], al
mov cl, 0x69
call fcn.7ff71505ecc0
mov edx, 0x13
mov byte [rbp - 0x27], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0x14
mov byte [rbp - 0x26], al
mov cl, 0x67
call fcn.7ff71505ecc0
mov byte [rbp - 0x25], al
mov edx, 0x15
mov cl, 0x21
call fcn.7ff71505ecc0
mov edx, 0x16
mov byte [rbp - 0x24], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 0x17
mov byte [rbp - 0x23], al
mov cl, 0x52
call fcn.7ff71505ecc0
mov edx, 0x18
mov byte [rbp - 0x22], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 0x19
mov byte [rbp - 0x21], al
mov cl, 0x73
call fcn.7ff71505ecc0
mov edx, 0x1a
mov byte [rbp - 0x20], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0x1b
mov byte [rbp - 0x1f], al
mov cl, 0x61
call fcn.7ff71505ecc0
mov edx, 0x1c
mov byte [rbp - 0x1e], al
mov cl, 0x72
call fcn.7ff71505ecc0
mov edx, 0x1d
mov byte [rbp - 0x1d], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0x1e
mov byte [rbp - 0x1c], al
mov cl, 0x21
call fcn.7ff71505ecc0
mov r10d, dword [rbp - 0x49]
mov byte [rbp - 0x1b], al
xor eax, eax
mov byte [rbp - 0x1a], al
nop
movsxd r9, ebx
lea eax, [rbx + 7]
lea ecx, [rbx + 6]
movd xmm1, ebx
pshufd xmm1, xmm1, 0
lea edx, [rbx + 5]
paddd xmm1, xmm7
movd xmm2, ecx
andps xmm1, xmm6
movd xmm0, r10d
packuswb xmm1, xmm1
lea r8d, [rbx + 4]
packuswb xmm1, xmm1
lea ecx, [rbx + 0xa]
paddb xmm1, xmm0
movd xmm3, r8d
movd xmm0, dword [rbp + r9 - 0x39]
lea r8d, [rbx + 8]
xorps xmm1, xmm0
movd xmm0, edx
punpckldq xmm3, xmm0
lea edx, [rbx + 9]
movd dword [rbp + r9 - 0x39], xmm1
movd xmm1, eax
lea eax, [rbx + 0xb]
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
movd xmm1, eax
packuswb xmm3, xmm3
lea eax, [rbx + 0xf]
packuswb xmm3, xmm3
movd xmm0, r10d
paddb xmm3, xmm0
movd xmm2, ecx
movd xmm0, dword [rbp + r9 - 0x35]
lea ecx, [rbx + 0xe]
xorps xmm3, xmm0
punpckldq xmm2, xmm1
movd dword [rbp + r9 - 0x35], xmm3
movd xmm0, edx
lea edx, [rbx + 0xd]
movd xmm3, r8d
lea r8d, [rbx + 0xc]
punpckldq xmm3, xmm0
add ebx, 0x10
punpcklqdq xmm3, xmm2
movd xmm0, r10d
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm1, eax
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x31]
movd xmm2, ecx
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x31], xmm3
movd xmm0, edx
movd xmm3, r8d
punpckldq xmm3, xmm0
movd xmm0, r10d
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x2d]
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x2d], xmm3
cmp ebx, 0x10
jb 0x7ff715088530
cmp ebx, 0x1f
jae 0x7ff715088686
nop dword [rax]
nop word [rax + rax]
movsxd rax, ebx
lea rcx, [rbp - 0x39]
add rcx, rax
lea eax, [rbx + 0x72]
inc ebx
xor byte [rcx], al
cmp ebx, 0x1f
jb 0x7ff715088670
lea rcx, [rbp - 0x39]
mov byte [rbp - 0x1a], 0
call fcn.7ff71505dff0
mov eax, 1
jmp 0x7ff715088a33
test rax, rax
je 0x7ff715088a33
movzx eax, byte [rbp + 0x6f]
mov edx, 2
mov byte [rbp - 0x39], al
mov cl, 0x74
movzx eax, byte [rbp + 0x77]
mov byte [rbp - 0x38], al
call fcn.7ff71505ecc0
mov edx, 3
mov byte [rbp - 0x37], al
call fcn.7ff71505ecc0
mov edx, 4
mov byte [rbp - 0x36], al
mov cl, 0x6c
call fcn.7ff71505ecc0
mov edx, 5
mov byte [rbp - 0x35], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 6
mov byte [rbp - 0x34], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 7
mov byte [rbp - 0x33], al
mov cl, 0x45
call fcn.7ff71505ecc0
mov edx, 8
mov byte [rbp - 0x32], al
mov cl, 0x79
call fcn.7ff71505ecc0
mov edx, 9
mov byte [rbp - 0x31], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 0xa
mov byte [rbp - 0x30], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 0xb
mov byte [rbp - 0x2f], al
mov cl, 0x43
call fcn.7ff71505ecc0
mov edx, 0xc
mov byte [rbp - 0x2e], al
mov cl, 0x75
call fcn.7ff71505ecc0
mov edx, 0xd
mov byte [rbp - 0x2d], al
mov cl, 0x72
call fcn.7ff71505ecc0
mov edx, 0xe
mov byte [rbp - 0x2c], al
call fcn.7ff71505ecc0
mov edx, 0xf
mov byte [rbp - 0x2b], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 0x10
mov byte [rbp - 0x2a], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0x11
mov byte [rbp - 0x29], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0x12
mov byte [rbp - 0x28], al
mov cl, 0x6c
call fcn.7ff71505ecc0
mov edx, 0x13
mov byte [rbp - 0x27], al
mov cl, 0x79
call fcn.7ff71505ecc0
mov edx, 0x14
mov byte [rbp - 0x26], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 0x15
mov byte [rbp - 0x25], al
mov cl, 0x52
call fcn.7ff71505ecc0
mov edx, 0x16
mov byte [rbp - 0x24], al
mov cl, 0x75
call fcn.7ff71505ecc0
mov edx, 0x17
mov byte [rbp - 0x23], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0x18
mov byte [rbp - 0x22], al
call fcn.7ff71505ecc0
mov edx, 0x19
mov byte [rbp - 0x21], al
mov cl, 0x69
call fcn.7ff71505ecc0
mov edx, 0x1a
mov byte [rbp - 0x20], al
mov cl, 0x6e
call fcn.7ff71505ecc0
mov edx, 0x1b
mov byte [rbp - 0x1f], al
mov cl, 0x67
call fcn.7ff71505ecc0
mov edx, 0x1c
mov byte [rbp - 0x1e], al
mov cl, 0x21
call fcn.7ff71505ecc0
mov edx, 0x1d
mov byte [rbp - 0x1d], al
mov cl, 0x20
call fcn.7ff71505ecc0
mov edx, 0x1e
mov byte [rbp - 0x1c], al
mov cl, 0x52
call fcn.7ff71505ecc0
mov edx, 0x1f
mov byte [rbp - 0x1b], al
mov cl, 0x65
call fcn.7ff71505ecc0
mov edx, 0x20
mov byte [rbp - 0x1a], al
mov cl, 0x73
call fcn.7ff71505ecc0
mov edx, 0x21
mov byte [rbp - 0x19], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0x22
mov byte [rbp - 0x18], al
mov cl, 0x61
call fcn.7ff71505ecc0
mov edx, 0x23
mov byte [rbp - 0x17], al
mov cl, 0x72
call fcn.7ff71505ecc0
mov edx, 0x24
mov byte [rbp - 0x16], al
mov cl, 0x74
call fcn.7ff71505ecc0
mov edx, 0x25
mov byte [rbp - 0x15], al
mov cl, 0x21
call fcn.7ff71505ecc0
mov r10d, dword [rbp - 0x49]
mov byte [rbp - 0x14], al
xor eax, eax
mov byte [rbp - 0x13], al
movsxd r9, ebx
lea eax, [rbx + 7]
lea ecx, [rbx + 6]
movd xmm1, ebx
pshufd xmm1, xmm1, 0
lea edx, [rbx + 5]
paddd xmm1, xmm7
movd xmm2, ecx
andps xmm1, xmm6
movd xmm0, r10d
packuswb xmm1, xmm1
lea r8d, [rbx + 4]
packuswb xmm1, xmm1
lea ecx, [rbx + 0xa]
paddb xmm1, xmm0
movd xmm3, r8d
movd xmm0, dword [rbp + r9 - 0x39]
lea r8d, [rbx + 8]
xorps xmm1, xmm0
movd xmm0, edx
punpckldq xmm3, xmm0
lea edx, [rbx + 9]
movd dword [rbp + r9 - 0x39], xmm1
movd xmm1, eax
lea eax, [rbx + 0xb]
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
movd xmm1, eax
packuswb xmm3, xmm3
lea eax, [rbx + 0xf]
packuswb xmm3, xmm3
movd xmm0, r10d
paddb xmm3, xmm0
movd xmm2, ecx
movd xmm0, dword [rbp + r9 - 0x35]
lea ecx, [rbx + 0xe]
xorps xmm3, xmm0
punpckldq xmm2, xmm1
movd dword [rbp + r9 - 0x35], xmm3
movd xmm0, edx
lea edx, [rbx + 0xd]
movd xmm3, r8d
lea r8d, [rbx + 0xc]
punpckldq xmm3, xmm0
add ebx, 0x10
punpcklqdq xmm3, xmm2
movd xmm0, r10d
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm1, eax
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x31]
movd xmm2, ecx
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x31], xmm3
movd xmm0, edx
movd xmm3, r8d
punpckldq xmm3, xmm0
movd xmm0, r10d
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm6
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 0x2d]
xorps xmm3, xmm0
movd dword [rbp + r9 - 0x2d], xmm3
cmp ebx, 0x20
jb 0x7ff7150888d3
cmp ebx, 0x26
jae 0x7ff715088a21
nop word [rax + rax]
movsxd rax, ebx
lea ecx, [rbx + 0x72]
inc ebx
xor byte [rbp + rax - 0x39], cl
cmp ebx, 0x26
jb 0x7ff715088a10
lea rcx, [rbp - 0x39]
mov byte [rbp - 0x13], 0
call fcn.7ff71505dff0
mov eax, 1
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x70]
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret