Function at 0x14000ea60
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0x80]
mov r9, rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x14], xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp - 0x60], xmm0
movaps xmmword [rbp - 0x70], xmm0
cmp dword [0x1400a5c80], 0xa
mov eax, dword [0x1400a5c84]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
mov edx, ecx
and dl, al
mov byte [rbp + 0x2f], dl
xor cl, al
mov byte [rbp + 0x2e], cl
mov eax, 1
lea rcx, [0x140034530]
nop word cs:[rax + rax]
nop dword [rax + rax]
movsxd rdx, dword [rcx + rax*4 - 4]
xor dword [rbp + rdx*4 - 0x70], 0x1e27
movsxd rdx, dword [rcx + rax*4]
xor dword [rbp + rdx*4 - 0x70], 0x1e27
add rax, 2
cmp rax, 0x1b
jne 0x14000eae0
mov eax, 0x8c0
mov dword [rbp], 0
movaps xmm0, xmmword [0x140033d50]
movaps xmm1, xmmword [0x140033d40]
lea r10, [0x1400344c0]
lea rsi, [0x140034600]
lea rbx, [0x1400345a0]
mov dword [rbp + 0x10], 0
mov dword [rbp + 0xc], 0
xor r14d, r14d
mov dword [rbp + 0x14], 0
xor r15d, r15d
xor r12d, r12d
xor r8d, r8d
xor r13d, r13d
xor r11d, r11d
mov dword [rbp + 4], 0
mov dword [rbp + 8], 0
jmp 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x18]
sub rax, qword [rcx]
sar rax, 1
mov qword [rbp - 0x78], rax
mov rax, qword [rbp + 0x30]
mov eax, dword [rbp - 0xc]
mov ecx, 0x77f6
xor eax, ecx
nop dword [rax]
cmp eax, 0x420a
jg 0x14000ec00
cmp eax, 0x1d99
jle 0x14000ec70
cmp eax, 0x2ff6
jle 0x14000ed66
cmp eax, 0x3148
jg 0x14000ef9a
cmp eax, 0x2ff7
je 0x14000eb69
cmp eax, 0x30a8
jne 0x14000eb90
mov rax, qword [rbp + 0x20]
mov dword [rax], 0x1e1e270
mov eax, dword [0x1400a5c88]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x42e0
mov ecx, 0x2440
cmove eax, ecx
cmp dword [0x1400a5c8c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x44]
jmp 0x14000eb90
cmp eax, 0x6e3e
jg 0x14000ecf0
cmp eax, 0x5067
jg 0x14000edf5
cmp eax, 0x45de
jg 0x14000efbf
cmp eax, 0x420b
je 0x14000f020
cmp eax, 0x42aa
jne 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0xe16c4bf1
mov ecx, 0xd95d068e
cmove eax, ecx
mov rcx, qword [rbp + 0x20]
mov dword [rcx], eax
mov eax, dword [rbp - 0x18]
mov ecx, 0x3d19
xor eax, ecx
jmp 0x14000eb90
cmp eax, 0x8bf
jg 0x14000ee62
cmp eax, 0x24e
je 0x14000f04e
cmp eax, 0x348
je 0x14000f0dd
cmp eax, 0x363
jne 0x14000eb90
cmp dword [0x1400a5c90], 0xa
mov eax, dword [0x1400a5c94]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test r13b, r13b
jne 0x14000eccd
xor dword [rbp - 0x3c], 0x476
xor dword [rbp - 0x10], 0x476
test al, al
mov eax, 0x3b2c
mov ecx, 0x3aad
cmovne eax, ecx
xor eax, dword [rbp - 0x40]
mov r13b, 1
jmp 0x14000eb90
cmp eax, 0x7986
jg 0x14000eed5
cmp eax, 0x6e3f
je 0x14000f1a3
cmp eax, 0x72dc
je 0x14000f203
cmp eax, 0x735d
jne 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0x30]
mov qword [rcx], rax
mov rax, qword [rbp + 0x20]
mov dword [rax], 0xaefa83c
mov eax, dword [0x1400a5c98]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x3f5a
mov ecx, 0x36eb
cmove eax, ecx
cmp dword [0x1400a5c9c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x3c]
jmp 0x14000eb90
cmp eax, 0x1d9a
je 0x14000f22e
cmp eax, 0x1dcd
je 0x14000f23d
cmp eax, 0x2fb4
jne 0x14000eb90
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x18], rax
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x18]
mov qword [rax], r9
mov rax, qword [rbp + 0x30]
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x30]
mov qword [rcx], rax
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov dword [rax], 0xaefa83c
mov eax, dword [rbp - 0x24]
mov ecx, 0x6017
xor eax, ecx
jmp 0x14000eb90
cmp eax, 0x5068
je 0x14000f256
cmp eax, 0x52f5
je 0x14000f39b
cmp eax, 0x5c3b
jne 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0xe16c4bf1
mov ecx, 0xd95d068e
cmove eax, ecx
mov rcx, qword [rbp + 0x20]
mov dword [rcx], eax
mov eax, dword [0x1400a5ca0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2388
mov ecx, 0x1a4f
cmove eax, ecx
cmp dword [0x1400a5ca4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x4c]
jmp 0x14000eb90
cmp eax, 0x8c0
je 0x14000f284
cmp eax, 0x98e
je 0x14000f2b6
cmp eax, 0x1ade
jne 0x14000eb90
cmp dword [0x1400a5ca8], 0xa
mov eax, dword [0x1400a5cac]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test r11b, r11b
jne 0x14000eebb
xor dword [rbp - 0x34], 0x5039
xor dword [rbp - 0x30], 0x5039
xor dword [rbp - 0xc], 0x5039
test al, al
mov eax, 0x6607
mov ecx, 0x27cf
cmovne eax, ecx
xor eax, dword [rbp - 0x38]
mov r11b, 1
jmp 0x14000eb90
cmp eax, 0x7987
je 0x14000f31f
cmp eax, 0x7b6d
je 0x14000f337
cmp eax, 0x7e16
jne 0x14000eb90
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x18], rax
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x18]
mov qword [rax], r9
mov rax, qword [rbp + 0x30]
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x30]
mov qword [rcx], rax
mov eax, 0x10
call fcn.1400320f0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov dword [rax], 0xaefa83c
cmp dword [0x1400a5494], 0xa
mov eax, dword [0x1400a5490]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp + 0x10], 0
je 0x14000f3e6
test al, al
mov eax, 0x31b5
mov ecx, 0x178f
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov dword [rbp + 0x10], ecx
jmp 0x14000eb90
cmp eax, 0x3149
je 0x14000f14d
cmp eax, 0x34c1
jne 0x14000eb90
mov eax, dword [rbp - 8]
mov ecx, 0x7f35
xor eax, ecx
jmp 0x14000eb90
cmp eax, 0x489b
jne 0x14000f443
mov eax, dword [0x1400a5cb8]
mov ecx, eax
not ecx
cmp dword [0x1400a5cbc], 0xa
setl dl
add ecx, eax
add ecx, eax
add ecx, 0xed56257a
imul ecx, eax
test cl, 1
sete al
or al, dl
test r15b, r15b
jne 0x14000f006
xor dword [rbp - 0x54], 0x20ad
xor dword [rbp - 0x1c], 0x20ad
test al, al
mov eax, 0x546a
mov ecx, 0xbfb
cmovne eax, ecx
xor eax, dword [rbp - 0x58]
mov r15b, 1
jmp 0x14000eb90
mov eax, dword [0x1400a5cc0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x74c7
mov ecx, 0x1230
cmove eax, ecx
cmp dword [0x1400a5cc4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x54]
jmp 0x14000eb90
mov rax, qword [rbp + 0x20]
mov eax, dword [rax]
mov dword [rbp - 4], eax
cmp dword [0x1400a5cc8], 0xa
mov eax, dword [0x1400a5ccc]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
test r14b, r14b
jne 0x14000f0c3
movups xmm2, xmmword [rbp - 0x5c]
movups xmm3, xmmword [rbp - 0x4c]
movups xmm4, xmmword [rbp - 0x3c]
movups xmm5, xmmword [rbp - 0x1c]
xorps xmm2, xmm0
movups xmmword [rbp - 0x5c], xmm2
xorps xmm3, xmm0
movups xmmword [rbp - 0x4c], xmm3
xorps xmm4, xmm0
movups xmmword [rbp - 0x3c], xmm4
xor dword [rbp - 0x2c], 0x2297
xor dword [rbp - 0x28], 0x2297
xorps xmm5, xmm0
movups xmmword [rbp - 0x1c], xmm5
xor dword [rbp - 0xc], 0x2297
xor dword [rbp - 8], 0x2297
test al, al
mov eax, 0x3cf5
mov ecx, 0x463a
cmovne eax, ecx
xor eax, dword [rbp - 0x60]
mov r14b, 1
jmp 0x14000eb90
mov eax, dword [rbp - 4]
cmp byte [rbp + 0x14], 0
jne 0x14000f127
movups xmm2, xmmword [rbp - 0x58]
movups xmm3, xmmword [rbp - 0x48]
movups xmm4, xmmword [rbp - 0x38]
movups xmm5, xmmword [rbp - 0x1c]
xorps xmm2, xmm1
movups xmmword [rbp - 0x58], xmm2
xorps xmm3, xmm1
movups xmmword [rbp - 0x48], xmm3
xorps xmm4, xmm1
movups xmmword [rbp - 0x38], xmm4
xor dword [rbp - 0x28], 0x2e15
xorps xmm5, xmm1
movups xmmword [rbp - 0x1c], xmm5
xor dword [rbp - 0xc], 0x2e15
xor dword [rbp - 8], 0x2e15
mov cl, 1
mov dword [rbp + 0x14], ecx
cmp eax, 0x1e1e26f
jg 0x14000f385
cmp eax, 0xd95d068e
je 0x14000ee83
cmp eax, 0xe16c4bf1
jne 0x14000efca
mov eax, dword [0x1400a5cd0]
cmp dword [0x1400a5cd4], 0xa
setl cl
lea edx, [rax - 0x15ee30d4]
not edx
add edx, 0xea11cf2e
imul edx, eax
test dl, 1
sete al
or al, cl
test r8b, r8b
jne 0x14000f189
xor dword [rbp - 0x44], 0x16dd
xor dword [rbp - 0x14], 0x16dd
test al, al
mov eax, 0x543d
mov ecx, 0x7958
cmovne eax, ecx
xor eax, dword [rbp - 0x48]
mov r8b, 1
jmp 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x18]
sub rax, qword [rcx]
sar rax, 1
mov qword [rbp - 0x78], rax
mov rax, qword [rbp + 0x30]
cmp dword [0x1400a5cd8], 0xa
mov eax, dword [0x1400a5cdc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 4], 0
jne 0x14000f1e7
xor dword [rbp - 0x30], 0x3e31
test al, al
mov eax, 0x363e
mov ecx, 0x5c16
cmovne eax, ecx
xor eax, dword [rbp - 0x34]
mov cl, 1
mov dword [rbp + 4], ecx
jmp 0x14000eb90
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0x30]
mov qword [rcx], rax
mov rax, qword [rbp + 0x20]
mov dword [rax], 0xaefa83c
mov eax, dword [rbp - 0x10]
mov ecx, 0x3edb
xor eax, ecx
jmp 0x14000eb90
mov eax, dword [rbp - 0x1c]
mov ecx, 0x2b56
xor eax, ecx
jmp 0x14000eb90
mov rax, qword [rbp + 0x20]
mov dword [rax], 0x1e1e270
mov eax, dword [rbp - 0x14]
mov ecx, 0x6f85
xor eax, ecx
jmp 0x14000eb90
mov eax, dword [0x1400a5ce0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x1b9c
mov ecx, 0x26d3
cmove eax, ecx
cmp dword [0x1400a5ce4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x28]
jmp 0x14000eb90
mov rdx, r9
mov al, byte [rbp + 0x2f]
or al, byte [rbp + 0x2e]
cmp byte [rbp], 0
je 0x14000f419
test al, 1
mov eax, 0x3193
mov ecx, 0x6031
cmovne eax, ecx
xor eax, dword [rbp - 0x70]
mov cl, 1
mov dword [rbp], ecx
mov r9, rdx
jmp 0x14000eb90
cmp dword [0x1400a549c], 0xa
mov eax, dword [0x1400a5498]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp + 0xc], 0
jne 0x14000f303
mov ecx, 1
movsxd rdi, dword [rsi + rcx*4 - 4]
xor dword [rbp + rdi*4 - 0x70], 0x985
movsxd rdi, dword [rsi + rcx*4]
xor dword [rbp + rdi*4 - 0x70], 0x985
add rcx, 2
cmp rcx, 0x17
jne 0x14000f2e0
test al, al
mov eax, 0x3570
mov ecx, 0x4eb9
cmovne eax, ecx
xor eax, dword [rbp - 0x64]
mov cl, 1
mov dword [rbp + 0xc], ecx
jmp 0x14000eb90
mov rax, qword [rbp + 0x20]
mov eax, dword [rax]
mov dword [rbp - 4], eax
mov eax, dword [rbp - 0x20]
mov ecx, 0x473c
xor eax, ecx
jmp 0x14000eb90
cmp dword [0x1400a5cf0], 0xa
mov eax, dword [0x1400a5cf4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 8], 0
jne 0x14000f369
xor dword [rbp - 0x28], 0x66ad
xor dword [rbp - 8], 0x66ad
test al, al
mov eax, 0x7d31
mov ecx, 0x1998
cmovne eax, ecx
xor eax, dword [rbp - 0x2c]
mov cl, 1
mov dword [rbp + 8], ecx
jmp 0x14000eb90
cmp eax, 0x1e1e270
je 0x14000ec9c
cmp eax, 0xaefa83c
jne 0x14000efca
cmp dword [0x1400a5cf8], 0xa
mov eax, dword [0x1400a5cfc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test r12b, r12b
jne 0x14000f3cc
xor dword [rbp - 0x4c], 0x28d2
xor dword [rbp - 0x18], 0x28d2
test al, al
mov eax, 0xb5a
mov ecx, 0x15cb
cmovne eax, ecx
xor eax, dword [rbp - 0x50]
mov r12b, 1
jmp 0x14000eb90
mov ecx, 1
nop dword [rax + rax]
movsxd rdi, dword [rbx + rcx*4 - 4]
xor dword [rbp + rdi*4 - 0x70], 0x52f6
cmp rcx, 0x17
je 0x14000ef7e
movsxd rdx, dword [rbx + rcx*4]
xor dword [rbp + rdx*4 - 0x70], 0x52f6
add rcx, 2
jmp 0x14000f3f0
mov r9d, 1
nop
movsxd rcx, dword [r10 + r9*4 - 4]
xor byte [rbp + rcx*4 - 0x70], 0x26
cmp r9, 0x19
je 0x14000f297
movsxd rcx, dword [r10 + r9*4]
xor byte [rbp + rcx*4 - 0x70], 0x26
add r9, 2
jmp 0x14000f420
cmp eax, 0x45df
jne 0x14000eb90
mov rax, qword [rbp - 0x78]
lea rsp, [rbp + 0x38]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret