Function at 0x14009b540
Capabilities:
Encode data using xor

Disassembly:
xchg r13, rbx
mov qword [rsp + 0x10], r13
xchg r13, rbx
mov qword [rsp + 0x18], rbp
push rsi
mov dword [rsp - 0x38], 0x12a42e4e
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r14
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
movsxd rax, dword [rcx + 0x3c]
xchg r14, rsp
mov rsp, rdx
xchg rsp, r14
xchg r8, r11
mov rsi, r11
xchg r11, r8
xchg r11, rcx
mov rbx, r11
xchg rcx, r11
mov edx, dword [rax + rcx + 0x98]
test edx, edx
je 0x14009b626
xchg rdx, rdx
cmp dword [rax + rcx + 0x9c], 0
je 0x14009b626
call fcn.140096a90
xchg rdx, rdi
mov rdx, rax
xchg rdx, rdi
test rax, rax
je 0x14009b626
mov dword [rsp - 0x20], esp
movzx r8d, word [rax + 0xe]
xor ebp, ebp
movzx ecx, word [rax + 0xc]
mov edx, ebp
mov rbx, rbx
add r8d, ecx
je 0x14009b626
lea rcx, [rax + 0x10]
xchg r10, r10
mov eax, dword [rcx]
test eax, eax
js 0x14009b60b
mov dword [rsp - 0x34], 0x53dd09b4
cmp ax, 0x10
je 0x14009b669
inc edx
mov dword [rsp - 0x1c], edx
add rcx, 8
cmp edx, r8d
jb 0x14009b5ef
mov dword [rsp - 0x1c], 0x1817820f
xor al, al
lea r11, [rsp + 0x60]
xchg rbx, rbp
mov rbp, qword [r11 + 0x28]
xchg rbx, rbp
xchg r8, rbp
mov r8, qword [r11 + 0x30]
xchg rbp, r8
xchg rsp, r11
mov r11, rsp
xchg rsp, r11
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
ret
mov edx, dword [rcx + 4]
test edx, edx
xchg r13, r13
jns 0x14009b626
btr edx, 0x1f
add rdx, rdi
je 0x14009b626
mov dword [rsp - 0x28], 0x73b376c8
mov r8d, 0x2d9bf312
sub r8d, 0x1ebc82e6
add r8d, 0x5f93e40e
sub r8d, 0x6e735439
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.14009bb10
test rax, rax
xchg rdx, rdx
je 0x14009b626
mov r8d, 0x7063ea
add r8d, 0x3e80135c
sub r8d, 0x9aa25f1
xor r8d, 0x3546555c
xchg r14, rdx
mov r14, rax
xchg rdx, r14
mov rcx, rdi
call fcn.14009baa0
mov r14, r14
test rax, rax
je 0x14009b626
mov edx, dword [rax]
mov rbx, rbx
xchg r9, rbx
mov rcx, r9
xchg r9, rbx
call fcn.140096a90
mov dword [rsp - 0x1c], 0x8440cfa
mov r9, rax
test rax, rax
je 0x14009b626
mov eax, 0x40a11a47
add eax, 0x3e1f3c0e
xor eax, 0x15617303
xor eax, 0x6ba12581
mov dword [rsp + 0x20], 0x2087227c
xor dword [rsp + 0x20], 0x65d95034
add dword [rsp + 0x20], 0x527cf52
xor dword [rsp + 0x20], 0x528df8ca
xor dword [rsp + 0x20], 0x1804b9b1
mov word [rsp + 0x3c], ax
mov r10d, 0x9f48bfa
add r10d, 0x22ce0402
add r10d, 0x41d2d23f
sub r10d, 0x5d8ccddd
sub r10d, 0x1108944f
mov dword [rsp + 0x24], 0x4d133a2a
xor dword [rsp + 0x24], 0x34139df0
sub dword [rsp + 0x24], 0x59379a33
add dword [rsp + 0x24], 0x4c8f560b
sub dword [rsp + 0x24], 0x6c2c62eb
mov dword [rsp + 0x28], 0x336df5be
sub dword [rsp + 0x28], 0x14c4acce
xor dword [rsp + 0x28], 0x6ac5e9bf
sub dword [rsp + 0x28], 0x1522b531
sub dword [rsp + 0x28], 0x5f3beb2c
mov dword [rsp + 0x2c], 0x1f6c232c
add dword [rsp + 0x2c], 0x2411bcbf
add dword [rsp + 0x2c], 0x35bd498e
sub dword [rsp + 0x2c], 0x790828ae
mov dword [rsp + 0x30], 0x67a4262b
sub dword [rsp + 0x30], 0x3412c818
add dword [rsp + 0x30], 0xf0febb1
xor dword [rsp + 0x30], 0x42b3493c
mov dword [rsp + 0x34], 0x4bb72727
sub dword [rsp + 0x34], 0x1b080b95
sub dword [rsp + 0x34], 0x2ca666b2
add dword [rsp + 0x34], 0x218cafc1
xor dword [rsp + 0x34], 0x25a66466
mov dword [rsp + 0x38], 0x48d20166
add dword [rsp + 0x38], 0x319a164d
sub dword [rsp + 0x38], 0x14d399fb
sub dword [rsp + 0x38], 0x5010930e
sub dword [rsp + 0x38], 0x156de9b1
xchg rbp, r13
mov qword [rsp + 0x80], r13
xchg r13, rbp
mov rax, qword [rsp + 0x80]
mov dword [rsp - 0x18], 0x3111d4a9
nop dword [rax + rax]
xchg rcx, rdx
mov rdx, qword [rsp + 0x80]
xchg rcx, rdx
xchg r14, rax
mov r14, qword [rsp + 0x80]
xchg r14, rax
and cl, 3
mov dword [rsp - 0x10], esi
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x20]
xchg rsi, rsi
mov eax, 0xa673335
xor eax, 0x71c68ff5
sub eax, 0x3a63777c
xor eax, 0x5f2a8cd
add eax, 0x35cb6f2e
shr eax, cl
movzx ecx, al
mov rax, qword [rsp + 0x80]
mov dword [rsp - 0x24], 0x3e30830f
xor cx, dx
mov word [rsp + rax*2 + 0x3e], cx
xchg r15, rax
mov r15, qword [rsp + 0x80]
xchg r15, rax
inc rax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov dword [rsp - 0x2c], edx
cmp rax, r10
jb 0x14009b889
lea rax, [r9 + 6]
mov word [rsp + 0x5c], bp
mov dword [rsp - 0x38], 0x551b8659
lea rdi, [rsp + 0x3e]
sub rdi, rax
nop word [rax + rax]
mov dword [rsp - 0x40], 0x7f813bd9
movzx r8d, word [rax]
movzx edx, word [rax + rdi]
sub r8d, edx
xchg r11, r11
jne 0x14009b967
sub rax, 0xfffffffffffffffe
test edx, edx
jne 0x14009b944
xchg rsp, rsp
xor eax, eax
lea rdi, [rsp + 0x3e]
xchg r10, rcx
mov r10, rcx
xchg rcx, r10
rep stosb byte [rdi], al
test r8d, r8d
jne 0x14009b626
xchg rsp, rsp
mov eax, dword [r9 + 0x28]
xor eax, 0x5d8d086a
cmp eax, 0xa3620cd7
jne 0x14009b626
mov dword [rsp - 0x3c], edi
cmp dword [r9 + 0x2c], 0x10000
jne 0x14009b626
mov eax, dword [r9 + 0x30]
mov dword [r14], eax
mov dword [rsp - 0xc], edi
mov eax, dword [r9 + 0x34]
mov dword [rsi], eax
mov al, 0
add al, 0x43
add al, 0x32
sub al, 0x74
jmp 0x14009b628