Function at 0x1403ec891
Capabilities:
Encode data using base64

Disassembly:
push r15
rcr r15b, 0xaa
cmova r9w, bx
lahf
push r14
cmc
adc r15b, r8b
btr eax, r12d
push r13
dec ax
mov r13w, sp
movsxd r9, r12d
push r12
xor ax, bx
rcr ah, 0xe0
push rsi
sub ax, r9w
push rdi
dec dil
push rbx
shl al, 0x3d
sub rsp, 0x20
mov rdi, rdx
or sil, 0x47
btc si, 0x84
and bl, r12b
mov r15, rcx
sub si, 0x5dea
test r15b, 0xda
movabs r9, 0x492492492492492
xor sil, 0x2e
or sil, dl
sar sil, 0x69
mov rbx, qword [rcx]
shl eax, 0xbb
bsf eax, ebp
mov r13, qword [rcx + 8]
sub r13, rbx
shr eax, cl
test spl, r8b
bt si, r13w
sar r13, 3
shl ch, 0xe4
shrd si, r12w, 0x8e
rol ax, cl
movabs rcx, 0x6db6db6db6db6db7
sub sil, dl
bsf esi, esi
imul r13, rcx
shld rax, r11, 0x36
mov rax, rdx
sub rax, rbx
movabs rdx, 0x4924924924924925
rcl sil, cl
xchg sil, sil
imul rdx
xchg si, si
cmovbe si, si
cwde
mov rsi, rdx
movsx eax, cx
mov dh, dl
inc r13
sar dl, cl
sub al, 0xbb
mov rdx, qword [r15 + 0x10]
sub ax, si
mov ah, 0xcd
sub rdx, rbx
lahf
sar ax, cl
bts rax, r15
sar rdx, 3
sbb rax, 0x6e332576
imul rdx, rcx
add rax, r11
mov rax, rdx
rol cx, 0xdc
shr rax, 1
movzx cx, r9b
cmp r12, 0x58ca0d6b
mov rcx, r9
jmp 0x1403ec9b8
sub rcx, rax
stc
add rax, rdx
cmp rax, r13
cmovbe rax, r13
cmp rdx, rcx
jmp 0x1403ec9ce
cmova rax, r9
jmp 0x1403ec9de
cmp rax, r9
ja 0x1403ecdcd
mov rbx, r8
shld r14w, r13w, 0xb9
imul r14, rax, 0x38
cmp spl, r12b
cmp bpl, 0x5b
cmp rax, 0x4a
jmp 0x1403eca04
jb 0x1403eca44
cmp rax, r9
jmp 0x1403eca12
jae 0x1403ecdcd
lea rcx, [r14 + 0x27]
jmp 0x1403eca21
call fcn.140448559
lea r12, [rax + 0x27]
test rsp, 0x5212113e
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
jmp 0x1403eca3f
jmp 0x1403eca5a
mov rcx, r14
jmp 0x1403eca4c
call fcn.140448559
mov r12, rax
test rax, 0x685e4a86
mov rax, rsi
cmc
clc
shr rax, 0x3f
sar rsi, 4
clc
cmc
add rsi, rax
add ax, r8w
shr ah, 0xd1
imul rsi, rsi, 0x38
movsx ax, sil
lea rax, [0x1400bedd0]
jmp 0x1403eca88
mov qword [r12 + rsi], rax
jmp 0x1403eca91
mov dword [r12 + rsi + 8], 0
jmp 0x1403eca9f
xorps xmm0, xmm0
movups xmmword [r12 + rsi + 0x28], xmm0
sub ch, al
movsx edx, r12w
add cx, r9w
mov ecx, dword [rbx + 8]
mov dword [r12 + rsi + 8], ecx
shr ecx, cl
mov rcx, qword [rbx + 0x10]
mov qword [r12 + rsi + 0x10], rcx
mov rcx, qword [rbx + 0x18]
mov qword [r12 + rsi + 0x18], rcx
movsx rdx, r8w
mov ecx, dword [rbx + 0x20]
neg dh
mov dword [r12 + rsi + 0x20], ecx
movups xmm0, xmmword [rbx + 0x28]
jmp 0x1403ecae8
movups xmmword [r12 + rsi + 0x28], xmm0
shr dx, 0xf2
xor edx, r12d
mov rcx, qword [r15]
or dx, bp
mov rdx, qword [r15 + 8]
stc
cmp rdx, rdi
je 0x1403ecc77
cmp rcx, rdi
jmp 0x1403ecb11
je 0x1403ecbc0
xorps xmm0, xmm0
mov rdx, r12
and bh, 0x9e
bsr bx, dx
nop dword [rax + rax]
mov qword [rdx], rax
bsr bx, dx
mov dword [rdx + 8], 0
clc
movups xmmword [rdx + 0x28], xmm0
mov ebx, dword [rcx + 8]
cmc
test bx, 0x266c
mov dword [rdx + 8], ebx
mov rbx, qword [rcx + 0x10]
cmp cl, spl
mov qword [rdx + 0x10], rbx
sar bx, cl
mov rbx, qword [rcx + 0x18]
clc
mov qword [rdx + 0x18], rbx
bt ebx, ebp
btc bx, 0xec
dec bl
mov ebx, dword [rcx + 0x20]
cmp rax, 0x6b95e64
mov dword [rdx + 0x20], ebx
movups xmm1, xmmword [rcx + 0x28]
cmp si, 0x1dc3
cmc
movups xmmword [rdx + 0x28], xmm1
add rcx, 0x38
test r11d, esi
cmp ax, dx
test bx, 0x6e1
add rdx, 0x38
test r15w, r13w
clc
cmp rdx, 0x23a7623c
cmp rcx, rdi
jmp 0x1403ecbae
jne 0x1403ecb2c
mov rdx, qword [r15 + 8]
cmc
cmp r12, 0x2123269c
cmp rdx, rdi
jmp 0x1403ecbc8
je 0x1403eccff
lea rcx, [rsi + r12]
jmp 0x1403ecbd9
add rcx, 0x60
jmp 0x1403ecbe2
xorps xmm0, xmm0
nop word [rax + rax]
mov qword [rcx - 0x28], rax
mov dword [rcx - 0x20], 0
mov bh, 0x29
clc
stc
movups xmmword [rcx], xmm0
btr ebx, r13d
mov ebx, dword [rdi + 8]
cmc
jmp 0x1403ecc0e
mov dword [rcx - 0x20], ebx
cmp rbx, 0x48c91502
bts bx, dx
mov rbx, qword [rdi + 0x10]
cmp spl, 0xf1
mov qword [rcx - 0x18], rbx
rcl bl, 0xba
test r10d, 0x4b2216cd
mov rbx, qword [rdi + 0x18]
mov qword [rcx - 0x10], rbx
mov ebx, dword [rdi + 0x20]
mov dword [rcx - 8], ebx
movups xmm1, xmmword [rdi + 0x28]
cmp bpl, 0x3c
jmp 0x1403ecc4e
movups xmmword [rcx], xmm1
add rdi, 0x38
jmp 0x1403ecc5a
add rcx, 0x38
stc
jmp 0x1403ecc64
cmp rdi, rdx
jmp 0x1403ecc6c
jne 0x1403ecbee
jmp 0x1403eccff
cmp rcx, rdi
je 0x1403ecd06
xorps xmm0, xmm0
mov rdx, r12
nop dword [rax + rax]
mov qword [rdx], rax
rcr bl, cl
mov dword [rdx + 8], 0
cmp esp, esi
movups xmmword [rdx + 0x28], xmm0
btr rbx, rsi
neg bx
mov ebx, dword [rcx + 8]
clc
mov dword [rdx + 8], ebx
bts rbx, r8
movzx ebx, sp
btr bx, 0x67
mov rbx, qword [rcx + 0x10]
mov qword [rdx + 0x10], rbx
shld ebx, r10d, 0x1d
not bl
mov rbx, qword [rcx + 0x18]
mov qword [rdx + 0x18], rbx
mov ebx, dword [rcx + 0x20]
mov dword [rdx + 0x20], ebx
movups xmm1, xmmword [rcx + 0x28]
jmp 0x1403eccdd
movups xmmword [rdx + 0x28], xmm1
cmc
stc
add rcx, 0x38
jmp 0x1403eccec
add rdx, 0x38
stc
cmp rcx, rdi
jmp 0x1403eccf9
jne 0x1403ecc8b
mov rdi, qword [r15]
test r12b, 0xad
test rdi, rdi
jmp 0x1403ecd0e
je 0x1403ecd63
mov rdx, qword [r15 + 0x10]
cmp ax, bx
jmp 0x1403ecd20
sub rdx, rdi
cmp rdx, 0x1000
jb 0x1403ecd56
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
cmp r8d, edi
sub rdi, rax
cmc
stc
cmp rdi, 0x20
jmp 0x1403ecd49
jae 0x1403ecdd2
add rdx, 0x27
mov rdi, rax
mov rcx, rdi
jmp 0x1403ecd5e
call fcn.14018e3c0
add rsi, r12
mov qword [r15], r12
sar edi, cl
imul rax, r13, 0x38
xchg r13b, dil
cmc
xor r13b, dl
lea rax, [rax + r12]
mov qword [r15 + 8], rax
btc di, 0x95
ror rax, cl
lea r14, [r14 + r12]
bswap rax
dec r12d
mov qword [r15 + 0x10], r14
movzx r12d, dx
bt di, r9w
mov rax, rsi
movsxd r14, r10d
add sil, r8b
add rsp, 0x20
pop rbx
pop rdi
pop rsi
movzx r13w, r8b
pop r12
pop r13
mov r15d, 0x387b460f
movzx r14, si
not r15
pop r14
pop r15
jmp 0x1403ecdcc
ret
call fcn.1403b3358
call fcn.1404b6dca
int3