Function at 0x140087fa4
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
xchg rbx, r14
mov qword [rax + 0x10], r14
xchg rbx, r14
mov qword [rax + 0x18], rsi
mov dword [rsp - 0x30], esp
mov qword [rax + 0x20], rdi
nop
sub rsp, 8
mov qword [rsp], rbp
push r13
mov qword [rsp], r12
push r13
mov dword [rsp - 0x30], 0x2257b612
lea rbp, [rax - 0xa8]
sub rsp, 0x68313da3
add rsp, 0x68313c13
xor esi, esi
mov dword [rsp + 0x30], 0x2c288712
add dword [rsp + 0x30], 0x2d3de6c2
sub dword [rsp + 0x30], 0x5187661d
add dword [rsp + 0x30], 0x2f13f2cb
sub dword [rsp + 0x30], 0x36a4fa49
mov dword [rsp + 0x34], 0x6d92e96b
add dword [rsp + 0x34], 0x1117a5a3
sub dword [rsp + 0x34], 0x59079311
xor dword [rsp + 0x34], 0x2596fb68
mov dword [rsp + 0x38], 0x7d698027
xor dword [rsp + 0x38], 0x6a5778ab
xor dword [rsp + 0x38], 0x698445ac
sub dword [rsp + 0x38], 0x7e6dbcf3
mov qword [rbp + 0xb0], rsi
mov rax, qword [rbp + 0xb0]
mov dword [rsp - 0x44], 0x55829329
lea ebx, [rsi + 1]
mov rcx, qword [rbp + 0xb0]
xchg r9, rax
mov r9, qword [rbp + 0xb0]
xchg r9, rax
and cl, 3
shl cl, 1
shl cl, 1
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x30]
mov eax, 0x255abb61
xor eax, 0x1dcb8b13
xor eax, 0x28cd54ea
add eax, 0x8575487
xor eax, 0x1b14c405
shr eax, cl
movzx ecx, al
mov dword [rsp - 0x44], 0x6248d6c8
mov rax, qword [rbp + 0xb0]
xor cx, dx
mov word [rbp + rax*2 - 0x10], cx
xchg r11, rax
mov r11, qword [rbp + 0xb0]
xchg r11, rax
add rax, rbx
mov dword [rsp - 0x20], esi
mov qword [rbp + 0xb0], rax
xchg rsi, rax
mov rsi, qword [rbp + 0xb0]
xchg rsi, rax
cmp rax, 6
jb 0x14008806e
lea rax, [rbp - 0x10]
mov dword [rsp - 0x44], edx
mov word [rbp - 4], si
mov qword [rbp - 0x38], rax
mov r13d, 0x1e2dad6c
add r13d, 0x1df68418
sub r13d, 0x58c39dd
xor r13d, 0x3697f78e
mov eax, 0x14e45133
add eax, 0x387041de
xor eax, 0x1b33160a
sub eax, 0x566784d4
mov dword [rbp - 0x40], 0x62a2e4da
sub dword [rbp - 0x40], 0x965de33
sub dword [rbp - 0x40], 0x3cd25d15
add dword [rbp - 0x40], 0x29439048
xor dword [rbp - 0x40], 0x45a039d6
mov word [rbp - 0x46], ax
mov dword [rsp - 0x14], 0x14ddbf2
mov dword [rsp + 0x6a], 0x7c797e46
xor dword [rsp + 0x6a], 0x3e262ff3
xor dword [rsp + 0x6a], 0x4d691f08
add dword [rsp + 0x6a], 0x4b1229b2
xor dword [rsp + 0x6a], 0x5a50781e
mov dword [rsp + 0x6e], 0x41f54265
xor dword [rsp + 0x6e], 0x15047f99
sub dword [rsp + 0x6e], 0x25c120ad
add dword [rsp + 0x6e], 0x169590e0
sub dword [rsp + 0x6e], 0x458ead9e
mov dword [rsp + 0x72], 0x3bae99c2
sub dword [rsp + 0x72], 0x39201c7f
xor dword [rsp + 0x72], 0x68d94bd6
sub dword [rsp + 0x72], 0x3f03e9f8
sub dword [rsp + 0x72], 0x2b444c41
mov dword [rsp + 0x76], 0x6f1bc187
add dword [rsp + 0x76], 0x5035a95
sub dword [rsp + 0x76], 0x14c66bcb
xor dword [rsp + 0x76], 0x31d00993
sub dword [rsp + 0x76], 0x6e22b900
mov dword [rsp + 0x7a], 0x77a553a6
sub dword [rsp + 0x7a], 0x4f44cfbd
xor dword [rsp + 0x7a], 0x5b6c9948
sub dword [rsp + 0x7a], 0xa0183ed
xor dword [rsp + 0x7a], 0x692c968e
mov dword [rsp + 0x7e], 0x73d1e26c
sub dword [rsp + 0x7e], 0x49c4f914
add dword [rsp + 0x7e], 0x2c98120a
sub dword [rsp + 0x7e], 0x562dfa93
mov dword [rbp - 0x7e], 0x42c387fa
add dword [rbp - 0x7e], 0x8497284
sub dword [rbp - 0x7e], 0x38eab2cd
add dword [rbp - 0x7e], 0x3cc95535
sub dword [rbp - 0x7e], 0x4ede9c78
mov dword [rbp - 0x7a], 0x5cc25c9a
xor dword [rbp - 0x7a], 0x25ff8ed3
sub dword [rbp - 0x7a], 0x16a14036
sub dword [rbp - 0x7a], 0x62544968
xor dword [rbp - 0x7a], 0x71487f
mov dword [rbp - 0x76], 0x217adf46
add dword [rbp - 0x76], 0x572d42a9
sub dword [rbp - 0x76], 0x3005a2cf
xor dword [rbp - 0x76], 0x627b6ce9
sub dword [rbp - 0x76], 0x2a871394
mov dword [rbp - 0x72], 0x52e61a6d
xor dword [rbp - 0x72], 0x2cfe3ba9
xor dword [rbp - 0x72], 0x666ee7e1
xor dword [rbp - 0x72], 0x181cc6e5
mov dword [rbp - 0x6e], 0x5cf803b4
sub dword [rbp - 0x6e], 0x397c4470
add dword [rbp - 0x6e], 0x480726b
xor dword [rbp - 0x6e], 0xf45876f
xor dword [rbp - 0x6e], 0x28acb6ae
mov dword [rbp - 0x6a], 0x7a458c
add dword [rbp - 0x6a], 0x6f527ede
xor dword [rbp - 0x6a], 0x1bf87e7d
xor dword [rbp - 0x6a], 0x7455bac5
mov dword [rbp - 0x66], 0x4fc4d04a
xor dword [rbp - 0x66], 0x32b562cc
sub dword [rbp - 0x66], 0x51744075
add dword [rbp - 0x66], 0x4e2396c8
sub dword [rbp - 0x66], 0x7a0308a5
mov dword [rbp - 0x62], 0x328ccc31
xor dword [rbp - 0x62], 0x7ce35bbd
sub dword [rbp - 0x62], 0xc386a46
sub dword [rbp - 0x62], 0x41c92c7e
mov dword [rbp - 0x5e], 0x62f25e18
xor dword [rbp - 0x5e], 0x12919fd9
sub dword [rbp - 0x5e], 0x1397385b
sub dword [rbp - 0x5e], 0x5cb08931
mov dword [rbp - 0x5a], 0x78c12885
sub dword [rbp - 0x5a], 0x5ffb389c
add dword [rbp - 0x5a], 0x18822bb7
sub dword [rbp - 0x5a], 0x30de1ad5
mov dword [rbp - 0x56], 0x284be294
xor dword [rbp - 0x56], 0x229192f0
add dword [rbp - 0x56], 0x7e46c18
sub dword [rbp - 0x56], 0x12aedc08
mov dword [rbp - 0x52], 0x4a0b9cc7
xor dword [rbp - 0x52], 0x6730b48a
add dword [rbp - 0x52], 0x50857794
xor dword [rbp - 0x52], 0xb7a341d
xor dword [rbp - 0x52], 0x7696ab37
mov dword [rbp - 0x4e], 0x29e97ab8
sub dword [rbp - 0x4e], 0x163bcdee
add dword [rbp - 0x4e], 0x38e8e5c5
sub dword [rbp - 0x4e], 0x48c59a39
sub dword [rbp - 0x4e], 0x3b8f7e5
mov dword [rbp - 0x4a], 0x20f41162
add dword [rbp - 0x4a], 0x20cf54bf
sub dword [rbp - 0x4a], 0x2e8be3f9
add dword [rbp - 0x4a], 0x35a16b11
xor dword [rbp - 0x4a], 0x48efeda8
xchg rsi, r9
mov qword [rbp + 0xb0], r9
xchg rsi, r9
xchg r10, rax
mov r10, qword [rbp + 0xb0]
xchg r10, rax
mov rcx, qword [rbp + 0xb0]
mov rbp, rbp
xchg r10, rax
mov r10, qword [rbp + 0xb0]
xchg r10, rax
and cl, 3
mov dword [rsp - 0x14], ecx
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x6a]
mov eax, 0x6e75bcce
sub eax, 0xb98ac02
add eax, 0xa99793a
xor eax, 0x5fbdb365
xor eax, 0x316c4479
shr eax, cl
xchg r14, r14
movzx ecx, al
xchg rdx, rax
mov rdx, qword [rbp + 0xb0]
xchg rdx, rax
xor cx, dx
mov rcx, rcx
mov word [rbp + rax*2 + 0x30], cx
xchg r11, rax
mov r11, qword [rbp + 0xb0]
xchg r11, rax
add rax, rbx
xchg r9, rax
mov qword [rbp + 0xb0], r9
xchg r9, rax
mov rax, qword [rbp + 0xb0]
mov r15, r15
cmp rax, r13
jb 0x14008841f
lea rax, [rbp + 0x30]
mov r10, r10
mov word [rbp + 0x82], si
lea r9, [rbp - 0x30]
mov qword [rbp - 0x28], rax
lea r8, [rbp - 0x40]
mov dword [rsp - 0x14], 0xcbc80f8
mov dword [rbp - 0x30], 0x2b3e7e63
xor dword [rbp - 0x30], 0x3304dd3b
xor dword [rbp - 0x30], 0x5c419d4
add dword [rbp - 0x30], 0x381fe295
xor dword [rbp - 0x30], 0x564a9d73
xor edx, edx
xchg r14, r14
mov dword [rsp + 0x20], esi
xor ecx, ecx
call fcn.1400abfc0
mov dword [rsp - 0x38], esi
mov rdi, rax
test rax, rax
je 0x14008855c
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.14007f8d0
test al, al
je 0x14008855c
mov rdx, rdx
lea rdx, [rbp - 0x40]
xchg rcx, r14
mov r14, rdi
xchg r14, rcx
call fcn.14007e7cc
test al, al
xchg r8, r8
je 0x14008855c
lea rdx, [rbp - 0x30]
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.14007f728
test al, al
xchg rdi, rdi
jne 0x14008888d
mov eax, 0x63d28b5c
sub eax, 0x1e5933f5
xor eax, 0x783dcd55
xor eax, 0x3d449aa7
mov dword [rsp + 0x3c], 0x52188dce
xor dword [rsp + 0x3c], 0x7f43804f
xor dword [rsp + 0x3c], 0x49f97f36
xor dword [rsp + 0x3c], 0x334254a0
sub dword [rsp + 0x3c], 0x57c825a6
mov word [rsp + 0x68], ax
mov rdi, rdi
mov dword [rsp + 0x40], 0x420be5f
add dword [rsp + 0x40], 0x3ec29885
add dword [rsp + 0x40], 0xfabeaa5
xor dword [rsp + 0x40], 0x1e1bcd0b
sub dword [rsp + 0x40], 0x4c5d8bf1
mov dword [rsp + 0x44], 0x10e7488
add dword [rsp + 0x44], 0x5c93e4c0
add dword [rsp + 0x44], 0x19abe25
sub dword [rsp + 0x44], 0x5f111733
mov dword [rsp + 0x48], 0x6fc391fa
sub dword [rsp + 0x48], 0x6dd01df8
add dword [rsp + 0x48], 0x3aba88fc
xor dword [rsp + 0x48], 0x291fbb70
sub dword [rsp + 0x48], 0x158f4698
mov dword [rsp + 0x4c], 0x718e7bad
xor dword [rsp + 0x4c], 0x1d276d73
xor dword [rsp + 0x4c], 0x534851ec
xor dword [rsp + 0x4c], 0x3fee476f
mov dword [rsp + 0x50], 0x53fbb43e
sub dword [rsp + 0x50], 0x3a18db6f
xor dword [rsp + 0x50], 0xb3fbb99
add dword [rsp + 0x50], 0x48ce83b1
xor dword [rsp + 0x50], 0x5bdde7cf
mov dword [rsp + 0x54], 0x687b74d9
xor dword [rsp + 0x54], 0x3fbc20c1
sub dword [rsp + 0x54], 0x453e87cc
sub dword [rsp + 0x54], 0x1241cbe2
mov dword [rsp + 0x58], 0x2228899a
xor dword [rsp + 0x58], 0x419bbad5
add dword [rsp + 0x58], 0x154a9ff7
sub dword [rsp + 0x58], 0x2f39d2f5
xor dword [rsp + 0x58], 0x49f500ce
mov dword [rsp + 0x5c], 0xa7f4ef0
add dword [rsp + 0x5c], 0x3815d9b6
xor dword [rsp + 0x5c], 0x1d7e5d05
sub dword [rsp + 0x5c], 0x4b03977d
sub dword [rsp + 0x5c], 0x1498ddfe
mov dword [rsp + 0x60], 0x36522703
add dword [rsp + 0x60], 0xf08179b
sub dword [rsp + 0x60], 0x15bdb8d7
sub dword [rsp + 0x60], 0x2f688535
mov dword [rsp + 0x64], 0x17c07ad5
xor dword [rsp + 0x64], 0x16827c33
add dword [rsp + 0x64], 0x3ca8ec8f
xor dword [rsp + 0x64], 0x3daef35c
xchg rdi, rsi
mov qword [rbp + 0xb0], rdi
xchg rdi, rsi
mov rax, qword [rbp + 0xb0]
mov r11, r11
xchg rcx, r12
mov r12, qword [rbp + 0xb0]
xchg rcx, r12
xchg rcx, rax
mov rcx, qword [rbp + 0xb0]
xchg rcx, rax
and cl, 3
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x3c]
mov r10, r10
mov eax, 0x7c122960
sub eax, 0x6a999dd7
xor eax, 0x35552672
add eax, 0x1f771707
sub eax, 0x3ffd47e8
shr eax, cl
mov r8, r8
movzx ecx, al
mov rax, qword [rbp + 0xb0]
xor cx, dx
mov dword [rsp - 0x1c], 0x70df0255
mov word [rbp + rax*2], cx
xchg r15, rax
mov r15, qword [rbp + 0xb0]
xchg r15, rax
add rax, rbx
xchg rbx, rbx
xchg rcx, rax
mov qword [rbp + 0xb0], rcx
xchg rcx, rax
xchg r15, rax
mov r15, qword [rbp + 0xb0]
xchg r15, rax
cmp rax, 0x17
jb 0x14008871f
mov dword [rsp - 0x34], 0x1c09f829
lea rax, [rbp]
mov word [rbp + 0x2e], si
lea r9, [rbp - 0x20]
mov dword [rsp - 0x34], esi
xchg rbx, rax
mov qword [rbp - 0x18], rbx
xchg rbx, rax
lea r8, [rbp - 0x40]
mov dword [rsp - 0x2c], esp
mov dword [rbp - 0x20], 0x36b6dacd
xor dword [rbp - 0x20], 0x2c1a14e8
add dword [rbp - 0x20], 0x4e2b052a
sub dword [rbp - 0x20], 0x3aa24466
xor dword [rbp - 0x20], 0x2e058ec7
xor edx, edx
mov dword [rsp + 0x20], esi
xor ecx, ecx
mov dword [rsp - 0x44], 0x10700c69
call fcn.1400abfc0
mov rdi, rax
test rax, rax
je 0x140088873
xchg rbx, rbx
xchg rsi, rax
mov rcx, rsi
xchg rsi, rax
call fcn.14007f8d0
test al, al
je 0x140088873
mov dword [rsp - 0xc], esp
lea rdx, [rbp - 0x40]
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.14007e7cc
test al, al
mov dword [rsp - 0x2c], 0x7684de65
je 0x140088873
lea rdx, [rbp - 0x20]
mov rcx, rdi
call fcn.14007f728
mov dword [rsp - 0x1c], 0x4d6c2c93
test al, al
jne 0x14008887a
mov bl, sil
mov dword [rsp - 0x14], edx
xor eax, eax
lea rdi, [rbp]
lea ecx, [rax + 0x17]
mov dword [rsp - 0x34], 0x4dd3e6fd
rep stosb byte [rdi], al
xor eax, eax
lea r11, [rsp + 0x190]
xchg r8, r8
mov rsi, qword [r11 + 0x30]
lea rdi, [rbp + 0x30]
xchg rcx, rdx
mov rdx, r13
xchg rcx, rdx
rep stosb byte [rdi], al
lea ecx, [rax + 6]
mov dword [rsp - 0x14], 0x614f2fd5
lea rdi, [rbp - 0x10]
rep stosb byte [rdi], al
xchg rdi, rsp
mov rsp, qword [r11 + 0x38]
xchg rsp, rdi
mov al, bl
xchg rbx, rsi
mov rsi, qword [r11 + 0x28]
xchg rsi, rbx
mov rsp, r11
nop
add rsp, 8
mov r13, qword [rsp - 8]
pop r12
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret