Function at 0x140117c88
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov dword [rsp - 0x20], ecx
push rbx
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r12
mov qword [rsp], r14
nop
push 0x5fe80cfb
mov qword [rsp], r15
lea rbp, [rsp - 0x27]
mov dword [rsp - 0x14], 0x6a831ad5
neg rsp
sub rsp, 0xffffffffffffff20
neg rsp
xchg rcx, rsi
mov rcx, rsi
xchg rcx, rsi
mov dword [rbp - 0x71], 0x4acd6ba0
add dword [rbp - 0x71], 0x90aa68b
xor dword [rbp - 0x71], 0x7b8b2f41
xor dword [rbp - 0x71], 0x4755a970
xor dword [rbp - 0x71], 0x1ec09d37
mov rcx, qword [rcx + 0x30]
lea rdx, [rbp - 0x79]
movabs r12, 0x7839482a52ebf9ce
add r12, 0x1c9a9b86
xor r12, 0x138a8b5d
xor r12, 0x18192904
xor r12, 0x7feb6cd0
xchg r15, r12
mov qword [rbp - 0x79], r15
xchg r15, r12
call fcn.14009cc6c
xor ebx, ebx
mov dword [rsp - 0x34], 0x108c9774
test al, al
jne 0x140117d74
mov ebx, 0x15931512
xor ebx, 0x4888dac1
sub ebx, 0x5bb0efd5
xor ebx, 0x11b0fe64
add ebx, 0xaf25e0f1
jmp 0x140118141
mov rdx, qword [rbp - 0x79]
xchg rdi, rdi
lea rcx, [rbp - 0x69]
xor rdx, r12
call fcn.14010cb74
lea rcx, [rbp - 0x69]
mov dword [rsp - 0x40], ebx
call fcn.14010d41c
test al, al
jne 0x140117dc2
mov dword [rsp - 0x1c], ebp
mov ebx, 0x1e75ea34
add ebx, 0x428d715f
sub ebx, 0x9a222a
sub ebx, 0x2a4a3d7f
add ebx, 0x89e10491
jmp 0x140118134
mov rcx, rsi
call fcn.1401194c4
test al, al
xchg rsi, rsi
je 0x140118134
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.140113f78
mov dword [rsp - 0x30], esi
mov r9d, 0x58cf6a59
xor r9d, 0x60642618
sub r9d, 0x2cbef143
sub r9d, 0xbec5af4
lea rdx, [rbp + 7]
mov dword [rsp - 0x30], edi
mov ecx, eax
lea r8d, [r9 + 2]
call fcn.1400ba240
mov rdi, rdi
mov r14d, 0x372b588
add r14d, 0x62462e32
sub r14d, 0x2b0f5df6
xor r14d, 0xfaa985c5
lea rcx, [rbp - 0x69]
mov dword [rbp + 0x6f], r14d
mov rsp, rsp
call fcn.140114304
xorps xmm0, xmm0
mov r15d, eax
xchg rbp, rbp
lea rax, [rbp - 0x31]
or rdx, 0xffffffffffffffff
xchg r15, rax
mov qword [rbp - 0x39], r15
xchg r15, rax
lea rax, [rbp + 7]
movups xmmword [rbp - 0x31], xmm0
mov dword [rsp - 0x38], 0x65a6f5ec
xchg r13, rbp
movups xmmword [r13 - 0x21], xmm0
xchg rbp, r13
xchg rsi, rbp
movups xmmword [rsi - 0x11], xmm0
xchg rsi, rbp
inc rdx
mov dword [rsp - 0x38], ebx
cmp word [rax + rdx*2], bx
jne 0x140117e81
lea rcx, [rbp - 0x39]
xchg rdx, r12
mov qword [rbp - 1], r12
xchg r12, rdx
call fcn.14001739c
mov edx, 0xacdce1a
xor edx, 0x46c62a17
xor edx, 0x4054b8a2
xor edx, 0x5504d226
sub edx, 0x28288857
xchg rdx, rbx
mov r8, rdx
xchg rdx, rbx
cmp qword [rbp - 1], rbx
mov dword [rsp - 0x10], esi
jbe 0x140117f37
lea rdi, [rbp + 7]
sub rdi, rax
movzx ecx, dx
mov dword [rsp - 0x30], esi
mov r9d, 0x71396162
sub r9d, 0x3f077c4
add r9d, 0xa0a1854
sub r9d, 0x775300f3
and cx, r9w
ror edx, 3
ror edx, 3
ror edx, 2
xor cx, word [rdi + rax]
mov dword [rsp - 0x20], 0x25eefa5b
inc r8
mov word [rax], cx
lea rax, [rax + 2]
cmp r8, qword [rbp - 1]
mov dword [rsp - 0x40], 0x70470a7a
jb 0x140117ee0
lea rax, [rbp + 0x77]
mov r8d, r15d
lea r9, [rbp + 0x67]
mov r13, r13
xchg rsi, rax
mov qword [rsp + 0x20], rsi
xchg rsi, rax
lea rdx, [rbp - 0x39]
mov dword [rsp - 0x14], ebp
mov rcx, rsi
call fcn.140118e3c
mov rcx, qword [rbp - 0x39]
mov dword [rsp - 0x34], esi
mov r15b, al
lea rax, [rbp - 0x31]
cmp rcx, rax
mov dword [rsp - 0x1c], ebx
jne 0x140117f8e
xor eax, eax
lea rdi, [rbp - 0x31]
mov dword [rsp - 0x40], esi
lea ecx, [rax + 0x30]
rep stosb byte [rdi], al
jmp 0x140117f93
call fcn.1400b9840
test r15b, r15b
je 0x140118131
mov dword [rsp - 0xc], esp
xchg r8, r15
mov r8, qword [rbp + 0x77]
xchg r8, r15
xchg rcx, r12
mov r12, rsi
xchg rcx, r12
mov rdx, r15
mov r8, r8
call fcn.1401164b4
cmp byte [rbp + 0x67], bl
je 0x14011812e
mov r8, r8
xchg rdx, r15
mov r15, rdx
xchg rdx, r15
lea rcx, [rbp - 0x69]
mov dword [rsp - 0x40], 0xb646fb3
call fcn.140116b98
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.1401146e4
mov dword [rsp - 0x14], edx
test al, al
je 0x140118023
lea rdx, [rbp - 0x69]
mov dword [rsp - 0xc], 0x5436b845
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
call fcn.140115e68
test al, al
xchg rcx, rcx
je 0x14011811b
mov edx, 0x895d6c7
xor edx, 0x395ff3fb
xor edx, 0x4a79662d
sub edx, 0x7a66a69d
xor edx, 0x14c9c75
lea rcx, [rbp - 0x69]
call fcn.140113dac
mov dword [rsp - 0x38], 0x5e1d82f6
xchg rcx, rax
mov r14, rcx
xchg rcx, rax
test rax, rax
mov rbx, rbx
je 0x1401180ed
xchg r8, rbx
mov rbx, rax
xchg r8, rbx
lea rdx, [rbp - 0x69]
mov rcx, rsi
mov dword [rsp - 0x18], ebx
call fcn.140117a60
lea rcx, [rbp - 0x69]
call fcn.140114304
lea rcx, [rbp - 0x69]
mov r8, r8
mov edi, eax
call fcn.1401142dc
lea rcx, [rbp + 0x6f]
mov dword [rsp - 0x24], 0x3eeb8762
mov r9d, edi
xchg rdi, rcx
mov qword [rsp + 0x30], rdi
xchg rcx, rdi
xchg r8, r9
mov r9, rax
xchg r8, r9
xchg r11, rbx
mov qword [rsp + 0x28], r11
xchg r11, rbx
xchg rbx, rsi
mov rcx, rbx
xchg rbx, rsi
xchg r14, rdx
mov r14, r15
xchg rdx, r14
xchg r14, rcx
mov qword [rsp + 0x20], rcx
xchg r14, rcx
call fcn.140118920
mov r14d, dword [rbp + 0x6f]
jmp 0x14011810f
mov r14d, 0x6f0bcf16
xor r14d, 0x28f4574d
sub r14d, 0x4139ffd
sub r14d, 0x17f02b77
add r14d, 0x94043452
test r14d, r14d
xchg rdx, rdx
jns 0x140118131
xchg r14, rsi
mov rcx, r14
xchg r14, rsi
call 0x140119f9c
jmp 0x140118131
mov r14d, ebx
mov ebx, r14d
lea rcx, [rbp - 0x69]
mov dword [rsp - 0x18], edx
call fcn.14010ced8
xchg rdi, rcx
mov rdi, qword [rbp - 0x79]
xchg rcx, rdi
xor rcx, r12
je 0x140118161
call fcn.1400b96f0
mov dword [rsp - 0xc], 0x75b03b4d
mov eax, ebx
sub rsp, 0xffffffffffffff20
pop r15
nop
mov r14, qword [rsp]
add rsp, 8
pop r12
pop rdi
mov dword [rsp - 0x40], ecx
pop rsi
nop
add rsp, 8
mov rbx, qword [rsp - 8]
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret