Function at 0x140034610
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
neg rsp
sub rsp, 0xffffffffffffff80
neg rsp
mov rbx, rdx
mov r15, rcx
mov edx, r8d
lea rcx, [rbp - 0x28]
call fcn.140085930
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140087250
test al, al
je 0x140034adf
xor r14b, r14b
lea rdx, [rbp - 0x48]
mov r8d, 0x7ff9c6ef
sub r8d, 0x2f07278d
add r8d, 0x2e2d7997
sub r8d, 0x7f2018d9
mov byte [rbp - 0x60], r14b
lea rcx, [rbp - 0x28]
call fcn.140088350
test al, al
je 0x140034adf
xor ebx, ebx
cmp dword [rbp - 0x48], 0x32484346
jne 0x140034762
cmp dword [rbp - 0x44], 0x20
jne 0x140034762
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
cmp ecx, 0x40
jne 0x1400346c7
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x80
jne 0x1400346db
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x100
jne 0x1400346ef
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x200
jne 0x140034703
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x400
jne 0x140034717
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x800
jne 0x14003472b
cmp eax, ecx
je 0x14003473f
cmp ecx, 0x1000
jne 0x140034adf
cmp eax, ecx
jne 0x140034adf
mov edx, dword [rbp - 0x34]
test edx, edx
jle 0x140034adf
mov r8d, dword [rbp - 0x38]
mov r14b, 0x31
sub r14b, 0x23
sub r14b, 0xd
mov byte [rbp - 0x60], r14b
jmp 0x140034838
xor edx, edx
lea rcx, [rbp - 0x28]
call fcn.1400885d0
mov r8d, 0x7a959402
xor r8d, 0x583c0f88
sub r8d, 0x22a99b7a
mov qword [rbp - 0x58], rbx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.140088350
test al, al
je 0x140034adf
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
cmp ecx, 0x40
jne 0x1400347b1
cmp eax, ecx
je 0x140034829
cmp ecx, 0x80
jne 0x1400347c5
cmp eax, ecx
je 0x140034829
cmp ecx, 0x100
jne 0x1400347d9
cmp eax, ecx
je 0x140034829
cmp ecx, 0x200
jne 0x1400347ed
cmp eax, ecx
je 0x140034829
cmp ecx, 0x400
jne 0x140034801
cmp eax, ecx
je 0x140034829
cmp ecx, 0x800
jne 0x140034815
cmp eax, ecx
je 0x140034829
cmp ecx, 0x1000
jne 0x140034adf
cmp eax, ecx
jne 0x140034adf
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x140034adf
mov r8d, dword [rbp - 0x50]
xor eax, 0x63c4968
xor ecx, 0x63c4968
xor r8d, 0x63c4968
xor edx, 0x63c4968
mov r9d, 0x54ee34e7
xor r9d, 0x6106a899
sub r9d, 0x35e89996
mov esi, 0x1d582fbc
add esi, 0x439cdd4c
sub esi, 0x60f40d09
add r9, r15
mov r10, r15
mov qword [rbp - 0x58], r9
mov dword [r9], ecx
mov dword [r9 + 4], eax
mov eax, 0x7ca5455
add eax, 0x3b58af96
xor eax, 0x43230314
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 0x14003490b
mov edx, 0x3c81d2ab
xor edx, 0x4e9ff45b
sub edx, 0x58eb6bdf
xor edx, 0x1932bb01
mov rcx, r12
call fcn.140098670
mov rcx, rax
mov edx, esi
movaps xmm0, xmmword [0x1404a8590]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, 1
jne 0x1400348ec
mov qword [r15 + 0x300], rax
mov edx, 0x6075943f
sub edx, 0x4be289b0
sub edx, 0x14930a7f
mov rcx, r12
call fcn.140098670
mov rdi, rax
test rax, rax
je 0x140034adf
test r14b, r14b
je 0x140034b0e
movsxd rcx, dword [rbp - 0x30]
call fcn.1400985f0
mov r8d, dword [rbp - 0x30]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov r14, rax
call fcn.140088350
test al, al
je 0x140034acf
mov r8d, dword [rbp - 0x30]
mov eax, 0x2ff58ffc
xor eax, 0x4f586ad1
sub eax, 0x25003c00
xor eax, 0x3bada6dd
mov r9d, 0x1eb7d93f
xor r9d, 0x42c1ec1c
add r9d, 0x76a472c
xor r9d, 0x63ef83bf
test r13d, r13d
mov rdx, rdi
mov rcx, r14
cmovne r9d, eax
call fcn.140081640
movsxd rcx, eax
cmp rcx, r12
jne 0x140034acf
mov rcx, r14
call fcn.140098600
nop word [rax + rax]
movups xmm0, xmmword [rdi + rbx]
lea rbx, [rbx + 0x10]
mov rax, qword [r15 + 0x300]
xorps xmm0, xmmword [0x1404a8590]
movups xmmword [rbx + rax - 0x10], xmm0
sub rsi, 1
jne 0x1400349c0
mov rcx, rdi
call fcn.140098610
mov rax, qword [rbp - 0x58]
nop
movabs rcx, 0xffffffff4f92fe25
add rcx, 0x977858c
add rcx, 0x7fffffff
add rcx, 0x26f57c4f
mov esi, dword [r15 + 0x2ec]
xor esi, 0x63c4968
mov eax, dword [rax]
xor eax, 0x63c4968
imul esi, eax
mov eax, 0x67e67112
sub eax, 0x220759d4
add eax, 0x235e13d6
sub eax, 0x693d2b10
movsxd r14, esi
mul r14
cmovb rax, rcx
mov rcx, rax
call fcn.1400985f0
mov rbx, rax
test rax, rax
je 0x140034adf
cmp byte [rbp - 0x60], 0
je 0x140034b70
movsxd rcx, dword [rbp - 0x2c]
call fcn.1400985f0
mov r8d, dword [rbp - 0x2c]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov rdi, rax
call fcn.140088350
test al, al
je 0x140034b60
mov r8d, dword [rbp - 0x2c]
lea r9d, [rsi*4]
mov rdx, rbx
mov rcx, rdi
call fcn.140081640
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
jne 0x140034b60
mov rcx, rdi
call fcn.140098600
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x10
sub bl, 1
sub bl, 0xe
jmp 0x140034ae1
mov rcx, rdi
call fcn.140098610
mov rcx, r14
call fcn.140098600
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.140085a00
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, 0x7bfa0b3c
xor eax, 0x1ea0fab0
sub eax, 0x655ae19c
lea rcx, [rbp - 0x28]
mov r8d, 0x3e1f4fd8
add r8d, 0x12419e87
xor r8d, 0x24f67415
sub r8d, 0x74869a5a
test r13d, r13d
mov rdx, rdi
cmovne r8d, eax
call fcn.140088350
test al, al
jne 0x1400349c0
mov rcx, rdi
call fcn.140098610
jmp 0x140034adf
mov rcx, rdi
call fcn.140098600
mov rcx, rbx
jmp 0x140034ada
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140088350
test al, al
je 0x140034b68
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x6b
sub bl, 0x5b
sub bl, 0xf
jmp 0x140034ae1