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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x18
lea rbp, [rsp + 0x10]
mov r8, rdx
mov eax, dword [0x141f46b58]
xor edx, edx
div dword [0x141f46b5c]
imul eax, eax, 0x4b4fa7bb
add eax, 0xe2329acc
cmp eax, 0x419ed0
jae 0x1400e2c55
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
lea rax, [rcx + r8]
mov qword [rbp - 8], rax
nop dword [rax]
mov edx, dword [0x141f46b60]
and edx, dword [0x141f46b64]
add edx, 0x1ce12318
and edx, 0xf0841a01
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
mov r10, rsp
cmp edx, 0xc70fa889
je 0x1400e2c60
test r8, r8
je 0x1400e2ce3
lea r15, [rcx + 1]
mov eax, dword [0x141f46b68]
xor edx, edx
div dword [0x141f46b6c]
nop word [rax + rax]
mov eax, dword [0x141f46b70]
imul eax, dword [0x141f46b74]
add eax, 0xdd635d41
or eax, 0xfeefcfbb
cmp eax, 0xdbe5838a
je 0x1400e2cb0
movzx r9d, byte [rcx]
test r9b, r9b
mov qword [rbp], r10
js 0x1400e2d18
mov edi, r9d
jmp 0x1400e2f7b
xor ebx, ebx
nop word cs:[rax + rax]
mov eax, dword [0x141f46be0]
imul eax, dword [0x141f46be4]
and eax, 0xf0d218
xor eax, 0x19682a42
add eax, 0x47575cd9
cmp eax, 0x4d43fa36
jbe 0x1400e2cf0
jmp 0x1400e3130
mov eax, 0xc519faf3
mov r8d, r9d
and r8d, 0x1f
nop word cs:[rax + rax]
mov edx, dword [0x141f46b78]
imul edx, dword [0x141f46b7c]
add edx, 0x9e918879
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0xa1c1605
ja 0x1400e2d30
lea r15, [rcx + 2]
xor eax, eax
nop dword [rax]
test al, al
jne 0x1400e2d60
movzx r10d, byte [rcx + 1]
mov eax, dword [0x141f46b80]
xor edx, edx
div dword [0x141f46b84]
mov edi, r8d
shl edi, 6
and r10d, 0x3f
or edi, r10d
nop word cs:[rax + rax]
mov eax, dword [0x141f46b88]
imul eax, dword [0x141f46b8c]
xor eax, 0x4029101d
or eax, 0xaec6c422
add eax, 0xebf34021
cmp eax, 0x34dfcffe
jb 0x1400e2d90
cmp r9b, 0xdf
jbe 0x1400e2f7b
lea r15, [rcx + 3]
shl r10d, 6
nop word cs:[rax + rax]
mov eax, dword [0x141f46b90]
add eax, dword [0x141f46b94]
imul eax, eax, 0xe38ba34
add eax, 0x252d6b3c
xor eax, 0xf636fa29
cmp eax, 0x34464c4e
ja 0x1400e2dd0
movzx eax, byte [rcx + 2]
and eax, 0x3f
or r10d, eax
mov eax, 0xdb43b723
mov edi, r8d
shl edi, 0xc
nop dword [rax + rax]
mov edx, dword [0x141f46b98]
add edx, dword [0x141f46b9c]
and edx, 0xfcba7d27
add edx, 0xbe9faec7
imul rdx, rax
shr rdx, 0x3d
cmp edx, 0x1e20824a
ja 0x1400e2e10
or edi, r10d
nop dword [rax + rax]
mov eax, dword [0x141f46ba0]
and eax, dword [0x141f46ba4]
and eax, 0x388d5911
imul eax, eax, 0x2339b336
and eax, 0x4219bd14
cmp eax, 0x5ca085e7
je 0x1400e2e40
cmp r9b, 0xf0
jb 0x1400e2ee0
movzx eax, byte [rcx + 3]
add rcx, 4
shl r8d, 0x12
and r8d, 0x1c0000
shl r10d, 6
mov edx, dword [0x141f46ba8]
and edx, dword [0x141f46bac]
add edx, 0x901eb7c9
imul rdx, rdx, 0x54067503
shr rdx, 0x3e
cmp edx, 0x2fdbc873
ja 0x1400e2e80
and eax, 0x3f
or r10d, eax
mov edi, r10d
or edi, r8d
nop word cs:[rax + rax]
mov eax, dword [0x141f46bb0]
imul eax, dword [0x141f46bb4]
add eax, 0x6ec2b8da
cmp eax, 0xb83d04a8
jb 0x1400e2ec0
mov r15, rcx
nop dword [rax]
mov eax, dword [0x141f46bb8]
imul eax, dword [0x141f46bbc]
add eax, 0x3fc2bfe1
xor eax, 0x462965fa
cmp eax, 0x8ea98050
ja 0x1400e2ee0
cmp edi, 0xffff
jbe 0x1400e2f7b
lea eax, [rdi + 0xff0000]
shr eax, 0xa
nop
mov ecx, dword [0x141f46bc8]
and ecx, dword [0x141f46bcc]
cmp ecx, 0xc62364ec
je 0x1400e2f10
or eax, 0xd800
and edi, 0x3ff
mov r13d, edi
or r13d, 0xdc00
mov edi, eax
nop dword [rax + rax]
mov eax, dword [0x141f46bd0]
and eax, dword [0x141f46bd4]
or eax, 0x3dfbf773
and eax, 0xfdfffff3
cmp eax, 0x9682028a
ja 0x1400e2f40
nop dword [rax]
mov eax, dword [0x141f46bd8]
or eax, dword [0x141f46bdc]
imul eax, eax, 0x93363978
cmp eax, 0x2813788a
je 0x1400e2f60
jmp 0x1400e2fac
mov eax, 0xb2edd2c3
mov ecx, dword [0x141f46bc0]
imul ecx, dword [0x141f46bc4]
and ecx, 0xab2a2a74
imul rcx, rax
shr rcx, 0x3e
imul ecx, ecx, 0x9d683053
cmp ecx, 0x29cf80ca
ja 0x1400e2f80
xor r13d, r13d
movabs r8, 0x3fffffffffffffff
mov rax, qword [rbp - 8]
lea rcx, [rax + 2]
mov qword [rbp - 0x10], rcx
sub rcx, r15
movabs r11, 0xaaaaaaaaaaaaaaab
mov r9d, 4
nop word cs:[rax + rax]
mov eax, dword [0x141f46be8]
and eax, dword [0x141f46bec]
xor eax, 0x2d7f3ea
imul r10d, eax, 0xce59c3e8
add r10d, 0x55ae38a8
mov rax, rcx
mul r11
shr rdx, 1
cmp r13w, 1
sbb rdx, 0xffffffffffffffff
lea rbx, [rdx + 1]
cmp rdx, 3
cmovb rbx, r9
cmp r10d, 0xb5819961
jb 0x1400e2fe0
cmp rbx, r8
ja 0x1400e30a1
lea rdx, [rbx + rbx]
movzx eax, byte [0x141f49078]
sub rsp, 0x20
xor ecx, ecx
call fcn.1400c6170
add rsp, 0x20
mov r12, rax
nop dword [rax + rax]
mov eax, dword [0x141f46c00]
xor eax, dword [0x141f46c04]
add eax, 0x63376054
xor eax, 0x3a5394c
cmp eax, 0x71b500af
jb 0x1400e3050
test r12, r12
mov rcx, qword [rbp]
je 0x1400e3106
mov word [r12], di
mov eax, dword [0x141f46c20]
and eax, dword [0x141f46c24]
imul eax, eax, 0xe4858ddf
cmp eax, 0x39c29c94
jne 0x1400e31b8
jmp 0x1400e31e7
mov eax, dword [0x141f46bf0]
imul eax, dword [0x141f46bf4]
imul eax, eax, 0x7310fe45
add eax, 0xe1a4328a
and eax, 0x7759be03
cmp eax, 0x865f70eb
jne 0x1400e30d0
ud2
mov eax, dword [0x141f46bf8]
or eax, dword [0x141f46bfc]
xor eax, 0xc91bcaee
imul eax, eax, 0xfc25f638
add eax, 0xf7ec680e
ud2
mov eax, dword [0x141f46c08]
imul eax, dword [0x141f46c0c]
or eax, 0xc7a71c8b
xor eax, 0xbe7d8dac
cmp eax, 0xc76cbba7
jbe 0x1400e3157
jmp 0x1400e317e
ud2
mov eax, dword [0x141f46ce8]
and eax, dword [0x141f46cec]
cmp eax, 0x76ded5d6
je 0x1400e3130
mov rax, rbx
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141f46c10]
xor edx, edx
div dword [0x141f46c14]
imul eax, eax, 0xbb17d89c
or eax, 0xf667f2d
add eax, 0x81379d44
ud2
ud2
mov eax, dword [0x141f46c28]
xor eax, dword [0x141f46c2c]
or eax, 0x4f599e4
imul rax, rax, 0xa8fc3e3
shr rax, 0x3b
or eax, 0x5931b57a
mov qword [rcx], rbx
mov qword [rcx + 8], r12
cmp eax, 0x6240e6ae
jbe 0x1400e31f0
mov qword [rcx], rbx
mov qword [rcx + 8], r12
jmp 0x1400e31b8
mov eax, dword [0x141f46c30]
imul eax, dword [0x141f46c34]
imul eax, eax, 0xfaa01800
add eax, 0xfd2c7000
cmp eax, 0xb693aff2
ja 0x1400e3236
mov eax, dword [0x141f46c38]
imul eax, dword [0x141f46c3c]
xor eax, 0xa959cf44
imul eax, eax, 0x5e4746b5
mov qword [rcx + 0x10], 1
cmp eax, 0x739f1e57
jae 0x1400e3240
mov qword [rcx + 0x10], 1
jmp 0x1400e320f
mov edi, 1
jmp 0x1400e325f
mov word [r12 + rdi*2], r13w
inc rdi
mov qword [rcx + 0x10], rdi
mov r13d, r14d
test r13w, r13w
je 0x1400e3270
xor r14d, r14d
jmp 0x1400e34b9
cmp r15, qword [rbp - 8]
je 0x1400e3589
nop word [rax + rax]
mov eax, dword [0x141f46c40]
sub eax, dword [0x141f46c44]
imul eax, eax, 0x1e182d64
add eax, 0xb932ad78
imul rdx, rax, 0x3a9a9989
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1e
cmp eax, 0xafe096f1
je 0x1400e3280
lea r9, [r15 + 1]
nop word cs:[rax + rax]
mov eax, dword [0x141f46c48]
and eax, dword [0x141f46c4c]
and eax, 0x4806993c
cmp eax, 0xe3a5f5b5
je 0x1400e32c0
movzx r8d, byte [r15]
nop dword [rax]
mov eax, dword [0x141f46c50]
xor edx, edx
div dword [0x141f46c54]
cmp eax, 0x8a66e2fa
je 0x1400e32e0
test r8b, r8b
js 0x1400e3324
mov eax, dword [0x141f46c60]
mov edx, dword [0x141f46c64]
add eax, edx
add eax, 0xce334e8b
or eax, 0x7a3564a3
imul eax, eax, 0x86fe53ab
cmp eax, 0x3f4a13a4
je 0x1400e32fa
jmp 0x1400e34b0
mov r10d, r8d
and r10d, 0x1f
lea r9, [r15 + 2]
movzx r11d, byte [r15 + 1]
nop word cs:[rax + rax]
mov eax, dword [0x141f46c58]
imul eax, dword [0x141f46c5c]
and eax, 0xfc29d67e
add eax, 0xe49374e0
imul rax, rax, 0x6ffa0291
shr rax, 0x3b
cmp eax, 0x68bad8d4
ja 0x1400e3340
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x1400e340d
mov eax, dword [0x141f46c68]
xor edx, edx
div dword [0x141f46c6c]
nop word cs:[rax + rax]
mov eax, dword [0x141f46c70]
sub eax, dword [0x141f46c74]
or eax, 0x39c80038
and eax, 0x3fc800fa
add eax, 0x109f67e1
cmp eax, 0xa0fdad43
ja 0x1400e3390
movzx eax, byte [r15 + 2]
shl r11d, 6
and eax, 0x3f
or eax, r11d
cmp r8b, 0xf0
jb 0x1400e3420
nop word [rax + rax]
mov edx, dword [0x141f46c78]
sub edx, dword [0x141f46c7c]
imul edx, edx, 0x30952ea3
cmp edx, 0x7d86d9ec
je 0x1400e33d0
movzx r8d, byte [r15 + 3]
add r15, 4
and r10d, 7
shl r10d, 0x12
shl eax, 6
and r8d, 0x3f
or r8d, eax
or r8d, r10d
mov r9, r15
jmp 0x1400e3431
shl r10d, 6
or r10d, r11d
mov r8d, r10d
mov rcx, qword [rbp]
jmp 0x1400e34b0
add r15, 3
shl r10d, 0xc
or eax, r10d
mov r9, r15
mov r8d, eax
mov rcx, qword [rbp]
mov eax, dword [0x141f46c80]
mov edx, dword [0x141f46c84]
add eax, edx
add eax, 0xd672dfad
imul rax, rax, 0x50aa84cf
shr rax, 0x3e
imul eax, eax, 0x1db6c24c
cmp eax, 0x265bb087
ja 0x1400e3435
cmp r8d, 0xffff
jbe 0x1400e34b0
lea r13d, [r8 + 0xff0000]
shr r13d, 0xa
or r13d, 0xd800
mov eax, dword [0x141f46c88]
sub eax, dword [0x141f46c8c]
imul rax, rax, 0x15eed587
shr rax, 0x3a
mov r14d, r8d
and r14d, 0x3ff
or r14d, 0xdc00
cmp eax, 0x87e1289d
je 0x1400e347b
mov r15, r9
jmp 0x1400e34b9
xor r14d, r14d
mov r15, r9
mov r13d, r8d
cmp rdi, qword [rcx]
jne 0x1400e3250
movabs rdx, 0xaaaaaaaaaaaaaaab
nop dword [rax]
mov eax, dword [0x141f46c90]
imul eax, dword [0x141f46c94]
xor eax, 0x5ccb56e
add eax, 0x33b82298
xor eax, 0xdfbe14e
cmp eax, 0xb5fbb32a
ja 0x1400e34d0
mov rax, qword [rbp - 0x10]
mov rsi, r15
sub rax, r15
mul rdx
mov rbx, rdx
shr rbx, 1
cmp r14w, 1
mov r12d, 2
sbb r12, 0
xor eax, eax
test al, al
jne 0x1400e356f
mov eax, dword [0x141f46c98]
mov edx, dword [0x141f46c9c]
add eax, edx
add eax, 0x6785733b
shr eax, 1
imul r15, rax, 0x4a9b4d1f
shr r15, 0x3b
xor r15d, 0x83ff10ba
lea r8, [r12 + rbx]
sub rsp, 0x20
mov rdx, rdi
call fcn.140107650
mov rcx, qword [rbp]
add rsp, 0x20
cmp r15d, 0x67532651
jbe 0x1400e351b
mov r12, qword [rcx + 8]
mov r15, rsi
jmp 0x1400e3250
lea r8, [r12 + rbx]
sub rsp, 0x20
mov rdx, rdi
call fcn.140107650
mov rcx, qword [rbp]
add rsp, 0x20
jmp 0x1400e351b
mov r14, qword [rcx]
mov rsi, qword [rcx + 8]
test rdi, rdi
je 0x1400e3683
nop dword [rax]
mov eax, dword [0x141f46ca0]
xor eax, dword [0x141f46ca4]
imul eax, eax, 0x8d5a1388
add eax, 0x5ae2ae28
cmp eax, 0x59ba6115
jb 0x1400e35a0
mov rax, rdi
shr rax, 0x20
jne 0x1400e3126
nop dword [rax + rax]
mov eax, dword [0x141f46ca8]
add eax, dword [0x141f46cac]
imul eax, eax, 0xa060b071
add eax, 0xdd5cf01d
or eax, 0x358a94e5
cmp eax, 0xbed9fd71
je 0x1400e35d0
mov eax, dword [0x141f46cb0]
xor edx, edx
div dword [0x141f46cb4]
and eax, 0xbad4576
add eax, 0xf9f7a351
cmp eax, 0x965e3ad3
jae 0x1400e3625
sub rsp, 0x20
mov rcx, rsi
mov edx, edi
call qword [0x1401084c8]
add rsp, 0x20
mov r15, qword [0x1401084c8]
nop dword [rax]
mov eax, dword [0x141f46cb8]
or eax, dword [0x141f46cbc]
and eax, 0xdf61d192
imul r12d, eax, 0x893b3b30
add r12d, 0xe4566399
sub rsp, 0x20
mov rcx, rsi
mov edx, edi
call r15
add rsp, 0x20
cmp r12d, 0xb1cfcab4
ja 0x1400e3630
mov rbx, rax
test rax, rax
je 0x1400e3126
xor eax, eax
test al, al
je 0x1400e3713
jmp 0x1400e3753
xor ebx, ebx
nop word cs:[rax + rax]
mov eax, dword [0x141f46cd8]
imul eax, dword [0x141f46cdc]
add eax, 0x2190ec74
xor eax, 0xf0dafa69
cmp eax, 0xb9da9207
ja 0x1400e3690
test r14, r14
je 0x1400e3130
mov eax, dword [0x141f46ce0]
xor eax, dword [0x141f46ce4]
mov ecx, 0x83ae4c8b
imul rcx, rax
shr rcx, 0x3e
or ecx, 0xb054184
and ecx, 0xb054186
cmp ecx, 0xd915cb
jne 0x1400e36eb
mov rax, qword [0x141f49060]
xor eax, eax
nop dword [rax]
mov rcx, qword [0x141f49060]
test al, al
jne 0x1400e36f0
sub rsp, 0x20
xor edx, edx
mov r8, rsi
call qword [0x1401082d0]
add rsp, 0x20
jmp 0x1400e3130
mov eax, dword [0x141f46cc0]
add eax, dword [0x141f46cc4]
shr eax, 1
mov ecx, 0x86a994c3
imul rcx, rax
shr rcx, 0x3e
imul edi, ecx, 0xfbabd75
or edi, 0x7ed473d2
sub rsp, 0x20
mov rcx, rbx
call qword [0x1401084c0]
add rsp, 0x20
cmp edi, 0x51fb6f24
jae 0x1400e3770
sub rsp, 0x20
mov rcx, rbx
call qword [0x1401084c0]
add rsp, 0x20
jmp 0x1400e3713
mov ecx, dword [0x141f46cc8]
and ecx, dword [0x141f46ccc]
xor ecx, 0x85f563ac
imul ecx, ecx, 0x79c029aa
cmp ecx, 0x4e601cad
je 0x1400e3770
mov ecx, dword [0x141f46cd0]
xor ecx, dword [0x141f46cd4]
or ecx, 0x2f30358
imul ecx, ecx, 0xcd3e7682
cmp ecx, 0x13ee7bdc
je 0x1400e3790
test eax, eax
jne 0x1400e3690
sub rsp, 0x20
mov rcx, rbx
call qword [0x1401084f0]
add rsp, 0x20
ud2