Function at 0x1401e8b90
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
mov rsi, rcx
mov rcx, qword [rcx]
nop dword [rax]
mov eax, dword [0x1415cf1e0]
add eax, dword [0x1415cf1e4]
mov edx, eax
xor edx, 0x2010c581
and edx, eax
mov eax, edx
and eax, 0x21d2cd89
mov r8d, eax
not r8d
and r8d, 0xc654641a
mov r9d, edx
and r9d, 0x21828981
imul r9d, r8d
and edx, 0x504408
or eax, 0xc654641a
imul eax, edx
add eax, r9d
cmp eax, 0x2b83bae5
jb 0x1401e8ba0
cmp rcx, 0xffffffffffffffff
je 0x1401e90cc
mov eax, dword [0x1415cf1e8]
xor edx, edx
div dword [0x1415cf1ec]
mov eax, 0xd03e2e51
lea r8, [rcx + 1]
lea r9, [rcx + rcx]
nop word cs:[rax + rax]
mov edx, dword [0x1415cf1f0]
or edx, dword [0x1415cf1f4]
imul r10, rdx, 0x2cb8047b
shr r10, 0x3d
or r10d, 0xea50ee94
imul r10, rax
shr r10, 0x3d
cmp r9, r8
mov rdx, r8
cmovne rdx, r9
test rcx, rcx
cmovle rdx, r8
cmp r10d, 0xa545ce8c
ja 0x1401e8c20
movabs rax, 0x124924924924924
nop word [rax + rax]
mov r8d, dword [0x1415cf1f8]
or r8d, dword [0x1415cf1fc]
add r8d, 0x2312419b
imul r9, r8, 0xaba3a5d
shr r9, 0x20
sub r8d, r9d
shr r8d, 1
add r8d, r9d
shr r8d, 0x1f
imul r8d, r8d, 0xb0d9af0f
cmp rdx, 5
mov edi, 4
cmovae rdi, rdx
cmp r8d, 0xcc49e3e1
je 0x1401e8c70
mov edx, dword [0x1415cf200]
imul edx, dword [0x1415cf204]
mov r8d, 0xa1fd9bd7
imul r8, rdx
shr r8, 0x3f
or r8d, 0x1120500e
cmp r8d, 0x12455d8b
mov r9, rdi
and r9, 0xffffffffffffff8f
mov r8, rdi
or r8, 0x70
nop word cs:[rax + rax]
xor r10d, r10d
cmp rdi, rax
setbe dl
mov r11d, dword [0x1415cf208]
sub r11d, dword [0x1415cf20c]
add r11d, 0xb9446ff4
xor r11d, 0x45a1a98b
cmp r11d, 0x7a9abbc7
jb 0x1401e8d00
mov eax, edi
not eax
and eax, 0x70
imul rax, r9
mov r9d, edi
and r9d, 0x70
imul r8, r9
add r8, rax
mov r10b, dl
shl r10, 3
test rcx, rcx
je 0x1401e8d84
mov eax, dword [0x1415cf210]
sub eax, dword [str.KI1]
mov edx, eax
xor edx, 0x34ebd179
and edx, eax
mov eax, edx
not eax
or eax, 0x511fb6a6
add eax, edx
inc eax
or eax, 0x9bd1cf1d
cmp eax, 0xfdfe0610
jbe 0x1401e8d8b
jmp 0x1401e8dd6
xor eax, eax
jmp 0x1401e8ed4
mov eax, dword [0x1415cf218]
xor edx, edx
div dword [0x1415cf21c]
mov edx, eax
not edx
mov r9d, eax
and r9d, 0x6bb476cf
and edx, 0x944b8930
imul edx, r9d
mov r9d, eax
and r9d, 0x944b8930
or eax, 0x944b8930
imul eax, r9d
add eax, edx
mov rdx, qword [rsi + 8]
mov qword [rsp + 0x20], rdx
cmp eax, 0xe26c339a
jne 0x1401e8de1
mov rax, qword [rsi + 8]
mov qword [rsp + 0x20], rax
jmp 0x1401e8d8b
mov rax, rcx
and rax, 0xffffffffffffff8f
mov edx, ecx
not edx
and edx, 0x70
imul rdx, rax
mov eax, ecx
and eax, 0x70
or rcx, 0x70
imul rcx, rax
add rcx, rdx
mov r9d, 0x8f6c1501
nop dword [rax]
mov eax, dword [0x1415cf220]
xor edx, edx
div dword [0x1415cf224]
add eax, 0xccab3ff6
mov rdx, rax
imul rdx, r9
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x17
or eax, 0x573b58dd
cmp eax, 0x85c434cc
ja 0x1401e8e10
mov eax, dword [0x1415cf228]
mov edx, dword [0x1415cf22c]
mov r9d, eax
not r9d
mov r11d, edx
not r11d
mov ebx, r9d
and ebx, 0x10890deb
and eax, 0xef76f214
or eax, ebx
or r9d, r11d
and r11d, 0x10890deb
and edx, 0xef76f214
or edx, r11d
xor edx, eax
not r9d
or r9d, edx
mov eax, r9d
and eax, 0xa32005b5
or r9d, 0xa32005b5
add r9d, eax
imul eax, r9d, 0x84ab0f9c
cmp eax, 0xedb1b117
je 0x1401e8ec8
mov eax, dword [0x1415cf230]
sub eax, dword [0x1415cf234]
and eax, 0x108920c
xor eax, 0x81000
mov qword [rsp + 0x30], rcx
cmp eax, 0xd235925f
jbe 0x1401e8ecf
mov qword [rsp + 0x30], rcx
jmp 0x1401e8ea6
mov eax, 8
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x38]
lea r9, [rsp + 0x20]
mov rdx, r10
call fcn.140219c20
cmp qword [rsp + 0x38], 0
jne 0x1401e90a0
nop word [rax + rax]
mov eax, dword [0x1415cf240]
mov ecx, dword [0x1415cf244]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
mov eax, ecx
not eax
mov edx, ecx
and edx, 0xe7b36bc8
and eax, 0x184c9437
imul eax, edx
mov edx, ecx
and edx, 0x184c9437
or ecx, 0x184c9437
imul ecx, edx
add eax, ecx
add eax, 0xeece895
cmp eax, 0x9c884749
ja 0x1401e8f00
mov rax, qword [rsp + 0x40]
mov ecx, dword [0x1415cf248]
mov edx, dword [0x1415cf24c]
mov r8d, edx
not r8d
mov r9d, ecx
and r9d, r8d
or r8d, ecx
not r8d
imul r8d, r9d
mov r9d, ecx
and r9d, edx
or ecx, edx
imul ecx, r9d
add ecx, r8d
and ecx, 0x3000242
mov edx, ecx
not edx
lea r8d, [rcx - 0x43d57357]
mov r9d, r8d
and r9d, 0x38088e00
and edx, 0x3900042
imul edx, r9d
and r8d, 0x872200eb
or ecx, 0xbfba8ceb
imul ecx, r8d
add ecx, edx
cmp ecx, 0xaf7ad85d
jbe 0x1401e8fd0
mov qword [rsi + 8], rax
mov qword [rsi], rdi
nop dword [rax + rax]
mov ecx, dword [0x1415cf250]
sub ecx, dword [0x1415cf254]
mov edx, ecx
xor edx, 0xd3179cc
xor ecx, 0x908a0200
and ecx, 0x918b728c
mov r8d, edx
and r8d, 0x6e748d73
imul r8d, ecx
mov ecx, edx
and ecx, 0x918b728c
or edx, 0x918b728c
imul edx, ecx
add edx, r8d
mov ecx, edx
xor ecx, 0x3f0802c6
add ecx, edx
and edx, 0xc0f7fd38
sub ecx, edx
mov qword [rsi + 8], rax
mov qword [rsi], rdi
cmp ecx, 0x8b237538
ja 0x1401e8fd0
nop word cs:[rax + rax]
mov eax, dword [0x1415cf258]
mov ecx, dword [0x1415cf25c]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
mov ecx, eax
not ecx
or ecx, 0x85d6e020
or eax, 0x30090d41
and eax, ecx
and eax, 0xb5dfed61
cmp eax, 0x14255a1f
je 0x1401e9040
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret
mov eax, dword [0x1415cf238]
or eax, dword [0x1415cf23c]
add eax, 0xeffbffb4
mov ecx, eax
and ecx, 0x4075ba55
or eax, 0x4075ba55
add eax, ecx
and eax, 0x4a0f8609
cmp eax, 0x89c20736
je 0x1401e90a0
ud2