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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov r9, rdx
mov r8, rcx
nop word cs:[rax + rax]
mov eax, dword [0x141dc29f0]
and eax, dword [0x141dc29f4]
add eax, 0x88b6969f
or eax, 0x96b27f9d
imul rax, rax, 0x1405d789
shr rax, 0x3c
cmp eax, 0xd566a999
ja 0x140041710
mov rdi, qword [r8]
nop dword [rax + rax]
mov eax, dword [0x141dc29f8]
xor eax, dword [0x141dc29fc]
xor eax, 0xa10f8179
imul rcx, rax, 0xe02fcb
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
add eax, 0xd52ac58b
cmp eax, 0x476dce11
jb 0x140041740
test rdi, rdi
je 0x140041f6d
and r9d, 0x3f
nop
mov eax, dword [0x141dc2a00]
or eax, dword [0x141dc2a04]
add eax, 0x95140093
imul rax, rax, 0x6673ffe3
shr rax, 0x37
or eax, 0x1c78562b
cmp eax, 0x54f65c1
je 0x140041780
lea rcx, [0x141db21c8]
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400417c0
movzx esi, word [rcx + r9*2]
mov r10d, esi
and r10d, 0x7ff
movzx eax, r10w
cmp eax, 0x51d
jae 0x140041de5
shr esi, 0xb
mov eax, dword [0x141dc2a10]
xor edx, edx
div dword [0x141dc2a14]
nop word cs:[rax + rax]
mov eax, dword [0x141dc2a18]
xor eax, dword [0x141dc2a1c]
add eax, 0x1ec31895
and eax, 0x62810120
cmp eax, 0xbd4d36d6
je 0x140041800
movzx eax, word [rcx + r9*2 + 2]
and eax, 0x7ff
lea rcx, [0x141db224a]
add rcx, r10
sub rax, r10
xor edx, edx
mov r11d, 0x9db0ab15
mov ebx, 0xa771e35f
xor r14d, r14d
nop word cs:[rax + rax]
test rax, rax
je 0x140041a63
lea r10, [0x141db2766]
cmp rcx, r10
je 0x140041a63
cmp r14, rdi
je 0x140041a3c
lea r12, [rcx + 1]
mov r15, r14
or r15, 1
movzx ebp, byte [rcx]
mov r13d, dword [0x141dc2a20]
or r13d, dword [str._2O]
shr r13d, 1
imul r13, r11
shr r13, 0x3e
or r13d, 0xe82d6a64
imul r13, rbx
shr r13, 0x3f
cmp r13d, 0x76f6c183
ja 0x140041880
cmp r14, 0x300
je 0x140041e57
nop
mov r13d, dword [0x141dc2a30]
xor r13d, dword [0x141dc2a34]
and r13d, 0x41b0d2af
cmp r13d, 0x1b514caa
je 0x1400418c0
movzx r13d, byte [r8 + r14 + 8]
nop word cs:[rax + rax]
mov r10d, dword [0x141dc2a38]
add r10d, dword [0x141dc2a3c]
xor r10d, 0xd029da
imul r10d, r10d, 0xd756b2f3
and r10d, 0x15df761
cmp r10d, 0x1fc18a40
ja 0x1400418f0
nop dword [rax]
mov r10d, dword [0x141dc2a40]
sub r10d, dword [0x141dc2a44]
xor r10d, 0xa4877d3e
imul r10d, r10d, 0x5d605c03
cmp r10d, 0x401418fd
je 0x140041920
cmp r13b, bpl
jne 0x140041a33
nop
test dl, dl
jne 0x140041950
cmp rax, 1
je 0x140041a63
add rax, 0xfffffffffffffffe
nop word cs:[rax + rax]
mov r10d, dword [0x141dc2a48]
xor r10d, dword [0x141dc2a4c]
add r10d, 0x9205ac21
or r10d, 0xed0efeff
cmp r10d, 0xf42aa86b
ja 0x140041970
lea r10, [0x141db2766]
cmp r12, r10
je 0x140041a63
nop word cs:[rax + rax]
mov r10d, dword [0x141dc2a50]
add r10d, dword [0x141dc2a54]
imul r12, r10, 0x47e68d1f
shr r12, 0x20
sub r10d, r12d
shr r10d, 1
add r10d, r12d
shr r10d, 0x1e
or r10d, 0xfae110e0
cmp r10d, 0xd131891c
jb 0x1400419b0
cmp r15, rdi
je 0x140041a3c
movzx ebp, byte [rcx + 1]
add r14, 2
add rcx, 2
mov r10d, dword [0x141dc2a58]
imul r10d, dword [0x141dc2a5c]
add r10d, 0xd331175b
xor r10d, 0x90500180
or r10d, 0x63afec6b
cmp r10d, 0x3f276b2c
je 0x1400419f7
movzx r13d, byte [r8 + r15 + 8]
cmp r13b, bpl
je 0x140041850
cmp r13b, bpl
sbb rsi, 0
jmp 0x140041a63
dec rsi
nop
mov eax, dword [0x141dc2a28]
or eax, dword [0x141dc2a2c]
and eax, 0x562785fc
imul eax, eax, 0x44ec508b
and eax, 0x694abcfc
cmp eax, 0xc8b76393
ja 0x140041a40
lea r14, [rsi + rdi]
xor eax, eax
nop dword [rax]
test al, al
jne 0x140041a70
xor r15d, r15d
movabs rbx, 0xcccccccccccccccd
xor r10d, r10d
nop word cs:[rax + rax]
mov eax, dword [0x141dc2a78]
xor eax, dword [0x141dc2a7c]
imul eax, eax, 0x96aab87c
cmp eax, 0x51ca321
je 0x140041a90
cmp rdi, 0x301
jae 0x140041e1b
dec rdi
dec r14
nop dword [rax]
test r15b, r15b
jne 0x140041ac0
movzx r11d, byte [r8 + rdi + 8]
mov ecx, r9d
shl r11, cl
add r11, r10
mov rax, r11
mul rbx
mov r10, rdx
shr r10, 3
lea rax, [r10 + r10]
lea rcx, [rax + rax*4]
mov rax, r11
sub rax, rcx
cmp r14, 0x300
jae 0x140041b30
nop dword [rax + rax]
mov ecx, dword [0x141dc2b08]
add ecx, dword [0x141dc2b0c]
xor ecx, 0x381a9a7c
imul ecx, ecx, 0x6ef63071
cmp ecx, 0xb9779d89
je 0x140041b00
test r15b, r15b
je 0x140041c0b
jmp 0x140041c45
mov ecx, dword [0x141dc2ae0]
or ecx, dword [0x141dc2ae4]
or ecx, 0x2a980018
xor ecx, 0x208868a
or ecx, 0xd5677945
cmp ecx, 0x4882ef39
jb 0x140041b30
test rax, rax
je 0x140041bc0
mov eax, dword [0x141dc2ae8]
imul eax, dword [0x141dc2aec]
or eax, 0xf57dfe6f
add eax, 0x3dc47c2e
cmp eax, 0xe4be68d6
jbe 0x140041b90
mov byte [r8 + 0x30c], 1
nop word cs:[rax + rax]
mov eax, dword [0x141dc2af0]
imul eax, dword [0x141dc2af4]
imul eax, eax, 0x973cedfc
mov byte [r8 + 0x30c], 1
cmp eax, 0xbb47999
je 0x140041b90
nop word cs:[rax + rax]
mov eax, dword [0x141dc2af8]
xor edx, edx
div dword [0x141dc2afc]
and eax, 0xc5206c23
imul eax, eax, 0x5039ce74
cmp eax, 0x6e8f3b7a
ja 0x140041bc0
mov eax, dword [0x141dc2b00]
xor edx, edx
div dword [0x141dc2b04]
imul eax, eax, 0x16c620f9
and eax, 0x2a6d0543
cmp eax, 0xd384362
je 0x140041be0
test rdi, rdi
jne 0x140041a90
jmp 0x140041c7d
mov ecx, dword [0x141dc2b10]
imul ecx, dword [0x141dc2b14]
or ecx, 0xd4cfd403
imul rdx, rcx, 0x71dd991
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
imul ecx, ecx, 0x1ed7e485
mov byte [r8 + r14 + 8], al
cmp ecx, 0xeb221e4f
jbe 0x140041c50
mov byte [r8 + r14 + 8], al
jmp 0x140041c0b
mov eax, dword [0x141dc2b18]
sub eax, dword [0x141dc2b1c]
add eax, 0xa9021520
imul rax, rax, 0x5055998f
shr rax, 0x3e
or eax, 0xc4072ca6
cmp eax, 0xc58fd614
jae 0x140041c50
jmp 0x140041bc0
cmp r11, 0xa
jb 0x140041dd3
mov r9d, 0x8fb11c8f
mov r11, rsi
mov rax, r10
mul rbx
mov rcx, rdx
dec r11
shr rcx, 3
lea rax, [rcx + rcx]
lea rax, [rax + rax*4]
mov rdi, r10
sub rdi, rax
cmp r11, 0x300
jae 0x140041cf0
mov eax, dword [0x141dc2ac8]
xor edx, edx
div dword [0x141dc2acc]
mov eax, dword [0x141dc2ad0]
or eax, dword [0x141dc2ad4]
imul eax, eax, 0xf3c17946
add eax, 0x5e703ada
cmp eax, 0x69d3e2d6
jb 0x140041cc5
mov byte [r8 + r11 + 8], dil
jmp 0x140041d70
test rdi, rdi
je 0x140041d70
mov eax, dword [0x141dc2aa0]
imul eax, dword [0x141dc2aa4]
imul eax, eax, 0xd5909955
add eax, 0x3b5cb264
cmp eax, 0x79356ec
jae 0x140041d20
mov byte [r8 + 0x30c], 1
nop dword [rax]
mov eax, dword [0x141dc2aa8]
or eax, dword [0x141dc2aac]
add eax, 0x5677aaf6
and eax, 0x85d51d2d
add eax, 0x837de30
mov byte [r8 + 0x30c], 1
cmp eax, 0x6e14736c
jb 0x140041d20
nop word [rax + rax]
mov eax, dword [0x141dc2ab0]
and eax, dword [0x141dc2ab4]
or eax, 0x158bea39
and eax, 0x578bee39
cmp eax, 0xc541a27e
ja 0x140041d50
nop dword [rax]
mov eax, dword [0x141dc2ab8]
imul eax, dword [0x141dc2abc]
imul rax, rax, 0x746380bf
shr rax, 0x3d
or eax, 0x586d3950
imul rax, rax, 0x3d0a0e0f
shr rax, 0x3c
cmp eax, 0x8251debb
ja 0x140041d70
nop
mov eax, dword [0x141dc2ac0]
xor eax, dword [0x141dc2ac4]
imul eax, eax, 0xd49c2f76
add eax, 0xbc383ae4
imul rax, r9
shr rax, 0x3f
cmp eax, 0xcf23320d
ja 0x140041da0
cmp r10, 0xa
mov r10, rcx
jae 0x140041c90
mov rcx, qword [r8]
xor eax, eax
test al, al
je 0x140041e84
jmp 0x140041ebb
ud2
ud2
mov eax, dword [0x141dc2a60]
sub eax, dword [0x141dc2a64]
xor eax, 0x8001400
or eax, 0xb6022185
and eax, 0xbe027d95
cmp eax, 0x718f7c22
jae 0x140041f81
jmp 0x140041faf
mov edx, dword [0x141dc2a80]
add edx, dword [0x141dc2a84]
and edx, 0xb2d2a93d
add edx, 0xab084af5
lea r9, [rcx + rsi]
cmp r9, 0x300
mov eax, 0x300
cmovb rax, r9
mov qword [r8], rax
cmp edx, 0x212a6455
jae 0x140041ed3
lea rax, [rcx + rsi]
cmp rax, 0x300
mov edx, 0x300
cmovb rdx, rax
mov qword [r8], rdx
jmp 0x140041e84
add dword [r8 + 0x308], esi
nop word [rax + rax]
test rax, rax
je 0x140041f6d
mov ecx, dword [0x141dc2a88]
add ecx, dword [0x141dc2a8c]
imul ecx, ecx, 0xdf124b8a
and ecx, 0x59858888
cmp ecx, 0xc1d9d1bb
je 0x140041ee9
cmp byte [r8 + rax + 7], 0
jne 0x140041f6d
dec rax
mov qword [r8], rax
mov ecx, dword [0x141dc2a90]
add ecx, dword [0x141dc2a94]
or ecx, 0xc2020010
and ecx, 0xce820210
xor ecx, 0x2a002b21
cmp ecx, 0xda41c1bd
jb 0x140041f17
nop dword [rax]
mov ecx, dword [0x141dc2a98]
mov edx, dword [0x141dc2a9c]
add ecx, edx
add ecx, 0x5ade0d6a
or ecx, 0xe3bb1adf
add ecx, 0xc73dd8c8
cmp ecx, 0xe8cee104
ja 0x140041f40
jmp 0x140041ee0
xor eax, eax
nop
test al, al
jne 0x140041f70
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141dc2a68]
and eax, dword [0x141dc2a6c]
and eax, 0xba36706b
imul eax, eax, 0x4a5bd13b
mov ecx, 0xb22b2c47
imul rcx, rax
shr rcx, 0x3f
ud2
ud2