Function at 0x140087e20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
mov r10, r10
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
push 0x39a45b3
mov qword [rsp], rsi
push r12
push r13
push r14
mov dword [rsp - 0x30], ecx
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov qword [rcx], 0x216b48d5
sub qword [rcx], 0x8d5f97d
add qword [rcx], 0x2a376d30
add qword [rcx], 0x2df831a5
sub qword [rcx], 0x70c4ee2d
mov r14, r9
mov qword [rcx + 8], 0x1a9a4d51
add qword [rcx + 8], 0x4081a498
sub qword [rcx + 8], 0x21cb6020
xor qword [rcx + 8], 0x395091c9
xchg r8, r13
mov r8, r13
xchg r8, r13
mov qword [rcx + 0x10], 0x69cfdb09
add qword [rcx + 0x10], 0x42b7f70
sub qword [rcx + 0x10], 0x3aabb8e5
xor qword [rcx + 0x10], 0x334fa194
xchg rbp, r12
mov rbp, rdx
xchg r12, rbp
mov qword [rcx + 0x18], 0x49dc315b
add qword [rcx + 0x18], 0x294dd282
sub qword [rcx + 0x18], 0x5e0ad223
sub qword [rcx + 0x18], 0x151f31b9
xchg rsi, rbp
mov rbp, rcx
xchg rbp, rsi
xchg rbp, rax
mov rbp, qword [rdx + 0x78]
xchg rbp, rax
cmp rax, 0x78
xchg rdx, rdx
jbe 0x140087f19
xchg rdi, rcx
mov rdi, qword [rdx]
xchg rdi, rcx
jmp 0x140087f2a
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov dword [rsp - 0x34], 0x35308fd2
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
lea r8, [rbp - 0x80]
mov rbx, rbx
mov r9d, 0x44648f8f
xor r9d, 0x10b69e0e
sub r9d, 0x1dc31b36
sub r9d, 0x370ef623
mov rdx, r13
call qword [rax + 8]
mov dword [rsp - 0x10], edi
test al, al
jne 0x140087f75
mov rcx, r12
mov rbx, rbx
call fcn.140082ab0
jmp 0x140088962
xchg rbx, r15
mov qword [rsp + 0x228], r15
xchg r15, rbx
mov qword [rsp + 0x1d8], rdi
mov dword [rsp - 0x14], 0x5dae8ba1
nop
movabs rdi, 0xffffffff576a2889
sub rdi, 0x4b849404
xor rdi, 0x7dc607e2
sub rdi, 0x44559377
add rdi, 0x7fffffff
add rdi, 0x4e320010
mov rax, rdi
mov qword [rsp + 0x1d0], r15
mov dword [rsp - 0x28], ebx
nop word [rax + rax]
inc rax
cmp word [r14 + rax*2 + 8], 0
xchg r10, r10
jne 0x140087fdb
mov ecx, dword [rbp - 0x74]
lea r15, [rax - 4]
xchg rbp, rbp
cmp rax, 4
cmovbe r15, rax
mov eax, 0x7f44c074
xor eax, 0x554d2981
add eax, 0x525c43fb
xor eax, 0x7c662de8
mul rcx
mov rdi, rdi
cmovo rax, rdi
xchg r9, rax
mov rcx, r9
xchg r9, rax
call fcn.140092ac0
mov ecx, dword [rbp - 0x74]
xchg r11, rbx
mov r11, rax
xchg r11, rbx
xchg rdx, rbp
mov rbp, qword [r12 + 0x78]
xchg rdx, rbp
mov qword [rbp + 0x118], rax
xchg rdx, rdx
lea r9, [rcx + rcx*2]
shl r9, 3
cmp rdx, 0x78
jbe 0x140088069
xchg r11, r11
mov rcx, qword [r12]
jmp 0x140088076
xor ecx, ecx
mov dword [rsp - 0x14], edx
test rdx, rdx
cmovne rcx, r12
mov rax, qword [rcx]
lea rdx, [r13 + 0x10]
mov r10, r10
xchg rbx, r8
mov rbx, r8
xchg rbx, r8
call qword [rax + 8]
test al, al
je 0x1400888af
mov r15, r15
xor edi, edi
cmp dword [rbp - 0x74], edi
jbe 0x1400888af
xchg rsi, rsi
nop
xorps xmm0, xmm0
lea rcx, [rdi + rdi*2]
xchg r12, r12
mov eax, dword [rbx + rcx*8 + 8]
lea rbx, [rbx + rcx*8]
mov r9d, 0x6e1652d4
sub r9d, 0x21c170b
sub r9d, 0x10dbe1cf
add r9d, 0xd2b953c
xor r9d, 0x6849ef48
xchg rbp, r15
movups xmmword [r15 + 0x50], xmm0
xchg r15, rbp
movups xmmword [rbp + 0x60], xmm0
mov dword [rsp - 0x2c], 0x754cc351
xchg rbx, rbp
movups xmmword [rbx + 0x70], xmm0
xchg rbx, rbp
xchg rbx, rbp
movups xmmword [rbx + 0x80], xmm0
xchg rbp, rbx
xchg rbp, r8
movups xmmword [r8 + 0x90], xmm0
xchg r8, rbp
xchg rsi, rbp
movups xmmword [rsi + 0xa0], xmm0
xchg rbp, rsi
xchg rbp, r15
movups xmmword [r15 + 0xb0], xmm0
xchg rbp, r15
xchg rdi, rbp
movups xmmword [rdi + 0xc0], xmm0
xchg rdi, rbp
cmp eax, 0x7e
mov rbx, rbx
ja 0x14008814e
mov r9d, eax
mov edx, dword [rbx + 4]
mov dword [rsp - 0x34], 0x10a460e9
mov rax, qword [r12 + 0x78]
add rdx, r13
cmp rax, 0x78
jbe 0x140088177
xchg rdx, rdx
mov rcx, qword [r12]
jmp 0x140088183
xor ecx, ecx
test rax, rax
cmovne rcx, r12
xchg rsp, rsp
xchg rsp, rax
mov rsp, qword [rcx]
xchg rsp, rax
lea r8, [rbp + 0x50]
call qword [rax + 8]
xchg rdx, rdx
test al, al
je 0x1400881c1
xchg r15, r8
mov r15, r8
xchg r8, r15
lea rdx, [r14 + 8]
mov dword [rsp - 0x10], esp
lea rcx, [rbp + 0x50]
call fcn.1400938c0
test eax, eax
je 0x1400881e1
mov rsi, rsi
xchg r10, rbx
mov r10, qword [rbp + 0x118]
xchg r10, rbx
inc edi
mov rdx, rdx
cmp edi, dword [rbp - 0x74]
jae 0x1400888af
jmp 0x1400880a7
mov ebx, dword [rbx + 0x14]
mov r9, r9
xchg r14, rax
mov r14, qword [r12 + 0x78]
xchg r14, rax
add rbx, r13
mov rbx, rbx
mov qword [rsp + 0x20], rbx
cmp rax, 0x78
jbe 0x140088217
xchg r11, r11
xchg rcx, r8
mov r8, qword [r12]
xchg rcx, r8
jmp 0x140088223
xor ecx, ecx
xchg r8, r8
test rax, rax
cmovne rcx, r12
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
lea r8, [rbp - 0x58]
mov dword [rsp - 0x40], ebp
mov r9d, 0x50ad655d
xor r9d, 0x4ca01012
sub r9d, 0xb1a0a95
add r9d, 0x9947915
sub r9d, 0x1a87e3b3
mov rdx, rbx
mov rdi, rdi
call qword [rax + 8]
test al, al
je 0x1400888a8
mov dword [rsp - 0x2c], 0x498811ae
xor r14d, r14d
mov dword [rbp + 0x110], r14d
cmp dword [rbp - 0x54], r14d
jbe 0x1400888a8
xchg r14, r14
mov r15d, 0x499cdfa4
sub r15d, 0xe4293f3
xor r15d, 0x1a17409a
add r15d, 0x8615850
sub r15d, 0x29ae627c
nop
mov rax, qword [r12 + 0x78]
mov dword [rsp - 0x28], 0x3bc0e68c
cmp rax, 0x78
jbe 0x1400882ca
mov rcx, qword [r12]
xchg r10, r10
jmp 0x1400882d6
xor ecx, ecx
test rax, rax
mov r12, r12
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rsp + 0x68]
mov edx, r14d
mov dword [rsp - 0x34], 0x5ef0171e
mov r9d, 0x4bb11129
xor r9d, 0x49890d3b
xor r9d, 0x12228ac6
xor r9d, 0x4b31ad8e
xor r9d, 0x5b2b3b4e
sub rdx, 0xfffffffffffffffe
mov rsp, rsp
xchg r9, rdi
mov r9, qword [rax + 8]
xchg r9, rdi
lea rdx, [rdx + r14*4]
xchg r11, r11
lea rdx, [rbx + rdx*4]
call rdi
test al, al
mov dword [rsp - 0x38], edi
je 0x140088890
mov eax, dword [rsp + 0x78]
xorps xmm0, xmm0
mov r8, r8
mov r9d, 0x7cdf375a
sub r9d, 0x33dcc8e6
xor r9d, 0x7f4e0aed
add r9d, 0x2e8dab3a
sub r9d, 0x64da0f55
xchg r15, rbp
movups xmmword [r15 - 0x30], xmm0
xchg rbp, r15
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
mov dword [rsp - 0x40], ebx
xchg rbp, rdx
movups xmmword [rdx], xmm0
xchg rbp, rdx
movups xmmword [rbp + 0x10], xmm0
xchg r9, r9
xchg r12, rbp
movups xmmword [r12 + 0x20], xmm0
xchg rbp, r12
xchg r15, rbp
movups xmmword [r15 + 0x30], xmm0
xchg r15, rbp
xchg rbp, rdi
movups xmmword [rdi + 0x40], xmm0
xchg rdi, rbp
cmp eax, 0x7e
mov r10, r10
ja 0x1400883b8
mov r9d, eax
mov edx, dword [rsp + 0x74]
mov dword [rsp - 0x34], 0x7a476611
xchg rbx, rax
mov rbx, qword [r12 + 0x78]
xchg rbx, rax
add rdx, r13
mov dword [rsp - 0x1c], edi
cmp rax, 0x78
jbe 0x1400883ea
mov rcx, qword [r12]
xchg r10, r10
jmp 0x1400883f6
xor ecx, ecx
test rax, rax
xchg rsp, rsp
cmovne rcx, r12
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
lea r8, [rbp - 0x30]
call qword [rax + 8]
mov dword [rsp - 0xc], edx
test al, al
je 0x140088890
xorps xmm0, xmm0
lea rax, [rsp + 0x30]
mov dword [rsp - 0x1c], 0x7c98ac51
mov qword [rsp + 0x28], rax
nop
movabs rdx, 0xffffffff432ec55f
xor rdx, 0x6cfbe6ca
add rdx, 0x2aa25d41
sub rdx, 0x2720e61e
add rdx, 0x7fffffff
add rdx, 0x4ca96548
lea rax, [rbp - 0x30]
xchg rsp, r8
movups xmmword [r8 + 0x30], xmm0
xchg rsp, r8
xchg rsp, rdx
movups xmmword [rdx + 0x40], xmm0
xchg rsp, rdx
xchg r14, rsp
movups xmmword [r14 + 0x50], xmm0
xchg r14, rsp
inc rdx
mov dword [rsp - 0x20], 0x2af77a50
cmp word [rax + rdx*2], 0
jne 0x140088477
lea rcx, [rsp + 0x28]
xchg r13, r13
xchg rcx, rdx
mov qword [rsp + 0x60], rcx
xchg rcx, rdx
call fcn.140016760
mov r13, r13
xor edi, edi
mov rdx, rax
mov ecx, 0x4a34f68
xor ecx, 0x21b9a787
add ecx, 0x1a0e5ef9
xor ecx, 0x408ab546
sub ecx, 0x528fb9e3
cmp qword [rsp + 0x60], rdi
jbe 0x140088528
lea r8, [rbp - 0x30]
mov dword [rsp - 0x38], edi
sub r8, rax
nop word [rax + rax]
movzx eax, cx
mov dword [rsp - 0x38], 0x7d145609
lea rdx, [rdx + 2]
and ax, r15w
ror ecx, 1
ror ecx, 6
ror ecx, 1
xor ax, word [r8 + rdx - 2]
mov r9, r9
inc rdi
mov word [rdx - 2], ax
cmp rdi, qword [rsp + 0x60]
mov dword [rsp - 0x40], 0x7d06a7a7
jb 0x1400884eb
mov rax, qword [rsi + 8]
test rax, rax
je 0x14008873f
mov r12, r12
mov rcx, qword [rsi + 0x10]
cmp rax, rcx
jb 0x140088737
add rcx, qword [rsi + 0x18]
mov r12, r12
mov qword [rsi + 0x10], rcx
shl rcx, 5
shl rcx, 1
call fcn.140092ed0
xchg rdx, rdx
xchg rbp, rcx
mov rbp, qword [rsi + 8]
xchg rbp, rcx
xor r14d, r14d
mov dword [rsp - 0x40], ecx
xchg rcx, rax
mov r13, rcx
xchg rcx, rax
test rcx, rcx
mov dword [rsp - 0x20], 0x4ad64fff
je 0x14008867e
nop
movabs r15, 0xffffffff7bffdb9e
sub r15, 0x64f82893
add r15, 0x33755a66
add r15, 0x7fffffff
xor r15, 0x3582f2b8
lea rdi, [rax + 0x38]
sub r15, rax
mov dword [rsp - 0x20], esp
nop word [rax + rax]
lea rax, [rdi - 0x30]
xorps xmm0, xmm0
xchg rsp, rsp
lea rcx, [rdi - 0x38]
lea rbx, [r15 + rdi]
add rbx, qword [rsi]
xchg r15, r15
mov qword [rcx], rax
movups xmmword [rax], xmm0
xchg rsi, rax
movups xmmword [rsi + 0x10], xmm0
xchg rsi, rax
movups xmmword [rax + 0x20], xmm0
mov r12, r12
mov rdx, qword [rbx + 0x38]
xchg r11, rdx
mov qword [rdi], r11
xchg rdx, r11
call fcn.140016760
xor ecx, ecx
mov dword [rsp - 0x3c], esi
cmp qword [rdi], rcx
jbe 0x140088639
nop dword [rax]
nop word [rax + rax]
xchg rbx, rbx
mov rdx, qword [rbx]
movzx edx, word [rdx + rcx*2]
mov word [rax + rcx*2], dx
inc rcx
mov dword [rsp - 0x24], edx
cmp rcx, qword [rdi]
jb 0x14008861e
mov rcx, qword [rsi + 8]
inc r14
mov dword [rsp - 0x44], 0xdb0c431
nop
add rdi, 0x22d675d
sub rdi, 0x22d671d
cmp r14, rcx
xchg rbx, rbx
jb 0x1400885c0
mov r15d, 0x3893580e
xor r15d, 0x6be575aa
sub r15d, 0xc854b21
xor r15d, 0x46f0e27c
cmp qword [rsi], 0
je 0x14008871f
xchg rbp, rbp
xor ebx, ebx
test rcx, rcx
je 0x140088711
xor r14d, r14d
mov rbx, rbx
nop dword [rax]
mov rax, qword [rsi]
mov rcx, qword [r14 + rax]
mov dword [rsp - 0x18], ecx
lea rdi, [rax + 8]
add rdi, r14
cmp rcx, rdi
jne 0x1400886e5
mov dword [rsp - 0x20], ebp
xor eax, eax
mov ecx, 0x1f230617
xor ecx, 0x76493ac4
xor ecx, 0x57c90b9a
sub ecx, 0x3ea33719
rep stosb byte [rdi], al
mov rsi, rsi
jmp 0x1400886f2
call fcn.140092c10
mov dword [rsp - 0x20], 0x6dccab83
inc rbx
nop
add r14, 0x65282123
sub r14, 0x652820e3
cmp rbx, qword [rsi + 8]
mov r15, r15
jb 0x1400886a3
xchg r10, rcx
mov r10, qword [rsi]
xchg r10, rcx
call fcn.140092c10
mov r14d, dword [rbp + 0x110]
xchg rbp, rbp
xchg rcx, r13
mov qword [rsi], rcx
xchg rcx, r13
jmp 0x14008877e
mov r13, qword [rsi]
jmp 0x14008877e
mov r13, qword [rsi]
xchg r12, r12
test r13, r13
jne 0x14008877e
xchg rcx, r8
mov r8, qword [rsi + 0x18]
xchg r8, rcx
xchg rcx, rdx
mov qword [rsi + 0x10], rdx
xchg rdx, rcx
shl rcx, 1
shl rcx, 1
shl rcx, 4
call fcn.140092ed0
mov r13, r13
mov r13, rax
xchg rdx, rax
mov qword [rsi], rdx
xchg rdx, rax
mov rax, qword [rsi + 8]
xorps xmm0, xmm0
mov dword [rsp - 0x34], 0x718b5538
xchg r12, rax
mov rbx, r12
xchg r12, rax
shl rbx, 6
add rbx, r13
xchg rsp, rsp
inc rax
xchg r13, rcx
mov r13, rbx
xchg r13, rcx
mov qword [rsi + 8], rax
lea rax, [rbx + 8]
mov dword [rsp - 0x34], 0x47de2143
mov qword [rbx], rax
xchg rdx, rax
movups xmmword [rdx], xmm0
xchg rdx, rax
xchg rbx, rax
movups xmmword [rbx + 0x10], xmm0
xchg rbx, rax
xchg rsp, rax
movups xmmword [rsp + 0x20], xmm0
xchg rsp, rax
xchg r14, rax
mov r14, qword [rsp + 0x60]
xchg r14, rax
mov qword [rbx + 0x38], rax
mov dword [rsp - 0x2c], ecx
xchg r9, rdx
mov r9, qword [rsp + 0x60]
xchg r9, rdx
call fcn.140016760
mov dword [rsp - 0x1c], 0x7ce32525
xor edi, edi
cmp qword [rbx + 0x38], rdi
jbe 0x140088830
mov rcx, qword [rsp + 0x28]
mov dword [rsp - 0x14], 0x6567fc21
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
inc rdi
mov dword [rsp - 0x2c], esp
cmp rdi, qword [rbx + 0x38]
jb 0x14008880a
xchg r8, rcx
mov r8, qword [rsp + 0x28]
xchg rcx, r8
lea rax, [rsp + 0x30]
mov dword [rsp - 0x18], ebx
cmp rcx, rax
jne 0x140088876
lea rdi, [rsp + 0x30]
xor eax, eax
mov dword [rsp - 0x2c], ebx
mov ecx, 0x5a8ff082
sub ecx, 0x38f72afc
xor ecx, 0x309700
xor ecx, 0x21a852b6
rep stosb byte [rdi], al
jmp 0x14008887b
call fcn.140092c10
mov r13, qword [rbp + 0x120]
xchg rbp, rbp
xchg rbx, rdi
mov rdi, qword [rsp + 0x20]
xchg rdi, rbx
inc r14d
mov dword [rbp + 0x110], r14d
mov dword [rsp - 0x30], ebx
cmp r14d, dword [rbp - 0x54]
jb 0x1400882a7
mov rbx, qword [rbp + 0x118]
xchg rcx, r11
mov r11, rbx
xchg rcx, r11
call fcn.140092ad0
xchg rsp, rsp
mov rax, qword [r12 + 0x78]
xchg r15, rdx
mov rdx, qword [rsp + 0x1d0]
xchg rdx, r15
xchg rdi, r11
mov r11, qword [rsp + 0x1d8]
xchg r11, rdi
mov rbx, qword [rsp + 0x228]
cmp rax, 0x78
xchg rsi, rsi
jbe 0x140088917
mov rcx, qword [r12]
xor edx, edx
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
call qword [rax]
mov rcx, qword [r12]
mov dword [rsp - 0x44], esp
call fcn.140092c10
jmp 0x140088935
test rax, rax
je 0x140088935
mov rax, qword [r12]
mov dword [rsp - 0x14], edx
xor edx, edx
xchg rdx, r12
mov rcx, rdx
xchg r12, rdx
call qword [rax]
mov qword [r12 + 0x78], 0x644cd48f
sub qword [r12 + 0x78], 0x1b96fee3
xor qword [r12 + 0x78], 0x4db1915
xor qword [r12 + 0x78], 0x55b19a7
sub qword [r12 + 0x78], 0x4935d51e
xchg rsi, rbx
mov rax, rbx
xchg rsi, rbx
neg rsp
add rsp, 0xfffffffffffffe20
neg rsp
pop r14
mov rsp, rsp
pop r13
pop r12
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
mov rbp, qword [rsp]
add rsp, 8
ret