Function at 0x14003b1d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov eax, dword [rcx + 4]
mov r14d, dword [rcx + 0x10]
mov r13d, dword [rcx]
mov r12d, dword [rcx + 0x30]
mov r15d, dword [rcx + 0x20]
mov ebp, dword [rcx + 0x14]
mov ebx, dword [rcx + 0x34]
mov esi, dword [rcx + 0x18]
mov edi, dword [rcx + 0x38]
mov r11d, dword [rcx + 0x1c]
mov dword [rsp + 0x88], eax
mov eax, dword [rcx + 0x24]
mov dword [rsp + 4], eax
mov eax, dword [rcx + 8]
mov dword [rsp + 0x90], eax
mov eax, dword [rcx + 0x28]
mov dword [rsp + 0x98], eax
mov eax, dword [rcx + 0xc]
mov dword [rsp + 8], eax
mov eax, dword [rcx + 0x3c]
mov dword [rsp], eax
mov eax, dword [rcx + 0x2c]
mov ecx, dword [rsp]
mov dword [rsp + 0xc], eax
mov qword [rsp + 0x20], 0xa
nop dword [rax]
lea r9d, [r14 + r13]
mov eax, r9d
xor eax, r12d
mov edx, eax
shl eax, 0x10
shr edx, 0x10
or edx, eax
lea r10d, [rdx + r15]
mov eax, r10d
xor eax, r14d
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea r13d, [r9 + r8]
mov r9d, dword [rsp + 4]
mov eax, r13d
xor eax, edx
mov edx, eax
shl eax, 8
shr edx, 0x18
or edx, eax
mov dword [rsp], edx
lea eax, [r10 + rdx]
mov dword [rsp + 0x10], eax
xor eax, r8d
mov edx, eax
shl eax, 7
shr edx, 0x19
or edx, eax
mov eax, dword [rsp + 0x88]
add eax, ebp
mov dword [rsp + 0x14], edx
xor ebx, eax
mov edx, ebx
shl ebx, 0x10
shr edx, 0x10
or edx, ebx
add r9d, edx
xor ebp, r9d
mov r8d, ebp
shl ebp, 0xc
shr r8d, 0x14
or r8d, ebp
lea r12d, [rax + r8]
mov eax, r12d
xor eax, edx
mov edx, eax
shl eax, 8
shr edx, 0x18
or edx, eax
mov dword [rsp + 4], edx
lea eax, [r9 + rdx]
mov r9d, dword [rsp + 0x98]
mov dword [rsp + 0x1c], eax
xor eax, r8d
mov ebp, eax
shl eax, 7
shr ebp, 0x19
or ebp, eax
mov eax, dword [rsp + 0x90]
add eax, esi
xor edi, eax
mov edx, edi
shl edi, 0x10
shr edx, 0x10
or edx, edi
add r9d, edx
xor esi, r9d
mov r8d, esi
shl esi, 0xc
shr r8d, 0x14
or r8d, esi
lea r15d, [rax + r8]
mov eax, r15d
xor eax, edx
mov edx, eax
shl eax, 8
shr edx, 0x18
or edx, eax
mov dword [rsp + 0x18], edx
mov r10d, dword [rsp + 0xc]
lea ebx, [r9 + rdx]
mov r9d, dword [rsp + 8]
mov eax, ebx
xor eax, r8d
add r9d, r11d
mov esi, eax
xor ecx, r9d
shl eax, 7
mov edx, ecx
shr edx, 0x10
shl ecx, 0x10
or edx, ecx
shr esi, 0x19
or esi, eax
add r10d, edx
mov eax, r10d
xor eax, r11d
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea r14d, [r9 + r8]
mov r9d, r13d
add r9d, ebp
mov eax, r14d
xor eax, edx
mov edx, eax
shl eax, 8
shr edx, 0x18
or edx, eax
lea r11d, [r10 + rdx]
mov eax, r11d
xor eax, r8d
mov edi, eax
shl eax, 7
shr edi, 0x19
or edi, eax
mov eax, r9d
xor eax, edx
mov edx, eax
shl eax, 0x10
shr edx, 0x10
or edx, eax
lea r10d, [rbx + rdx]
mov eax, r10d
xor eax, ebp
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea r13d, [r9 + r8]
mov eax, r13d
xor eax, edx
lea edx, [r12 + rsi]
mov ecx, eax
shl eax, 8
shr ecx, 0x18
or ecx, eax
lea eax, [r10 + rcx]
mov ebp, eax
mov dword [rsp + 0x98], eax
mov eax, dword [rsp]
xor ebp, r8d
xor eax, edx
ror ebp, 0x19
mov r10d, eax
shl eax, 0x10
shr r10d, 0x10
or r10d, eax
lea r9d, [r11 + r10]
mov eax, r9d
xor eax, esi
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r8 + rdx]
xor r10d, eax
mov dword [rsp + 0x88], eax
mov r12d, r10d
shl r10d, 8
lea edx, [r15 + rdi]
shr r12d, 0x18
or r12d, r10d
lea eax, [r9 + r12]
mov esi, eax
mov dword [rsp + 0xc], eax
mov eax, dword [rsp + 4]
xor esi, r8d
mov r8d, dword [rsp + 0x10]
xor eax, edx
mov r9d, eax
ror esi, 0x19
shl eax, 0x10
shr r9d, 0x10
or r9d, eax
add r8d, r9d
mov eax, r8d
xor eax, edi
mov r11d, eax
shl eax, 0xc
shr r11d, 0x14
or r11d, eax
lea eax, [r11 + rdx]
xor r9d, eax
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x18]
mov ebx, r9d
shl r9d, 8
shr ebx, 0x18
or ebx, r9d
mov r9d, dword [rsp + 0x1c]
lea r15d, [r8 + rbx]
mov r8d, dword [rsp + 0x14]
xor r11d, r15d
ror r11d, 0x19
lea edx, [r14 + r8]
xor eax, edx
mov r10d, eax
shl eax, 0x10
shr r10d, 0x10
or r10d, eax
add r9d, r10d
mov eax, r9d
xor eax, r8d
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r8 + rdx]
xor r10d, eax
mov dword [rsp + 8], eax
mov edi, r10d
shl r10d, 8
shr edi, 0x18
or edi, r10d
lea edx, [r9 + rdi]
mov r14d, edx
mov dword [rsp + 4], edx
xor r14d, r8d
ror r14d, 0x19
sub qword [rsp + 0x20], 1
jne 0x14003b250
mov eax, dword [rsp + 0x88]
mov r8d, dword [rsp + 0x98]
mov dword [rsp], ecx
mov rcx, qword [rsp + 0x80]
mov dword [rcx + 4], eax
mov eax, dword [rsp + 0x90]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 8]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp]
mov dword [rcx + 0x3c], eax
mov eax, dword [rsp + 0xc]
mov dword [rcx + 0x2c], eax
mov dword [rcx + 0x10], r14d
mov dword [rcx], r13d
mov dword [rcx + 0x30], r12d
mov dword [rcx + 0x20], r15d
mov dword [rcx + 0x14], ebp
mov dword [rcx + 0x34], ebx
mov dword [rcx + 0x24], edx
mov dword [rcx + 0x18], esi
mov dword [rcx + 0x38], edi
mov dword [rcx + 0x28], r8d
mov dword [rcx + 0x1c], r11d
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret