Function at 0x140087607
Capabilities:
Encode data using xor

Disassembly:
xchg rsp, rsi
mov rax, rsi
xchg rsp, rsi
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
nop
push 0x6db88ec
mov qword [rsp], rdi
push r12
mov dword [rsp - 0x34], esi
nop
mov qword [rsp - 8], r13
sub rsp, 8
lea rbp, [rax - 0x268]
mov dword [rsp - 0x3c], ecx
sub rsp, 0x340
mov qword [rax + 0x20], rbx
xchg rdx, rsp
mov rsi, rsp
xchg rdx, rsp
xchg r14, rbp
mov qword [rax - 0x30], rbp
xchg rbp, r14
xchg rbx, rbp
mov rbp, rcx
xchg rbp, rbx
lea rax, [rbp + 0x18]
mov r12, r12
xor edx, edx
mov r8d, 0x77257727
xor r8d, 0x42a6e7b2
sub r8d, 0x1dd72977
xor r8d, 0x17ac661e
mov qword [rbp + 0x10], rax
lea rcx, [rbp + 0x18]
mov rbx, rbx
xchg r14, rdi
mov r14, r9
xchg rdi, r14
call fcn.140099df0
mov dword [rsp - 0x14], ecx
nop
movabs r8, 0xffffffff0d56c457
add r8, 0x44f1574c
add r8, 0xf94bce0
add r8, 0x7fffffff
add r8, 0x1e23277d
inc r8
mov r10, r10
cmp byte [rdi + r8], 0
jne 0x140087308
xchg rdi, rbx
mov rdx, rbx
xchg rbx, rdi
lea rcx, [rbp + 0x10]
call fcn.140091e60
xchg rsi, rsi
mov rcx, qword [rsi + 0x78]
lea rax, [rbp + 0x10]
mov r14, qword [rbx]
xor r13d, r13d
mov dword [rsp - 0x1c], 0x37982748
xchg r11, rax
mov qword [rsp + 0x28], r11
xchg r11, rax
lea rax, [0x140001ae0]
mov dword [rsp - 0x38], ebp
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x10]
xchg rsp, rax
mov qword [rbp + 0x130], rsp
xchg rsp, rax
mov r12d, r13d
xchg r13, r10
mov qword [rbp + 0x278], r10
xchg r13, r10
xchg r14, rsi
mov qword [rsp + 0x20], r14
xchg r14, rsi
mov qword [rbp + 0x198], 0x31ae9118
add qword [rbp + 0x198], 0x1c643960
add qword [rbp + 0x198], 0x26fd3544
xor qword [rbp + 0x198], 0x750fffa4
xchg rsp, rsi
mov qword [rbp + 0x128], rsp
xchg rsi, rsp
xchg rcx, r12
mov qword [rbp], r12
xchg rcx, r12
cmp rcx, 0x78
mov dword [rsp - 0x24], esp
jbe 0x140087420
mov rbx, qword [rsi]
mov rax, qword [rbx]
mov r8, r8
xchg r10, rdi
mov r10, qword [rax + 0x10]
xchg r10, rdi
call fcn.140099aa0
mov dword [rsp - 0x1c], edx
xchg r10, rax
mov rdx, r10
xchg r10, rax
mov rcx, rbx
mov dword [rsp - 0x28], 0x397f7db2
call rdi
xchg rbx, rcx
mov rcx, qword [rbp + 0x270]
xchg rcx, rbx
mov qword [rbp - 0x78], rax
jmp 0x14008743d
test rcx, rcx
je 0x14008743d
mov dword [rsp - 0x40], ebp
mov rax, qword [rsi]
lea rdx, [rbp - 0x78]
mov rcx, rsi
xchg rbx, rbx
call qword [rax + 0x10]
lea r8, [rbp + 0x120]
xchg r9, rdx
mov r9, r14
xchg rdx, r9
lea rcx, [rbp - 0x78]
mov r12, r12
call fcn.140085200
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
test rax, rax
mov dword [rsp - 0x18], esp
jne 0x1400879ad
mov rcx, qword [rsi + 0x78]
xchg r14, r8
mov r8, qword [rbp + 0x10]
xchg r14, r8
mov qword [rsp + 0x330], r15
mov r15, qword [rbx]
mov dword [rsp - 0x1c], ecx
mov qword [rbp], rcx
cmp rcx, 0x78
jbe 0x1400874d5
mov rcx, rcx
xchg rbx, rdx
mov rdx, qword [rsi]
xchg rbx, rdx
mov rax, qword [rbx]
xchg r10, r10
mov rdi, qword [rax + 0x10]
call fcn.140099aa0
xchg rdx, r15
mov r15, rax
xchg r15, rdx
mov rcx, rbx
call rdi
mov dword [rsp - 0x18], edx
mov rbx, qword [rbp + 0x270]
mov qword [rbp - 0x78], rax
jmp 0x14008750d
test rcx, rcx
mov dword [rsp - 0x3c], 0x647def4d
je 0x14008750d
xchg rbx, rax
mov rbx, qword [rsi]
xchg rbx, rax
lea rdx, [rbp - 0x78]
mov dword [rsp - 0x14], 0x6ca861b6
xchg rcx, rsi
mov rsi, rcx
xchg rcx, rsi
call qword [rax + 0x10]
mov dword [rsp - 0x3c], 0x247be984
xchg r9, r14
mov r14, r9
xchg r9, r14
lea rdx, [rbp - 0x78]
mov dword [rsp - 0x20], edi
xchg r8, r15
mov r15, r8
xchg r15, r8
lea rcx, [rsp + 0x68]
mov dword [rsp - 0x38], ebx
call fcn.1400861e0
mov rax, qword [rsp + 0x68]
xchg r14, r13
mov r15, r14
xchg r13, r14
mov r13, qword [rsp + 0x70]
test r13, r13
mov dword [rsp - 0xc], edi
cmovne r15, rax
je 0x140087573
shl r13, 4
shl r13, 1
shl r13, 1
add r13, rax
mov dword [rsp - 0x2c], 0x290854de
jmp 0x140087580
xor eax, eax
mov dword [rsp - 0x28], 0x25e59808
mov r13d, eax
cmp r15, r13
je 0x140087990
xchg rbp, rbp
nop word [rax + rax]
xchg rcx, rax
mov rcx, qword [r15 + 0x38]
xchg rcx, rax
mov rcx, qword [rbp + 0x10]
mov qword [rbp + 0x118], rax
mov dword [rsp - 0x20], 0x6dc16364
lea rdi, [rax + 1]
lea rax, [rbp + 0x18]
cmp rcx, rax
je 0x1400875c9
xchg r14, r14
call fcn.140099810
cmp rdi, 0x80
jbe 0x14008760c
lea rcx, [rdi + rdi]
mov dword [rsp - 0x1c], 0x12985e9
call fcn.140099aa0
xchg rbx, rax
mov qword [rbp + 0x10], rbx
xchg rbx, rax
test rax, rax
mov r8, r8
jne 0x140087618
lea rax, [rbp + 0x18]
xchg r15, rax
mov qword [rbp + 0x10], r15
xchg r15, rax
jmp 0x1400877de
lea rax, [rbp + 0x18]
xchg rbx, rax
mov qword [rbp + 0x10], rbx
xchg rbx, rax
xor edx, edx
mov dword [rsp - 0x18], 0x633bec01
mov r8d, 0x38991666
add r8d, 0x1b474e9d
add r8d, 0x1904eeaa
xor r8d, 0x178212de
xor r8d, 0x7b674073
mov rcx, rax
call fcn.140099df0
xchg r12, r12
xchg r12, rsp
mov rsp, qword [rbp + 0x10]
xchg r12, rsp
test r12, r12
mov dword [rsp - 0x40], ebp
je 0x1400877d1
mov r14, qword [r15 + 0x38]
lea rax, [rsp + 0x38]
mov rbx, qword [r15]
mov dword [rsp - 0x2c], edx
lea rcx, [rsp + 0x30]
xorps xmm0, xmm0
xchg rdx, rax
mov qword [rsp + 0x30], rdx
xchg rdx, rax
xchg rdx, rsp
movups xmmword [rdx + 0x38], xmm0
xchg rdx, rsp
lea rdx, [r14 + 1]
mov dword [rsp - 0xc], 0x403df0be
xchg rcx, rsp
movups xmmword [rcx + 0x48], xmm0
xchg rcx, rsp
movups xmmword [rsp + 0x58], xmm0
mov dword [rsp - 0x20], 0x1a2469b8
call fcn.140017bb4
mov edx, 0x536cb980
add edx, 0x5e0d8ab
sub edx, 0x2f4acc64
add edx, 0x65b5c81
test r14, r14
mov rdi, rdi
je 0x14008774b
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
sub rbx, rax
mov dword [rsp - 0x18], 0x722a88df
xchg r8, r12
mov r12, r14
xchg r8, r12
mov r9d, 0x5694f676
sub r9d, 0x3667078b
xor r9d, 0x1fc26d5e
sub r9d, 0x3fef82b6
nop dword [rax + rax]
mov r10, r10
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
xchg rdi, rdi
ror edx, 7
ror edx, 1
xor cx, word [rbx + rdi - 2]
mov dword [rsp - 0x18], 0x3cca18ae
mov word [rdi - 2], cx
sub r8, 1
jne 0x14008771d
xor ecx, ecx
mov r12, r12
mov word [rax + r14*2], cx
mov rcx, r12
xchg r13, rdx
mov r13, qword [rbp + 0x118]
xchg rdx, r13
xchg rcx, r8
mov rcx, qword [rsp + 0x30]
xchg r8, rcx
inc rdx
mov rbp, rbp
call fcn.14009a840
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
cmp rcx, rax
xchg r13, r13
jne 0x1400877bc
lea rdi, [rsp + 0x38]
xor eax, eax
mov ecx, 0x22efe6a0
sub ecx, 0xc6e7e93
xor ecx, 0xf014c71
add ecx, 0x5d2e2062
xor ecx, 0x76ae44ee
rep stosb byte [rdi], al
jmp 0x1400877c4
call fcn.140099810
mov r12, r12
xchg rbx, rsp
mov rsp, qword [rbp + 0x270]
xchg rbx, rsp
xchg rdi, r12
mov rdi, qword [rbp + 0x278]
xchg r12, rdi
mov rcx, qword [rsi + 0x78]
mov dword [rsp - 0x18], 0x527a4ff4
lea rax, [0x140001ae0]
mov r14, qword [rbx]
mov qword [rbp], 0x64ed85a8
xor qword [rbp], 0x26375734
xor qword [rbp], 0x7f5175a2
sub qword [rbp], 0xeef416c
xor qword [rbp], 0x2e9c65ca
mov qword [rbp - 0x78], rax
xchg rsi, rcx
mov qword [rbp + 0x198], rsi
xchg rsi, rcx
xchg r8, rsp
movups xmm0, xmmword [r8 + 0x20]
xchg rsp, r8
xchg rbp, r9
movups xmmword [r9 - 0x70], xmm0
xchg rbp, r9
cmp rcx, 0x78
jbe 0x140087893
xchg rbp, rbp
xchg rcx, rbx
mov rcx, qword [rsi]
xchg rbx, rcx
mov rax, qword [rbx]
mov r12, r12
mov rdi, qword [rax + 0x10]
call fcn.140099aa0
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
xchg r11, rbx
mov rcx, r11
xchg rbx, r11
call rdi
xchg rbx, r8
mov r8, qword [rbp + 0x270]
xchg r8, rbx
mov qword [rbp + 0x120], rax
jmp 0x1400878b6
test rcx, rcx
je 0x1400878b6
mov r8, r8
xchg r14, rax
mov r14, qword [rsi]
xchg r14, rax
lea rdx, [rbp + 0x120]
mov rbp, rbp
mov rcx, rsi
call qword [rax + 0x10]
lea r8, [rbp - 0x78]
xchg rdx, r14
mov r14, rdx
xchg r14, rdx
lea rcx, [rbp + 0x120]
mov dword [rsp - 0x28], 0x2fcce1cd
call fcn.140085200
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
test rax, rax
je 0x140087975
xchg r11, r11
mov rdx, qword [rsi + 0x78]
cmp rdx, 0x78
jbe 0x140087903
mov rcx, qword [rsi]
mov r11, r11
jmp 0x140087912
xor eax, eax
test rdx, rdx
mov dword [rsp - 0x3c], ebx
mov ecx, eax
cmovne rcx, rsi
xchg rsi, rax
mov rsi, qword [rcx]
xchg rsi, rax
lea r8, [rbp + 0x1a0]
mov r9d, 0x25779ce6
xor r9d, 0x61a64e07
sub r9d, 0x44ab806b
add r9d, 0x4ca0f776
sub r9d, 0x4cc7495c
mov rdx, rdi
call qword [rax + 8]
mov r10, r10
xor ecx, ecx
test al, al
mov r12d, ecx
cmovne r12, qword [rbp + 0x1d0]
mov dword [rsp - 0x34], ebx
mov qword [rbp + 0x278], r12
cmp r12, qword [rbp + 0x280]
jne 0x140087990
xchg r8, r8
nop
add r15, 0x2d97d3f1
sub r15, 0x2d97d3b1
cmp r15, r13
mov rdx, rdx
jne 0x140087595
lea rcx, [rsp + 0x68]
call fcn.140089c20
xchg rdx, rdx
mov r15, qword [rsp + 0x330]
xor r13d, r13d
jmp 0x140087a17
mov rax, qword [rsi + 0x78]
mov dword [rsp - 0x28], edi
cmp rax, 0x78
jbe 0x1400879ca
mov rcx, qword [rsi]
mov r12, r12
jmp 0x1400879da
test rax, rax
xchg rcx, r15
mov r15, r13
xchg rcx, r15
cmovne rcx, rsi
mov rax, qword [rcx]
mov dword [rsp - 0x38], 0x47dbaa1
lea r8, [rbp + 0x1a0]
mov r9d, 0x7759c997
sub r9d, 0x25f18d5a
xor r9d, 0x34578842
sub r9d, 0x653fb3ef
call qword [rax + 8]
test al, al
cmovne r12, qword [rbp + 0x1d0]
xchg rbx, rbx
mov rcx, qword [rbp + 0x10]
lea rax, [rbp + 0x18]
xchg rcx, r14
mov rcx, qword [rsp + 0x338]
xchg rcx, r14
xchg rbx, r10
mov r10, qword [rsp + 0x388]
xchg rbx, r10
cmp rcx, rax
xchg r14, r14
jne 0x140087a6e
lea rdi, [rbp + 0x18]
xor eax, eax
mov ecx, 0x710db8b1
sub ecx, 0x35308f03
sub ecx, 0x3090f98a
sub ecx, 0xb4c2f24
rep stosb byte [rdi], al
mov rbp, rbp
jmp 0x140087a73
call fcn.140099810
mov rcx, qword [rsi + 0x78]
mov r11, r11
cmp rcx, 0x78
jbe 0x140087aaf
mov rcx, qword [rsi]
xor edx, edx
mov dword [rsp - 0xc], edi
xchg rdi, r8
mov r8, qword [rcx]
xchg rdi, r8
call qword [rdi]
mov dword [rsp - 0x2c], esi
xchg rcx, r15
mov r15, qword [rsi]
xchg rcx, r15
call fcn.140099810
jmp 0x140087ace
test rcx, rcx
je 0x140087ace
xchg rsp, rsp
mov rax, qword [rsi]
xor edx, edx
xchg rcx, r11
mov r11, rsi
xchg r11, rcx
call qword [rax]
mov rbp, rbp
xchg r13, r9
mov qword [rsi + 0x78], r9
xchg r13, r9
xchg r12, rax
mov r12, rax
xchg r12, rax
add rsp, 0x340
mov r14, r14
nop
mov r13, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
pop rsi
pop rbp
ret