Function at 0x140036ca0
Capabilities:
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
mov rbp, rsp
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
mov rbx, rdx
mov rsi, rcx
mov edx, r8d
lea rcx, [rbp - 0x20]
mov r13, r9
call fcn.140083d50
mov r8d, 0xf5047d7
add r8d, 0x1a57584c
xor r8d, 0x29a7a021
lea rcx, [rbp - 0x20]
mov rdx, rbx
call fcn.140084530
test al, al
je 0x140036e91
mov eax, dword [rsi + 0x2e8]
lea rdx, [rbp - 0x40]
xor eax, 0x6d2e7543
mov dword [rbp - 0x40], 0x6cc63811
sub dword [rbp - 0x40], 0x584259d5
add dword [rbp - 0x40], 0x447f272f
sub dword [rbp - 0x40], 0x26bac225
mov dword [rbp - 0x38], eax
lea rcx, [rbp - 0x20]
mov eax, dword [rsi + 0x2ec]
xor ebx, ebx
xor eax, 0x6d2e7543
mov dword [rbp - 0x3c], 0x32220bd5
add dword [rbp - 0x3c], 0x1175dafb
add dword [rbp - 0x3c], 0x1b13be53
xor dword [rbp - 0x3c], 0x5eaba503
mov dword [rbp - 0x34], eax
mov eax, dword [rsi + 0x2f4]
xor eax, 0x6d2e7543
mov qword [rbp - 0x28], rbx
mov dword [rbp - 0x30], eax
lea r8d, [rbx + 0x20]
mov eax, dword [rsi + 0x30c]
xor eax, 0x6d2e7543
mov dword [rbp - 0x2c], eax
call fcn.140086ee0
test al, al
je 0x140036e91
mov r12d, dword [rsi + 0x2d8]
lea edx, [rbx + 0x10]
mov eax, 0x5a8e3881
sub eax, 0x340acc03
xor eax, 0x2ac2f558
sub eax, 0xc419827
and r12d, 0x2000
pushf
mov edi, 0x783b16e9
sub edi, 0x551fe0c0
add edi, 0x2242aa9e
xor edi, 0x455d1f38
popf
cmovne edi, eax
mov r15d, edi
shl r15, 4
mov rcx, r15
call fcn.1400960c0
mov r14, rax
test rax, rax
je 0x140036e91
mov r8, qword [rsi + 0x300]
mov rdx, rax
movaps xmm1, xmmword [0x1404a0540]
sub r8, rax
movups xmm0, xmmword [r8 + rdx]
lea rdx, [rdx + 0x10]
xorps xmm0, xmm1
inc rbx
movups xmmword [rdx - 0x10], xmm0
cmp rbx, rdi
jl 0x140036e03
mov rcx, r15
call fcn.140096050
mov rbx, rax
mov r8d, 0x2c0136e6
add r8d, 0x2f57f27
xor r8d, 0x2ef949fd
mov eax, 0x72ac9428
xor eax, 0x3624fab2
xor eax, 0x7f9fd7e9
sub eax, 0x3b17a983
test r12d, r12d
mov rdx, rbx
mov rcx, r14
cmovne r8d, eax
mov r9d, r8d
call fcn.14007d4c0
mov r8d, eax
mov dword [rbp - 0x28], eax
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.140086ee0
mov rcx, r14
test al, al
jne 0x140036ebd
call fcn.140096070
mov rcx, rbx
call fcn.140096060
xor bl, bl
lea rcx, [rbp - 0x20]
call fcn.140083dc0
lea r11, [rsp + 0x60]
movzx eax, bl
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140096070
mov rcx, rbx
call fcn.140096060
mov eax, dword [rbp - 0x34]
imul eax, dword [rbp - 0x38]
movsxd rcx, eax
shl rcx, 2
call fcn.140096050
mov r8d, dword [rbp - 0x34]
mov rdx, rax
imul r8d, dword [rbp - 0x38]
mov rcx, r13
mov rbx, rax
shl r8d, 2
mov r9d, r8d
call fcn.14007d4c0
mov r8d, eax
mov dword [rbp - 0x24], eax
mov rdx, rbx
lea rcx, [rbp - 0x20]
call fcn.140086ee0
mov rcx, rbx
test al, al
je 0x140036e8c
call fcn.140096060
lea rcx, [rbp - 0x20]
call fcn.140087190
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.140086ed0
test al, al
je 0x140036e91
mov r8d, 0x2ea10238
add r8d, 0x48765c2a
xor r8d, 0x77175e42
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.140086ee0
test al, al
je 0x140036e91
mov bl, 0x2a
xor bl, 0x76
sub bl, 0x4f
sub bl, 0xc
jmp 0x140036e93