Function at 0x140097610
Capabilities:
Encode data using xor

Disassembly:
xchg r14, rbx
mov qword [rsp + 8], r14
xchg rbx, r14
xchg rsi, rcx
mov qword [rsp + 0x10], rcx
xchg rcx, rsi
mov qword [rsp + 0x18], rdi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x360]
sub rsp, 0xc012fe8
add rsp, 0xc012b88
xor r12d, r12d
mov dword [rsp - 0x38], ebp
mov dword [rsp + 0x2a], 0x30a8fd40
add dword [rsp + 0x2a], 0x16892633
add dword [rsp + 0x2a], 0x37a07b7b
sub dword [rsp + 0x2a], 0x7ead9e5b
mov dword [rsp + 0x20], r12d
mov dword [rsp - 0x20], 0x707a01cc
xchg r14, r8
mov r8, r9
xchg r8, r14
mov dword [rsp + 0x2e], 0x71baaa5
add dword [rsp + 0x2e], 0x742c62a8
xor dword [rsp + 0x2e], 0x71eb1d92
sub dword [rsp + 0x2e], 0xa431065
xchg r15, rdx
mov rdx, r8
xchg rdx, r15
mov dword [rsp + 0x32], 0x9ef47b8
add dword [rsp + 0x32], 0x529b0b19
add dword [rsp + 0x32], 0xeadfb93
sub dword [rsp + 0x32], 0x6b124dc5
xchg rbp, rsi
mov rbp, rdx
xchg rbp, rsi
mov dword [rsp + 0x36], 0xc3a0d1e
xor dword [rsp + 0x36], 0x538b8b3b
xor dword [rsp + 0x36], 0xd9ed49d
add dword [rsp + 0x36], 0xa913ee2
xor dword [rsp + 0x36], 0x5cfa91a4
xchg r8, rcx
mov rbx, r8
xchg r8, rcx
mov dword [rsp + 0x3a], 0x3577c0a9
sub dword [rsp + 0x3a], 0x27af118e
add dword [rsp + 0x3a], 0x312b9cd5
sub dword [rsp + 0x3a], 0x2ea54bc3
xor dword [rsp + 0x3a], 0x107400b6
mov qword [rsp + 0x20], r12
mov dword [rsp - 0x3c], 0x38d1112f
xchg rbp, rax
mov rbp, qword [rsp + 0x20]
xchg rbp, rax
nop dword [rax]
mov rcx, qword [rsp + 0x20]
mov r15, r15
xchg r14, rax
mov r14, qword [rsp + 0x20]
xchg r14, rax
and cl, 3
mov dword [rsp - 0x28], 0x69c61001
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x2a]
mov dword [rsp - 0x24], 0x48a0954c
mov eax, 0x73b22e87
xor eax, 0x4589d1c3
xor eax, 0x13546165
add eax, 0x27a3b7d1
shr eax, cl
xchg r15, r15
movzx ecx, al
mov rax, qword [rsp + 0x20]
xor cx, dx
xchg rbx, rbx
mov word [rsp + rax*2 + 0x68], cx
mov rax, qword [rsp + 0x20]
inc rax
mov dword [rsp - 0x38], ecx
xchg rsi, rax
mov qword [rsp + 0x20], rsi
xchg rsi, rax
mov rax, qword [rsp + 0x20]
mov dword [rsp - 0x38], 0x4182c453
cmp rax, 0xa
jb 0x14009776a
mov edi, 0xe1eac17
add edi, 0x523d8b19
sub edi, 0x1abd3e81
sub edi, 0x459ef8ae
mov word [rsp + 0x7c], r12w
mov r8, r8
lea rdx, [rsp + 0x68]
xchg rsp, r14
mov rcx, rsp
xchg rsp, r14
lea r8d, [rdi + 9]
call fcn.1400bcf70
xchg rsp, rsp
test eax, eax
je 0x1400979ee
mov dword [rsp + 0x3e], 0x68fa6a67
sub dword [rsp + 0x3e], 0x204cef24
sub dword [rsp + 0x3e], 0x249b608d
add dword [rsp + 0x3e], 0x5754cb22
sub dword [rsp + 0x3e], 0x7b39e541
mov dword [rsp + 0x42], 0x1782a542
sub dword [rsp + 0x42], 0x51bcb11
xor dword [rsp + 0x42], 0x275b2b73
xor dword [rsp + 0x42], 0x6dbb8edf
sub dword [rsp + 0x42], 0x58267f36
mov dword [rsp + 0x46], 0x16830008
add dword [rsp + 0x46], 0x5fe20814
sub dword [rsp + 0x46], 0x5d2f1e6e
add dword [rsp + 0x46], 0x4e9d6bcc
sub dword [rsp + 0x46], 0x67ad54db
mov dword [rsp + 0x4a], 0x11b5c29d
xor dword [rsp + 0x4a], 0x21069cc5
add dword [rsp + 0x4a], 0x1052f3de
xor dword [rsp + 0x4a], 0x3f73b791
xor dword [rsp + 0x4a], 0x7e4fe599
mov dword [rsp + 0x4e], 0x777f4946
sub dword [rsp + 0x4e], 0x3de09e5c
xor dword [rsp + 0x4e], 0x5aad6a0f
sub dword [rsp + 0x4e], 0x4d2c58e0
sub dword [rsp + 0x4e], 0x15cc676a
mov qword [rsp + 0x20], r12
mov rax, qword [rsp + 0x20]
xchg r9, r9
nop word [rax + rax]
xchg rdi, rcx
mov rdi, qword [rsp + 0x20]
xchg rcx, rdi
mov rax, qword [rsp + 0x20]
mov dword [rsp - 0xc], esp
and cl, 3
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x3e]
mov rdi, rdi
mov eax, 0x4b2d9abc
xor eax, 0x7fac1ddf
add eax, 0x2d77e6df
xor eax, 0x2cea3bb0
shr eax, cl
movzx ecx, al
xchg r15, rax
mov r15, qword [rsp + 0x20]
xchg r15, rax
xor cx, dx
mov dword [rsp - 0x1c], 0x7548ba34
mov word [rsp + rax*2 + 0x52], cx
xchg rdx, rax
mov rdx, qword [rsp + 0x20]
xchg rdx, rax
inc rax
xchg r11, rax
mov qword [rsp + 0x20], r11
xchg r11, rax
xchg r9, rax
mov r9, qword [rsp + 0x20]
xchg r9, rax
cmp rax, 0xa
jb 0x14009790d
mov dword [rsp - 0x14], 0x591a9809
mov edi, 0x34b9aad2
sub edi, 0x267429bb
add edi, 0x21cdbb61
sub edi, 0x30133c75
mov word [rsp + 0x66], r12w
lea rdx, [rsp + 0x52]
mov dword [rsp - 0x24], 0x31455cbd
xchg rdx, r14
mov rcx, rdx
xchg rdx, r14
lea r8d, [rdi + 7]
xchg r10, r10
call fcn.1400bcf70
test eax, eax
je 0x1400979ee
mov dword [rsp - 0x38], ebp
mov dl, 0x39
add dl, 0x1b
sub dl, 0x1c
xor dl, 0x39
jmp 0x1400979fe
xor dl, dl
mov dword [rsp - 0x20], ebp
test dil, 2
je 0x140097a27
lea rdi, [rsp + 0x52]
xchg r11, r11
xor eax, eax
mov ecx, 0x7ea87a99
xor ecx, 0x70fd000e
add ecx, 0x5aa66aed
sub ecx, 0x634ef361
sub ecx, 0x5acf219
rep stosb byte [rdi], al
xor eax, eax
mov rdi, rdi
lea rdi, [rsp + 0x68]
mov ecx, 0x70b5de7b
xor ecx, 0x3f1802a2
xor ecx, 0x415fc8e4
xor ecx, 0xef21437
rep stosb byte [rdi], al
test dl, dl
mov dword [rsp - 0x38], 0x2c55898b
jne 0x140097bf7
mov rax, qword [rsi + 0x78]
cmp rax, 0x78
jbe 0x140097a78
mov dword [rsp - 0x44], 0x1c0994ba
mov rcx, qword [rsi]
jmp 0x140097a85
test rax, rax
xchg rbx, rbx
mov rcx, r12
cmovne rcx, rsi
mov rax, qword [rcx]
lea r8, [rbp]
mov dword [rsp - 0xc], 0x12428ea0
mov r9d, 0x65e1aad0
add r9d, 0x11808f96
sub r9d, 0x33fe4907
add r9d, 0x247544d4
xor r9d, 0x67d9356b
xchg r13, rdx
mov r13, r15
xchg r13, rdx
call qword [rax + 8]
test al, al
mov dword [rsp - 0x44], edi
je 0x140097bf7
mov rdi, qword [rbp + 0x68]
test rdi, rdi
je 0x140097bf7
xchg r12, r12
mov eax, dword [rbp + 0x118]
cmp eax, 6
jne 0x140097beb
mov eax, dword [rbp + 0x11c]
mov rsp, rsp
sub eax, 1
je 0x140097bab
sub eax, 1
je 0x140097bab
xchg r13, r13
sub eax, 1
je 0x140097b69
cmp eax, 1
jne 0x140097bf7
mov dword [rsp - 0x34], edx
xchg rdx, rsi
mov rsi, rdx
xchg rsi, rdx
lea rcx, [rbp - 0x80]
call fcn.140097d80
xchg r9, r14
mov r14, r9
xchg r14, r9
mov r8, rdi
mov dword [rsp - 0x24], 0x7b96a9c9
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
xchg r13, rcx
mov r13, rbx
xchg r13, rcx
call fcn.14009d0b0
mov dword [rsp - 0x1c], 0x893acd7
jmp 0x140097c28
xchg rsi, r11
mov rdx, r11
xchg rsi, r11
lea rcx, [rbp - 0x80]
mov dword [rsp - 0x44], 0x4971e037
call fcn.140097d80
xchg rdx, r9
mov rdx, r14
xchg r9, rdx
mov r8, rdi
xchg rdx, rcx
mov rcx, rax
xchg rdx, rcx
xchg r9, rbx
mov rcx, r9
xchg r9, rbx
call fcn.14009e730
jmp 0x140097c28
xchg rdx, r11
mov r11, rsi
xchg r11, rdx
lea rcx, [rbp - 0x80]
mov dword [rsp - 0x40], 0x7553a2aa
call fcn.140097d80
xchg r14, rdi
mov r9, rdi
xchg r14, rdi
mov r8, rdi
mov rdx, rax
mov dword [rsp - 0x20], ebp
xchg rbx, rbp
mov rcx, rbp
xchg rbp, rbx
call fcn.14009db90
jmp 0x140097c28
cmp eax, 0xa
mov dword [rsp - 0x40], esi
jmp 0x140097b17
mov qword [rbx], r12
mov qword [rbx + 8], r12
xchg rsp, r12
mov qword [rbx + 0x10], rsp
xchg r12, rsp
mov qword [rbx + 0x18], 0x7aee68ed
xor qword [rbx + 0x18], 0x4991287
sub qword [rbx + 0x18], 0x2f48eb6e
sub qword [rbx + 0x18], 0x4f2e8efb
xchg rsi, r13
mov rcx, r13
xchg r13, rsi
call fcn.1400983b0
lea r11, [rsp + 0x460]
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
mov rbx, qword [r11 + 0x30]
xchg r9, r9
mov rsi, qword [r11 + 0x38]
xchg rcx, rdi
mov rcx, qword [r11 + 0x40]
xchg rcx, rdi
xchg r11, r13
mov rsp, r13
xchg r11, r13
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rbp
xchg r14, r14
ret