Function at 0x14007c809
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], rsi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
lea rbp, [rsp - 0xe0]
xchg rsi, rsi
add rsp, 0xfffffffffffffe20
mov qword [rcx], 0x459123c8
add qword [rcx], 0x671c613
sub qword [rcx], 0x37190154
xor qword [rcx], 0x14e9e887
xchg rsi, r9
mov r9, rsi
xchg rsi, r9
mov qword [rcx + 8], 0x201a2908
add qword [rcx + 8], 0x1668e2a9
add qword [rcx + 8], 0x1cb7302e
sub qword [rcx + 8], 0x3ad60a6c
xor qword [rcx + 8], 0x18643173
mov r13, r8
mov r11, r11
mov qword [rcx + 0x10], 0x65e283b8
sub qword [rcx + 0x10], 0x37bc18a1
sub qword [rcx + 0x10], 0x2783feb1
xor qword [rcx + 0x10], 0x6a26c66
mov r12, rdx
mov qword [rcx + 0x18], 0x4f1d41cc
sub qword [rcx + 0x18], 0x22d86caa
xor qword [rcx + 0x18], 0x3d6c82a9
sub qword [rcx + 0x18], 0x1128578a
xchg rcx, rdi
mov r14, rdi
xchg rdi, rcx
xchg r12, rax
mov r12, qword [rdx + 0x78]
xchg r12, rax
cmp rax, 0x78
jbe 0x14007c3a2
mov dword [rsp - 0x14], edi
xchg rcx, rbp
mov rbp, qword [rdx]
xchg rcx, rbp
jmp 0x14007c3ae
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov rsp, rsp
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
lea r8, [rbp - 0x80]
mov r9d, 0x61cd935b
add r9d, 0xaf5d553
sub r9d, 0x2fca9ad
sub r9d, 0x69c6bed9
xchg rbp, r13
mov rdx, rbp
xchg r13, rbp
call qword [rax + 8]
xchg rbx, rbx
test al, al
jne 0x14007c401
xchg rcx, r13
mov r13, r12
xchg rcx, r13
call fcn.140076340
mov rsp, rsp
jmp 0x14007cdfb
mov qword [rsp + 0x228], rbx
mov rdi, rdi
mov qword [rsp + 0x1d8], rdi
nop
movabs rdi, 0xffffffff2082e527
xor rdi, 0x65216f3d
xor rdi, 0x44235bf5
add rdi, 0x680864ee
add rdi, 0x7fffffff
add rdi, 0x1676c923
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
xchg rbp, r15
mov qword [rsp + 0x1d0], rbp
xchg r15, rbp
inc rax
mov r12, r12
cmp word [rsi + rax*2 + 8], 0
jne 0x14007c457
mov ecx, dword [rbp - 0x74]
lea r15, [rax - 4]
mov dword [rsp - 0x2c], 0x230e284a
cmp rax, 4
cmovbe r15, rax
mov eax, 0x2bacbbda
add eax, 0x5f30bf0
add eax, 0x2c9865d7
sub eax, 0x5e382d89
mul rcx
cmovo rax, rdi
xchg r15, rcx
mov r15, rax
xchg rcx, r15
call fcn.140095da0
mov ecx, dword [rbp - 0x74]
mov r14, r14
xchg rbx, r14
mov r14, rax
xchg rbx, r14
mov rdx, qword [r12 + 0x78]
xchg r15, r15
mov qword [rbp + 0x118], rax
lea r9, [rcx + rcx*2]
shl r9, 2
shl r9, 1
cmp rdx, 0x78
jbe 0x14007c4e9
mov rcx, qword [r12]
mov dword [rsp - 0x18], edi
jmp 0x14007c4f6
xor ecx, ecx
test rdx, rdx
cmovne rcx, r12
mov dword [rsp - 0x44], ebx
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
lea rdx, [r13 + 0x10]
mov dword [rsp - 0x38], 0x1acae2b
mov r8, rbx
call qword [rax + 8]
test al, al
mov dword [rsp - 0x24], 0x64c9b696
je 0x14007cd44
xor edi, edi
cmp dword [rbp - 0x74], edi
jbe 0x14007cd44
mov dword [rsp - 0x30], ebx
nop dword [rax]
nop word [rax + rax]
xorps xmm0, xmm0
mov dword [rsp - 0x44], ebx
lea rcx, [rdi + rdi*2]
mov eax, dword [rbx + rcx*8 + 8]
lea rbx, [rbx + rcx*8]
mov r9d, 0x4fb4b7df
sub r9d, 0x97f814b
add r9d, 0x33e0ef41
sub r9d, 0x7a162557
movups xmmword [rbp + 0x50], xmm0
xchg rsp, rsp
xchg rbp, r9
movups xmmword [r9 + 0x60], xmm0
xchg rbp, r9
movups xmmword [rbp + 0x70], xmm0
mov dword [rsp - 0x44], 0x3d182879
xchg rbp, rdi
movups xmmword [rdi + 0x80], xmm0
xchg rdi, rbp
movups xmmword [rbp + 0x90], xmm0
xchg r15, r15
xchg r8, rbp
movups xmmword [r8 + 0xa0], xmm0
xchg rbp, r8
xchg rbp, rsi
movups xmmword [rsi + 0xb0], xmm0
xchg rsi, rbp
xchg r13, rbp
movups xmmword [r13 + 0xc0], xmm0
xchg rbp, r13
cmp eax, 0x7e
mov r14, r14
ja 0x14007c5d7
mov r9d, eax
mov edx, dword [rbx + 4]
xchg r8, rax
mov r8, qword [r12 + 0x78]
xchg r8, rax
add rdx, r13
cmp rax, 0x78
mov r15, r15
jbe 0x14007c5fc
mov rcx, qword [r12]
jmp 0x14007c608
xor ecx, ecx
mov r10, r10
test rax, rax
cmovne rcx, r12
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
lea r8, [rbp + 0x50]
call qword [rax + 8]
xchg r12, r12
test al, al
je 0x14007c642
xchg rbx, r15
mov r8, rbx
xchg rbx, r15
lea rdx, [rsi + 8]
lea rcx, [rbp + 0x50]
xchg rdx, rdx
call fcn.140096c30
test eax, eax
je 0x14007c662
xchg r13, rbx
mov r13, qword [rbp + 0x118]
xchg r13, rbx
inc edi
cmp edi, dword [rbp - 0x74]
jae 0x14007cd44
mov rsi, rsi
jmp 0x14007c53c
mov ebx, dword [rbx + 0x14]
mov rax, qword [r12 + 0x78]
mov dword [rsp - 0x34], 0x59ac7e6b
add rbx, r13
mov qword [rsp + 0x20], rbx
cmp rax, 0x78
mov dword [rsp - 0x20], ecx
jbe 0x14007c697
xchg rcx, rdi
mov rdi, qword [r12]
xchg rdi, rcx
jmp 0x14007c6a3
xor ecx, ecx
mov rcx, rcx
test rax, rax
cmovne rcx, r12
xchg rsp, rax
mov rsp, qword [rcx]
xchg rsp, rax
lea r8, [rbp - 0x58]
mov r9d, 0x58e24a21
add r9d, 0x24bd4c39
sub r9d, 0x189ec81a
sub r9d, 0xe19ac68
sub r9d, 0x56e721bc
mov rdx, rbx
call qword [rax + 8]
xchg r9, r9
test al, al
je 0x14007cd37
xor esi, esi
mov r10, r10
mov dword [rbp + 0x110], esi
cmp dword [rbp - 0x54], esi
jbe 0x14007cd37
mov r15d, 0x48b45dc4
add r15d, 0x164f1b7b
sub r15d, 0x6045228
sub r15d, 0x1458cb74
xor r15d, 0x44a65b5c
nop dword [rax]
xchg rdx, rax
mov rdx, qword [r12 + 0x78]
xchg rdx, rax
cmp rax, 0x78
jbe 0x14007c73d
xchg rcx, rdi
mov rdi, qword [r12]
xchg rcx, rdi
jmp 0x14007c74e
xor ecx, ecx
mov dword [rsp - 0x40], 0x6981ae73
test rax, rax
cmovne rcx, r12
xchg r14, rax
mov r14, qword [rcx]
xchg r14, rax
lea r8, [rsp + 0x68]
mov edx, esi
xchg rbx, rbx
mov r9d, 0xef66cf4
add r9d, 0x4f33f92e
add r9d, 0xe90d9d7
sub r9d, 0x6cbb3fe5
nop
sub rdx, 0x50a484ab
add rdx, 0x50a484ad
xchg rdi, rbp
mov rbp, qword [rax + 8]
xchg rbp, rdi
lea rdx, [rdx + rsi*4]
lea rdx, [rbx + rdx*4]
mov dword [rsp - 0x2c], 0xe57dd60
call rdi
test al, al
je 0x14007cd23
mov dword [rsp - 0x2c], 0x67a3b295
mov eax, dword [rsp + 0x78]
xorps xmm0, xmm0
mov r9d, 0x40c784ac
xor r9d, 0x542d5aad
xor r9d, 0xb7009b2
add r9d, 0x469e5997
sub r9d, 0x663930cc
xchg rbp, rdi
movups xmmword [rdi - 0x30], xmm0
xchg rdi, rbp
xchg r13, rbp
movups xmmword [r13 - 0x20], xmm0
xchg r13, rbp
movups xmmword [rbp - 0x10], xmm0
xchg rbp, r10
movups xmmword [r10], xmm0
xchg r10, rbp
xchg rsp, rbp
movups xmmword [rsp + 0x10], xmm0
xchg rsp, rbp
xchg rsi, rbp
movups xmmword [rsi + 0x20], xmm0
xchg rbp, rsi
xchg r11, rbp
movups xmmword [r11 + 0x30], xmm0
xchg rbp, r11
xchg r11, rbp
movups xmmword [r11 + 0x40], xmm0
xchg r11, rbp
cmp eax, 0x7e
ja 0x14007c83c
mov dword [rsp - 0x28], edi
mov r9d, eax
mov edx, dword [rsp + 0x74]
xchg r8, rax
mov r8, qword [r12 + 0x78]
xchg r8, rax
add rdx, r13
mov r9, r9
cmp rax, 0x78
jbe 0x14007c868
xchg r15, rcx
mov r15, qword [r12]
xchg r15, rcx
jmp 0x14007c875
xor ecx, ecx
test rax, rax
mov dword [rsp - 0x14], ecx
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x30]
call qword [rax + 8]
xchg r13, r13
test al, al
je 0x14007cd23
xorps xmm0, xmm0
mov dword [rsp - 0x1c], ecx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
nop
movabs rdx, 0xffffffff03b765d2
add rdx, 0x5de5dbdd
add rdx, 0x18dd8797
add rdx, 0x7fffffff
add rdx, 0x58536ba
lea rax, [rbp - 0x30]
xchg r8, r8
xchg rsi, rsp
movups xmmword [rsi + 0x30], xmm0
xchg rsp, rsi
xchg r13, rsp
movups xmmword [r13 + 0x40], xmm0
xchg r13, rsp
xchg rsp, rcx
movups xmmword [rcx + 0x50], xmm0
xchg rcx, rsp
inc rdx
cmp word [rax + rdx*2], 0
mov rdi, rdi
jne 0x14007c8e8
lea rcx, [rsp + 0x28]
xchg rdx, r13
mov qword [rsp + 0x60], r13
xchg r13, rdx
call fcn.14000ed40
mov dword [rsp - 0x24], 0x12087c6c
xor edi, edi
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0xa6c537e
add ecx, 0xddc4b08
xor ecx, 0x4bfa364
add ecx, 0x1b01f6a0
sub ecx, 0x217dbb18
cmp qword [rsp + 0x60], rdi
jbe 0x14007c995
lea r8, [rbp - 0x30]
mov dword [rsp - 0x3c], 0x5886e0e3
sub r8, rax
nop dword [rax]
nop dword [rax + rax]
movzx eax, cx
xchg r12, r12
lea rdx, [rdx + 2]
and ax, r15w
ror ecx, 1
ror ecx, 5
ror ecx, 1
ror ecx, 1
xor ax, word [r8 + rdx - 2]
inc rdi
mov word [rdx - 2], ax
mov dword [rsp - 0x20], esp
cmp rdi, qword [rsp + 0x60]
jb 0x14007c962
xchg rsp, rax
mov rsp, qword [r14 + 8]
xchg rsp, rax
test rax, rax
je 0x14007cbcc
mov r14, r14
mov rcx, qword [r14 + 0x10]
cmp rax, rcx
jb 0x14007cbc4
mov dword [rsp - 0x40], ebp
add rcx, qword [r14 + 0x18]
xchg rcx, r15
mov qword [r14 + 0x10], r15
xchg rcx, r15
shl rcx, 1
shl rcx, 2
shl rcx, 2
shl rcx, 1
call fcn.140096260
mov r11, r11
xchg rbp, rcx
mov rbp, qword [r14 + 8]
xchg rbp, rcx
xor esi, esi
mov dword [rsp - 0x38], 0x7dc739ef
xchg r13, rax
mov rax, r13
xchg r13, rax
test rcx, rcx
je 0x14007cb09
nop
movabs r15, 0xffffffff506cf57d
sub r15, 0x1fbc5e68
sub r15, 0xa0a4794
add r15, 0x7fffffff
add r15, 0x5959b048
lea rdi, [rax + 0x38]
sub r15, rax
nop dword [rax]
mov dword [rsp - 0x44], 0x20c0f551
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
mov dword [rsp - 0x3c], ebp
lea rbx, [r15 + rdi]
add rbx, qword [r14]
xchg rdx, rax
mov qword [rcx], rdx
xchg rdx, rax
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
xchg r9, rax
movups xmmword [r9 + 0x10], xmm0
xchg r9, rax
xchg rsp, rax
movups xmmword [rsp + 0x20], xmm0
xchg rsp, rax
xchg rdx, r10
mov r10, qword [rbx + 0x38]
xchg rdx, r10
mov qword [rdi], rdx
call fcn.14000ed40
mov dword [rsp - 0x14], 0x4ba6f742
xor ecx, ecx
cmp qword [rdi], rcx
jbe 0x14007caca
nop dword [rax]
mov dword [rsp - 0x34], esi
nop word [rax + rax]
mov rdx, qword [rbx]
movzx edx, word [rdx + rcx*2]
mov dword [rsp - 0x2c], esp
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, qword [rdi]
mov r11, r11
jb 0x14007caac
xchg rcx, rbx
mov rbx, qword [r14 + 8]
xchg rcx, rbx
inc rsi
xchg r13, r13
add rdi, 0x40
cmp rsi, rcx
jb 0x14007ca3f
mov r15d, 0xc7eddc0
add r15d, 0x597b2a36
xor r15d, 0x7f9aeee3
xor r15d, 0x4972fee5
xor r15d, 0x5312170f
cmp qword [r14], 0
je 0x14007cbb3
xor esi, esi
mov dword [rsp - 0x44], esi
test rcx, rcx
je 0x14007cba5
xor ebx, ebx
nop dword [rax + rax]
mov dword [rsp - 0x40], 0x3faf1b8c
xchg rdi, rax
mov rdi, qword [r14]
xchg rdi, rax
xchg rcx, r11
mov r11, qword [rbx + rax]
xchg rcx, r11
lea rdi, [rax + 8]
add rdi, rbx
mov dword [rsp - 0x14], 0x5c49b460
cmp rcx, rdi
jne 0x14007cb80
xor eax, eax
mov ecx, 0x70c4f14e
add ecx, 0x9b17005
sub ecx, 0x6d55a190
sub ecx, 0xd20bf93
rep stosb byte [rdi], al
xchg rdx, rdx
jmp 0x14007cb85
call fcn.140095ef0
inc rsi
mov dword [rsp - 0x44], ebp
nop
add rbx, 0x2928e12d
sub rbx, 0x2928e0ed
cmp rsi, qword [r14 + 8]
jb 0x14007cb34
xchg rcx, r11
mov r11, qword [r14]
xchg rcx, r11
call fcn.140095ef0
mov esi, dword [rbp + 0x110]
mov qword [r14], r13
mov r11, r11
jmp 0x14007cc12
mov r13, qword [r14]
jmp 0x14007cc12
xchg r13, rsi
mov rsi, qword [r14]
xchg r13, rsi
test r13, r13
mov dword [rsp - 0x40], esi
jne 0x14007cc12
mov rcx, qword [r14 + 0x18]
xchg r10, rcx
mov qword [r14 + 0x10], r10
xchg r10, rcx
shl rcx, 1
shl rcx, 4
shl rcx, 1
call fcn.140096260
mov rsi, rsi
xchg r13, r8
mov r8, rax
xchg r13, r8
xchg rdx, rax
mov qword [r14], rdx
xchg rdx, rax
mov rax, qword [r14 + 8]
xorps xmm0, xmm0
xchg r11, rax
mov rbx, r11
xchg r11, rax
shl rbx, 5
shl rbx, 1
add rbx, r13
inc rax
xchg rdi, rbx
mov rcx, rdi
xchg rbx, rdi
xchg rdx, rax
mov qword [r14 + 8], rdx
xchg rdx, rax
lea rax, [rbx + 8]
mov r14, r14
xchg r8, rax
mov qword [rbx], r8
xchg r8, rax
xchg r14, rax
movups xmmword [r14], xmm0
xchg r14, rax
xchg r13, rax
movups xmmword [r13 + 0x10], xmm0
xchg r13, rax
movups xmmword [rax + 0x20], xmm0
xchg r15, rax
mov r15, qword [rsp + 0x60]
xchg r15, rax
xchg rdi, rax
mov qword [rbx + 0x38], rdi
xchg rdi, rax
xchg r12, rdx
mov r12, qword [rsp + 0x60]
xchg rdx, r12
call fcn.14000ed40
mov dword [rsp - 0x34], ecx
xor edi, edi
cmp qword [rbx + 0x38], rdi
jbe 0x14007ccbf
mov dword [rsp - 0x28], ebx
nop
xchg r14, rcx
mov r14, qword [rsp + 0x28]
xchg rcx, r14
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
mov dword [rsp - 0x3c], esi
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14007cc97
mov dword [rsp - 0x40], esp
xchg rcx, rbx
mov rbx, qword [rsp + 0x28]
xchg rbx, rcx
lea rax, [rsp + 0x30]
cmp rcx, rax
mov dword [rsp - 0x28], ecx
jne 0x14007cd09
lea rdi, [rsp + 0x30]
xor eax, eax
mov ecx, 0x721f7398
sub ecx, 0x1ab4c5a
sub ecx, 0x2423f24b
xor ecx, 0x4c5034c3
rep stosb byte [rdi], al
mov dword [rsp - 0x40], 0x1a438fe3
jmp 0x14007cd0e
call fcn.140095ef0
mov r13, qword [rbp + 0x120]
xchg rsp, rsp
xchg r12, rbx
mov r12, qword [rsp + 0x20]
xchg r12, rbx
inc esi
mov dword [rbp + 0x110], esi
mov r13, r13
cmp esi, dword [rbp - 0x54]
jb 0x14007c71b
xchg r12, rbx
mov r12, qword [rbp + 0x118]
xchg rbx, r12
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
call fcn.140095db0
xchg r12, r12
mov rax, qword [r12 + 0x78]
mov r15, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1d8]
xchg rbx, r12
mov r12, qword [rsp + 0x228]
xchg r12, rbx
cmp rax, 0x78
jbe 0x14007cda9
xchg rcx, r8
mov r8, qword [r12]
xchg r8, rcx
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov dword [rsp - 0x1c], 0x7f1284ed
mov rcx, qword [r12]
call fcn.140095ef0
jmp 0x14007cdce
test rax, rax
je 0x14007cdce
mov dword [rsp - 0x24], 0x4935e872
mov rax, qword [r12]
xor edx, edx
xchg rcx, rdi
mov rdi, r12
xchg rdi, rcx
call qword [rax]
mov rbp, rbp
mov qword [r12 + 0x78], 0x505e1015
sub qword [r12 + 0x78], 0x1820e270
add qword [r12 + 0x78], 0x3c408f8
xor qword [r12 + 0x78], 0x73d1615
sub qword [r12 + 0x78], 0x3b3c2088
xchg r12, r14
mov rax, r12
xchg r14, r12
add rsp, 0x403a9779
sub rsp, 0x403a9599
nop
mov r14, qword [rsp]
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret