Function at 0x14007be55
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
xchg rbx, rbx
push rbp
nop
sub rsp, 8
mov qword [rsp], rbx
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], r12
push r15
mov dword [rsp - 0x34], 0x169a95af
lea rbp, [rsp - 0xc0]
add rsp, 0x31744954
sub rsp, 0x31744b14
mov rsi, rcx
mov rbp, rbp
mov rbx, r9
xor ecx, ecx
xchg r8, r12
mov r8, r12
xchg r8, r12
xchg rcx, rdx
mov r15, rcx
xchg rcx, rdx
xchg r8, rcx
mov qword [rsi], r8
xchg rcx, r8
xchg rcx, rbx
mov qword [rsi + 8], rbx
xchg rcx, rbx
xchg rcx, r10
mov qword [rsi + 0x10], r10
xchg rcx, r10
mov qword [rsi + 0x18], 0x30d7a6f0
add qword [rsi + 0x18], 0x4b561b5e
sub qword [rsi + 0x18], 0x646399cb
xor qword [rsi + 0x18], 0x2d0783f1
sub qword [rsi + 0x18], 0x3acdab71
mov rax, qword [rdx + 0x78]
cmp rax, 0x78
jbe 0x14007b9df
xchg rsi, rsi
mov rcx, qword [rdx]
jmp 0x14007b9ea
test rax, rax
mov dword [rsp - 0x10], esi
cmovne rcx, r15
mov rax, qword [rcx]
lea r8, [rsp + 0x78]
mov r9d, 0x716c2607
xor r9d, 0x5f53b0f0
sub r9d, 0x2e123d68
sub r9d, 0x2d596f
mov rdx, r12
mov r10, r10
call qword [rax + 8]
test al, al
jne 0x14007ba35
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call fcn.140077a40
mov dword [rsp - 0x28], ebx
jmp 0x14007c3ad
mov qword [rsp + 0x208], rdi
nop
movabs rdi, 0xffffffff1ba16fa8
xor rdi, 0x58846e98
xor rdi, 0x4c7e4993
add rdi, 0x7fffffff
xor rdi, 0x70a4b75d
mov qword [rsp + 0x1b8], r13
mov rcx, rcx
xchg rcx, rdi
mov rax, rcx
xchg rdi, rcx
xchg r14, r10
mov qword [rsp + 0x1b0], r10
xchg r10, r14
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
mov dword [rsp - 0x1c], 0x699c4ffc
jne 0x14007ba8d
mov ecx, dword [rbp - 0x7c]
lea r14, [rax - 6]
xchg rcx, rcx
cmp rax, 6
cmovbe r14, rax
mov eax, 0x5b791d63
sub eax, 0x13a125fe
add eax, 0xea42c15
sub eax, 0x567c2372
mul rcx
cmovb rax, rdi
xchg rcx, rcx
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.140098010
mov r9d, dword [rbp - 0x7c]
xchg r13, rax
mov rax, r13
xchg r13, rax
mov edi, dword [rbp - 0x74]
xchg rdx, r8
mov r8, qword [r15 + 0x78]
xchg r8, rdx
add rdi, r12
shl r9, 3
xchg r8, r8
xchg rsi, rax
mov qword [rbp + 0xf8], rsi
xchg rsi, rax
cmp rdx, 0x78
mov rbx, rbx
jbe 0x14007bb27
xchg rsi, rcx
mov rsi, qword [r15]
xchg rsi, rcx
jmp 0x14007bb38
xor ecx, ecx
test rdx, rdx
mov dword [rsp - 0x44], 0x201d82d5
cmovne rcx, r15
xchg rdi, rax
mov rdi, qword [rcx]
xchg rdi, rax
mov r8, r13
mov dword [rsp - 0x34], ebp
mov rdx, rdi
call qword [rax + 8]
test al, al
mov dword [rsp - 0x40], 0x64ef2622
je 0x14007c2fe
xor edi, edi
cmp dword [rbp - 0x7c], edi
jbe 0x14007c2fe
mov r8, r8
nop dword [rax]
mov ecx, dword [r13 + rdi*8 + 4]
xchg r9, rax
mov r9, qword [r15 + 0x78]
xchg r9, rax
lea rdx, [rcx + rcx*2]
mov r15, r15
mov ecx, dword [rbp - 0x78]
add rcx, r12
lea rdx, [rcx + rdx*8]
mov dword [rsp - 0x20], ecx
cmp rax, 0x78
jbe 0x14007bba5
mov rcx, qword [r15]
mov rdi, rdi
jmp 0x14007bbb2
xor ecx, ecx
mov dword [rsp - 0x30], edi
test rax, rax
cmovne rcx, r15
xchg rdi, rax
mov rdi, qword [rcx]
xchg rdi, rax
lea r8, [rsp + 0x20]
mov r9d, 0x2f7dfd09
xor r9d, 0x19cd101d
sub r9d, 0x27d41339
sub r9d, 0xedcd9c3
call qword [rax + 8]
test al, al
je 0x14007bcde
mov dword [rsp - 0x34], esp
mov eax, dword [rsp + 0x2c]
xorps xmm0, xmm0
mov r9d, 0x3051054
add r9d, 0x6628e05e
add r9d, 0x74fd118
xor r9d, 0x4e9b0b64
sub r9d, 0x3ee6ca30
xchg rbp, r8
movups xmmword [r8 + 0x30], xmm0
xchg rbp, r8
xchg rdx, rbp
movups xmmword [rdx + 0x40], xmm0
xchg rbp, rdx
movups xmmword [rbp + 0x50], xmm0
xchg r15, r15
xchg rbp, rsi
movups xmmword [rsi + 0x60], xmm0
xchg rbp, rsi
xchg rbp, r15
movups xmmword [r15 + 0x70], xmm0
xchg rbp, r15
xchg rbp, rdx
movups xmmword [rdx + 0x80], xmm0
xchg rbp, rdx
xchg rbp, rdx
movups xmmword [rdx + 0x90], xmm0
xchg rdx, rbp
xchg r10, rbp
movups xmmword [r10 + 0xa0], xmm0
xchg r10, rbp
cmp eax, 0x7e
mov r10, r10
ja 0x14007bc79
mov r9d, eax
mov edx, dword [rsp + 0x24]
mov dword [rsp - 0x38], esi
mov rax, qword [r15 + 0x78]
add rdx, r12
cmp rax, 0x78
mov dword [rsp - 0x2c], esi
jbe 0x14007bc9e
mov rcx, qword [r15]
jmp 0x14007bcaf
xor ecx, ecx
test rax, rax
cmovne rcx, r15
mov dword [rsp - 0xc], 0x7af1e55c
mov rax, qword [rcx]
lea r8, [rbp + 0x30]
call qword [rax + 8]
test al, al
xchg rcx, rcx
je 0x14007bcde
mov r8, r14
lea rcx, [rbp + 0x30]
mov rdx, rbx
mov r11, r11
call fcn.140098f50
test eax, eax
je 0x14007bcf6
inc edi
mov dword [rsp - 0x18], 0x74fc2fc6
cmp edi, dword [rbp - 0x7c]
jb 0x14007bb6e
jmp 0x14007c2fe
xor r14d, r14d
mov dword [rbp + 0xf0], r14d
cmp dword [rsp + 0x34], r14d
xchg rbx, rbx
jbe 0x14007c2fe
mov ebx, 0x3c3997f8
sub ebx, 0x3546437d
add ebx, 0x6bd02a5
add ebx, 0x36007b1c
xor ebx, 0x43b0d2c3
nop dword [rax + rax]
mov ecx, dword [rsp + 0x30]
lea rdx, [r14 + r14*4]
mov r13, r13
xchg rdx, rax
mov rdx, qword [r15 + 0x78]
xchg rdx, rax
add rcx, r12
mov dword [rsp - 0x14], ebx
lea rdx, [rcx + rdx*4]
cmp rax, 0x78
jbe 0x14007bd66
mov rcx, qword [r15]
mov r8, r8
jmp 0x14007bd72
xor ecx, ecx
test rax, rax
cmovne rcx, r15
mov r14, r14
mov rax, qword [rcx]
lea r8, [rbp - 0x68]
mov r9d, 0x413ff048
sub r9d, 0x3dc01ce9
add r9d, 0x59cdb12d
add r9d, 0x928c339
sub r9d, 0x667647b1
call qword [rax + 8]
test al, al
mov dword [rsp - 0x14], ebx
je 0x14007c2da
mov eax, dword [rbp - 0x58]
xorps xmm0, xmm0
mov r9d, 0x6e65469d
sub r9d, 0x61004041
add r9d, 0x3b4d6e63
xor r9d, 0x48b274c1
movups xmmword [rbp - 0x50], xmm0
xchg r12, r12
xchg rbp, rsp
movups xmmword [rsp - 0x40], xmm0
xchg rsp, rbp
xchg rbp, rsp
movups xmmword [rsp - 0x30], xmm0
xchg rbp, rsp
xchg rbp, rbx
movups xmmword [rbx - 0x20], xmm0
xchg rbp, rbx
xchg rbp, rbx
movups xmmword [rbx - 0x10], xmm0
xchg rbx, rbp
movups xmmword [rbp], xmm0
xchg r8, r8
xchg rdx, rbp
movups xmmword [rdx + 0x10], xmm0
xchg rdx, rbp
xchg rsi, rbp
movups xmmword [rsi + 0x20], xmm0
xchg rsi, rbp
cmp eax, 0x7e
xchg r12, r12
ja 0x14007be26
mov r9d, eax
mov edx, dword [rbp - 0x5c]
mov dword [rsp - 0x40], 0x2d5bdd4f
mov rax, qword [r15 + 0x78]
add rdx, r12
cmp rax, 0x78
jbe 0x14007be53
mov r12, r12
xchg rcx, r8
mov r8, qword [r15]
xchg r8, rcx
jmp 0x14007be64
xor ecx, ecx
mov dword [rsp - 0x30], 0x300450ae
test rax, rax
cmovne rcx, r15
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
lea r8, [rbp - 0x50]
xchg r9, r9
call qword [rax + 8]
test al, al
je 0x14007c2da
mov dword [rsp - 0x40], edi
xorps xmm0, xmm0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x38], rax
nop
movabs rdx, 0xffffffff69312ac5
add rdx, 0x13b1faa1
sub rdx, 0x5664797c
add rdx, 0x7fffffff
xor rdx, 0x59815416
lea rax, [rbp - 0x50]
mov dword [rsp - 0x10], 0x453df6e8
xchg rbp, rsp
movups xmmword [rbp + 0x40], xmm0
xchg rsp, rbp
movups xmmword [rsp + 0x50], xmm0
xchg rsp, rcx
movups xmmword [rcx + 0x60], xmm0
xchg rcx, rsp
nop word [rax + rax]
inc rdx
mov r12, r12
cmp word [rax + rdx*2], 0
jne 0x14007bee0
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x70], rdx
mov dword [rsp - 0x30], 0x158eee87
call fcn.14000ef40
xor edi, edi
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x45f185ea
sub ecx, 0x697d075
xor ecx, 0x7c4d979d
add ecx, 0x19a82d5a
cmp qword [rsp + 0x70], rdi
mov dword [rsp - 0x14], ebx
jbe 0x14007bf72
lea r8, [rbp - 0x50]
sub r8, rax
movzx eax, cx
xchg rdx, rdx
lea rdx, [rdx + 2]
and ax, bx
ror ecx, 3
ror ecx, 2
ror ecx, 1
ror ecx, 1
ror ecx, 1
xor ax, word [rdx + r8 - 2]
inc rdi
mov r13, r13
mov word [rdx - 2], ax
cmp rdi, qword [rsp + 0x70]
jb 0x14007bf3e
xchg r12, rax
mov r12, qword [rsi + 8]
xchg r12, rax
test rax, rax
je 0x14007c19d
xchg rcx, r11
mov r11, qword [rsi + 0x10]
xchg r11, rcx
cmp rax, rcx
mov dword [rsp - 0x24], 0x6c2dc8ee
jb 0x14007c18f
add rcx, qword [rsi + 0x18]
xchg rcx, rdi
mov qword [rsi + 0x10], rdi
xchg rdi, rcx
shl rcx, 4
shl rcx, 1
shl rcx, 1
call fcn.1400984c0
xchg r14, rcx
mov r14, qword [rsi + 8]
xchg rcx, r14
xor r14d, r14d
mov rbp, rbp
xchg r13, rsi
mov rsi, rax
xchg rsi, r13
test rcx, rcx
je 0x14007c0d4
xchg r14, r14
nop
movabs r12, 0xffffffff13767f70
add r12, 0x5e29e007
sub r12, 0x47ab02c
sub r12, 0x4fa7eab6
add r12, 0x7fffffff
add r12, 0x62823b34
lea rdi, [rax + 0x38]
sub r12, rax
mov dword [rsp - 0x38], esi
nop word [rax + rax]
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
mov dword [rsp - 0x18], edi
lea rbx, [r12 + rdi]
add rbx, qword [rsi]
mov qword [rcx], rax
xchg rcx, rax
movups xmmword [rcx], xmm0
xchg rcx, rax
xchg r13, rax
movups xmmword [r13 + 0x10], xmm0
xchg r13, rax
xchg r9, rax
movups xmmword [r9 + 0x20], xmm0
xchg r9, rax
mov rdx, qword [rbx + 0x38]
xchg r9, r9
xchg rdx, rbp
mov qword [rdi], rbp
xchg rdx, rbp
call fcn.14000ef40
mov dword [rsp - 0xc], 0x72e1265
xor ecx, ecx
cmp qword [rdi], rcx
jbe 0x14007c0a8
nop dword [rax]
mov rdi, rdi
nop word [rax + rax]
mov rdx, qword [rbx]
movzx edx, word [rdx + rcx*2]
mov word [rax + rcx*2], dx
mov dword [rsp - 0xc], 0x26697293
inc rcx
cmp rcx, qword [rdi]
jb 0x14007c089
mov rcx, qword [rsi + 8]
mov r8, r8
inc r14
nop
add rdi, 0x4274dc07
sub rdi, 0x4274dbc7
cmp r14, rcx
xchg rsi, rsi
jb 0x14007c01f
mov r12, qword [rbp + 0x100]
cmp qword [rsi], 0
mov dword [rsp - 0x1c], edi
je 0x14007c180
xor ebx, ebx
test rcx, rcx
xchg r8, r8
je 0x14007c16f
xor r14d, r14d
nop word [rax + rax]
xchg rdx, rdx
xchg rdi, rax
mov rdi, qword [rsi]
xchg rdi, rax
mov rcx, qword [r14 + rax]
mov dword [rsp - 0xc], ebx
lea rdi, [rax + 8]
add rdi, r14
cmp rcx, rdi
jne 0x14007c143
mov dword [rsp - 0x1c], 0x21696334
xor eax, eax
mov ecx, 0x77069596
xor ecx, 0x205ad482
xor ecx, 0x65222a90
xor ecx, 0x327e6bb4
rep stosb byte [rdi], al
jmp 0x14007c148
call fcn.140098180
inc rbx
xchg r8, r8
nop
add r14, 0x25daa28c
sub r14, 0x25daa24c
cmp rbx, qword [rsi + 8]
mov dword [rsp - 0x28], 0x411cde33
jb 0x14007c0fc
xchg rcx, rdx
mov rdx, qword [rsi]
xchg rdx, rcx
call fcn.140098180
xchg r8, r8
mov r14d, dword [rbp + 0xf0]
mov qword [rsi], r13
jmp 0x14007c1d5
xchg rbp, r13
mov rbp, qword [rsi]
xchg rbp, r13
jmp 0x14007c1d5
xchg r15, r13
mov r15, qword [rsi]
xchg r13, r15
test r13, r13
jne 0x14007c1d5
xchg r15, r15
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
shl rcx, 4
shl rcx, 2
call fcn.1400984c0
xchg r15, rax
mov r13, r15
xchg r15, rax
xchg r15, rax
mov qword [rsi], r15
xchg r15, rax
mov rax, qword [rsi + 8]
xorps xmm0, xmm0
mov dword [rsp - 0x20], ebx
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
shl rbx, 6
add rbx, r13
inc rax
mov rsp, rsp
mov rcx, rbx
xchg r13, rax
mov qword [rsi + 8], r13
xchg r13, rax
lea rax, [rbx + 8]
xchg rcx, rax
mov qword [rbx], rcx
xchg rcx, rax
xchg r15, rax
movups xmmword [r15], xmm0
xchg r15, rax
xchg rdx, rax
movups xmmword [rdx + 0x10], xmm0
xchg rdx, rax
movups xmmword [rax + 0x20], xmm0
mov r13, r13
mov rax, qword [rsp + 0x70]
xchg rcx, rax
mov qword [rbx + 0x38], rcx
xchg rcx, rax
mov rdx, qword [rsp + 0x70]
mov rcx, rcx
call fcn.14000ef40
xor edi, edi
cmp qword [rbx + 0x38], rdi
mov dword [rsp - 0x34], esp
jbe 0x14007c26b
mov rcx, qword [rsp + 0x38]
movzx edx, word [rcx + rdi*2]
mov r15, r15
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14007c24b
xchg r9, r9
xchg rdx, rcx
mov rdx, qword [rsp + 0x38]
xchg rcx, rdx
lea rax, [rsp + 0x40]
mov dword [rsp - 0x14], 0x5328d8cc
cmp rcx, rax
jne 0x14007c2bb
lea rdi, [rsp + 0x40]
xor eax, eax
mov dword [rsp - 0x3c], ebx
mov ecx, 0x9a28107
xor ecx, 0x7365755b
add ecx, 0x9efdf6
xor ecx, 0x7e5ddebb
xor ecx, 0x53b2cd9
rep stosb byte [rdi], al
jmp 0x14007c2c3
call fcn.140098180
mov r13, r13
mov ebx, 0x5153a1e4
add ebx, 0x39cd07
sub ebx, 0x49a13faf
sub ebx, 0x7ec2e3d
inc r14d
mov dword [rbp + 0xf0], r14d
mov dword [rsp - 0x18], 0x2c1394ac
cmp r14d, dword [rsp + 0x34]
jb 0x14007bd33
mov r13, qword [rbp + 0xf8]
xchg rdx, rcx
mov rdx, r13
xchg rcx, rdx
call fcn.140098020
xchg rbp, rax
mov rbp, qword [r15 + 0x78]
xchg rbp, rax
mov r14, qword [rsp + 0x1b0]
mov r11, r11
xchg r12, r13
mov r12, qword [rsp + 0x1b8]
xchg r12, r13
xchg rdi, rcx
mov rcx, qword [rsp + 0x208]
xchg rcx, rdi
cmp rax, 0x78
mov dword [rsp - 0xc], ebp
jbe 0x14007c371
mov rcx, qword [r15]
xor edx, edx
mov rax, qword [rcx]
mov r12, r12
call qword [rax]
xchg rcx, rdx
mov rdx, qword [r15]
xchg rdx, rcx
call fcn.140098180
mov dword [rsp - 0x10], 0x43793469
jmp 0x14007c38d
test rax, rax
je 0x14007c38d
mov rax, qword [r15]
xchg rbx, rbx
xor edx, edx
xchg r15, rbp
mov rcx, rbp
xchg rbp, r15
call qword [rax]
mov qword [r15 + 0x78], 0x6fb38f4b
add qword [r15 + 0x78], 0x88a72e9
sub qword [r15 + 0x78], 0x720a96
sub qword [r15 + 0x78], 0x77cbf79e
xchg r9, rax
mov r9, rsi
xchg r9, rax
sub rsp, 0x4b77e7be
add rsp, 0x4b77e97e
pop r15
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
pop rbx
pop rbp
ret