Function at 0x14009b690
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
nop
push 0x51977168
mov qword [rsp], rbp
nop
push 0x27e107a9
mov qword [rsp], rsi
push r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
mov qword [rsp - 8], r14
sub rsp, 8
lea rbp, [rsp - 0xc0]
add rsp, 0x110c07e9
sub rsp, 0x110c09a9
mov qword [rcx], 0x50218faa
sub qword [rcx], 0x3eef8bb5
xor qword [rcx], 0xd9da530
xor qword [rcx], 0x3fb1395d
sub qword [rcx], 0x231e9f98
mov rsi, r9
mov dword [rsp - 0x30], 0x2ef43d99
mov qword [rcx + 8], 0x6549a06
add qword [rcx + 8], 0x719accfd
sub qword [rcx + 8], 0x17b2eda9
xor qword [rcx + 8], 0x603c795a
xchg r13, r8
mov r8, r13
xchg r13, r8
mov qword [rcx + 0x10], 0x46f6b693
add qword [rcx + 0x10], 0x1f2e9acf
sub qword [rcx + 0x10], 0x3331c2b8
xor qword [rcx + 0x10], 0x32f38eaa
xchg r9, rdx
mov r12, r9
xchg rdx, r9
mov qword [rcx + 0x18], 0x4f648540
xor qword [rcx + 0x18], 0xf01e833
sub qword [rcx + 0x18], 0x2dc1b1ef
add qword [rcx + 0x18], 0x55b02919
sub qword [rcx + 0x18], 0x6853e49c
xchg r14, r13
mov r13, rcx
xchg r13, r14
mov rax, qword [rdx + 0x78]
cmp rax, 0x78
mov dword [rsp - 0x1c], edx
jbe 0x14009b7a6
xchg r8, rcx
mov r8, qword [rdx]
xchg r8, rcx
jmp 0x14009b7b7
xor ecx, ecx
mov dword [rsp - 0x30], 0xd8047ed
test rax, rax
cmovne rcx, r12
xchg rdi, rax
mov rdi, qword [rcx]
xchg rdi, rax
lea r8, [rsp + 0x28]
mov r9d, 0x1ca18778
xor r9d, 0x13b18aa6
xor r9d, 0x5789ca16
sub r9d, 0xa9d9078
sub r9d, 0x4dfc373c
xchg rdx, r13
mov r13, rdx
xchg rdx, r13
call qword [rax + 8]
test al, al
mov rcx, rcx
jne 0x14009b813
xchg r12, r10
mov rcx, r10
xchg r12, r10
call fcn.1400958f0
mov dword [rsp - 0x40], edx
jmp 0x14009c1f9
mov qword [rsp + 0x208], rbx
xchg rsi, rdi
mov qword [rsp + 0x1b8], rsi
xchg rdi, rsi
nop
movabs rdi, 0xffffffff23228d40
xor rdi, 0xb4c128b
add rdi, 0x16cb4623
xor rdi, 0x3ac26be5
add rdi, 0x7fffffff
add rdi, 0x7a0471f5
xchg rdi, rsp
mov rax, rsp
xchg rdi, rsp
xchg r10, r15
mov qword [rsp + 0x1b0], r10
xchg r15, r10
nop word [rax + rax]
xchg r15, r15
inc rax
cmp word [rsi + rax*2 + 8], 0
jne 0x14009b87b
mov ecx, dword [rsp + 0x2c]
mov dword [rsp - 0x14], esi
lea r15, [rax - 4]
cmp rax, 4
cmovbe r15, rax
mov eax, 0xc4ec4cc
add eax, 0x406263a7
sub eax, 0xa5d4147
sub eax, 0x4253e720
mul rcx
xchg rcx, rcx
cmovo rax, rdi
xchg r12, rax
mov rcx, r12
xchg r12, rax
call fcn.1400b6e40
mov ecx, dword [rsp + 0x2c]
xchg rdx, rdx
xchg rsp, rbx
mov rsp, rax
xchg rbx, rsp
xchg rdi, rdx
mov rdi, qword [r12 + 0x78]
xchg rdx, rdi
xchg r8, rax
mov qword [rbp + 0xf8], r8
xchg r8, rax
lea r9, [rcx + rcx*2]
xchg r10, r10
shl r9, 1
shl r9, 1
cmp rdx, 0x78
mov dword [rsp - 0x10], edi
jbe 0x14009b918
xchg rcx, r14
mov r14, qword [r12]
xchg rcx, r14
jmp 0x14009b924
xor ecx, ecx
test rdx, rdx
cmovne rcx, r12
xchg r9, r9
mov rax, qword [rcx]
lea rdx, [r13 + 8]
xchg r15, rbx
mov r8, r15
xchg rbx, r15
call qword [rax + 8]
mov rbx, rbx
test al, al
je 0x14009c139
xor edi, edi
mov dword [rsp - 0x3c], ebp
cmp dword [rsp + 0x2c], edi
jbe 0x14009c139
xorps xmm0, xmm0
mov dword [rsp - 0x3c], 0x286ce2dc
lea rcx, [rdi + rdi*2]
mov eax, dword [rbx + rcx*4 + 4]
lea rbx, [rbx + rcx*4]
mov dword [rsp - 0x40], 0x3c03d826
mov edx, 0x697903a7
xor edx, 0x2498f24a
sub edx, 0x4046c737
xor edx, 0x60ce6c6c
sub edx, 0x6d55465c
mov r9d, edx
mov dword [rsp - 0x44], 0x74c2139d
xchg rcx, rbp
movups xmmword [rcx + 0x30], xmm0
xchg rbp, rcx
xchg rdx, rbp
movups xmmword [rdx + 0x40], xmm0
xchg rdx, rbp
xchg rbp, r12
movups xmmword [r12 + 0x50], xmm0
xchg rbp, r12
xchg rbx, rbp
movups xmmword [rbx + 0x60], xmm0
xchg rbp, rbx
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
mov dword [rsp - 0x10], 0x29a679b2
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
cmp eax, edx
mov dword [rsp - 0x14], ecx
ja 0x14009b9f3
mov r9d, eax
mov edx, dword [rbx]
mov rax, qword [r12 + 0x78]
mov dword [rsp - 0x14], 0x5209cecb
add rdx, r13
cmp rax, 0x78
jbe 0x14009ba21
xchg rdx, rdx
xchg rcx, rdi
mov rdi, qword [r12]
xchg rcx, rdi
jmp 0x14009ba2d
xor ecx, ecx
mov r8, r8
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
mov rdx, rdx
lea r8, [rbp + 0x30]
call qword [rax + 8]
test al, al
mov dword [rsp - 0x10], esp
je 0x14009ba6a
mov r8, r15
lea rdx, [rsi + 8]
lea rcx, [rbp + 0x30]
mov dword [rsp - 0x24], esp
call fcn.1400b7e20
test eax, eax
je 0x14009ba86
mov dword [rsp - 0x40], 0x68e15030
mov rbx, qword [rbp + 0xf8]
inc edi
cmp edi, dword [rsp + 0x2c]
mov dword [rsp - 0x40], ebp
jae 0x14009c139
jmp 0x14009b952
mov ebx, dword [rbx + 8]
mov dword [rsp - 0x38], ecx
xchg r10, rax
mov r10, qword [r12 + 0x78]
xchg r10, rax
add rbx, r13
xchg r13, r13
mov qword [rsp + 0x20], rbx
cmp rax, 0x78
jbe 0x14009baba
xchg rcx, rbx
mov rbx, qword [r12]
xchg rbx, rcx
jmp 0x14009bac6
xor ecx, ecx
test rax, rax
cmovne rcx, r12
xchg rdx, rdx
xchg r15, rax
mov r15, qword [rcx]
xchg r15, rax
lea r8, [rbp - 0x70]
xchg rcx, rcx
mov r9d, 0x376d6807
add r9d, 0x16ae3e9f
sub r9d, 0x7482045
xor r9d, 0x46d38675
mov rdx, rbx
call qword [rax + 8]
mov dword [rsp - 0x44], edi
test al, al
je 0x14009c12c
xor esi, esi
mov r14, r14
mov dword [rbp + 0xf0], esi
cmp dword [rbp - 0x70], esi
jbe 0x14009c12c
mov r15d, 0x821b10a
xor r15d, 0x315e5f31
add r15d, 0x353d93b8
sub r15d, 0x6ebd80f4
nop word [rax + rax]
xchg rbp, rbp
mov rax, qword [r12 + 0x78]
cmp rax, 0x78
jbe 0x14009bb5a
xchg rcx, r15
mov r15, qword [r12]
xchg r15, rcx
jmp 0x14009bb67
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov dword [rsp - 0x20], edi
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
lea r8, [rbp - 0x80]
mov dword [rsp - 0x38], esi
mov edx, esi
mov r9d, 0xffe9689
add r9d, 0x35cc0929
sub r9d, 0x27349fbc
add r9d, 0x44bbfa86
sub r9d, 0x6351fa6c
shl rdx, 1
shl rdx, 3
add rdx, 4
mov rdi, qword [rax + 8]
mov r12, r12
add rdx, rbx
call rdi
test al, al
je 0x14009c118
mov dword [rsp - 0x44], edx
movzx eax, word [rbp - 0x74]
xorps xmm0, xmm0
mov ecx, 0x69ab1a2c
add ecx, 0xff528eb
xor ecx, 0x2559087e
sub ecx, 0x5cf94aeb
mov r9d, ecx
movups xmmword [rbp - 0x50], xmm0
xchg r11, r11
xchg rbp, rsp
movups xmmword [rsp - 0x40], xmm0
xchg rsp, rbp
xchg r8, rbp
movups xmmword [r8 - 0x30], xmm0
xchg r8, rbp
xchg rbp, rdi
movups xmmword [rdi - 0x20], xmm0
xchg rdi, rbp
movups xmmword [rbp - 0x10], xmm0
xchg r13, rbp
movups xmmword [r13], xmm0
xchg rbp, r13
movups xmmword [rbp + 0x10], xmm0
mov dword [rsp - 0x18], esp
xchg r9, rbp
movups xmmword [r9 + 0x20], xmm0
xchg rbp, r9
cmp cx, ax
jb 0x14009bc36
mov r9d, eax
xchg r15, r15
mov edx, dword [rbp - 0x78]
mov rax, qword [r12 + 0x78]
add rdx, r13
cmp rax, 0x78
mov dword [rsp - 0x38], 0x41d79c80
jbe 0x14009bc62
xchg rsi, rcx
mov rsi, qword [r12]
xchg rsi, rcx
jmp 0x14009bc6e
xor ecx, ecx
xchg rdi, rdi
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x50]
mov dword [rsp - 0x30], 0x3554fc4d
call qword [rax + 8]
test al, al
je 0x14009c118
xorps xmm0, xmm0
mov dword [rsp - 0x18], 0x7e318b30
lea rax, [rsp + 0x48]
mov qword [rsp + 0x40], rax
nop
movabs rdx, 0xffffffff47a611ba
sub rdx, 0x3ae1cf4f
add rdx, 0x594f36fb
sub rdx, 0xeae2631
add rdx, 0x7fffffff
add rdx, 0x289aaccb
lea rax, [rbp - 0x50]
xchg r11, rsp
movups xmmword [r11 + 0x48], xmm0
xchg rsp, r11
xchg rsp, r9
movups xmmword [r9 + 0x58], xmm0
xchg r9, rsp
xchg rdx, rsp
movups xmmword [rdx + 0x68], xmm0
xchg rdx, rsp
inc rdx
mov dword [rsp - 0x10], 0x41d6a22e
cmp word [rax + rdx*2], 0
jne 0x14009bcef
lea rcx, [rsp + 0x40]
xchg rdx, rbp
mov qword [rsp + 0x78], rbp
xchg rdx, rbp
call fcn.140010f10
xor edi, edi
mov r8, r8
xchg rdx, r9
mov r9, rax
xchg r9, rdx
mov ecx, 0x36334bba
add ecx, 0x18accafd
add ecx, 0x1ec4d6b5
sub ecx, 0x164874cf
sub ecx, 0x262c4b16
cmp qword [rsp + 0x78], rdi
jbe 0x14009bda3
xchg r12, r12
lea r8, [rbp - 0x50]
sub r8, rax
nop dword [rax]
mov rsp, rsp
nop word [rax + rax]
movzx eax, cx
lea rdx, [rdx + 2]
mov r9, r9
and ax, r15w
ror ecx, 2
ror ecx, 1
ror ecx, 1
ror ecx, 1
ror ecx, 1
ror ecx, 1
ror ecx, 1
xor ax, word [r8 + rdx - 2]
inc rdi
mov word [rdx - 2], ax
mov dword [rsp - 0x40], ebp
cmp rdi, qword [rsp + 0x78]
jb 0x14009bd6a
mov rax, qword [r14 + 8]
mov r8, r8
test rax, rax
je 0x14009bfc6
mov rcx, qword [r14 + 0x10]
cmp rax, rcx
mov r11, r11
jb 0x14009bfb8
add rcx, qword [r14 + 0x18]
mov qword [r14 + 0x10], rcx
shl rcx, 6
xchg rdx, rdx
call fcn.1400b71e0
xchg rcx, r12
mov r12, qword [r14 + 8]
xchg r12, rcx
xor esi, esi
xchg r10, rax
mov r13, r10
xchg r10, rax
test rcx, rcx
xchg r9, r9
je 0x14009bf03
nop
movabs r15, 0xffffffff566429f1
xor r15, 0x2205f4f7
add r15, 0xa9825d2
add r15, 0x7fffffff
add r15, 0x105fcf1
lea rdi, [rax + 0x38]
sub r15, rax
mov r13, r13
nop dword [rax]
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
mov dword [rsp - 0x14], 0x46e43312
lea rbx, [r15 + rdi]
add rbx, qword [r14]
mov qword [rcx], rax
xchg r12, rax
movups xmmword [r12], xmm0
xchg r12, rax
xchg rdi, rax
movups xmmword [rdi + 0x10], xmm0
xchg rdi, rax
xchg rsi, rax
movups xmmword [rsi + 0x20], xmm0
xchg rsi, rax
xchg r12, rdx
mov r12, qword [rbx + 0x38]
xchg r12, rdx
xchg rdx, r12
mov qword [rdi], r12
xchg rdx, r12
call fcn.140010f10
xor ecx, ecx
mov dword [rsp - 0x2c], 0x3696d433
cmp qword [rdi], rcx
jbe 0x14009bec9
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0x14], ebp
xchg rsp, rdx
mov rsp, qword [rbx]
xchg rdx, rsp
movzx edx, word [rdx + rcx*2]
mov dword [rsp - 0x38], edi
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, qword [rdi]
jb 0x14009bea0
mov dword [rsp - 0x1c], 0x18604b19
mov rcx, qword [r14 + 8]
inc rsi
nop
sub rdi, 0x317e3f98
add rdi, 0x317e3fd8
cmp rsi, rcx
jb 0x14009be2e
mov r15d, 0x34671ea8
xor r15d, 0x2d718fcb
xor r15d, 0x79c57299
sub r15d, 0x60d3e2fb
cmp qword [r14], 0
mov dword [rsp - 0x1c], 0x76bd604c
je 0x14009bfa4
xor esi, esi
test rcx, rcx
mov rdi, rdi
je 0x14009bf99
xor ebx, ebx
nop dword [rax + rax]
xchg r13, r13
mov rax, qword [r14]
xchg rbp, rcx
mov rbp, qword [rbx + rax]
xchg rbp, rcx
lea rdi, [rax + 8]
add rdi, rbx
mov dword [rsp - 0xc], 0x79172ba2
cmp rcx, rdi
jne 0x14009bf75
xor eax, eax
mov ecx, 0x4cb7db1d
add ecx, 0x16bae81
xor ecx, 0x71bf5306
xor ecx, 0x3f9cdaa8
rep stosb byte [rdi], al
jmp 0x14009bf7a
call fcn.1400b6f90
inc rsi
nop
sub rbx, 0x2ae27391
add rbx, 0x2ae273d1
cmp rsi, qword [r14 + 8]
mov r15, r15
jb 0x14009bf30
mov rcx, qword [r14]
call fcn.1400b6f90
xchg rbp, rbp
mov esi, dword [rbp + 0xf0]
xchg r13, rsp
mov qword [r14], rsp
xchg rsp, r13
jmp 0x14009c00c
xchg r13, rdi
mov rdi, qword [r14]
xchg r13, rdi
jmp 0x14009c00c
xchg rbx, r13
mov rbx, qword [r14]
xchg rbx, r13
test r13, r13
mov r15, r15
jne 0x14009c00c
mov rcx, qword [r14 + 0x18]
xchg rcx, r13
mov qword [r14 + 0x10], r13
xchg rcx, r13
shl rcx, 3
shl rcx, 2
shl rcx, 1
call fcn.1400b71e0
xchg r11, r11
xchg r13, rdi
mov rdi, rax
xchg rdi, r13
xchg rsp, rax
mov qword [r14], rsp
xchg rsp, rax
xchg rdi, rax
mov rdi, qword [r14 + 8]
xchg rdi, rax
xorps xmm0, xmm0
mov rcx, rcx
xchg rcx, rbx
mov rcx, rax
xchg rbx, rcx
shl rbx, 5
shl rbx, 1
add rbx, r13
mov dword [rsp - 0x30], 0x70d6b975
inc rax
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
xchg rdx, rax
mov qword [r14 + 8], rdx
xchg rdx, rax
lea rax, [rbx + 8]
mov qword [rbx], rax
mov r10, r10
xchg r9, rax
movups xmmword [r9], xmm0
xchg r9, rax
xchg rsi, rax
movups xmmword [rsi + 0x10], xmm0
xchg rsi, rax
movups xmmword [rax + 0x20], xmm0
xchg r13, rax
mov r13, qword [rsp + 0x78]
xchg r13, rax
xchg rdi, rax
mov qword [rbx + 0x38], rdi
xchg rdi, rax
xchg rdx, r11
mov r11, qword [rsp + 0x78]
xchg r11, rdx
call fcn.140010f10
xor edi, edi
cmp qword [rbx + 0x38], rdi
mov dword [rsp - 0x20], edx
jbe 0x14009c0c0
nop
xchg rcx, rsi
mov rsi, qword [rsp + 0x40]
xchg rsi, rcx
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
mov dword [rsp - 0x34], edx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14009c099
mov rdi, rdi
xchg rcx, r15
mov r15, qword [rsp + 0x40]
xchg r15, rcx
lea rax, [rsp + 0x48]
xchg r13, r13
cmp rcx, rax
jne 0x14009c104
lea rdi, [rsp + 0x48]
xor eax, eax
mov rdx, rdx
mov ecx, 0x2e698b4b
xor ecx, 0x3cc57cb6
xor ecx, 0x2be1eec2
sub ecx, 0x394d190f
rep stosb byte [rdi], al
jmp 0x14009c10c
call fcn.1400b6f90
mov r12, r12
mov r13, qword [rbp + 0x100]
mov rbx, qword [rsp + 0x20]
inc esi
mov dword [rbp + 0xf0], esi
mov r12, r12
cmp esi, dword [rbp - 0x70]
jb 0x14009bb3c
xchg rdx, rbx
mov rdx, qword [rbp + 0xf8]
xchg rdx, rbx
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
call fcn.1400b6e50
mov dword [rsp - 0x28], ebx
xchg r15, rax
mov r15, qword [r12 + 0x78]
xchg r15, rax
xchg r15, rdi
mov rdi, qword [rsp + 0x1b0]
xchg rdi, r15
mov rdi, qword [rsp + 0x1b8]
mov rbx, qword [rsp + 0x208]
mov r9, r9
cmp rax, 0x78
jbe 0x14009c1aa
xchg r9, rcx
mov r9, qword [r12]
xchg r9, rcx
xor edx, edx
xchg rdi, rdi
mov rax, qword [rcx]
call qword [rax]
xchg r10, rcx
mov r10, qword [r12]
xchg r10, rcx
call fcn.1400b6f90
mov rbp, rbp
jmp 0x14009c1cc
test rax, rax
mov dword [rsp - 0x44], ecx
je 0x14009c1cc
xchg r10, rax
mov r10, qword [r12]
xchg r10, rax
xor edx, edx
xchg rdi, r12
mov rcx, rdi
xchg rdi, r12
call qword [rax]
mov qword [r12 + 0x78], 0x4c245765
add qword [r12 + 0x78], 0x28c17dc0
xor qword [r12 + 0x78], 0x66dc19e2
xor qword [r12 + 0x78], 0x4c65a3d7
sub qword [r12 + 0x78], 0x5e5c6f10
xchg rcx, rax
mov rcx, r14
xchg rcx, rax
neg rsp
add rsp, 0xfffffffffffffe40
neg rsp
pop r14
pop r13
mov rcx, rcx
pop r12
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
ret