Function at 0x14000e1ee
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xe8
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x60], rcx
xorps xmm0, 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 [0x1400c7588]
cmp dword [0x1400c758c], 0xa
setl cl
mov edx, 0x4e26b969
sub edx, eax
imul edx, eax
and edx, 1
sete al
mov ebx, ecx
and bl, dl
mov r8d, ecx
xor r8b, al
or al, cl
mov byte [rbp + 0x5f], al
xor al, bl
or cl, dl
xor cl, r8b
xor cl, al
xor cl, 1
mov byte [rbp + 0x5e], cl
xor eax, eax
lea rcx, [0x140052d90]
movsxd rdx, dword [rax + rcx]
xor dword [rbp + rdx*4 - 0x20], 0x1e27
add rax, 4
cmp rax, 0x5c
jne 0x14000e26f
mov eax, 0x4819
xor ecx, ecx
mov qword [rbp - 0x58], rcx
lea r13, [0x140052f44]
lea rbx, [0x140052e40]
lea rsi, [0x140052e90]
lea r8, [0x140052f28]
lea r11, [0x140052f20]
lea r14, [0x140052f30]
lea r10, [0x140052d30]
lea r12, [0x140052f38]
lea r9, [0x140052df0]
lea r15, [0x140052ee0]
xor ecx, ecx
mov qword [rbp - 0x40], rcx
xor ecx, ecx
mov qword [rbp - 0x38], rcx
xor ecx, ecx
mov qword [rbp - 0x30], rcx
xor ecx, ecx
mov qword [rbp - 0x48], rcx
xor ecx, ecx
mov qword [rbp - 0x80], rcx
xor ecx, ecx
mov qword [rbp - 0x78], rcx
xor ecx, ecx
mov qword [rbp - 0x70], rcx
xor ecx, ecx
mov qword [rbp - 0x68], rcx
xor ecx, ecx
mov qword [rbp - 0x50], rcx
xor ecx, ecx
mov qword [rbp - 0x28], rcx
cmp eax, 0x4818
jg 0x14000e352
cmp eax, 0x25fc
jg 0x14000e3b3
cmp eax, 0x8bf
jg 0x14000e41f
cmp eax, 0x24e
je 0x14000e73c
cmp eax, 0x348
je 0x14000e690
cmp eax, 0x363
je 0x14000eb19
jmp 0x14000e312
cmp eax, 0x6e3e
jle 0x14000e3ee
cmp eax, 0x7986
jg 0x14000e4ae
cmp eax, 0x6e3f
je 0x14000e76e
cmp eax, 0x70d1
je 0x14000e786
cmp eax, 0x735d
jne 0x14000e312
mov eax, dword [0x1400c76a4]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0xe46
mov ecx, 0x7f01
cmove eax, ecx
cmp dword [0x1400c76a0], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x20]
jmp 0x14000e312
cmp eax, 0x3148
jle 0x14000e5a3
cmp eax, 0x3149
je 0x14000e858
cmp eax, 0x420b
je 0x14000e517
cmp eax, 0x45df
jne 0x14000e312
mov eax, dword [rbp + 0x2c]
mov ecx, 0x6b13
xor eax, ecx
jmp 0x14000e312
cmp eax, 0x5067
jle 0x14000e5d5
cmp eax, 0x5068
je 0x14000e8ae
cmp eax, 0x52f5
je 0x14000e95a
cmp eax, 0x5c3b
je 0x14000e637
jmp 0x14000e312
cmp eax, 0x8c0
je 0x14000e9d8
cmp eax, 0x98e
je 0x14000e6e9
cmp eax, 0x1ade
jne 0x14000e312
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x50], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp - 0x60]
mov qword [rax], rcx
mov rax, qword [rbp + 0x60]
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x6a6ccc06
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x48]
mov dword [rax], 0x52fc419f
mov eax, dword [rbp + 0x24]
mov ecx, 0x6ed0
xor eax, ecx
jmp 0x14000e312
cmp eax, 0x7987
je 0x14000ea31
cmp eax, 0x7b6d
je 0x14000ea40
cmp eax, 0x7e16
jne 0x14000e312
mov eax, dword [rbp + 0x44]
cmp byte [rbp - 0x48], 0
jne 0x14000e4f0
xor ecx, ecx
movsxd rdx, dword [rcx + r15]
xor dword [rbp + rdx*4 - 0x20], 0x2e15
add rcx, 4
cmp rcx, 0x40
jne 0x14000e4da
mov cl, 1
mov qword [rbp - 0x48], rcx
cmp eax, 0x879a5c5a
je 0x14000e637
cmp eax, 0x52fc419f
je 0x14000e690
cmp eax, 0x58da92f2
jne 0x14000e6e9
mov eax, dword [0x1400c75f0]
mov ecx, dword [0x1400c75f4]
cmp ecx, 9
setg r13b
cmp ecx, 0xa
setl bl
lea edi, [rax + 1]
imul edi, eax
test dil, 1
sete al
mov edx, ebx
and dl, al
and r13b, al
mov ecx, ebx
xor cl, al
xor cl, r13b
or al, bl
xor al, bl
xor al, cl
or al, dl
cmp byte [rbp - 0x70], 0
jne 0x14000e571
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rbp + rdx*4 - 0x20], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x14000e55b
test al, al
mov eax, 0x1998
mov ecx, 0x1b05
cmovne eax, ecx
xor eax, dword [rbp + 8]
mov cl, 1
mov qword [rbp - 0x70], rcx
lea r13, [0x140052f44]
lea rbx, [0x140052e40]
lea rsi, [0x140052e90]
jmp 0x14000e312
cmp eax, 0x25fd
je 0x14000ea6d
cmp eax, 0x2fb4
jne 0x14000eb0c
mov rax, qword [rbp + 0x60]
mov eax, dword [rax]
mov dword [rbp + 0x40], eax
mov rax, qword [rbp + 0x60]
mov eax, dword [rbp + 0x38]
mov ecx, 0x7ccf
xor eax, ecx
jmp 0x14000e312
cmp eax, 0x4819
je 0x14000eacf
cmp eax, 0x489b
jne 0x14000e312
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x58da92f2
mov ecx, 0x879a5c5a
cmove eax, ecx
mov rcx, qword [rbp + 0x48]
mov dword [rcx], eax
mov eax, dword [0x1400c759c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x1a4f
mov ecx, 0x6241
cmove eax, ecx
cmp dword [0x1400c7598], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 4]
jmp 0x14000e312
cmp dword [0x1400c7634], 0xa
mov eax, dword [0x1400c7630]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x68], 0
jne 0x14000e673
xor ecx, ecx
movsxd rdx, dword [rcx + r12]
xor dword [rbp + rdx*4 - 0x20], 0x476
add rcx, 4
cmp rcx, 0xc
jne 0x14000e65d
test al, al
mov eax, 0x6644
mov ecx, 0x78b9
cmovne eax, ecx
xor eax, dword [rbp + 0x10]
mov cl, 1
mov qword [rbp - 0x68], rcx
jmp 0x14000e312
cmp dword [0x1400c75fc], 0xa
mov eax, dword [0x1400c75f8]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x78], 0
jne 0x14000e6cc
xor ecx, ecx
movsxd rdx, dword [rcx + r8]
xor dword [rbp + rdx*4 - 0x20], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x14000e6b6
test al, al
mov eax, 0x329d
mov ecx, 0x16b
cmovne eax, ecx
xor eax, dword [rbp]
mov cl, 1
mov qword [rbp - 0x78], rcx
jmp 0x14000e312
mov ecx, dword [0x1400c7684]
cmp dword [0x1400c7680], 9
setg dl
lea eax, [rcx + 1]
imul eax, ecx
and al, dl
cmp byte [rbp - 0x80], 0
jne 0x14000e71f
xor ecx, ecx
movsxd rdx, dword [rcx + r11]
xor dword [rbp + rdx*4 - 0x20], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x14000e709
test al, al
mov eax, 0x4bbe
mov ecx, 0xc2f
cmovne eax, ecx
xor eax, dword [rbp - 8]
mov cl, 1
mov qword [rbp - 0x80], rcx
jmp 0x14000e312
mov eax, dword [0x1400c7624]
mov ecx, 1
sub ecx, eax
imul ecx, eax
test cl, 1
mov eax, 0x2c82
mov ecx, 0x6a3e
cmove eax, ecx
cmp dword [0x1400c7620], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 4]
jmp 0x14000e312
mov rax, qword [rbp + 0x48]
mov eax, dword [rax]
mov dword [rbp + 0x44], eax
mov eax, dword [rbp + 0x28]
mov ecx, 0x608f
xor eax, ecx
jmp 0x14000e312
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x50], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp - 0x60]
mov qword [rax], rcx
mov rax, qword [rbp + 0x60]
mov rax, qword [rbp + 0x60]
mov dword [rax], 0x6a6ccc06
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x48]
mov dword [rax], 0x52fc419f
mov edi, dword [0x1400c7594]
cmp dword [0x1400c7590], 0xa
setl cl
lea edx, [rdi + rdi]
mov eax, edi
not eax
add eax, edx
add eax, 0x2834436
imul eax, edi
test al, 1
sete al
or al, cl
cmp byte [rbp - 0x40], 0
jne 0x14000e82d
xor r13d, r13d
movsxd rcx, dword [r13 + r9]
xor dword [rbp + rcx*4 - 0x20], 0x52f6
add r13, 4
cmp r13, 0x50
jne 0x14000e816
test al, al
mov eax, 0x4df
mov ecx, 0x16c1
cmovne eax, ecx
xor eax, dword [rbp - 0x18]
mov cl, 1
mov qword [rbp - 0x40], rcx
lea r13, [0x140052f44]
lea rsi, [0x140052e90]
jmp 0x14000e312
mov rax, qword [rbp + 0x60]
mov eax, dword [rax]
mov dword [rbp + 0x40], eax
mov rax, qword [rbp + 0x60]
cmp dword [0x1400c75b8], 0xa
mov eax, dword [0x1400c75bc]
setl cl
mov edx, eax
not edx
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x50], 0
jne 0x14000e891
xor dword [rbp + 0x18], 0x119
test al, al
mov eax, 0x6232
mov ecx, 0x7d2e
cmovne eax, ecx
xor eax, dword [rbp + 0x14]
mov cl, 1
mov qword [rbp - 0x50], rcx
jmp 0x14000e312
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x50]
mov qword [rdx], rcx
movzx eax, byte [rax]
mov rcx, qword [rbp + 0x60]
mov ecx, dword [rcx]
mov edx, ecx
mov rsi, r15
mov r15, r14
mov r14, r8
mov r8, r10
mov r10d, 0x4b26a0d3
and edx, r10d
mov edi, ecx
mov ebx, 0xb4d95f2c
or edi, ebx
sub edi, edx
xor edx, r10d
lea ebx, [rdi + rdx]
add ebx, 0x4b26a0d4
add edi, edx
not ebx
mov edx, 0xb4d95f2c
and ecx, edx
and ecx, ebx
lea rbx, [0x140052e40]
add ecx, edi
add ecx, 0x4b26a0d4
xor eax, r10d
mov r10, r8
mov r8, r14
mov r14, r15
mov r15, rsi
lea rsi, [0x140052e90]
xor eax, ecx
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov rax, qword [rbp + 0x60]
imul eax, dword [rax], 0x25ede3fb
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov rax, qword [rbp + 0x48]
mov dword [rax], 0x52fc419f
mov eax, dword [rbp + 0x34]
mov ecx, 0xdd8
xor eax, ecx
jmp 0x14000e312
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x50]
mov qword [rdx], rcx
movzx eax, byte [rax]
mov rcx, qword [rbp + 0x60]
mov ecx, dword [rcx]
mov edx, ecx
not edx
and edx, eax
mov edi, eax
not edi
and edi, ecx
xor ecx, eax
lea eax, [rdx + rdi*2]
sub eax, ecx
or eax, edx
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov rax, qword [rbp + 0x60]
imul eax, dword [rax], 0x25ede3fb
mov rcx, qword [rbp + 0x60]
mov dword [rcx], eax
mov rax, qword [rbp + 0x48]
mov dword [rax], 0x52fc419f
mov eax, dword [0x1400c76cc]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0xf45
mov ecx, 0x5c4e
cmove eax, ecx
cmp dword [0x1400c76c8], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0xc]
jmp 0x14000e312
cmp dword [0x1400c7660], 0xa
mov eax, dword [0x1400c7664]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x38], 0
jne 0x14000ea14
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x20], 0x985
add rcx, 4
cmp rcx, 0x4c
jne 0x14000e9fe
test al, al
mov eax, 0x22c8
mov ecx, 0x690a
cmovne eax, ecx
xor eax, dword [rbp - 0x14]
mov cl, 1
mov qword [rbp - 0x38], rcx
jmp 0x14000e312
mov eax, dword [rbp + 0x3c]
mov ecx, 0x49c
xor eax, ecx
jmp 0x14000e312
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x58da92f2
mov ecx, 0x879a5c5a
cmove eax, ecx
mov rcx, qword [rbp + 0x48]
mov dword [rcx], eax
mov eax, dword [rbp + 0x30]
mov ecx, 0x29b9
xor eax, ecx
jmp 0x14000e312
mov rax, qword [rbp + 0x48]
mov eax, dword [rax]
mov dword [rbp + 0x44], eax
cmp dword [0x1400c764c], 0xa
mov eax, dword [0x1400c7648]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x30], 0
jne 0x14000eab2
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4 - 0x20], 0x2297
add rcx, 4
cmp rcx, 0x44
jne 0x14000ea9c
test al, al
mov eax, 0x2b4d
mov ecx, 0x3b64
cmovne eax, ecx
xor eax, dword [rbp - 0x10]
mov cl, 1
mov qword [rbp - 0x30], rcx
jmp 0x14000e312
mov al, byte [rbp + 0x5e]
cmp byte [rbp - 0x58], 0
jne 0x14000eaed
xor eax, eax
movsxd rcx, dword [rax + r10]
xor byte [rbp + rcx*4 - 0x20], 0x26
add rax, 4
cmp rax, 0x58
jne 0x14000eada
cmp byte [rbp + 0x5f], 0
mov eax, 0x4f9
mov ecx, 0x6ef6
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp - 0x58], rcx
jmp 0x14000e312
cmp eax, 0x30a8
jne 0x14000e312
jmp 0x14000eb6e
cmp dword [0x1400c75cc], 0xa
mov eax, dword [0x1400c75c8]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x28], 0
jne 0x14000eb55
xor ecx, ecx
movsxd rdx, dword [rcx + r13]
xor dword [rbp + rdx*4 - 0x20], 0x3e31
add rcx, 4
cmp rcx, 8
jne 0x14000eb3f
test al, al
mov eax, 0x3077
mov ecx, 0x3aad
cmovne eax, ecx
xor eax, dword [rbp + 0x1c]
mov cl, 1
jmp 0x14000e30e
mov eax, dword [rbp + 0x40]
lea rsp, [rbp + 0x68]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret