Function at 0x140002a60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov dword [rcx + 0x3cc], 0x10
mov rbx, rcx
mov dword [rcx + 0x3d0], 0x10
movups xmm0, xmmword [str.tx_K__dC_KTKv__]
movups xmmword [rcx + 0x3d8], xmm0
movups xmm1, xmmword [str.tx_K__dC_KTKv__]
movups xmmword [rcx + 0x3f8], xmm1
mov eax, dword [rcx + 0x3cc]
mov ecx, dword [rcx + 0x3d0]
cmp eax, 0x10
je 0x140002ad7
cmp eax, 0x18
mov eax, 0xe
jne 0x140002af1
cmp ecx, 0x20
mov edx, 0xc
cmovne eax, edx
jmp 0x140002af1
cmp ecx, 0x10
jne 0x140002ae1
lea eax, [rcx - 6]
jmp 0x140002af1
cmp ecx, 0x18
mov eax, 0xe
mov edx, 0xc
cmove eax, edx
mov dword [rbx + 0x3d4], eax
xor esi, esi
mov eax, ecx
mov ecx, dword [rbx + 0x3d4]
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd r14, eax
test ecx, ecx
js 0x140002b3b
lea rdi, [rbx + 0xc]
test r14d, r14d
jle 0x140002b2b
mov r8, r14
xor edx, edx
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [rbx + 0x3d4]
inc esi
add rdi, 0x20
cmp esi, ecx
jle 0x140002b15
xor edi, edi
test ecx, ecx
js 0x140002b6e
lea rsi, [rbx + 0x1ec]
test r14d, r14d
jle 0x140002b5e
mov r8, r14
xor edx, edx
shl r8, 2
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [rbx + 0x3d4]
inc edi
add rsi, 0x20
cmp edi, ecx
jle 0x140002b48
mov eax, dword [rbx + 0x3cc]
lea esi, [rcx + 1]
cdq
imul esi, r14d
and edx, 3
lea r8, [rbx + 0x418]
add eax, edx
lea rdx, str.S:__5__A9YCI7sL
sar eax, 2
movsxd r12, eax
test eax, eax
jle 0x140002bdc
mov r9d, r12d
nop dword [rax]
movzx ecx, byte [rdx]
lea r8, [r8 + 4]
shl ecx, 0x18
lea rdx, [rdx + 4]
mov dword [r8 - 4], ecx
movzx eax, byte [rdx - 3]
shl eax, 0x10
or eax, ecx
mov dword [r8 - 4], eax
movzx ecx, byte [rdx - 2]
shl ecx, 8
or ecx, eax
mov dword [r8 - 4], ecx
movzx eax, byte [rdx - 1]
or eax, ecx
mov dword [r8 - 4], eax
sub r9, 1
jne 0x140002ba0
xor r10d, r10d
lea r13, [0x140000000]
test r12d, r12d
jle 0x140002c3e
xor r11d, r11d
lea r9, [rbx + 0x418]
cmp r10d, esi
jge 0x140002d6c
mov eax, r10d
inc r11
cdq
inc r10d
idiv r14d
movsxd rcx, eax
movsxd r8, edx
lea rdx, [r8 + rcx*8]
mov ecx, dword [r9]
mov dword [rbx + rdx*4 + 0xc], ecx
mov ecx, dword [rbx + 0x3d4]
sub ecx, eax
movsxd rax, ecx
lea rcx, [r8 + rax*8]
mov eax, dword [r9]
add r9, 4
mov dword [rbx + rcx*4 + 0x1ec], eax
cmp r11, r12
jl 0x140002bf5
cmp r10d, esi
jge 0x140002d6c
lea r13, [0x140007170]
lea r11, [0x140000000]
nop word [rax + rax]
mov r8d, dword [rbx + r12*4 + 0x414]
lea r13, [r13 + 1]
movsxd rdx, r8d
mov rax, rdx
sar rax, 0x10
movzx ecx, al
movsx eax, byte [r13 - 1]
movsx r9d, byte [rcx + r11 + 0x5c10]
xor r9d, eax
mov rax, rdx
sar rax, 8
movzx ecx, al
shl r9d, 8
movzx eax, byte [rcx + r11 + 0x5c10]
xor r9d, eax
movzx eax, dl
shl r9d, 8
movzx eax, byte [rax + r11 + 0x5c10]
xor r9d, eax
mov eax, r8d
shr rax, 0x18
shl r9d, 8
movzx eax, byte [rax + r11 + 0x5c10]
xor r9d, eax
xor dword [rbx + 0x418], r9d
cmp r12d, 8
je 0x140002df9
cmp r12, 1
jle 0x140002d00
lea rcx, [rbx + 0x41c]
lea rdx, [r12 - 1]
mov eax, dword [rcx - 4]
xor dword [rcx], eax
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x140002cf1
test r12d, r12d
jle 0x140002d5c
lea r9, [rbx + 0x418]
xor r11d, r11d
nop
cmp r10d, esi
jge 0x140002d65
mov eax, r10d
inc r11
cdq
inc r10d
idiv r14d
movsxd rcx, eax
movsxd r8, edx
lea rdx, [r8 + rcx*8]
mov ecx, dword [r9]
mov dword [rbx + rdx*4 + 0xc], ecx
mov ecx, dword [rbx + 0x3d4]
sub ecx, eax
movsxd rax, ecx
lea rcx, [r8 + rax*8]
mov eax, dword [r9]
add r9, 4
mov dword [rbx + rcx*4 + 0x1ec], eax
cmp r11, r12
jl 0x140002d10
lea r11, [0x140000000]
cmp r10d, esi
jl 0x140002c60
lea r13, [0x140000000]
mov edi, 1
cmp dword [rbx + 0x3d4], edi
jle 0x140002eb4
lea rsi, [rbx + 0x20c]
test r14d, r14d
jle 0x140002de2
mov r10, rsi
mov r11, r14
nop
mov eax, dword [r10]
lea r10, [r10 + 4]
mov edx, eax
movsxd r9, eax
shr rdx, 0x18
mov rax, r9
sar rax, 0x10
movzx ecx, al
mov rax, r9
sar rax, 8
mov r8d, dword [r13 + rdx*4 + 0x7590]
xor r8d, dword [r13 + rcx*4 + 0x5d10]
movzx ecx, al
movzx eax, r9b
xor r8d, dword [r13 + rcx*4 + 0x6510]
xor r8d, dword [r13 + rax*4 + 0x7190]
mov dword [r10 - 4], r8d
sub r11, 1
jne 0x140002d90
inc edi
add rsi, 0x20
cmp edi, dword [rbx + 0x3d4]
jl 0x140002d84
mov byte [rbx + 8], 1
jmp 0x140002eb8
lea rcx, [rbx + 0x41c]
mov edx, 3
nop word [rax + rax]
mov eax, dword [rcx - 4]
xor dword [rcx], eax
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x140002e10
mov eax, dword [rbx + 0x424]
mov ecx, eax
movsxd rdx, eax
shr rcx, 0x18
mov rax, rdx
sar rax, 0x10
movsx r8d, byte [rcx + r11 + 0x5c10]
movzx ecx, al
shl r8d, 8
movzx eax, byte [rcx + r11 + 0x5c10]
xor r8d, eax
mov rax, rdx
sar rax, 8
shl r8d, 8
movzx ecx, al
movzx eax, byte [rcx + r11 + 0x5c10]
xor r8d, eax
movzx eax, dl
shl r8d, 8
movzx eax, byte [rax + r11 + 0x5c10]
xor r8d, eax
xor dword [rbx + 0x428], r8d
cmp r12, 5
jle 0x140002d00
lea rax, [rbx + 0x42c]
lea rdx, [r12 - 5]
nop dword [rax + rax]
mov ecx, dword [rax - 4]
xor dword [rax], ecx
lea rax, [rax + 4]
sub rdx, 1
jne 0x140002ea0
jmp 0x140002d05
mov byte [rbx + 8], dil
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret