Function at 0x140014d64
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf8
lea rbp, [rsp + 0x80]
mov r12, rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0x3c], xmm0
movaps xmmword [rbp + 0x30], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp], xmm0
movaps xmmword [rbp - 0x10], xmm0
movaps xmmword [rbp - 0x20], xmm0
mov eax, dword [0x1400c79ac]
mov ecx, dword [0x1400c79a8]
cmp ecx, 9
setg dl
cmp ecx, 0xa
setl cl
lea ebx, [rax + 1]
imul ebx, eax
and ebx, 1
sete al
or bl, cl
or cl, al
mov byte [rbp + 0x6f], cl
and dl, al
xor dl, cl
xor bl, dl
mov byte [rbp + 0x6e], bl
xor eax, eax
lea rcx, [0x140051da0]
movsxd rdx, dword [rax + rcx]
xor dword [rbp + rdx*4 - 0x20], 0x1e27
add rax, 4
cmp rax, 0x68
jne 0x140014dde
mov eax, 0x8c0
xor ecx, ecx
mov qword [rbp - 0x50], rcx
lea r13, [0x140051ed0]
lea rbx, [0x140051f20]
lea r15, [0x140051f84]
lea r14, [0x140051f8c]
lea rdx, [0x140051d30]
lea rdi, [0x140051e70]
lea r9, [0x140051f7c]
lea r11, [0x140051f74]
lea r8, [0x140051f6c]
lea rcx, [0x140051f98]
mov esi, 0
mov qword [rbp - 0x40], rsi
xor esi, esi
mov qword [rbp - 0x38], rsi
xor esi, esi
mov qword [rbp - 0x30], rsi
xor esi, esi
mov qword [rbp + 0x50], rsi
xor esi, esi
mov qword [rbp - 0x78], rsi
xor esi, esi
mov qword [rbp - 0x70], rsi
xor esi, esi
mov qword [rbp - 0x68], rsi
xor esi, esi
mov qword [rbp - 0x60], rsi
xor esi, esi
mov qword [rbp - 0x58], rsi
xor esi, esi
mov qword [rbp - 0x48], rsi
xor esi, esi
mov qword [rbp - 0x28], rsi
mov r10, rcx
cmp eax, 0x420a
jg 0x140014eff
cmp eax, 0x1d99
jle 0x140014f60
cmp eax, 0x2ff6
jle 0x140015062
cmp eax, 0x3148
jg 0x1400152d2
cmp eax, 0x2ff7
je 0x14001535a
cmp eax, 0x30a8
jne 0x140014e8d
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x5a8d4a28
mov eax, dword [0x1400c79cc]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x42e0
mov ecx, 0x2440
cmove eax, ecx
cmp dword [0x1400c79c8], 0xa
cmovl eax, ecx
mov rcx, r10
xor eax, dword [rbp + 0xc]
jmp 0x140014e8d
cmp eax, 0x6e3e
jg 0x140014fea
cmp eax, 0x5067
jg 0x1400150f2
cmp eax, 0x45de
jg 0x1400152f5
cmp eax, 0x420b
je 0x14001539c
cmp eax, 0x42aa
jne 0x140014e8d
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
cmp byte [rax], 0
mov eax, 0x1c4c714a
mov ecx, 0x71ae3101
cmove eax, ecx
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov eax, dword [rbp + 0x38]
mov ecx, 0x3d19
jmp 0x1400155dd
cmp eax, 0x8bf
jg 0x140015161
cmp eax, 0x24e
je 0x1400153cd
cmp eax, 0x348
je 0x140015430
cmp eax, 0x363
jne 0x140014e8d
mov eax, dword [0x1400c7994]
cmp dword [0x1400c7990], 0xa
setl cl
mov edi, 1
sub edi, eax
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x60], 0
jne 0x140014fcd
xor ecx, ecx
movsxd rdi, dword [rcx + r15]
xor dword [rbp + rdi*4 - 0x20], 0x476
add rcx, 4
cmp rcx, 8
jne 0x140014fb7
test al, al
mov eax, 0x3b2c
mov ecx, 0x3aad
cmovne eax, ecx
xor eax, dword [rbp + 0x10]
mov cl, 1
mov qword [rbp - 0x60], rcx
jmp 0x140015819
cmp eax, 0x7986
jg 0x1400151e9
cmp eax, 0x6e3f
je 0x1400154d2
cmp eax, 0x72dc
je 0x14001559c
cmp eax, 0x735d
jne 0x140014e8d
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
inc rax
mov rcx, qword [rbp + 0x70]
mov qword [rcx], rax
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x59f28ac2
mov eax, dword [0x1400c7cb0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x3f5a
mov ecx, 0x36eb
cmove eax, ecx
cmp dword [0x1400c7cb4], 0xa
cmovl eax, ecx
mov rcx, r10
xor eax, dword [rbp + 0x14]
jmp 0x140014e8d
cmp eax, 0x1d9a
je 0x1400155c1
cmp eax, 0x1dcd
je 0x1400155cb
cmp eax, 0x2fb4
mov rcx, r10
jne 0x140014e8d
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x58], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x58]
mov qword [rax], r12
mov rax, qword [rbp + 0x70]
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x70]
mov qword [rcx], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x59f28ac2
mov eax, dword [rbp + 0x2c]
mov ecx, 0x6017
jmp 0x1400155dd
cmp eax, 0x5068
je 0x1400155e7
cmp eax, 0x52f5
je 0x140015478
cmp eax, 0x5c3b
jne 0x140014e8d
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
cmp byte [rax], 0
mov eax, 0x1c4c714a
mov ecx, 0x71ae3101
cmove eax, ecx
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov eax, dword [0x1400c7a10]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2388
mov ecx, 0x1a4f
cmove eax, ecx
cmp dword [0x1400c7a14], 0xa
cmovl eax, ecx
mov rcx, r10
xor eax, dword [rbp + 4]
jmp 0x140014e8d
cmp eax, 0x8c0
je 0x140015658
cmp eax, 0x98e
je 0x140015698
cmp eax, 0x1ade
jne 0x140014e8d
mov eax, dword [0x1400c79b4]
cmp dword [0x1400c79b0], 9
setg cl
lea edi, [rax + 1]
imul edi, eax
and edi, 1
sete al
and dil, cl
xor dil, cl
or cl, al
xor al, dil
xor al, cl
xor al, dil
cmp byte [rbp - 0x58], 0
jne 0x1400151cc
xor ecx, ecx
movsxd rdi, dword [rcx + r14]
xor dword [rbp + rdi*4 - 0x20], 0x5039
add rcx, 4
cmp rcx, 0xc
jne 0x1400151b6
test al, al
mov eax, 0x27cf
mov ecx, 0x6607
cmovne eax, ecx
xor eax, dword [rbp + 0x18]
mov cl, 1
mov qword [rbp - 0x58], rcx
jmp 0x140015819
cmp eax, 0x7987
je 0x14001570f
cmp eax, 0x7b6d
je 0x140015730
cmp eax, 0x7e16
jne 0x140014e8d
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x58], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x58]
mov rdx, r12
mov qword [rax], r12
mov rax, qword [rbp + 0x70]
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x70]
mov qword [rcx], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x59f28ac2
cmp dword [0x1400c79dc], 0xa
mov eax, dword [0x1400c79d8]
setl cl
lea r12d, [rax + 1]
imul r12d, eax
test r12b, 1
sete al
or al, cl
cmp byte [rbp - 0x40], 0
lea rsi, [0x140051e10]
jne 0x1400152b2
xor ecx, ecx
movsxd rdi, dword [rcx + rsi]
xor dword [rbp + rdi*4 - 0x20], 0x52f6
add rcx, 4
cmp rcx, 0x5c
jne 0x14001529c
test al, al
mov eax, 0x31b5
mov ecx, 0x178f
cmovne eax, ecx
xor eax, dword [rbp - 0x18]
mov cl, 1
mov qword [rbp - 0x40], rcx
mov r12, rdx
jmp 0x140015590
cmp eax, 0x3149
je 0x1400157c4
cmp eax, 0x34c1
jne 0x140014e8d
mov eax, dword [rbp + 0x48]
mov ecx, 0x7f35
jmp 0x1400155dd
cmp eax, 0x489b
jne 0x140015833
cmp dword [0x1400c7a30], 0xa
mov eax, dword [0x1400c7a34]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x78], 0
jne 0x14001533d
xor ecx, ecx
movsxd rdi, dword [rcx + r8]
xor dword [rbp + rdi*4 - 0x20], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x140015327
test al, al
mov eax, 0x546a
mov ecx, 0xbfb
cmovne eax, ecx
xor eax, dword [rbp - 8]
mov cl, 1
mov qword [rbp - 0x78], rcx
jmp 0x140015819
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x58]
sub rax, qword [rcx]
add rax, 0xffffffffb985b93b
mov rcx, rax
or rcx, 0x467a46c5
or rax, 0xffffffffb985b93a
add rax, rcx
add rax, 0x467a46c6
mov qword [rbp - 0x80], rax
mov rax, qword [rbp + 0x70]
mov eax, dword [rbp + 0x44]
mov ecx, 0x77f6
jmp 0x1400155dd
mov eax, dword [0x1400c7958]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x74c7
mov ecx, 0x1230
cmove eax, ecx
cmp dword [0x1400c795c], 0xa
cmovl eax, ecx
mov rcx, r10
xor eax, dword [rbp - 4]
jmp 0x140014e8d
mov rax, qword [rbp + 0x60]
mov eax, dword [rax]
mov dword [rbp + 0x4c], eax
cmp dword [0x1400c7a04], 0xa
mov eax, dword [0x1400c7a00]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x30], 0
jne 0x140015413
xor ecx, ecx
movsxd rdi, dword [rcx + r13]
xor dword [rbp + rdi*4 - 0x20], 0x2297
add rcx, 4
cmp rcx, 0x50
jne 0x1400153fd
test al, al
mov eax, 0x3cf5
mov ecx, 0x463a
cmovne eax, ecx
xor eax, dword [rbp - 0x10]
mov cl, 1
mov qword [rbp - 0x30], rcx
jmp 0x140015819
mov eax, dword [rbp + 0x4c]
cmp byte [rbp + 0x50], 0
jne 0x140015451
xor ecx, ecx
movsxd rdi, dword [rcx + rbx]
xor dword [rbp + rdi*4 - 0x20], 0x2e15
add rcx, 4
cmp rcx, 0x4c
jne 0x14001543b
cmp eax, 0x5a8d4a27
jg 0x14001579d
cmp eax, 0x1c4c714a
je 0x1400157be
mov cl, 1
mov qword [rbp + 0x50], rcx
cmp eax, 0x59f28ac2
jne 0x140015300
cmp dword [0x1400c7a20], 0xa
mov eax, dword [0x1400c7a24]
setl cl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x70], 0
jne 0x1400154b5
xor ecx, ecx
movsxd rdi, dword [rcx + r11]
xor dword [rbp + rdi*4 - 0x20], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x14001549f
test al, al
mov eax, 0xb5a
mov ecx, 0x15cb
cmovne eax, ecx
xor eax, dword [rbp]
mov cl, 1
mov qword [rbp - 0x70], rcx
jmp 0x140015819
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x58]
mov rcx, qword [rcx]
lea rdx, [rax - 0x4d8f061b]
mov rsi, rdx
xor rsi, rcx
mov rdi, rdx
or rdi, rcx
mov rbx, rdi
not rbx
and rdx, rcx
sub rax, rcx
add rax, rdx
lea rcx, [rax + rsi]
add rax, rsi
add rax, 0xffffffffb270f9e6
add rcx, rbx
add rcx, 0xffffffffb270f9e6
mov esi, 0x4d8f061b
or rcx, rsi
mov rdx, rax
sub rdx, rdi
add rdx, rcx
sub rdi, rax
or rdi, rsi
add rdi, rdx
mov qword [rbp - 0x80], rdi
mov rax, qword [rbp + 0x70]
mov eax, dword [0x1400c79a0]
cmp dword [0x1400c79a4], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x48], 0
jne 0x14001556a
xor dword [rbp + 0x20], 0x3e31
test al, al
mov eax, 0x363e
mov ecx, 0x5c16
cmovne eax, ecx
xor eax, dword [rbp + 0x1c]
mov cl, 1
mov qword [rbp - 0x48], rcx
lea r13, [0x140051ed0]
lea rbx, [0x140051f20]
lea rdx, [0x140051d30]
jmp 0x140015819
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
inc rax
mov rcx, qword [rbp + 0x70]
mov qword [rcx], rax
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x59f28ac2
mov eax, dword [rbp + 0x40]
mov ecx, 0x3edb
jmp 0x1400155dd
mov eax, dword [rbp + 0x34]
mov ecx, 0x2b56
jmp 0x1400155dd
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x5a8d4a28
mov eax, dword [rbp + 0x3c]
mov ecx, 0x6f85
xor eax, ecx
mov rcx, r10
jmp 0x140014e8d
mov eax, dword [0x1400c82d0]
cmp dword [0x1400c82d4], 0xa
setl cl
lea edx, [rax - 1]
imul edx, eax
and edx, 1
sete sil
mov ebx, ecx
and bl, dl
mov eax, ecx
or al, sil
or dl, cl
xor dl, bl
xor dl, al
mov eax, edx
xor al, 1
xor cl, sil
lea r13, [0x140051ed0]
mov ebx, ecx
not bl
and bl, al
or al, cl
xor al, bl
lea rbx, [0x140051f20]
or cl, dl
lea rdx, [0x140051d30]
xor cl, al
test cl, 1
mov eax, 0x26d3
mov ecx, 0x1b9c
cmovne eax, ecx
mov rcx, r10
xor eax, dword [rbp + 0x28]
jmp 0x140014e8d
mov al, byte [rbp + 0x6e]
cmp byte [rbp - 0x50], 0
jne 0x140015676
xor eax, eax
movsxd rcx, dword [rax + rdx]
xor byte [rbp + rcx*4 - 0x20], 0x26
add rax, 4
cmp rax, 0x64
jne 0x140015663
cmp byte [rbp + 0x6f], 0
mov eax, 0x3193
mov ecx, 0x6031
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp - 0x50], rcx
mov rcx, r10
jmp 0x140014e8d
mov r14, r12
cmp dword [0x1400c7a2c], 0xa
mov eax, dword [0x1400c7a28]
setl cl
mov r12, rdi
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x38], 0
jne 0x1400156db
xor ecx, ecx
movsxd rdi, dword [rcx + r12]
xor dword [rbp + rdi*4 - 0x20], 0x985
add rcx, 4
cmp rcx, 0x58
jne 0x1400156c5
test al, al
mov eax, 0x3570
mov ecx, 0x4eb9
cmovne eax, ecx
xor eax, dword [rbp - 0x14]
mov cl, 1
mov qword [rbp - 0x38], rcx
mov rdi, r12
mov r12, r14
mov rcx, r10
lea r15, [0x140051f84]
lea r14, [0x140051f8c]
jmp 0x140014e8d
mov rax, qword [rbp + 0x60]
mov eax, dword [rax]
mov dword [rbp + 0x4c], eax
mov eax, dword [rbp + 0x30]
mov r14d, 0x473c
xor eax, r14d
lea r14, [0x140051f8c]
jmp 0x140014e8d
cmp dword [0x1400c82e0], 0xa
mov eax, dword [0x1400c82e4]
mov r15, rcx
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x28], 0
jne 0x14001576f
xor ecx, ecx
movsxd rdx, dword [rcx + r15]
xor dword [rbp + rdx*4 - 0x20], 0x66ad
add rcx, 4
cmp rcx, 8
jne 0x140015759
test al, al
mov eax, 0x7d31
mov ecx, 0x1998
cmovne eax, ecx
xor eax, dword [rbp + 0x24]
mov cl, 1
mov qword [rbp - 0x28], rcx
lea rdx, [0x140051d30]
mov rcx, r15
lea r15, [0x140051f84]
jmp 0x140014e8d
cmp eax, 0x5a8d4a28
je 0x140015828
mov cl, 1
mov qword [rbp + 0x50], rcx
cmp eax, 0x71ae3101
je 0x140015182
jmp 0x140015300
mov al, 1
mov qword [rbp + 0x50], rax
cmp dword [0x1400c7a58], 0xa
mov eax, dword [0x1400c7a5c]
setl cl
lea edi, [rax - 1]
imul edi, eax
test dil, 1
sete al
or al, cl
cmp byte [rbp - 0x68], 0
jne 0x140015801
xor ecx, ecx
movsxd rdi, dword [rcx + r9]
xor dword [rbp + rdi*4 - 0x20], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x1400157eb
test al, al
mov eax, 0x543d
mov ecx, 0x7958
cmovne eax, ecx
xor eax, dword [rbp + 8]
mov cl, 1
mov qword [rbp - 0x68], rcx
lea rdi, [0x140051e70]
mov rcx, r10
jmp 0x140014e8d
mov al, 1
mov qword [rbp + 0x50], rax
jmp 0x140014f8c
cmp eax, 0x45df
jne 0x140014e8d
mov rax, qword [rbp - 0x80]
lea rsp, [rbp + 0x78]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret