Function at 0x1402eb140
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x138
mov rsi, rcx
mov rdi, qword [rcx + 0x18]
mov eax, dword [0x140695070]
mov ecx, dword [0x140697a88]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402eb3e0
cmp rdi, qword [0x140695060]
jae 0x1402eb188
xor eax, eax
jmp 0x1402eb3d3
mov eax, dword [0x140695070]
mov ecx, dword [0x140697a88]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402eb4d8
mov r8, qword [0x140695060]
cmp qword [rsi + 0x20], 0x10
jb 0x1402eb1c1
mov rax, qword [rsi + 8]
jmp 0x1402eb1c5
lea rax, [rsi + 8]
movabs rdx, 0xd26012f9214e220d
add rdx, qword [0x14063a9a8]
mov rdi, 0xffffffffffffffff
cmp r8, rdx
je 0x1402eb3a0
mov rcx, qword [rsi + 0x18]
cmp rcx, rdx
je 0x1402eb3a0
movabs rdx, 0xd26012f9214e221c
add rdx, qword [0x14063a9a8]
cmp qword [0x140695068], rdx
jbe 0x1402eb216
mov rdx, qword [0x140695050]
jmp 0x1402eb21d
lea rdx, [0x140695050]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov r10, r8
mov r9, rdx
and r10, 7
je 0x1402eb2cf
lea r9, [rdx + 1]
xor r11d, r11d
movabs rbx, 0xd26012f9214e220e
nop
movzx r14d, byte [r9 - 1]
mov byte [rsp + r14 + 0x30], 1
add r11, qword [0x14063a9a8]
add r11, rbx
cmp r11, r10
je 0x1402eb2cf
inc r9
jmp 0x1402eb2b0
cmp r8, 8
jb 0x1402eb35a
add rdx, r8
nop dword [rax]
movzx r8d, byte [r9]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 1]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 2]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 3]
movzx r10d, byte [0x14063a9b4]
lea r11d, [r10 + 0x66]
mov byte [rsp + r8 + 0x30], r11b
movzx r8d, byte [r9 + 4]
mov byte [rsp + r8 + 0x30], r11b
movzx r8d, byte [r9 + 5]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 6]
mov r11d, r10d
xor r11b, 0x66
and r10b, 0x66
add r10b, r10b
add r10b, r11b
mov byte [rsp + r8 + 0x30], r10b
movzx r8d, byte [r9 + 7]
mov byte [rsp + r8 + 0x30], 1
add r9, 8
cmp r9, rdx
jne 0x1402eb2e0
mov rdx, rcx
not rdx
lea rdx, [rdx + rcx*2]
movzx r8d, byte [rax + rdx]
cmp byte [rsp + r8 + 0x30], 0
je 0x1402eb383
add rdx, rax
mov rdi, rdx
jmp 0x1402eb39d
dec rcx
cmp rcx, 1
je 0x1402eb3a0
movzx edx, byte [rax + rcx - 2]
cmp byte [rsp + rdx + 0x30], 0
je 0x1402eb380
lea rdi, [rax + rcx]
add rdi, 0xfffffffffffffffe
sub rdi, rax
mov eax, dword [0x140695070]
mov ecx, dword [0x140697a88]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402eb5bc
add rdi, qword [0x140695060]
cmp rdi, qword [rsi + 0x18]
sete al
add rsp, 0x138
pop rbx
pop rdi
pop rsi
pop r14
ret
mov eax, dword [0x14063a424]
sub eax, dword [0x14063a9b0]
add eax, 0xb5110eb2
cdqe
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
mov eax, 0x4aefac79
add eax, dword [0x14063a9b0]
cmp dword [0x140695070], eax
jne 0x1402eb178
mov qword [0x140695068], 0xf
mov qword [0x140695060], 1
mov word [0x140695050], 0x5c
lea rax, [0x14052ecd8]
mov qword [0x140695048], rax
mov eax, dword [0x14063a420]
mov ecx, dword [0x14063a9b0]
add eax, ecx
add eax, 0x4af067a6
cdqe
add rax, qword [0x14063a438]
lea rcx, [0x1402ebaa0]
mov edx, 0x750a0b22
mov r8d, 0x421bd833
call qword [0x1405fc400]
mov eax, 0xbb2c
add eax, dword [0x14063a424]
cdqe
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
jmp 0x1402eb178
mov edi, 0xbb2c
mov eax, dword [0x14063a424]
add eax, edi
cdqe
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
cmp dword [0x140695070], 0xffffffff
jne 0x1402eb1ad
mov qword [0x140695068], 0xf
mov qword [0x140695060], 1
mov word [0x140695050], 0x5c
lea rax, [0x14052ecd8]
mov qword [0x140695048], rax
mov eax, dword [0x14063a420]
sub eax, dword [0x14063a9b0]
add eax, 0xb5110eb2
cdqe
add rax, qword [0x14063a438]
lea rcx, [0x1402ebaa0]
mov edx, 0x750a0b22
mov r8d, 0x421bd833
call qword [0x1405fc400]
add edi, dword [0x14063a424]
movsxd rax, edi
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
jmp 0x1402eb1ad
mov eax, dword [0x14063a424]
mov ecx, dword [0x14063a9b0]
mov edx, ecx
xor edx, 0x4aeef14e
and ecx, 0x4aeef14e
lea ecx, [rdx + rcx*2]
sub eax, ecx
cdqe
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
cmp dword [0x140695070], 0xffffffff
jne 0x1402eb3c5
mov qword [0x140695068], 0xf
mov qword [0x140695060], 1
mov word [0x140695050], 0x5c
lea rax, [0x14052ecd8]
mov qword [0x140695048], rax
mov ebx, 0xbb2c
mov eax, dword [0x14063a420]
add eax, ebx
cdqe
add rax, qword [0x14063a438]
mov ecx, dword [0x14063a9b0]
mov edx, ecx
xor edx, 0xbff9b79c
mov r8d, ecx
and r8d, 0x3ff9b79c
lea edx, [rdx + r8*2]
mov r8d, ecx
xor r8d, 0x8d0b84ad
and ecx, 0xd0b84ad
lea r8d, [r8 + rcx*2]
lea rcx, [0x1402ebaa0]
call qword [0x1405fc400]
add ebx, dword [0x14063a424]
movsxd rax, ebx
add rax, qword [0x14063a430]
mov dword [rsp + 0x28], 0xe4445752
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140695070]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [0x1405fc400]
jmp 0x1402eb3c5