Function at 0x140034e10
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, 0x80
mov rbx, rdx
mov r15, rcx
mov edx, r8d
lea rcx, [rbp - 0x28]
call fcn.140085610
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.1400870f0
test al, al
je 0x140035177
xor r14b, r14b
lea rdx, [rbp - 0x48]
mov r8d, 0x424eccd8
add r8d, 0x20030aa8
sub r8d, 0x22d8dcc7
xor r8d, 0x3f78fa99
mov byte [rbp - 0x60], r14b
lea rcx, [rbp - 0x28]
call fcn.140088570
test al, al
je 0x140035177
xor ebx, ebx
cmp dword [rbp - 0x48], 0x32484346
jne 0x140034f5f
cmp dword [rbp - 0x44], 0x20
jne 0x140034f5f
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
cmp ecx, 0x40
jne 0x140034ec4
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x80
jne 0x140034ed8
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x100
jne 0x140034eec
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x200
jne 0x140034f00
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x400
jne 0x140034f14
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x800
jne 0x140034f28
cmp eax, ecx
je 0x140034f3c
cmp ecx, 0x1000
jne 0x140035177
cmp eax, ecx
jne 0x140035177
mov edx, dword [rbp - 0x34]
test edx, edx
jle 0x140035177
mov r8d, dword [rbp - 0x38]
mov r14b, 0x24
add r14b, 0x21
sub r14b, 0x44
mov byte [rbp - 0x60], r14b
jmp 0x140035035
xor edx, edx
lea rcx, [rbp - 0x28]
call fcn.140088800
mov r8d, 0x26cba540
add r8d, 0x56eef7
xor r8d, 0x27229427
mov qword [rbp - 0x58], rbx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.140088570
test al, al
je 0x140035177
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
cmp ecx, 0x40
jne 0x140034fae
cmp eax, ecx
je 0x140035026
cmp ecx, 0x80
jne 0x140034fc2
cmp eax, ecx
je 0x140035026
cmp ecx, 0x100
jne 0x140034fd6
cmp eax, ecx
je 0x140035026
cmp ecx, 0x200
jne 0x140034fea
cmp eax, ecx
je 0x140035026
cmp ecx, 0x400
jne 0x140034ffe
cmp eax, ecx
je 0x140035026
cmp ecx, 0x800
jne 0x140035012
cmp eax, ecx
je 0x140035026
cmp ecx, 0x1000
jne 0x140035177
cmp eax, ecx
jne 0x140035177
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x140035177
mov r8d, dword [rbp - 0x50]
xor eax, 0x7c556718
xor ecx, 0x7c556718
xor r8d, 0x7c556718
xor edx, 0x7c556718
mov r9d, 0x46b0451f
xor r9d, 0x67e2b92a
add r9d, 0x2ae118d4
sub r9d, 0x4c341221
mov esi, 0x186f6bf6
xor esi, 0x5e657564
sub esi, 0x132fe9df
sub esi, 0x32d934b4
add r9, r15
mov r10, r15
mov qword [rbp - 0x58], r9
mov dword [r9], ecx
mov dword [r9 + 4], eax
mov eax, 0x32507dde
add eax, 0x2e466dde
sub eax, 0x6096eabd
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 0x14003510f
mov edx, 0x644d2267
xor edx, 0x4d1ce10d
sub edx, 0x2951c35a
mov rcx, r12
call fcn.1400990e0
mov rcx, rax
mov edx, esi
movaps xmm0, xmmword [0x1404a4550]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, 1
jne 0x1400350f0
mov qword [r15 + 0x300], rax
mov edx, 0x498f55fa
sub edx, 0x475a7c75
xor edx, 0x78421ceb
xor edx, 0x7a76c57e
mov rcx, r12
call fcn.1400990e0
mov rdi, rax
test rax, rax
je 0x140035177
test r14b, r14b
je 0x1400352e0
movsxd rcx, dword [rbp - 0x30]
call fcn.140099070
mov r8d, dword [rbp - 0x30]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov r14, rax
call fcn.140088570
test al, al
jne 0x1400351a6
mov rcx, rdi
call fcn.140099090
mov rcx, r14
call fcn.140099080
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.1400856c0
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 r8d, dword [rbp - 0x30]
mov eax, 0x4385fce3
sub eax, 0x1ecb021
xor eax, 0x119e7b2
sub eax, 0x40809b80
mov r9d, 0x592e6bd0
sub r9d, 0x2817ec4d
xor r9d, 0x59d75860
sub r9d, 0x68b127f3
test r13d, r13d
mov rdx, rdi
mov rcx, r14
cmovne r9d, eax
call fcn.1400815c0
movsxd rcx, eax
cmp rcx, r12
jne 0x140035167
mov rcx, r14
call fcn.140099080
nop dword [rax]
movups xmm0, xmmword [rdi + rbx]
lea rbx, [rbx + 0x10]
mov rax, qword [r15 + 0x300]
xorps xmm0, xmmword [0x1404a4550]
movups xmmword [rbx + rax - 0x10], xmm0
sub rsi, 1
jne 0x140035206
mov rcx, rdi
call fcn.140099090
mov rax, qword [rbp - 0x58]
nop
movabs rcx, 0xffffffff6c41dc1f
sub rcx, 0x3079d0be
sub rcx, 0x87e5fa9
add rcx, 0x7fffffff
add rcx, 0x4cb65448
mov esi, dword [r15 + 0x2ec]
xor esi, 0x7c556718
mov eax, dword [rax]
xor eax, 0x7c556718
imul esi, eax
mov eax, 0x1eed1bef
add eax, 0x1803ac9c
sub eax, 0x36f0c887
movsxd r14, esi
mul r14
cmovo rax, rcx
mov rcx, rax
call fcn.140099070
mov rbx, rax
test rax, rax
je 0x140035177
cmp byte [rbp - 0x60], 0
je 0x140035376
movsxd rcx, dword [rbp - 0x2c]
call fcn.140099070
mov r8d, dword [rbp - 0x2c]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov rdi, rax
call fcn.140088570
mov rcx, rdi
test al, al
jne 0x140035332
call fcn.140099080
mov rcx, rbx
jmp 0x140035172
mov eax, 0x30bbe50a
add eax, 0x28b13bfb
xor eax, 0x596d2ef5
lea rcx, [rbp - 0x28]
mov r8d, 0x3de4f2f5
add r8d, 0x3220191c
sub r8d, 0xf1797ef
sub r8d, 0x60dd7432
test r13d, r13d
mov rdx, rdi
cmovne r8d, eax
call fcn.140088570
test al, al
jne 0x140035206
mov rcx, rdi
call fcn.140099090
jmp 0x140035177
mov r8d, dword [rbp - 0x2c]
lea r9d, [rsi*4]
mov rdx, rbx
call fcn.1400815c0
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
mov rcx, rdi
jne 0x1400352d3
call fcn.140099080
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x5c
sub bl, 0x26
sub bl, 0x35
jmp 0x140035179
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140088570
test al, al
je 0x1400352d8
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 4
xor bl, 0x63
sub bl, 0x22
xor bl, 0x44
jmp 0x140035179