Function at 0x140129c78
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov dword [rsp - 0x30], 0xa8e82f8
nop
push 0x2a6a2012
mov qword [rsp], rbx
push rsi
mov dword [rsp - 0x38], esp
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
xchg rsi, r10
mov r10, rcx
xchg r10, rsi
mov dword [rbp - 0x71], 0x530168f2
add dword [rbp - 0x71], 0x403575c
sub dword [rbp - 0x71], 0xdeafff1
add dword [rbp - 0x71], 0x2b591aa8
sub dword [rbp - 0x71], 0x5465a576
mov rcx, qword [rcx + 0x30]
xchg r15, r15
lea rdx, [rbp - 0x79]
movabs r12, 0x272443bc549e3d57
sub r12, 0x2823f98b
add r12, 0x348d07a4
xor r12, 0x638d4939
mov qword [rbp - 0x79], r12
call fcn.14007f2c8
mov dword [rsp - 0x40], ecx
xor ebx, ebx
test al, al
jne 0x140129d49
xchg r15, r15
mov ebx, 0x79ccbe84
xor ebx, 0x182201b6
sub ebx, 0x4d6c1316
add ebx, 0xab7d566f
jmp 0x14012a0f6
xchg rdx, rbx
mov rbx, qword [rbp - 0x79]
xchg rbx, rdx
lea rcx, [rbp - 0x69]
xor rdx, r12
mov rsp, rsp
call fcn.14011f014
lea rcx, [rbp - 0x69]
call fcn.14011f8e8
xchg r11, r11
test al, al
jne 0x140129d98
mov ebx, 0x43116451
add ebx, 0x23b64e30
add ebx, 0xac3372d
sub ebx, 0x2161e9a7
xor ebx, 0x9029007c
jmp 0x14012a0ea
mov rcx, rsi
call fcn.14012b4a0
test al, al
xchg rbx, rbx
je 0x14012a0ea
xchg rcx, rsp
mov rsp, rsi
xchg rcx, rsp
call fcn.140126130
mov r9d, 0x91136b7
xor r9d, 0x343bfc8f
add r9d, 0x29b8d433
sub r9d, 0x51dce2a5
xor r9d, 0x1506bbcc
lea rdx, [rbp + 7]
mov ecx, eax
mov r14, r14
lea r8d, [r9 + 2]
call fcn.14009a180
mov r14d, 0x3eafc96
add r14d, 0x31c47951
add r14d, 0x3453a7a0
sub r14d, 0x1bea4355
add r14d, 0x71e725cf
lea rcx, [rbp - 0x69]
mov dword [rbp + 0x6f], r14d
mov rcx, rcx
call fcn.1401264d0
xorps xmm0, xmm0
mov r15d, eax
mov rdi, rdi
lea rax, [rbp - 0x31]
or rdx, 0xffffffffffffffff
xchg rsp, rax
mov qword [rbp - 0x39], rsp
xchg rsp, rax
lea rax, [rbp + 7]
xchg r13, rbp
movups xmmword [r13 - 0x31], xmm0
xchg rbp, r13
xchg r9, rbp
movups xmmword [r9 - 0x21], xmm0
xchg rbp, r9
xchg rbp, r10
movups xmmword [r10 - 0x11], xmm0
xchg r10, rbp
inc rdx
cmp word [rax + rdx*2], bx
mov dword [rsp - 0x24], edi
jne 0x140129e5d
lea rcx, [rbp - 0x39]
xchg r14, rdx
mov qword [rbp - 1], r14
xchg rdx, r14
call fcn.140017bb4
mov edx, 0x435552a3
add edx, 0x3ae7ea18
sub edx, 0x3a3ced4b
xor edx, 0x745e6d38
mov r8, rbx
mov dword [rsp - 0x18], 0x5d3fdfdd
cmp qword [rbp - 1], rbx
jbe 0x140129f07
lea rdi, [rbp + 7]
xchg rsi, rsi
sub rdi, rax
movzx ecx, dx
mov r9d, 0x6a1ed99
xor r9d, 0x1807f307
add r9d, 0x51fc22e6
xor r9d, 0x4b71ceec
sub r9d, 0x3bd38e69
and cx, r9w
mov rsp, rsp
ror edx, 7
ror edx, 1
xor cx, word [rdi + rax]
inc r8
mov r15, r15
mov word [rax], cx
lea rax, [rax + 2]
cmp r8, qword [rbp - 1]
mov dword [rsp - 0x34], ebx
jb 0x140129eb7
lea rax, [rbp + 0x77]
mov r8d, r15d
mov dword [rsp - 0x30], ebp
lea r9, [rbp + 0x67]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x39]
mov dword [rsp - 0x3c], 0x1b7d8d56
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
call fcn.14012ae44
mov rcx, qword [rbp - 0x39]
xchg r14, r14
mov r15b, al
lea rax, [rbp - 0x31]
cmp rcx, rax
jne 0x140129f67
mov rcx, rcx
xor eax, eax
lea rdi, [rbp - 0x31]
lea ecx, [rax + 0x30]
rep stosb byte [rdi], al
mov dword [rsp - 0x40], 0x4492dcbb
jmp 0x140129f6f
call fcn.140099810
mov r10, r10
test r15b, r15b
je 0x14012a0e7
xchg rsp, r15
mov rsp, qword [rbp + 0x77]
xchg rsp, r15
xchg rbx, rcx
mov rbx, rsi
xchg rcx, rbx
xchg r15, r10
mov rdx, r10
xchg r15, r10
call fcn.140128590
mov r13, r13
cmp byte [rbp + 0x67], bl
je 0x14012a0e4
xchg rdx, r15
mov r15, rdx
xchg rdx, r15
lea rcx, [rbp - 0x69]
xchg rsp, rsp
call fcn.140128cb4
xchg rbx, rsi
mov rcx, rbx
xchg rbx, rsi
call fcn.140126874
test al, al
je 0x140129ff1
xchg r9, r9
lea rdx, [rbp - 0x69]
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
call fcn.140127f48
mov dword [rsp - 0x30], ecx
test al, al
je 0x14012a0cf
mov edx, 0x10e6457b
add edx, 0x527b0736
add edx, 0x11997ca
xor edx, 0x647ae47a
lea rcx, [rbp - 0x69]
call fcn.140125f8c
mov r9, r9
xchg r14, rax
mov rax, r14
xchg r14, rax
test rax, rax
mov dword [rsp - 0x34], 0x80a7dda
je 0x14012a0a0
xchg rbp, rax
mov r8, rbp
xchg rbp, rax
lea rdx, [rbp - 0x69]
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.140129a5c
lea rcx, [rbp - 0x69]
mov rcx, rcx
call fcn.1401264d0
lea rcx, [rbp - 0x69]
mov edi, eax
xchg rcx, rcx
call fcn.1401264a8
lea rcx, [rbp + 0x6f]
mov r9d, edi
mov rdi, rdi
mov qword [rsp + 0x30], rcx
xchg r9, rax
mov r8, r9
xchg r9, rax
mov qword [rsp + 0x28], rbx
mov dword [rsp - 0x30], ebx
mov rcx, rsi
mov rdx, r15
xchg rdx, r14
mov qword [rsp + 0x20], rdx
xchg r14, rdx
call fcn.14012a938
mov rdi, rdi
mov r14d, dword [rbp + 0x6f]
jmp 0x14012a0c2
mov r14d, 0x4ef39e1c
add r14d, 0x27e640c0
sub r14d, 0x74078ae3
add r14d, 0x2e633128
add r14d, 0x8eca7c18
test r14d, r14d
mov dword [rsp - 0x18], ecx
jns 0x14012a0e7
mov rcx, rsi
call fcn.14012c04c
mov dword [rsp - 0x30], 0x3c249ead
jmp 0x14012a0e7
mov r14d, ebx
mov ebx, r14d
lea rcx, [rbp - 0x69]
mov r14, r14
call fcn.14011f368
xchg r11, rcx
mov r11, qword [rbp - 0x79]
xchg rcx, r11
xor rcx, r12
je 0x14012a112
mov dword [rsp - 0x3c], esp
call fcn.1400996d0
mov eax, ebx
neg rsp
add rsp, 0xffffffffffffff20
neg rsp
nop
mov r15, qword [rsp]
add rsp, 8
nop
mov r14, qword [rsp]
add rsp, 8
pop r12
nop
mov rdi, qword [rsp]
add rsp, 8
pop rsi
mov r9, r9
nop
mov rbx, qword [rsp]
add rsp, 8
pop rbp
ret