Function at 0x14008d5ac
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r13
push r14
mov rbx, rbx
lea rbp, [rsp - 0xe0]
add rsp, 0x7c258ca9
sub rsp, 0x7c258e89
mov qword [rcx], 0x3c9f4d97
add qword [rcx], 0x1b6389a8
sub qword [rcx], 0x64ce0e7
xor qword [rcx], 0x7b8ea768
xor qword [rcx], 0x2a3b5130
xchg r14, r9
mov r9, r14
xchg r9, r14
mov qword [rcx + 8], 0x532554ae
sub qword [rcx + 8], 0x2074814c
add qword [rcx + 8], 0x423e28f3
xor qword [rcx + 8], 0x6156588
sub qword [rcx + 8], 0x72fb99dd
xchg r8, r9
mov r13, r9
xchg r8, r9
mov qword [rcx + 0x10], 0x28cd1367
add qword [rcx + 0x10], 0xfe116ed
add qword [rcx + 0x10], 0x471036dc
sub qword [rcx + 0x10], 0x21e8583c
sub qword [rcx + 0x10], 0x5dd608f4
xchg r12, rdx
mov rdx, r12
xchg r12, rdx
mov qword [rcx + 0x18], 0x51817418
add qword [rcx + 0x18], 0x1ec26596
sub qword [rcx + 0x18], 0x5b13c049
xor qword [rcx + 0x18], 0x15301964
xchg rsi, rcx
mov rcx, rsi
xchg rsi, rcx
xchg r13, rax
mov r13, qword [rdx + 0x78]
xchg r13, rax
cmp rax, 0x78
jbe 0x14008d15a
mov dword [rsp - 0x3c], ebx
xchg r12, rcx
mov r12, qword [rdx]
xchg rcx, r12
jmp 0x14008d166
xor ecx, ecx
xchg rsi, rsi
test rax, rax
cmovne rcx, r12
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
lea r8, [rbp - 0x80]
mov r9d, 0x7636156e
xor r9d, 0x551fa21d
xor r9d, 0x39b0063f
sub r9d, 0x1a99b124
xchg rdx, r13
mov r13, rdx
xchg r13, rdx
call qword [rax + 8]
test al, al
mov dword [rsp - 0x30], ebp
jne 0x14008d1b7
xchg r12, rcx
mov r12, rcx
xchg rcx, r12
call fcn.140086a20
jmp 0x14008dbc7
xchg rbx, r13
mov qword [rsp + 0x228], r13
xchg rbx, r13
mov qword [rsp + 0x1d8], rdi
mov dword [rsp - 0x30], esi
nop
movabs rdi, 0xffffffff18eb1abb
add rdi, 0x1cc67073
sub rdi, 0x334000ec
xor rdi, 0x6a2e9aba
add rdi, 0x7fffffff
add rdi, 0x17a0ef08
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
mov qword [rsp + 0x1d0], r15
mov dword [rsp - 0x10], 0x3b4d82cd
nop word [rax + rax]
inc rax
cmp word [r14 + rax*2 + 8], 0
jne 0x14008d221
mov r12, r12
mov ecx, dword [rbp - 0x74]
lea r15, [rax - 4]
cmp rax, 4
cmovbe r15, rax
mov dword [rsp - 0x40], esp
mov eax, 0x2b20f7f2
sub eax, 0x14039d21
add eax, 0x855bbd4
add eax, 0x3a93b18f
sub eax, 0x5a06c81c
mul rcx
cmovo rax, rdi
mov r15, r15
xchg rcx, r13
mov r13, rax
xchg rcx, r13
call fcn.140099030
mov dword [rsp - 0x40], edx
mov ecx, dword [rbp - 0x74]
xchg rbx, r10
mov r10, rax
xchg rbx, r10
xchg rdx, rbp
mov rbp, qword [r12 + 0x78]
xchg rbp, rdx
xchg r10, rax
mov qword [rbp + 0x118], r10
xchg r10, rax
lea r9, [rcx + rcx*2]
xchg rdi, rdi
shl r9, 3
cmp rdx, 0x78
jbe 0x14008d2c2
xchg rbp, rcx
mov rbp, qword [r12]
xchg rcx, rbp
jmp 0x14008d2d3
xor ecx, ecx
mov dword [rsp - 0x34], 0x294e3451
test rdx, rdx
cmovne rcx, r12
mov rax, qword [rcx]
mov dword [rsp - 0x18], 0x7673ea2b
lea rdx, [r13 + 0x10]
xchg rbx, rsp
mov r8, rsp
xchg rbx, rsp
call qword [rax + 8]
test al, al
mov dword [rsp - 0xc], 0x7fbb67e
je 0x14008db0a
xor edi, edi
cmp dword [rbp - 0x74], edi
mov r13, r13
jbe 0x14008db0a
nop
xorps xmm0, xmm0
lea rcx, [rdi + rdi*2]
mov r13, r13
mov eax, dword [rbx + rcx*8 + 8]
lea rbx, [rbx + rcx*8]
mov r9d, 0x68973eff
sub r9d, 0x681751ab
add r9d, 0x5d98809c
sub r9d, 0x231d65a4
xor r9d, 0x3afb0832
xchg rbp, r9
movups xmmword [r9 + 0x50], xmm0
xchg r9, rbp
xchg rbx, rbp
movups xmmword [rbx + 0x60], xmm0
xchg rbp, rbx
xchg rsi, rbp
movups xmmword [rsi + 0x70], xmm0
xchg rbp, rsi
xchg rbp, rdi
movups xmmword [rdi + 0x80], xmm0
xchg rdi, rbp
xchg rbp, r10
movups xmmword [r10 + 0x90], xmm0
xchg rbp, r10
movups xmmword [rbp + 0xa0], xmm0
xchg rbp, r10
movups xmmword [r10 + 0xb0], xmm0
xchg r10, rbp
xchg rbp, rdi
movups xmmword [rdi + 0xc0], xmm0
xchg rdi, rbp
cmp eax, 0x7e
ja 0x14008d3ad
mov rsp, rsp
mov r9d, eax
mov edx, dword [rbx + 4]
xchg rbp, rax
mov rbp, qword [r12 + 0x78]
xchg rbp, rax
add rdx, r13
mov r12, r12
cmp rax, 0x78
jbe 0x14008d3d8
xchg rdx, rcx
mov rdx, qword [r12]
xchg rcx, rdx
jmp 0x14008d3e4
xor ecx, ecx
test rax, rax
cmovne rcx, r12
xchg rbx, rbx
mov rax, qword [rcx]
lea r8, [rbp + 0x50]
call qword [rax + 8]
test al, al
mov dword [rsp - 0x44], ebx
je 0x14008d41f
xchg r8, r11
mov r11, r15
xchg r8, r11
lea rdx, [r14 + 8]
mov dword [rsp - 0x3c], edi
lea rcx, [rbp + 0x50]
call fcn.14009a000
test eax, eax
xchg rbp, rbp
je 0x14008d43a
mov rbx, qword [rbp + 0x118]
inc edi
mov dword [rsp - 0x30], ecx
cmp edi, dword [rbp - 0x74]
jae 0x14008db0a
jmp 0x14008d30e
mov ebx, dword [rbx + 0x14]
xchg rdi, rax
mov rdi, qword [r12 + 0x78]
xchg rdi, rax
add rbx, r13
mov qword [rsp + 0x20], rbx
cmp rax, 0x78
xchg rsp, rsp
jbe 0x14008d464
mov rcx, qword [r12]
jmp 0x14008d471
xor ecx, ecx
test rax, rax
mov dword [rsp - 0x10], esp
cmovne rcx, r12
xchg r15, rax
mov r15, qword [rcx]
xchg r15, rax
lea r8, [rbp - 0x58]
mov r9d, 0x2b4a0d57
xor r9d, 0x681e725c
xor r9d, 0x63ad29ba
sub r9d, 0x20f95695
xchg rdi, rbx
mov rdx, rdi
xchg rdi, rbx
call qword [rax + 8]
mov dword [rsp - 0x1c], 0x74c8cb0
test al, al
je 0x14008dafd
xor r14d, r14d
mov dword [rbp + 0x110], r14d
mov dword [rsp - 0x2c], ecx
cmp dword [rbp - 0x54], r14d
jbe 0x14008dafd
mov r15d, 0x28fbef65
xor r15d, 0x3babf1b4
add r15d, 0x4cd3f18b
sub r15d, 0x2e3c4cb4
sub r15d, 0x31e7c2a9
nop
mov dword [rsp - 0x2c], edi
mov rax, qword [r12 + 0x78]
cmp rax, 0x78
jbe 0x14008d50e
mov dword [rsp - 0x34], edi
mov rcx, qword [r12]
jmp 0x14008d51b
xor ecx, ecx
mov dword [rsp - 0x3c], esi
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
mov dword [rsp - 0x44], ebx
lea r8, [rsp + 0x68]
mov edx, r14d
mov r9d, 0x23e43b1d
xor r9d, 0x37b7c926
add r9d, 0x46e996f2
add r9d, 0x23631483
xor r9d, 0x7ea09da4
sub rdx, 0xfffffffffffffffe
xchg r8, rdi
mov r8, qword [rax + 8]
xchg r8, rdi
lea rdx, [rdx + r14*4]
xchg rsi, rsi
lea rdx, [rbx + rdx*4]
call rdi
test al, al
je 0x14008dae5
mov dword [rsp - 0x1c], ecx
mov eax, dword [rsp + 0x78]
xorps xmm0, xmm0
mov r9d, 0xc386187
sub r9d, 0x6e0bea3
xor r9d, 0x47667e7
add r9d, 0x7a38028
sub r9d, 0x8c544ad
xchg rbp, rsi
movups xmmword [rsi - 0x30], xmm0
xchg rbp, rsi
xchg rbp, rdi
movups xmmword [rdi - 0x20], xmm0
xchg rdi, rbp
xchg rbp, r13
movups xmmword [r13 - 0x10], xmm0
xchg rbp, r13
movups xmmword [rbp], xmm0
xchg rbp, rcx
movups xmmword [rcx + 0x10], xmm0
xchg rcx, rbp
xchg r10, rbp
movups xmmword [r10 + 0x20], xmm0
xchg r10, rbp
xchg rbp, r14
movups xmmword [r14 + 0x30], xmm0
xchg rbp, r14
xchg r11, rbp
movups xmmword [r11 + 0x40], xmm0
xchg r11, rbp
cmp eax, 0x7e
ja 0x14008d5fe
mov r9d, eax
mov dword [rsp - 0x30], 0x8b5ceb8
mov edx, dword [rsp + 0x74]
mov rax, qword [r12 + 0x78]
add rdx, r13
mov rcx, rcx
cmp rax, 0x78
jbe 0x14008d626
xchg r10, rcx
mov r10, qword [r12]
xchg r10, rcx
jmp 0x14008d633
xor ecx, ecx
test rax, rax
mov dword [rsp - 0x28], ebp
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x30]
call qword [rax + 8]
mov dword [rsp - 0x14], edx
test al, al
je 0x14008dae5
xorps xmm0, xmm0
mov rbp, rbp
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
nop
movabs rdx, 0xffffffff4c2deb89
add rdx, 0x1fe0f84a
sub rdx, 0x4c609c42
add rdx, 0x593199d8
add rdx, 0x7fffffff
add rdx, 0x7201e97
lea rax, [rbp - 0x30]
mov dword [rsp - 0x18], 0x198d6533
xchg rsp, r15
movups xmmword [r15 + 0x30], xmm0
xchg rsp, r15
xchg rsp, rbp
movups xmmword [rbp + 0x40], xmm0
xchg rbp, rsp
xchg rbp, rsp
movups xmmword [rbp + 0x50], xmm0
xchg rbp, rsp
inc rdx
cmp word [rax + rdx*2], 0
mov rdi, rdi
jne 0x14008d6b2
lea rcx, [rsp + 0x28]
xchg r14, rdx
mov qword [rsp + 0x60], r14
xchg r14, rdx
call fcn.140017954
xor edi, edi
mov dword [rsp - 0x40], edi
xchg r11, rdx
mov r11, rax
xchg rdx, r11
mov ecx, 0x31628017
sub ecx, 0x315f6466
xor ecx, 0x1657eded
add ecx, 0x4c5c4df9
cmp qword [rsp + 0x60], rdi
mov dword [rsp - 0x3c], 0xee24de1
jbe 0x14008d755
lea r8, [rbp - 0x30]
sub r8, rax
nop word [rax + rax]
mov r15, r15
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r15w
xchg r15, r15
ror ecx, 8
xor ax, word [r8 + rdx - 2]
inc rdi
mov rbx, rbx
mov word [rdx - 2], ax
cmp rdi, qword [rsp + 0x60]
jb 0x14008d726
xchg r10, r10
xchg r15, rax
mov r15, qword [rsi + 8]
xchg r15, rax
test rax, rax
xchg r9, r9
je 0x14008d987
mov rcx, qword [rsi + 0x10]
cmp rax, rcx
xchg r14, r14
jb 0x14008d979
add rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
mov dword [rsp - 0x18], ebp
shl rcx, 5
shl rcx, 1
call fcn.140099500
xchg rcx, rbx
mov rbx, qword [rsi + 8]
xchg rbx, rcx
xor r14d, r14d
mov dword [rsp - 0x24], 0x23f417ff
mov r13, rax
test rcx, rcx
je 0x14008d8c5
xchg r14, r14
nop
movabs r15, 0xffffffff28391aa2
add r15, 0x5488a626
sub r15, 0x731a2e61
add r15, 0x7fffffff
xor r15, 0x76586dae
lea rdi, [rax + 0x38]
mov dword [rsp - 0x14], 0x110b5677
sub r15, rax
nop word [rax + rax]
lea rax, [rdi - 0x30]
mov r10, r10
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
lea rbx, [r15 + rdi]
xchg r9, r9
add rbx, qword [rsi]
mov qword [rcx], rax
xchg rbp, rax
movups xmmword [rbp], xmm0
xchg rbp, rax
movups xmmword [rax + 0x10], xmm0
mov dword [rsp - 0x28], edx
xchg rbp, rax
movups xmmword [rbp + 0x20], xmm0
xchg rbp, rax
xchg rsi, rdx
mov rsi, qword [rbx + 0x38]
xchg rdx, rsi
xchg r12, rdx
mov qword [rdi], r12
xchg rdx, r12
call fcn.140017954
xor ecx, ecx
mov dword [rsp - 0x20], 0xaec6978
cmp qword [rdi], rcx
jbe 0x14008d883
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0x20], 0x745e188a
mov rdx, qword [rbx]
movzx edx, word [rdx + rcx*2]
mov word [rax + rcx*2], dx
inc rcx
mov dword [rsp - 0x40], 0x725f9725
cmp rcx, qword [rdi]
jb 0x14008d864
mov rcx, qword [rsi + 8]
mov dword [rsp - 0x1c], esi
inc r14
add rdi, 0x40
cmp r14, rcx
mov dword [rsp - 0x28], 0x16876d0f
jb 0x14008d7f1
mov r15d, 0x2e1d349e
sub r15d, 0x57fb20e
add r15d, 0x2f28c6e1
sub r15d, 0x2d7883b3
xor r15d, 0x2a4dc541
cmp qword [rsi], 0
je 0x14008d96a
xchg r14, r14
xor ebx, ebx
test rcx, rcx
je 0x14008d95e
xor r14d, r14d
mov dword [rsp - 0x3c], 0x51ed6e73
nop dword [rax]
mov rax, qword [rsi]
mov rcx, qword [r14 + rax]
xchg r13, r13
lea rdi, [rax + 8]
add rdi, r14
cmp rcx, rdi
xchg rbx, rbx
jne 0x14008d932
xor eax, eax
mov ecx, 0x43ee25d2
add ecx, 0x64ba30c
add ecx, 0x2869f31a
xor ecx, 0x433df22f
sub ecx, 0x319e49a7
rep stosb byte [rdi], al
jmp 0x14008d93a
call fcn.140099230
mov r12, r12
inc rbx
nop
add r14, 0x3e322e41
sub r14, 0x3e322e01
cmp rbx, qword [rsi + 8]
mov dword [rsp - 0x3c], 0x6aeb9bed
jb 0x14008d8ef
mov rcx, qword [rsi]
call fcn.140099230
mov dword [rsp - 0xc], ebp
mov r14d, dword [rbp + 0x110]
mov qword [rsi], r13
jmp 0x14008d9c2
xchg r13, rsp
mov rsp, qword [rsi]
xchg r13, rsp
jmp 0x14008d9c2
xchg r13, rbx
mov rbx, qword [rsi]
xchg rbx, r13
test r13, r13
mov dword [rsp - 0x28], ebp
jne 0x14008d9c2
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
shl rcx, 2
shl rcx, 2
shl rcx, 1
shl rcx, 1
call fcn.140099500
mov r13, rax
xchg rdx, rax
mov qword [rsi], rdx
xchg rdx, rax
xchg rsp, rax
mov rsp, qword [rsi + 8]
xchg rsp, rax
xorps xmm0, xmm0
xchg rbp, rbp
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
shl rbx, 4
shl rbx, 1
shl rbx, 1
add rbx, r13
inc rax
xchg r15, r15
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
xchg r14, rax
mov qword [rsi + 8], r14
xchg r14, rax
lea rax, [rbx + 8]
mov dword [rsp - 0x30], 0x2950fa25
xchg rsp, rax
mov qword [rbx], rsp
xchg rsp, rax
xchg r13, rax
movups xmmword [r13], xmm0
xchg r13, rax
xchg r10, rax
movups xmmword [r10 + 0x10], xmm0
xchg r10, rax
xchg r15, rax
movups xmmword [r15 + 0x20], xmm0
xchg r15, rax
mov rax, qword [rsp + 0x60]
xchg rdi, rax
mov qword [rbx + 0x38], rdi
xchg rdi, rax
xchg rdx, r14
mov r14, qword [rsp + 0x60]
xchg rdx, r14
call fcn.140017954
xor edi, edi
mov dword [rsp - 0x40], 0x147f9942
cmp qword [rbx + 0x38], rdi
jbe 0x14008da7a
mov rcx, qword [rsp + 0x28]
movzx edx, word [rcx + rdi*2]
xchg rdi, rdi
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
mov r12, r12
jb 0x14008da5a
xchg r13, rcx
mov r13, qword [rsp + 0x28]
xchg r13, rcx
lea rax, [rsp + 0x30]
cmp rcx, rax
mov dword [rsp - 0x18], esp
jne 0x14008dac8
lea rdi, [rsp + 0x30]
xor eax, eax
mov dword [rsp - 0x2c], ebp
mov ecx, 0x66c28c5
xor ecx, 0x2b0c62cc
add ecx, 0xc4eacb8
sub ecx, 0x39aef691
rep stosb byte [rdi], al
mov dword [rsp - 0x44], 0x169e52c9
jmp 0x14008dacd
call fcn.140099230
xchg r13, r9
mov r9, qword [rbp + 0x120]
xchg r9, r13
xchg rbx, rsi
mov rsi, qword [rsp + 0x20]
xchg rbx, rsi
inc r14d
mov dword [rbp + 0x110], r14d
mov dword [rsp - 0x14], esi
cmp r14d, dword [rbp - 0x54]
jb 0x14008d4f2
xchg rbx, r14
mov r14, qword [rbp + 0x118]
xchg r14, rbx
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
call fcn.140099040
xchg r9, rax
mov r9, qword [r12 + 0x78]
xchg r9, rax
xchg r15, rsi
mov rsi, qword [rsp + 0x1d0]
xchg r15, rsi
mov rdi, qword [rsp + 0x1d8]
xchg rbx, rbx
xchg rbx, r10
mov r10, qword [rsp + 0x228]
xchg rbx, r10
cmp rax, 0x78
jbe 0x14008db7b
mov rsi, rsi
mov rcx, qword [r12]
xor edx, edx
mov rax, qword [rcx]
mov rcx, rcx
call qword [rax]
xchg r8, rcx
mov r8, qword [r12]
xchg rcx, r8
call fcn.140099230
mov dword [rsp - 0x10], edx
jmp 0x14008db9a
test rax, rax
je 0x14008db9a
mov rax, qword [r12]
mov dword [rsp - 0x40], 0xac0410a
xor edx, edx
mov rcx, r12
call qword [rax]
mov rdx, rdx
mov qword [r12 + 0x78], 0x64cf761e
sub qword [r12 + 0x78], 0x42e1c2ef
xor qword [r12 + 0x78], 0x1eb33d2f
sub qword [r12 + 0x78], 0x3b0a6272
xor qword [r12 + 0x78], 0x4542b8e
xchg r11, rsi
mov rax, r11
xchg r11, rsi
sub rsp, 0xfffffffffffffe20
mov r11, r11
pop r14
pop r13
pop r12
nop
mov rsi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret