Function at 0x1400336a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r9
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x17836a41
add rsp, 0x178369c1
mov rbx, rdx
mov r15, rcx
mov edx, r8d
lea rcx, [rbp - 0x28]
call fcn.140085370
mov rdx, rbx
lea rcx, [rbp - 0x28]
call 0x140086fe0
test al, al
je 0x140033b83
xor r14b, r14b
lea rdx, [rbp - 0x48]
mov r8d, 0x49287532
xor r8d, 0x2e6eeccf
add r8d, 0xe6c341d
xor r8d, 0x75b2ce3a
mov byte [rbp - 0x60], r14b
lea rcx, [rbp - 0x28]
call fcn.140087fd0
test al, al
je 0x140033b83
xor ebx, ebx
cmp dword [rbp - 0x48], 0x32484346
jne 0x1400337f6
cmp dword [rbp - 0x44], 0x20
jne 0x1400337f6
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
cmp ecx, 0x40
jne 0x14003375b
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x80
jne 0x14003376f
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x100
jne 0x140033783
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x200
jne 0x140033797
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x400
jne 0x1400337ab
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x800
jne 0x1400337bf
cmp eax, ecx
je 0x1400337d3
cmp ecx, 0x1000
jne 0x140033b83
cmp eax, ecx
jne 0x140033b83
mov edx, dword [rbp - 0x34]
test edx, edx
jle 0x140033b83
mov r8d, dword [rbp - 0x38]
mov r14b, 0x1f
add r14b, 0x11
xor r14b, 0x31
mov byte [rbp - 0x60], r14b
jmp 0x1400338cc
xor edx, edx
lea rcx, [rbp - 0x28]
call fcn.140088250
mov r8d, 0xc897ab9
xor r8d, 0x696c39ba
sub r8d, 0x65e542f3
mov qword [rbp - 0x58], rbx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.140087fd0
test al, al
je 0x140033b83
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
cmp ecx, 0x40
jne 0x140033845
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x80
jne 0x140033859
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x100
jne 0x14003386d
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x200
jne 0x140033881
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x400
jne 0x140033895
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x800
jne 0x1400338a9
cmp eax, ecx
je 0x1400338bd
cmp ecx, 0x1000
jne 0x140033b83
cmp eax, ecx
jne 0x140033b83
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x140033b83
mov r8d, dword [rbp - 0x50]
xor eax, 0x39877b80
xor ecx, 0x39877b80
xor r8d, 0x39877b80
xor edx, 0x39877b80
mov r9d, 0xceeed00
xor r9d, 0x22a96736
add r9d, 0x1f9f3b8c
sub r9d, 0x4de6c2da
mov esi, 0x7c423e2c
sub esi, 0x4fb4469e
xor esi, 0x55576803
sub esi, 0x79d99f8e
add r9, r15
mov r10, r15
mov qword [rbp - 0x58], r9
mov dword [r9], ecx
mov dword [r9 + 4], eax
mov eax, 0x1f30af58
add eax, 0x6058968a
xor eax, 0x4419f903
sub eax, 0x3b90bbe2
mov dword [r15 + 0x2f4], r8d
mov dword [r15 + 0x30c], edx
mov r13d, dword [r15 + 0x2d8]
and r13d, 0x2000
cmovne esi, eax
mov r12d, esi
shl r12, 4
cmp qword [r15 + 0x300], rbx
jne 0x1400339ba
mov edx, 0x68230b1e
sub edx, 0xb83e461
add edx, 0x13c11a8e
sub edx, 0x7060413b
mov rcx, r12
call fcn.1400995b0
mov rcx, rax
mov edx, esi
movaps xmm0, xmmword [0x1404a9590]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, 1
jne 0x140033992
mov qword [r15 + 0x300], rax
test rax, rax
je 0x140033b83
mov edx, 0x353081bf
sub edx, 0x23a75ff4
xor edx, 0x118921db
mov rcx, r12
call fcn.1400995b0
mov rdi, rax
test rax, rax
je 0x140033b83
test r14b, r14b
je 0x140033bb2
movsxd rcx, dword [rbp - 0x30]
call fcn.140099540
mov r8d, dword [rbp - 0x30]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov r14, rax
call fcn.140087fd0
test al, al
je 0x140033b73
mov r8d, dword [rbp - 0x30]
mov eax, 0x63b5a821
xor eax, 0x11036575
xor eax, 0x748565b2
sub eax, 0x63398f6
mov r9d, 0x53e66ada
add r9d, 0x21475a17
sub r9d, 0x63763082
xor r9d, 0x11b86b9f
test r13d, r13d
mov rdx, rdi
mov rcx, r14
cmovne r9d, eax
call fcn.1400812e0
movsxd rcx, eax
cmp rcx, r12
jne 0x140033b73
mov rcx, r14
call fcn.140099550
nop
movups xmm0, xmmword [rdi + rbx]
lea rbx, [rbx + 0x10]
mov rax, qword [r15 + 0x300]
xorps xmm0, xmmword [0x1404a9590]
movups xmmword [rbx + rax - 0x10], xmm0
sub rsi, 1
jne 0x140033a66
mov rcx, rdi
call fcn.140099560
mov rax, qword [rbp - 0x58]
nop
movabs rcx, 0xffffffff2196364b
xor rcx, 0x17bfcd5a
add rcx, 0x7fffffff
xor rcx, 0x49d604ef
mov esi, dword [r15 + 0x2ec]
xor esi, 0x39877b80
mov eax, dword [rax]
xor eax, 0x39877b80
imul esi, eax
mov eax, 0x2f22890f
xor eax, 0x754c8183
sub eax, 0x5a6e0888
movsxd r14, esi
mul r14
cmovb rax, rcx
mov rcx, rax
call fcn.140099540
mov rbx, rax
test rax, rax
je 0x140033b83
cmp byte [rbp - 0x60], 0
je 0x140033c0d
movsxd rcx, dword [rbp - 0x2c]
call fcn.140099540
mov r8d, dword [rbp - 0x2c]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov rdi, rax
call fcn.140087fd0
test al, al
je 0x140033bfd
mov r8d, dword [rbp - 0x2c]
lea r9d, [rsi*4]
mov rdx, rbx
mov rcx, rdi
call fcn.1400812e0
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
jne 0x140033bfd
mov rcx, rdi
call fcn.140099550
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x49
add bl, 0x1b
xor bl, 0x25
sub bl, 0x40
jmp 0x140033b85
mov rcx, rdi
call fcn.140099560
mov rcx, r14
call fcn.140099550
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.140085420
lea r11, [rsp + 0x80]
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
mov eax, 0x62950b5f
xor eax, 0x216622fc
sub eax, 0x43f319b3
lea rcx, [rbp - 0x28]
mov r8d, 0x3aadf59e
xor r8d, 0x5e3e4a74
xor r8d, 0x649c401a
test r13d, r13d
mov rdx, rdi
cmovne r8d, eax
call fcn.140087fd0
test al, al
jne 0x140033a66
mov rcx, rdi
call fcn.140099560
jmp 0x140033b83
mov rcx, rdi
call fcn.140099550
mov rcx, rbx
jmp 0x140033b7e
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140087fd0
test al, al
je 0x140033c05
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x11
xor bl, 0xb
sub bl, 0x19
jmp 0x140033b85