Function at 0x140089920
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
mov eax, 0xb36943e7
invalid
mov bl, 0x66
nop
mov ecx, dword [0x141dcef20]
add ecx, dword [0x141dcef24]
imul ecx, ecx, 0xda8bb6e
test al, 0xd
add ecx, 0x3199065f
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xfe060cf6
je 0x140089940
test rsi, rsi
je 0x14008a3fa
invalid
mov ebp, 0xae16a66b
lea r12, [0x141dba464]
mov r13d, 0x9c7368dd
nop word cs:[rax + rax]
mov eax, dword [0x141dcef28]
and eax, dword [0x141dcef2c]
nop
push rbp
invalid
add dword [0x1bde69164], ecx
jge 0x1400899ea
imul eax, eax, 0x71c53217
shr rax, 0x3d
cmp eax, 0xa28e02e4
je 0x1400899f6
nop word cs:[rax + rax]
mov eax, dword [0x141dcef30]
or eax, dword [0x141dcef34]
push 0x4401d455
imul edi, eax, 0xa2177dae
jge 0x1400899e9
invalid
add r15d, 0xe820091e
mov ecx, 0xfffffff4
mov rdx, rbx
mov r8, rsi
mov r9, rdi
call fcn.1400869c0
cmp r15d, 0x42c2202e
jbe case.0x140088133.24
mov ecx, 0xfffffff4
mov rdx, rbx
mov r8, rsi
invalid
mov r9, rdi
call fcn.1400869c0
jmp 0x1400899c0
mov r14, rdx
test rax, rax
je 0x140089a90
mov eax, dword [0x141dcef48]
xor edx, edx
div dword [0x141dcef4c]
nop word cs:[rax + rax]
mov eax, dword [0x141dcef50]
xor eax, dword [0x141dcef54]
add eax, 0x1d45518
add eax, 0x572c2816
and eax, 0x40da7eca
imul eax, eax, 0xa35eddba
invalid
invalid
fstp qword [rsi - 0x5d]
invalid
cmp eax, 0x1e5dc6a2
je case.0x140088692.16
mov ecx, r14d
and ecx, 3
movsxd rax, dword [r12 + rcx*4]
add rax, r12
jmp rax
mov eax, dword [0x141dcef38]
add eax, dword [0x141dcef3c]
imul rcx, rax, 0x3212ae01
shr rcx, 0x20
sub eax, ecx
enter 0xffffffffffffe8d1, 1
enter 0xffffffffffffe8c1, 0x1d
imul eax, eax, 0x1821a6a0
cmp eax, 0xea52ed95
in eax, dx
push rdx
invalid
je 0x140089a90
nop dword [rax]
mov eax, dword [0x141dcef40]
xor edx, edx
div dword [0x141dcef44]
and eax, 0x8555a1bd
imul rax, rbp
invalid
shr rax, 0x3e
shr eax, 0x3e
imul eax, eax, 0x70019ce5
cmp eax, 0x7da82c57
je 0x140089ac0
test r14, r14
je 0x14008a411
nop word cs:[rax + rax]
mov eax, dword [0x141dcf028]
imul eax, dword [0x141dcf02c]
add eax, 0x1d4551f
imul eax, eax, 0xb1fbce0
xor eax, 0x818b7f6a
imul rcx, rax, 0x106a2fc5
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
cmp eax, 0x801d5601
ja 0x140089b00
nop word cs:[rax + rax]
mov eax, dword [0x141dcf030]
xor edx, edx
div dword [0x141dcf034]
or eax, 0xe9004531
add eax, 0xbff46443
or eax, 0xce1f335
cmp eax, 0xc212b07a
adc al, dl
ja 0x140089b40
sub rsi, r14
jb 0x14008a41a
mov eax, dword [0x141dcf048]
sub eax, dword [0x141dcf04c]
add dword [0x1086de682], eax
or eax, 0x84f50d7f
and eax, 0xedffcdff
cmp eax, 0xdd7ed08e
ja 0x140089b6d
mov ecx, dword [0x141dcf050]
add ecx, dword [0x141dcf054]
or ecx, 0x5cffebff
and ecx, 0x5dffffff
lea rax, [rbx + r14]
lea eax, [rbx + rsi]
cmp ecx, 0x9420c9f3
je 0x140089b8f
mov rbx, rax
jmp 0x14008a3c0
or byte [rax], al
invalid
mov eax, dword [0x141dcf0d0]
xor edx, edx
div dword [0x141dcf0d4]
mov eax, dword [0x141dcf0d8]
imul eax, dword [str._7ey]
add eax, 0x90f4c7e6
and eax, 0x7d1fb226
add eax, 0xc27d032f
cmp eax, 0x2c4982ee
jb 0x14008a3ce
test rsi, rsi
jne 0x140089990
xor r14d, r14d
mov rax, r14
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r14, [0x141db92e0]
jmp 0x14008a3fd
mov eax, dword [0x141dcf038]
sub eax, dword [0x141dcf03c]
add eax, 0x198dcf65
xor eax, 0xaea47864
mov ecx, 0x8636ff81
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0xc60659d6
je 0x14008a46b
mov eax, dword [0x141dcf040]
mov ecx, dword [0x141dcf044]
add eax, ecx
add eax, 0x97d74ab8
or eax, 0xa8c0f87e
add eax, 0xb8f7e524
ud2
ud2