Function at 0x140034bf0
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.140084f30
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140086760
test al, al
je 0x140034f55
xor r14b, r14b
lea rdx, [rbp - 0x48]
mov r8d, 0x28f46daa
sub r8d, 0x1378aca0
xor r8d, 0x157bc12a
mov byte [rbp - 0x60], r14b
lea rcx, [rbp - 0x28]
call fcn.140087bd0
test al, al
je 0x140034f55
xor ebx, ebx
cmp dword [rbp - 0x48], 0x32484346
jne 0x140034d38
cmp dword [rbp - 0x44], 0x20
jne 0x140034d38
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
cmp ecx, 0x40
jne 0x140034c9d
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x80
jne 0x140034cb1
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x100
jne 0x140034cc5
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x200
jne 0x140034cd9
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x400
jne 0x140034ced
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x800
jne 0x140034d01
cmp eax, ecx
je 0x140034d15
cmp ecx, 0x1000
jne 0x140034f55
cmp eax, ecx
jne 0x140034f55
mov edx, dword [rbp - 0x34]
test edx, edx
jle 0x140034f55
mov r8d, dword [rbp - 0x38]
mov r14b, 0x54
sub r14b, 0x4f
sub r14b, 4
mov byte [rbp - 0x60], r14b
jmp 0x140034e0e
xor edx, edx
lea rcx, [rbp - 0x28]
call fcn.140087e70
mov r8d, 0x1eec510c
xor r8d, 0x4be20fd5
sub r8d, 0x550e5ec9
mov qword [rbp - 0x58], rbx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.140087bd0
test al, al
je 0x140034f55
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
cmp ecx, 0x40
jne 0x140034d87
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x80
jne 0x140034d9b
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x100
jne 0x140034daf
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x200
jne 0x140034dc3
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x400
jne 0x140034dd7
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x800
jne 0x140034deb
cmp eax, ecx
je 0x140034dff
cmp ecx, 0x1000
jne 0x140034f55
cmp eax, ecx
jne 0x140034f55
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x140034f55
mov r8d, dword [rbp - 0x50]
xor eax, 0x35cb7a53
xor ecx, 0x35cb7a53
xor r8d, 0x35cb7a53
xor edx, 0x35cb7a53
mov r9d, 0x100745f9
add r9d, 0x4a805417
sub r9d, 0x23924904
xor r9d, 0x36f553e4
mov esi, 0x6b1ea536
sub esi, 0x3054866d
sub esi, 0x3ac91eca
add r9, r15
mov r10, r15
mov qword [rbp - 0x58], r9
mov dword [r9], ecx
mov dword [r9 + 4], eax
mov eax, 0x296a744b
add eax, 0x8c75da0
sub eax, 0xb531b12
xor eax, 0x26deb626
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 0x140034eed
mov edx, 0x3a224310
add edx, 0x1a9352e0
sub edx, 0x1893a0f9
sub edx, 0x3c21f4e7
mov rcx, r12
call fcn.140098550
mov rcx, rax
mov edx, esi
movaps xmm0, xmmword [0x1404a3550]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, 1
jne 0x140034ece
mov qword [r15 + 0x300], rax
mov edx, 0x1243edc2
add edx, 0x4bf34ebb
xor edx, 0x30d1307d
xor edx, 0x6ee60c10
mov rcx, r12
call fcn.140098550
mov rdi, rax
test rax, rax
je 0x140034f55
test r14b, r14b
je 0x1400350b7
movsxd rcx, dword [rbp - 0x30]
call fcn.1400984e0
mov r8d, dword [rbp - 0x30]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov r14, rax
call fcn.140087bd0
test al, al
jne 0x140034f84
mov rcx, rdi
call fcn.140098500
mov rcx, r14
call fcn.1400984f0
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.140085000
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, 0x73e45013
sub eax, 0x1b5c492c
xor eax, 0x58880917
mov r9d, 0x57f1126f
add r9d, 0x1ee57185
sub r9d, 0x17e5bc8a
sub r9d, 0x5ee0c77a
test r13d, r13d
mov rdx, rdi
mov rcx, r14
cmovne r9d, eax
call fcn.140080e00
movsxd rcx, eax
cmp rcx, r12
jne 0x140034f45
mov rcx, r14
call fcn.1400984f0
nop dword [rax]
movups xmm0, xmmword [rdi + rbx]
lea rbx, [rbx + 0x10]
mov rax, qword [r15 + 0x300]
xorps xmm0, xmmword [0x1404a3550]
movups xmmword [rbx + rax - 0x10], xmm0
sub rsi, 1
jne 0x140034fdf
mov rcx, rdi
call fcn.140098500
mov rax, qword [rbp - 0x58]
nop
movabs rcx, 0xffffffff37ab7d22
add rcx, 0x2d13f74b
add rcx, 0x7fffffff
add rcx, 0x1b408b93
mov esi, dword [r15 + 0x2ec]
xor esi, 0x35cb7a53
mov eax, dword [rax]
xor eax, 0x35cb7a53
imul esi, eax
mov eax, 0x5c963080
add eax, 0xae720c6
sub eax, 0x5defe32b
xor eax, 0x98d6e1f
movsxd r14, esi
mul r14
cmovo rax, rcx
mov rcx, rax
call fcn.1400984e0
mov rbx, rax
test rax, rax
je 0x140034f55
cmp byte [rbp - 0x60], 0
je 0x140035152
movsxd rcx, dword [rbp - 0x2c]
call fcn.1400984e0
mov r8d, dword [rbp - 0x2c]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov rdi, rax
call fcn.140087bd0
mov rcx, rdi
test al, al
jne 0x14003510e
call fcn.1400984f0
mov rcx, rbx
jmp 0x140034f50
mov eax, 0x4980710a
add eax, 0x316e4f89
xor eax, 0x1212ed54
sub eax, 0x68fc1dd7
lea rcx, [rbp - 0x28]
mov r8d, 0x226fa161
add r8d, 0x56044b0e
sub r8d, 0x45755d55
xor r8d, 0x32f170ea
test r13d, r13d
mov rdx, rdi
cmovne r8d, eax
call fcn.140087bd0
test al, al
jne 0x140034fdf
mov rcx, rdi
call fcn.140098500
jmp 0x140034f55
mov r8d, dword [rbp - 0x2c]
lea r9d, [rsi*4]
mov rdx, rbx
call fcn.140080e00
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
mov rcx, rdi
jne 0x1400350aa
call fcn.1400984f0
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x72
xor bl, 0x43
xor bl, 0x30
jmp 0x140034f57
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140087bd0
test al, al
je 0x1400350af
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x72
sub bl, 0x5e
sub bl, 0x13
jmp 0x140034f57