Function at 0x140138fe0
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov rax, rcx
mov rcx, qword [0x1405650e0]
xor rcx, rsp
mov qword [rsp + 0x28], rcx
movabs rcx, 0xc00b393ddd788f9b
lea r10, [r8 + rcx]
sub r10, rax
sub r10, rcx
cmp r10, 0xa1
jl 0x1401392a8
shr r10, 2
inc r10
movzx ecx, byte [0x140513ce8]
add cl, 0xea
shr r10, cl
lea rcx, [rax + r10*8]
lea r9, [rax + r10*4]
mov esi, dword [rax + r10*4]
mov r11d, dword [rax]
cmp esi, r11d
jae 0x140139063
lea rdi, [rsp + 0x20]
cmp rdi, r9
je 0x140139053
mov dword [rsp + 0x20], esi
mov dword [r9], r11d
cmp rdi, rax
je 0x140139063
mov r11d, dword [rsp + 0x20]
mov dword [rax], r11d
mov edi, dword [rcx]
mov esi, dword [r9]
cmp edi, esi
jae 0x1401390b6
lea r11, [rsp + 0x20]
cmp r11, rcx
je 0x14013907a
mov dword [rsp + 0x20], edi
mov dword [rcx], esi
cmp r11, r9
je 0x140139088
mov ecx, dword [rsp + 0x20]
mov dword [r9], ecx
mov esi, dword [r9]
mov ecx, dword [rax]
cmp esi, ecx
jae 0x1401390b6
cmp r11, r9
je 0x14013909a
mov dword [rsp + 0x20], esi
mov dword [r9], ecx
cmp r11, rax
sete cl
cmp byte [0x1405759f1], 0
jne 0x1401390b6
test cl, cl
jne 0x1401390b6
mov ecx, dword [rsp + 0x20]
mov dword [rax], ecx
lea rsi, [rdx + r10*4]
lea rax, [r10*4]
mov rcx, rdx
sub rcx, rax
mov r11d, dword [rdx]
mov eax, dword [rcx]
cmp r11d, eax
jae 0x1401390ee
lea rdi, [rsp + 0x20]
cmp rdi, rdx
je 0x1401390e1
mov dword [rsp + 0x20], r11d
mov dword [rdx], eax
cmp rdi, rcx
je 0x1401390ee
mov eax, dword [rsp + 0x20]
mov dword [rcx], eax
movabs rax, 0x3632f9587e84f4e7
lea r11, [r10 + r10]
neg r10
mov ebp, dword [rsi]
mov ebx, dword [rdx]
cmp ebp, ebx
jae 0x140139140
lea rdi, [rsp + 0x20]
cmp rdi, rsi
je 0x140139115
mov dword [rsp + 0x20], ebp
mov dword [rsi], ebx
cmp rdi, rdx
je 0x140139122
mov esi, dword [rsp + 0x20]
mov dword [rdx], esi
mov ebx, dword [rdx]
mov esi, dword [rcx]
cmp ebx, esi
jae 0x140139140
cmp rdi, rdx
je 0x140139133
mov dword [rsp + 0x20], ebx
mov dword [rdx], esi
cmp rdi, rcx
je 0x140139140
mov esi, dword [rsp + 0x20]
mov dword [rcx], esi
lea rcx, [r8 + r10*4]
mov rsi, qword [0x140513ce8]
add rsi, rax
sub rsi, r11
mov rdi, qword [0x140575a90]
movabs r11, 0x6c9149e7e777697
sub rdi, r11
add rdi, r11
add rdi, rsi
lea r11, [r8 + rdi*4]
mov esi, dword [r8 + r10*4]
mov r10d, dword [r8 + rdi*4]
cmp esi, r10d
jae 0x14013919a
lea rdi, [rsp + 0x20]
cmp rdi, rcx
je 0x14013918a
mov dword [rsp + 0x20], esi
mov dword [rcx], r10d
cmp rdi, r11
je 0x14013919a
mov r10d, dword [rsp + 0x20]
mov dword [r11], r10d
mov edi, dword [r8]
mov esi, dword [rcx]
cmp edi, esi
jae 0x1401391e4
lea r10, [rsp + 0x20]
cmp r10, r8
je 0x1401391b1
mov dword [rsp + 0x20], edi
mov dword [r8], esi
cmp r10, rcx
je 0x1401391c1
mov r8d, dword [rsp + 0x20]
mov dword [rcx], r8d
mov esi, dword [rcx]
mov r8d, dword [r11]
cmp esi, r8d
jae 0x1401391e4
cmp r10, rcx
je 0x1401391d4
mov dword [rsp + 0x20], esi
mov dword [rcx], r8d
cmp r10, r11
je 0x1401391e4
mov r8d, dword [rsp + 0x20]
mov dword [r11], r8d
mov r11d, dword [rdx]
mov r8d, dword [r9]
cmp r11d, r8d
jae 0x140139213
lea r10, [rsp + 0x20]
cmp r10, rdx
je 0x1401391fe
mov dword [rsp + 0x20], r11d
cmp r9, rdx
je 0x140139206
mov dword [rdx], r8d
cmp r10, r9
je 0x140139213
mov r8d, dword [rsp + 0x20]
mov dword [r9], r8d
mov r10d, dword [rcx]
mov r11d, dword [rdx]
cmp r10d, r11d
jae 0x1401394c9
lea r8, [rsp + 0x20]
cmp r8, rcx
je 0x140139231
mov dword [rsp + 0x20], r10d
movabs rsi, 0xd5b3d8b1f7c73a9b
movabs rdi, 0x235e2ea6fc4eec87
lea r10, [0x14043b584]
movsxd rbx, dword [0x14043b584]
add r10, rsi
add r10, rbx
add r10, rdi
sub r10, rsi
sub r10, rdi
mov esi, 0xe597c603
nop word [rax + rax]
mov edi, dword [0x140575a8c]
cmp edi, 0x54
jg 0x14013929a
mov edi, dword [0x140575a88]
lea ebx, [rdi - 1]
imul ebx, edi
and ebx, 1
mov edi, dword [0x140513ce0]
add edi, esi
cmp ebx, edi
je 0x14013933b
cmp dword [0x140513ce0], 0x1a6839fd
jne 0x140139270
jmp 0x14013927b
mov r10d, dword [rdx]
mov ecx, dword [rax]
cmp r10d, ecx
jae 0x1401392d3
lea r9, [rsp + 0x20]
cmp r9, rdx
je 0x1401392c1
mov dword [rsp + 0x20], r10d
cmp rdx, rax
je 0x1401392c8
mov dword [rdx], ecx
cmp r9, rax
je 0x1401392d3
mov ecx, dword [rsp + 0x20]
mov dword [rax], ecx
mov r10d, dword [r8]
mov r9d, dword [rdx]
cmp r10d, r9d
jae 0x1401394c9
lea rcx, [rsp + 0x20]
cmp rcx, r8
je 0x1401392f1
mov dword [rsp + 0x20], r10d
cmp r8, rdx
je 0x1401392f9
mov dword [r8], r9d
cmp rcx, rdx
je 0x140139306
mov r8d, dword [rsp + 0x20]
mov dword [rdx], r8d
mov r9d, dword [rdx]
mov r8d, dword [rax]
cmp r9d, r8d
jae 0x1401394c9
cmp rcx, rdx
je 0x14013931f
mov dword [rsp + 0x20], r9d
cmp rdx, rax
je 0x140139327
mov dword [rdx], r8d
cmp rcx, rax
je 0x1401394c9
mov ecx, dword [rsp + 0x20]
mov dword [rax], ecx
jmp 0x1401394c9
mov esi, dword [0x140575a88]
lea rsi, [fcn.140138fe0]
add esi, esi
add esi, 0x1b60
mov edi, dword [0x140513ce0]
mov ebx, edi
xor ebx, 0xe597c604
mov r14d, edi
and r14d, 0x6597c604
lea ebx, [rbx + r14*2]
and ebx, esi
add edi, 0xe597c603
cmp ebx, edi
jne 0x140139350
mov esi, dword [0x14043b590]
cmp rcx, rdx
je 0x140139386
mov dword [rcx], r11d
mov ecx, dword [0x140513a60]
add rax, qword [0x140513ce8]
cmp rdx, rax
je 0x1401393b0
mov eax, dword [0x140575a88]
lea r11d, [rax - 1]
imul r11d, eax
test r11b, 1
je 0x1401393d3
nop dword [rax]
mov eax, dword [0x140575a88]
mov r11d, dword [0x140513ce0]
add r11d, eax
add r11d, 0x1a6839fc
imul r11d, eax
test r11b, 1
jne 0x1401393b0
jmp 0x140139398
mov eax, ecx
xor eax, 1
mov r11d, ecx
and r11d, 1
lea eax, [rax + r11*2]
mov dword [0x140513a60], eax
test ecx, eax
jne 0x1401393f5
test esi, esi
jg 0x1401394e2
xor edi, edi
cmp r8, rdx
je 0x140139404
mov r10d, dword [rsp + 0x20]
mov dword [rdx], r10d
mov r11d, dword [rdx]
mov r10d, dword [r9]
cmp r11d, r10d
jae 0x1401394c9
cmp r8, rdx
je 0x14013941d
mov dword [rsp + 0x20], r11d
cmp r9, rdx
je 0x140139425
mov dword [rdx], r10d
and ecx, eax
movzx r10d, word [0x14043b588]
xor r11d, r11d
neg ecx
mov esi, 0
sbb esi, esi
sub r10d, edi
xor esi, r10d
mov edi, esi
and edi, r10d
nop word cs:[rax + rax]
test r11b, r11b
jne 0x14013946f
test si, r10w
setne al
or al, byte [0x1405759f1]
and al, 1
mov byte [0x1405759f1], al
test r11b, r11b
je 0x1401394bd
movzx ecx, byte [0x1405759f1]
cmp di, 1
mov edx, ecx
sbb dl, 0xff
mov eax, ecx
sub al, dl
mul dl
mov edx, eax
mov eax, ecx
sub al, dl
mul dl
mov edx, eax
sub dl, cl
sub cl, dl
mov eax, ecx
mul dl
mov ecx, eax
sub al, dl
mul dl
mov edx, eax
add cl, al
lea eax, [rcx + rdx]
mul dl
or al, cl
and al, 1
mov byte [0x1405759f1], al
mov eax, dword [0x140575a8c]
cmp eax, 0x3f
jge 0x140139450
jmp 0x140139455
cmp r8, r9
je 0x1401394c9
mov eax, dword [rsp + 0x20]
mov dword [r9], eax
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.1403f5480
nop
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
mov r11d, 2
xor edi, edi
nop word [rax + rax]
lea ebx, [r11 - 2]
movsxd rbx, ebx
xor di, word [r10 + rbx]
cmp r11d, esi
jge 0x1401393f7
add r11d, 2
jmp 0x1401394f0