Function at 0x140085a47
Capabilities:
Encode data using xor

Disassembly:
xchg rsp, rax
mov rsp, rax
xchg rsp, rax
xchg r12, r8
mov qword [rax + 0x18], r12
xchg r8, r12
xchg rcx, rbx
mov qword [rax + 8], rbx
xchg rcx, rbx
nop
sub rsp, 8
mov qword [rsp], rbp
push rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push rdi
mov qword [rsp], r13
lea rbp, [rax - 0x268]
mov dword [rsp - 0x30], ebp
add rsp, 0xfffffffffffffcc0
mov qword [rax + 0x20], rbx
xchg rsi, rdx
mov rdx, rsi
xchg rsi, rdx
mov qword [rax - 0x30], r14
xchg rdx, rdx
mov rbx, rcx
lea rax, [rbp + 0x18]
xor edx, edx
mov r8d, 0x7811973e
sub r8d, 0x5b655b22
add r8d, 0x1d948392
xor r8d, 0x651033ec
xor r8d, 0x5f508d42
xchg r10, rax
mov qword [rbp + 0x10], r10
xchg r10, rax
lea rcx, [rbp + 0x18]
xchg rdi, r9
mov r9, rdi
xchg r9, rdi
call fcn.140098320
nop
movabs r8, 0xffffffff347d65d2
xor r8, 0x1fb9cd7e
add r8, 0x1fd9f8b7
sub r8, 0x15e28c23
add r8, 0x7fffffff
add r8, 0x4a43eac0
inc r8
mov dword [rsp - 0x38], ecx
cmp byte [rdi + r8], 0
jne 0x140085745
mov rdx, rdi
lea rcx, [rbp + 0x10]
mov rbx, rbx
call fcn.140090250
xchg rcx, r8
mov r8, qword [rsi + 0x78]
xchg r8, rcx
lea rax, [rbp + 0x10]
xchg r14, r14
xchg rdi, r14
mov rdi, qword [rbx]
xchg r14, rdi
xor r13d, r13d
mov dword [rsp - 0x18], edx
mov qword [rsp + 0x28], rax
lea rax, [0x140001af0]
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x10]
xchg r14, r14
xchg rsp, rax
mov qword [rbp + 0x130], rsp
xchg rsp, rax
mov r12d, r13d
mov dword [rsp - 0x28], ebp
xchg r14, r13
mov qword [rbp + 0x278], r14
xchg r13, r14
xchg rcx, rsi
mov qword [rsp + 0x20], rcx
xchg rcx, rsi
mov qword [rbp + 0x198], 0x2cc05744
add qword [rbp + 0x198], 0x3ca8af87
sub qword [rbp + 0x198], 0x2c9c7d79
xor qword [rbp + 0x198], 0x2e75d021
xor qword [rbp + 0x198], 0x12b9596b
xchg rdx, rsi
mov qword [rbp + 0x128], rdx
xchg rdx, rsi
xchg rdi, rcx
mov qword [rbp], rdi
xchg rcx, rdi
cmp rcx, 0x78
xchg r11, r11
jbe 0x140085862
xchg rbx, rsp
mov rsp, qword [rsi]
xchg rsp, rbx
mov rax, qword [rbx]
mov rdi, qword [rax + 0x10]
call fcn.140097fa0
mov dword [rsp - 0x20], 0x213cc600
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov rcx, rbx
call rdi
mov rbx, qword [rbp + 0x270]
mov r9, r9
mov qword [rbp - 0x78], rax
jmp 0x140085886
test rcx, rcx
je 0x140085886
mov dword [rsp - 0x14], ebp
xchg r15, rax
mov r15, qword [rsi]
xchg r15, rax
lea rdx, [rbp - 0x78]
xchg rsi, r10
mov rcx, r10
xchg rsi, r10
call qword [rax + 0x10]
lea r8, [rbp + 0x120]
xchg r15, r14
mov rdx, r15
xchg r14, r15
lea rcx, [rbp - 0x78]
mov dword [rsp - 0x2c], esp
call fcn.140083680
xchg r10, rax
mov rdx, r10
xchg r10, rax
test rax, rax
xchg rdi, rdi
jne 0x140085dc2
xchg r11, rcx
mov r11, qword [rsi + 0x78]
xchg rcx, r11
mov r14, qword [rbp + 0x10]
xchg r15, rcx
mov qword [rsp + 0x330], rcx
xchg r15, rcx
xchg r15, r14
mov r14, qword [rbx]
xchg r14, r15
xchg r9, rcx
mov qword [rbp], r9
xchg r9, rcx
cmp rcx, 0x78
mov r12, r12
jbe 0x14008592e
mov rbx, qword [rsi]
mov rax, qword [rbx]
mov rdi, qword [rax + 0x10]
mov rdx, rdx
call fcn.140097fa0
mov rdx, rax
mov rcx, rbx
call rdi
mov dword [rsp - 0x2c], esi
xchg rcx, rbx
mov rcx, qword [rbp + 0x270]
xchg rbx, rcx
mov qword [rbp - 0x78], rax
mov dword [rsp - 0x40], 0x5b5ec31d
jmp 0x140085950
test rcx, rcx
je 0x140085950
mov rax, qword [rsi]
mov dword [rsp - 0x3c], edx
lea rdx, [rbp - 0x78]
mov rcx, rsi
call qword [rax + 0x10]
mov dword [rsp - 0x44], 0x3858395f
xchg r14, rdx
mov r9, rdx
xchg r14, rdx
lea rdx, [rbp - 0x78]
mov r11, r11
xchg r10, r8
mov r10, r15
xchg r10, r8
lea rcx, [rsp + 0x68]
mov dword [rsp - 0x40], esi
call fcn.140084660
xchg rdi, rax
mov rdi, qword [rsp + 0x68]
xchg rdi, rax
mov r15, r13
mov r13, qword [rsp + 0x70]
xchg r14, r14
test r13, r13
cmovne r15, rax
je 0x1400859ae
mov dword [rsp - 0x44], esi
shl r13, 5
shl r13, 1
add r13, rax
xchg r12, r12
jmp 0x1400859b7
xor eax, eax
mov r13d, eax
mov dword [rsp - 0xc], ebx
cmp r15, r13
je 0x140085da5
nop word [rax + rax]
xchg r11, rax
mov r11, qword [r15 + 0x38]
xchg r11, rax
mov rcx, qword [rbp + 0x10]
xchg r11, r11
mov qword [rbp + 0x118], rax
lea rdi, [rax + 1]
lea rax, [rbp + 0x18]
mov dword [rsp - 0x3c], esi
cmp rcx, rax
je 0x1400859f9
call fcn.140097d00
cmp rdi, 0x80
mov dword [rsp - 0x30], 0x6e6153c8
jbe 0x140085a3c
lea rcx, [rdi + rdi]
call fcn.140097fa0
mov qword [rbp + 0x10], rax
xchg r8, r8
test rax, rax
jne 0x140085a47
lea rax, [rbp + 0x18]
mov qword [rbp + 0x10], rax
mov dword [rsp - 0x10], 0x665cf869
jmp 0x140085be0
lea rax, [rbp + 0x18]
xchg r8, r8
mov qword [rbp + 0x10], rax
xor edx, edx
mov r8d, 0x21e8777e
xor r8d, 0x7d440dd5
xor r8d, 0xeab34ab
sub r8d, 0x52074d00
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.140098320
mov r12, qword [rbp + 0x10]
mov dword [rsp - 0x34], ecx
test r12, r12
je 0x140085bd9
xchg r14, rdx
mov rdx, qword [r15 + 0x38]
xchg rdx, r14
lea rax, [rsp + 0x38]
xchg r11, rbx
mov r11, qword [r15]
xchg rbx, r11
lea rcx, [rsp + 0x30]
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
mov r9, r9
movups xmmword [rsp + 0x38], xmm0
lea rdx, [r14 + 1]
xchg rdi, rsp
movups xmmword [rdi + 0x48], xmm0
xchg rdi, rsp
movups xmmword [rsp + 0x58], xmm0
call fcn.140017bec
mov dword [rsp - 0x14], 0x4d08a8c9
mov edx, 0x3c631104
xor edx, 0x90b8c73
sub edx, 0x300087fe
add edx, 0x345f55a2
add edx, 0x23bbc69d
test r14, r14
mov r9, r9
je 0x140085b57
mov rdi, rax
sub rbx, rax
mov r8, r14
mov dword [rsp - 0x18], esi
mov r9d, 0x4eb3d230
add r9d, 0x169650ad
sub r9d, 0x3fddbe38
sub r9d, 0x256c63a6
nop dword [rax + rax]
movzx ecx, dx
mov r11, r11
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 2
ror edx, 1
ror edx, 3
ror edx, 1
ror edx, 1
xor cx, word [rbx + rdi - 2]
mov word [rdi - 2], cx
mov r8, r8
sub r8, 1
jne 0x140085b27
xor ecx, ecx
mov word [rax + r14*2], cx
mov dword [rsp - 0x24], edx
xchg rcx, r12
mov r12, rcx
xchg rcx, r12
mov rdx, qword [rbp + 0x118]
mov dword [rsp - 0x2c], ebx
mov r8, qword [rsp + 0x30]
inc rdx
call fcn.140098d50
mov dword [rsp - 0x40], 0x5d7e6c26
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
cmp rcx, rax
mov dword [rsp - 0x24], edx
jne 0x140085bca
lea rdi, [rsp + 0x38]
xor eax, eax
mov ecx, 0x7f6eae1d
xor ecx, 0x183cdf3b
sub ecx, 0x2614c2d6
sub ecx, 0x413dae20
rep stosb byte [rdi], al
mov r12, r12
jmp 0x140085bcf
call fcn.140097d00
mov rbx, qword [rbp + 0x270]
xchg r11, r11
mov r12, qword [rbp + 0x278]
xchg rcx, rbp
mov rbp, qword [rsi + 0x78]
xchg rbp, rcx
lea rax, [0x140001af0]
mov r14, qword [rbx]
mov qword [rbp], 0x1c165f01
add qword [rbp], 0x3e42a651
xor qword [rbp], 0x7eaf8161
sub qword [rbp], 0x24f6841b
mov qword [rbp - 0x78], rax
mov r11, r11
mov qword [rbp + 0x198], rcx
xchg rsp, rdx
movups xmm0, xmmword [rdx + 0x20]
xchg rdx, rsp
xchg rbp, r11
movups xmmword [r11 - 0x70], xmm0
xchg r11, rbp
cmp rcx, 0x78
mov dword [rsp - 0xc], 0x365f0d4e
jbe 0x140085c93
xchg rbx, rbp
mov rbp, qword [rsi]
xchg rbp, rbx
xchg rdi, rax
mov rdi, qword [rbx]
xchg rdi, rax
mov rdi, qword [rax + 0x10]
mov dword [rsp - 0x3c], esi
call fcn.140097fa0
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov rcx, rbx
call rdi
mov dword [rsp - 0x34], esi
xchg rdx, rbx
mov rdx, qword [rbp + 0x270]
xchg rdx, rbx
xchg r8, rax
mov qword [rbp + 0x120], r8
xchg r8, rax
jmp 0x140085cb5
test rcx, rcx
mov rbp, rbp
je 0x140085cb5
mov rax, qword [rsi]
lea rdx, [rbp + 0x120]
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call qword [rax + 0x10]
lea r8, [rbp - 0x78]
xchg rcx, rcx
xchg rdx, r14
mov r14, rdx
xchg rdx, r14
lea rcx, [rbp + 0x120]
mov r12, r12
call fcn.140083680
mov rdi, rax
test rax, rax
je 0x140085d85
mov dword [rsp - 0x40], 0x37f7eaea
mov rdx, qword [rsi + 0x78]
cmp rdx, 0x78
jbe 0x140085d06
mov rcx, qword [rsi]
mov dword [rsp - 0x1c], 0x23d16116
jmp 0x140085d19
xor eax, eax
test rdx, rdx
mov dword [rsp - 0x34], 0x60c5ceec
mov ecx, eax
cmovne rcx, rsi
mov rax, qword [rcx]
lea r8, [rbp + 0x1a0]
mov dword [rsp - 0x38], 0x73f9a3f6
mov r9d, 0x44d46525
xor r9d, 0x4c127e60
add r9d, 0xbdcbd6d
add r9d, 0x62c606da
sub r9d, 0x7768defc
mov rdx, rdi
xchg r10, r10
call qword [rax + 8]
xor ecx, ecx
test al, al
mov r12d, ecx
mov r15, r15
cmovne r12, qword [rbp + 0x1d0]
xchg r12, r15
mov qword [rbp + 0x278], r15
xchg r15, r12
cmp r12, qword [rbp + 0x280]
jne 0x140085da5
xchg rbx, rbx
nop
sub r15, 0x56e8fd35
add r15, 0x56e8fd75
cmp r15, r13
mov dword [rsp - 0x30], 0x6cb8729d
jne 0x1400859c9
lea rcx, [rsp + 0x68]
call fcn.1400880b0
mov r15, qword [rsp + 0x330]
xchg rsp, rsp
xor r13d, r13d
jmp 0x140085e30
mov rax, qword [rsi + 0x78]
mov dword [rsp - 0x20], 0x2941e2dd
cmp rax, 0x78
jbe 0x140085de8
mov rcx, qword [rsi]
mov dword [rsp - 0x24], 0x921bdf1
jmp 0x140085dfb
test rax, rax
xchg r11, r13
mov rcx, r11
xchg r13, r11
cmovne rcx, rsi
xchg rdx, rdx
mov rax, qword [rcx]
lea r8, [rbp + 0x1a0]
mov r9d, 0x3d2eb5e1
add r9d, 0xa124b12
sub r9d, 0x1124d0bb
sub r9d, 0x361c2fa8
call qword [rax + 8]
mov r13, r13
test al, al
cmovne r12, qword [rbp + 0x1d0]
xchg r12, rcx
mov r12, qword [rbp + 0x10]
xchg rcx, r12
lea rax, [rbp + 0x18]
mov dword [rsp - 0x44], ebx
xchg r8, r14
mov r8, qword [rsp + 0x338]
xchg r8, r14
xchg r10, rbx
mov r10, qword [rsp + 0x388]
xchg r10, rbx
cmp rcx, rax
jne 0x140085e9d
mov dword [rsp - 0x1c], 0xc583713
lea rdi, [rbp + 0x18]
xor eax, eax
mov ecx, 0x515542b
xor ecx, 0x74ea125e
xor ecx, 0x4dc65df1
xor ecx, 0x101002fa
sub ecx, 0x2c29187e
rep stosb byte [rdi], al
mov dword [rsp - 0x28], ebp
jmp 0x140085ea2
call fcn.140097d00
xchg rcx, r13
mov r13, qword [rsi + 0x78]
xchg rcx, r13
cmp rcx, 0x78
mov dword [rsp - 0x14], 0x431c962b
jbe 0x140085eeb
xchg rcx, r14
mov r14, qword [rsi]
xchg r14, rcx
xor edx, edx
xchg rdi, r9
mov r9, qword [rcx]
xchg rdi, r9
call qword [rdi]
xchg r15, rcx
mov r15, qword [rsi]
xchg rcx, r15
call fcn.140097d00
mov dword [rsp - 0x38], ecx
jmp 0x140085f13
test rcx, rcx
mov rbp, rbp
je 0x140085f13
xchg rdx, rax
mov rdx, qword [rsi]
xchg rdx, rax
xor edx, edx
xchg rcx, r15
mov r15, rsi
xchg r15, rcx
call qword [rax]
mov dword [rsp - 0x28], 0x10b92a52
mov qword [rsi + 0x78], r13
xchg rbp, rax
mov rbp, r12
xchg rbp, rax
add rsp, 0x5c1d4848
sub rsp, 0x5c1d4508
pop r13
mov dword [rsp - 0x38], ecx
pop r12
pop rdi
nop
mov rsi, qword [rsp]
add rsp, 8
pop rbp
ret