Function at 0x1400964e8
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
nop
push 0x46d21f77
mov qword [rsp], rsi
push rdi
xchg rdi, rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x380]
mov dword [rsp - 0x3c], edx
add rsp, 0xfffffffffffffb80
xor r15d, r15d
lea r12, [0x140000000]
xchg rbx, rdx
mov rdx, rbx
xchg rdx, rbx
mov dword [rbp + 0x3c0], r15d
mov dword [rsp - 0x14], ecx
mov edi, r15d
mov edx, r15d
xchg rcx, r14
mov rcx, r14
xchg rcx, r14
mov esi, 0x37c1bc51
add esi, 0x1c03f4e5
sub esi, 0x2556c942
add esi, 0x34c5645d
sub esi, 0x439948b7
mov ecx, edx
mov dword [rsp - 0x18], ebx
mov eax, esi
rol eax, cl
xor al, byte [rdx + r12 + 0xbcb0]
mov dword [rsp - 0x3c], 0x715d1500
mov byte [rsp + rdx + 0x38], al
inc rdx
cmp rdx, 0x10
mov dword [rsp - 0x14], 0x44eea116
jb 0x140096573
xchg rcx, rax
mov rcx, qword [r14 + 0x28]
xchg rcx, rax
lea rdx, [rsp + 0x38]
mov dword [rsp - 0x20], 0x7ec0119d
ror rax, 0x18
ror rax, 1
ror rax, 2
ror rax, 1
movabs rcx, 0x4575e1715366752
sub rcx, 0xd51e4ce
add rcx, 0x168bbc02
add rcx, 0x1ca48432
sub rcx, 0x3369b742
add rax, rcx
xor r9d, r9d
mov dword [rsp - 0x14], esi
not rax
movabs rcx, 0x15f72be75b5f3a78
sub rcx, 0x11b9ccbe
add rcx, 0x243e6a01
add rcx, 0x1187b826
add rax, rcx
xor r8d, r8d
mov rdi, rdi
lea rcx, [rbp + 0x3c0]
call rax
test eax, eax
mov r9, r9
jne 0x140096bc3
mov edx, dword [rbp + 0x3c0]
xchg r12, rcx
mov r12, rdi
xchg r12, rcx
add rdx, rdx
mov dword [rsp - 0x10], esp
call fcn.1400801d0
mov rdi, rax
test rax, rax
je 0x140096bc3
xchg rdi, rdi
xchg rdx, rax
mov rdx, qword [r14 + 0x30]
xchg rdx, rax
movabs rcx, 0x77a6433c48627991
sub rcx, 0x3ee5d476
xor rcx, 0x2ff6c06b
xor rcx, 0x624e68bb
add rcx, 0x7fffffff
add rcx, 0x3b176f5
mov r9d, dword [rbp + 0x3c0]
mov dword [rsp - 0x3c], 0x5f71d337
not rax
add rax, rcx
mov dword [rsp + 0x20], r15d
mov dword [rsp - 0x18], ebx
rol rax, 5
rol rax, 0x2f
rol rax, 2
rol rax, 1
rol rax, 1
movabs rcx, 0xa189bf875386c1e
xor rcx, 0x69c21908
add rcx, 0x25bf9988
add rcx, 0x65394bf3
xor rax, rcx
mov dword [rsp - 0x30], esi
xchg r14, r8
mov r14, rdi
xchg r8, r14
movabs rcx, 0x666570e2f1b40f4
add rcx, 0x3a2aba2f
add rcx, 0xf5a327a
sub rcx, 0x14d3947
xor edx, edx
sub rax, rcx
mov dword [rsp - 0x38], 0x22688408
lea rcx, [rsp + 0x38]
call rax
cmp eax, 0x1a
je 0x1400965a6
xchg r8, r8
test eax, eax
jne 0x140096bc3
mov rdx, r15
mov dword [rsp - 0x44], edi
mov ecx, edx
mov eax, esi
rol eax, cl
xor al, byte [rdx + r12 + 0xbcc0]
mov r11, r11
mov byte [rsp + rdx + 0x60], al
inc rdx
cmp rdx, 0x14
jb 0x140096744
mov r8, r8
xchg r13, r15
mov rdx, r13
xchg r13, r15
mov ecx, edx
mov dword [rsp - 0x38], 0xc314bcc
mov eax, esi
rol eax, cl
xor al, byte [rdx + r12 + 0xbcd8]
xchg r12, r12
mov byte [rsp + rdx + 0x48], al
inc rdx
cmp rdx, 0x14
jb 0x140096772
xchg rsi, rsi
xchg rbp, rdi
mov rsi, rbp
xchg rbp, rdi
cmp word [rdi], r15w
mov rbx, rbx
je 0x140096b24
mov r12d, 0xf18e5ab
sub r12d, 0x634a66e
xor r12d, 0x2e7aad9f
add r12d, 0x2e04827e
sub r12d, 0x54a31320
xchg rsp, rax
mov rsp, qword [r14 + 0x38]
xchg rsp, rax
lea r9, [rbp - 0x80]
mov rsi, rsi
rol rax, 0x22
rol rax, 8
rol rax, 1
rol rax, 1
lea r8, [rsp + 0x30]
xchg r12, r12
movabs rcx, 0xde7cd00d5dfb55c2
xor rcx, 0x1f263b49
xor rcx, 0x666fb040
xor rcx, 0x6112eeca
mov dword [rsp + 0x28], r15d
add rcx, rax
xchg rdx, rdx
mov dword [rbp + 0x3d0], r12d
movabs rax, 0x9b315d7b59afe560
sub rax, 0xc7e7571
xor rax, 0x55863a61
add rax, 0x5b9a8ab1
sub rax, 0x5e59f110
lea rdx, [rsp + 0x60]
xor rcx, rax
xchg rsp, rsp
movabs rax, 0x13ffdb4316bb631c
add rax, 0x49a3a01
add rax, 0x62c3b3cf
add rax, 0x1115eb0f
ror rcx, 6
ror rcx, 2
ror rcx, 2
ror rcx, 3
ror rcx, 1
ror rcx, 1
add rax, rcx
mov dword [rsp - 0x40], 0x3255585f
lea rcx, [rbp + 0x3d0]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
mov r15, r15
call rax
test eax, eax
jne 0x140096af2
xchg r15, r15
mov rax, qword [r14 + 0x48]
lea rdx, [rbp - 0x80]
ror rax, 7
ror rax, 5
ror rax, 0xe
movabs rcx, 0x62a544816c8e44b5
sub rcx, 0x60f3f133
add rcx, 0x4b58c513
add rcx, 0x7fffffff
xor rcx, 0x789166b1
not rax
xor r8d, r8d
mov dword [rsp - 0x30], 0x69b53a8
rol rax, 0x23
rol rax, 1
xor rax, rcx
xchg r8, r8
movabs rcx, 0x48ec10d12623536b
sub rcx, 0x17eb095b
xor rcx, 0x3c28b78b
add rcx, 0x29895025
add rcx, 0x7fffffff
add rcx, 0xa63231a
sub rax, rcx
movabs rcx, 0x13925598059313a4
xor rcx, 0x20371d4b
xor rcx, 0x1abc81c
xor rcx, 0x3ca87b97
add rcx, 0x7fffffff
xor rcx, 0x3ebdb792
xor rax, rcx
mov dword [rsp - 0x18], 0x395d208d
movabs rcx, 0x7a52b85513eb18d7
add rcx, 0x1601372e
xor rcx, 0x44591a76
add rcx, 0x3a1468e
xor rcx, 0x69e832cb
add rax, rcx
lea rcx, [rsp + 0x34]
mov dword [rsp - 0x18], 0x74679990
call rax
test eax, eax
jne 0x140096af2
mov rax, qword [r14 + 0x40]
xchg rdx, rdx
lea r9, [rbp + 0x180]
movabs rcx, 0x732f20ae07775981
xor rcx, 0x77d80509
add rcx, 0x79fab3d
sub rcx, 0x27a7ee6d
add rcx, 0x25a01ddb
mov dword [rsp + 0x28], r15d
mov rsp, rsp
xor rax, rcx
mov dword [rbp + 0x3d8], r12d
rol rax, 0x1b
rol rax, 8
rol rax, 8
rol rax, 2
rol rax, 2
rol rax, 1
lea r8, [rsp + 0x30]
mov dword [rsp - 0x18], 0x3b700005
movabs rcx, 0x66f30d086e9f6e84
xor rcx, 0x296472df
xor rcx, 0x55c326cf
add rcx, 0x5866c595
add rcx, 0x6f46bd03
lea rdx, [rsp + 0x48]
sub rax, rcx
mov dword [rsp - 0x44], ecx
movabs rcx, 0x661c34b2230a6d72
xor rcx, 0x28143497
add rcx, 0x5eba015c
add rcx, 0x2b812714
ror rax, 0x25
ror rax, 4
ror rax, 1
ror rax, 1
add rax, rcx
mov dword [rsp - 0x34], edi
lea rcx, [rbp + 0x3d8]
rol rax, 2
mov qword [rsp + 0x20], rcx
not rax
xchg rcx, rcx
mov ecx, dword [rsp + 0x34]
call rax
test eax, eax
mov dword [rsp - 0x1c], 0x3f031813
jne 0x140096af2
cmp qword [rbx + 0x78], 0x78
jbe 0x140096ac8
xchg rdx, rcx
mov rdx, qword [rbx]
xchg rdx, rcx
jmp 0x140096ad9
cmp qword [rbx + 0x78], r15
xchg rcx, rsi
mov rsi, r15
xchg rsi, rcx
cmova rcx, rbx
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
lea r8, [rbp - 0x80]
mov dword [rsp - 0x34], edx
lea rdx, [rbp + 0x180]
call qword [rax + 8]
or rax, 0xffffffffffffffff
inc rax
mov dword [rsp - 0x2c], ebx
cmp word [rsi + rax*2], r15w
jne 0x140096af6
lea rsi, [rsi + rax*2]
neg rsi
add rsi, 0xfffffffffffffffe
neg rsi
cmp word [rsi], r15w
mov dword [rsp - 0x14], esp
jne 0x1400967d7
xchg rcx, r9
mov r9, rdi
xchg rcx, r9
call fcn.14007fbb0
xor eax, eax
lea rdi, [rsp + 0x48]
xchg r13, r13
cmp qword [rbx + 0x78], 0x78
lea ecx, [rax + 0x14]
rep stosb byte [rdi], al
mov rdi, rdi
lea rdi, [rsp + 0x60]
lea ecx, [rax + 0x14]
rep stosb byte [rdi], al
lea rdi, [rsp + 0x38]
mov dword [rsp - 0x3c], ebp
lea ecx, [rax + 0x10]
rep stosb byte [rdi], al
jbe 0x140096b8e
mov r15, r15
mov rcx, qword [rbx]
xor edx, edx
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
call qword [rax]
xchg rcx, r15
mov r15, qword [rbx]
xchg r15, rcx
call fcn.14007fbb0
xchg rbp, rbp
jmp 0x140096bb6
cmp qword [rbx + 0x78], r15
mov dword [rsp - 0x2c], ebp
jbe 0x140096bb6
xchg rbp, rdi
mov rbp, qword [rbx]
xchg rdi, rbp
xor edx, edx
xchg r14, rbx
mov rcx, r14
xchg rbx, r14
call qword [rdi]
mov dword [rsp - 0x38], edi
mov al, 0x3f
add al, 0x3e
sub al, 0x67
sub al, 0x15
jmp 0x140096c41
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.14007fbb0
mov dword [rsp - 0x40], ebp
xor eax, eax
lea rdi, [rsp + 0x38]
cmp qword [rbx + 0x78], 0x78
lea ecx, [rax + 0x10]
mov dword [rsp - 0x40], 0x4beb635d
rep stosb byte [rdi], al
jbe 0x140096c1e
xchg rcx, rbp
mov rbp, qword [rbx]
xchg rbp, rcx
xor edx, edx
xchg rsp, rax
mov rsp, qword [rcx]
xchg rsp, rax
call qword [rax]
xchg rcx, r15
mov r15, qword [rbx]
xchg r15, rcx
call fcn.14007fbb0
mov r10, r10
jmp 0x140096c3f
cmp qword [rbx + 0x78], r15
jbe 0x140096c3f
mov rax, qword [rbx]
mov r15, r15
xor edx, edx
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
call qword [rax]
mov dword [rsp - 0xc], esi
xor al, al
mov qword [rbx + 0x78], r15
neg rsp
add rsp, 0xfffffffffffffb80
neg rsp
nop
mov r15, qword [rsp]
add rsp, 8
pop r14
pop r12
xchg rbx, rbx
pop rdi
pop rsi
pop rbx
mov dword [rsp - 0x44], edi
nop
mov rbp, qword [rsp]
add rsp, 8
ret