Function at 0x140082020
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, 0x28
lea rbp, [rsp + 0x20]
mov rbx, rdx
mov r13, rcx
mov eax, dword [0x141dca868]
imul eax, dword [0x141dca86c]
xor eax, 0xc6f8dbf8
imul rax, rax, 0x7048542d
shr rax, 0x3e
or eax, 0x862e019e
cmp eax, 0x7b50af9f
jae 0x140082080
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
nop word cs:[rax + rax]
mov ecx, dword [0x141dca870]
add ecx, dword [0x141dca874]
and ecx, 0xe091a74b
xor ecx, 0x3e25a652
add ecx, 0x4957cf04
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xc259666e
jb 0x140082080
nop word cs:[rax + rax]
mov eax, dword [0x141dca878]
add eax, dword [0x141dca87c]
or eax, 0x6fffeffe
cmp eax, 0x14a58821
je 0x1400820c0
nop dword [rax + rax]
mov eax, dword [0x141dca880]
mov ecx, dword [0x141dca884]
add eax, ecx
add eax, 0x9db1dc18
or eax, 0xc6c1086a
cmp eax, 0x319e8c90
je 0x1400820e0
mov r10, qword [rbx]
test r10, r10
je 0x1400822b0
nop dword [rax + rax]
mov eax, dword [0x141dca888]
and eax, dword [0x141dca88c]
add eax, 0xa0c950cd
xor eax, 0x1ac2110
or eax, 0x9c13d881
cmp eax, 0x97273ccc
jb 0x140082110
mov eax, dword [0x141dca890]
xor edx, edx
div dword [0x141dca894]
mov eax, dword [0x141dca898]
xor eax, dword [0x141dca89c]
imul eax, eax, 0x714d4e06
add eax, 0x1028f2d0
cmp eax, 0xcff0d48a
ja 0x140082140
movzx esi, word [rbx + 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dca8a0]
mov ecx, dword [0x141dca8a4]
add eax, ecx
add eax, 0x2d55a749
or eax, 0x62b9fe7e
cmp eax, 0x8350c4b4
je 0x140082170
test si, si
je 0x1400821ad
mov word [rbx + 0x10], 0
xor eax, eax
nop dword [rax]
test al, al
jne 0x1400821a0
mov rcx, qword [rbx + 8]
jmp 0x14008251a
mov rcx, qword [rbx + 8]
mov eax, 0xa695f339
nop word cs:[rax + rax]
mov edx, dword [0x141dca8a8]
imul edx, dword [0x141dca8ac]
imul rdx, rax
shr rdx, 0x3c
or edx, 0x2e5241d1
xor edx, 0xff28a4fc
cmp edx, 0x32521d82
jb 0x1400821c0
cmp r10, rcx
je 0x140082276
mov eax, dword [0x141dca8b0]
and eax, dword [0x141dca8b4]
add eax, 0x7252be0e
xor eax, 0xe830af72
cmp eax, 0xbbe21a7e
jbe 0x140082216
lea rax, [r10 + 1]
mov qword [rbx], rax
lea r8, [r10 + 1]
nop word [rax + rax]
mov eax, dword [0x141dca8b8]
imul eax, dword [0x141dca8bc]
or eax, 0xffebfffb
mov qword [rbx], r8
cmp eax, 0x5fd6b02c
jb 0x140082220
movzx r11d, byte [r10]
test r11b, r11b
js 0x140082395
nop dword [rax]
mov eax, dword [0x141dca8c8]
and eax, dword [0x141dca8cc]
imul eax, eax, 0x4b812474
add eax, 0x758480bc
cmp eax, 0xedfa8a58
ja 0x140082250
mov r9d, r11d
jmp 0x14008250a
mov qword [rbx], 0
nop dword [rax]
mov eax, dword [0x141dca8e8]
xor edx, edx
div dword [0x141dca8ec]
or eax, 0x2c239614
add eax, 0x3aaa781a
and eax, 0xd09661b2
cmp eax, 0xba49ac66
je 0x140082280
nop word cs:[rax + rax]
mov eax, dword [0x141dca8f0]
sub eax, dword [0x141dca8f4]
imul eax, eax, 0xb1523238
xor eax, 0x18608b0
or eax, 0xda61454b
cmp eax, 0x2aff3ba2
jb 0x1400822b0
movzx eax, word [rbx + 0x18]
cmp ax, 2
je 0x140082309
movzx esi, word [rbx + 0x1a]
mov word [rbx + 0x18], 0
test ax, ax
je 0x140082309
mov r15d, 4
mov r14d, 8
xor eax, eax
mov qword [rbp - 8], rax
xor eax, eax
mov qword [rbp - 0x10], rax
jmp 0x140082576
xor eax, eax
test al, al
je 0x14008231f
mov qword [r13], 0
mov qword [r13 + 8], 2
mov eax, 0xbdcb4c1b
nop word cs:[rax + rax]
mov ecx, dword [0x141dca8f8]
and ecx, dword [0x141dca8fc]
and ecx, 0x5437c760
add ecx, 0x89478e06
imul rcx, rax
shr rcx, 0x3c
mov qword [r13], 0
mov qword [r13 + 8], 2
cmp ecx, 0x1e117d8c
ja 0x140082330
mov eax, dword [0x141dca900]
xor edx, edx
div dword [0x141dca904]
add eax, 0x6ea5eaf2
or eax, 0x2c061750
and eax, 0x3c765759
cmp eax, 0x910a1d93
jne 0x140082636
jmp 0x140082661
mov rax, r10
mov r10d, r11d
and r10d, 0x1f
lea r8, [rax + 2]
mov qword [rbx], r8
movzx esi, byte [rax + 1]
mov r9d, r10d
shl r9d, 6
and esi, 0x3f
or r9d, esi
mov r14, rax
nop word [rax + rax]
mov eax, dword [0x141dca8c0]
xor edx, edx
div dword [0x141dca8c4]
xor eax, 0x1102840
or eax, 0xfeee5719
cmp eax, 0x95017ae4
je 0x1400823c0
cmp r11b, 0xdf
jbe 0x14008250a
lea r8, [r14 + 3]
mov qword [rbx], r8
movzx r9d, byte [r14 + 2]
shl esi, 6
and r9d, 0x3f
or r9d, esi
cmp r11b, 0xf0
jb 0x14008242b
lea r8, [r14 + 4]
mov qword [rbx], r8
movzx eax, byte [r14 + 3]
and r10d, 7
shl r10d, 0x12
shl r9d, 6
and eax, 0x3f
or eax, r9d
or eax, r10d
mov r9d, eax
jmp 0x140082432
shl r10d, 0xc
or r9d, r10d
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140082440
cmp r9d, 0xffff
jbe 0x14008250a
mov eax, 0xaed439bb
lea esi, [r9 + 0xff0000]
shr esi, 0xa
or esi, 0xd800
nop word cs:[rax + rax]
mov edx, dword [0x141dca8d0]
imul edx, dword [0x141dca8d4]
imul rdx, rdx, 0x754e112f
shr rdx, 0x3e
or edx, 0xf2a74d02
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0x15134e4f
je 0x140082470
and r9d, 0x3ff
mov eax, dword [0x141dca8d8]
xor edx, edx
div dword [0x141dca8dc]
add eax, 0xd0d3adcc
and eax, 0x3e68a89
xor eax, 0x2cb511ea
movzx edx, r9w
cmp eax, 0x4e78b55a
jbe 0x1400824d7
lea eax, [rdx + 0xdc00]
mov word [rbx + 0x10], ax
or edx, 0xdc00
nop dword [rax]
mov eax, dword [0x141dca8e0]
xor eax, dword [0x141dca8e4]
imul r9d, eax, 0x47ce8623
mov word [rbx + 0x10], dx
mov eax, 1
cmp r9d, 0x5e5f3671
je 0x1400824e0
mov r10, r8
jmp 0x14008251a
xor eax, eax
mov dl, 1
nop
test dl, dl
je 0x140082510
mov r10, r8
mov esi, r9d
sub rcx, r10
add rcx, 3
mov rdx, 0xffffffffffffffff
cmovae rdx, rcx
mov r8d, dword [rbx + 0x18]
shr rdx, 2
xor ecx, ecx
cmp r8w, 2
cmovne ecx, r8d
movzx ecx, cx
add rcx, rax
lea rax, [rcx + rdx]
add rcx, rdx
inc rcx
cmp rax, 3
mov r15d, 4
cmovae r15, rcx
mov rax, r15
shr rax, 0x3e
jne 0x140082634
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], r10
lea r14, [r15 + r15]
mov eax, dword [0x141dca918]
imul eax, dword [0x141dca91c]
imul eax, eax, 0xac280610
add eax, 0xc28f1930
cmp eax, 0xdd20d595
ja 0x1400825da
mov r12d, dword [0x141dca920]
add r12d, dword [0x141dca924]
or r12d, 0x39501ce
add r12d, 0x5c252e51
and r12d, 0x9998a075
movzx eax, byte [0x141dd7ff8]
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400beea0
add rsp, 0x20
cmp r12d, 0xa8c1138c
jne 0x1400825f5
movzx eax, byte [0x141dd7ff8]
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400beea0
add rsp, 0x20
jmp 0x140082595
mov rcx, rax
test rax, rax
je 0x140082624
mov eax, dword [0x141dca928]
and eax, dword [0x141dca92c]
or eax, 0x200005c0
and eax, 0xfc008de3
xor eax, 0xe6e648fc
cmp eax, 0x748de28c
jae 0x14008269d
jmp 0x1400826d2
ud2
ud2
mov eax, dword [0x141dca908]
or eax, dword [0x141dca90c]
imul eax, eax, 0x19b9ee39
add eax, 0x3ba28816
or eax, 0xb827a45d
mov qword [r13 + 0x10], 0
cmp eax, 0x6b7a48e8
jae 0x140082670
mov qword [r13 + 0x10], 0
jmp 0x140082636
mov eax, dword [0x141dca910]
and eax, dword [0x141dca914]
add eax, 0xd69a245d
and eax, 0x5085bafc
imul rax, rax, 0x104a4dfd
shr rax, 0x3a
cmp eax, 0x4a1160d8
jae 0x140082670
jmp 0x140082c74
mov eax, dword [0x141dca930]
xor eax, dword [0x141dca934]
xor eax, 0xa5f13adf
imul eax, eax, 0xb8478b3c
add eax, 0x19da712d
mov word [rcx], si
mov qword [rdi], r15
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], 1
cmp eax, 0xb14dce89
jbe 0x1400826e6
mov word [rcx], si
mov qword [rdi], r15
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], 1
jmp 0x14008269d
mov qword [rbp - 0x20], r13
mov r11, qword [rbp - 8]
mov r10, qword [rbp - 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dca938]
or eax, dword [0x141dca93c]
xor eax, 0x9d46d6b9
imul rax, rax, 0x4e8d6433
shr rax, 0x3d
cmp eax, 0x6b9e5eb1
ja 0x140082700
mov rax, qword [rbx + 8]
mov qword [rbp - 0x18], rax
movzx r12d, word [rbx + 0x10]
movzx eax, word [rbx + 0x1a]
mov word [rbp + 6], ax
mov ebx, 1
xor esi, esi
mov r13d, 0xbc970bab
mov r14d, 0x8bbcf557
jmp 0x140082760
mov r12d, r9d
mov word [rcx + rbx*2], r15w
inc rbx
mov qword [rdi + 0x10], rbx
nop dword [rax]
test sil, sil
jne 0x140082760
test r11, r11
je 0x1400829b0
nop
mov eax, dword [0x141dca940]
imul eax, dword [0x141dca944]
add eax, 0xf2915ec0
or eax, 0x988616e4
shr eax, 1
imul rax, r14
shr rax, 0x3d
cmp eax, 0xe9fcd57a
je 0x140082770
test r12w, r12w
je 0x1400827b0
xor r9d, r9d
mov r15d, r12d
cmp rbx, qword [rdi]
jne 0x14008274d
jmp 0x140082a5f
mov eax, dword [0x141dca948]
sub eax, dword [0x141dca94c]
or eax, 0xb582d7cc
xor eax, 0xebbbdbc3
imul eax, eax, 0x23cbfe16
cmp eax, 0x637dbbaf
jb 0x1400827b0
cmp r11, qword [rbp - 0x18]
je 0x1400829b0
mov r12, r10
test sil, sil
jne 0x1400827e0
lea r10, [r11 + 1]
mov eax, dword [0x141dca950]
sub eax, dword [0x141dca954]
mov edx, 0xb4e21e6b
imul rax, rdx
shr rax, 0x3f
imul eax, eax, 0xbaa446b8
xor eax, 0xd49c8c70
cmp eax, 0xc5e2f84f
jb 0x1400827e9
movzx r15d, byte [r11]
nop dword [rax + rax]
mov eax, dword [0x141dca958]
xor edx, edx
div dword [0x141dca95c]
xor eax, 0x36275af7
imul rax, rax, 0x7c9a9c69
shr rax, 0x3e
imul eax, eax, 0x13de57f6
cmp eax, 0x674115dd
ja 0x140082820
test r15b, r15b
jns 0x140082a4d
mov eax, dword [0x141dca960]
xor edx, edx
div dword [0x141dca964]
nop word cs:[rax + rax]
mov eax, dword [0x141dca968]
sub eax, dword [0x141dca96c]
imul eax, eax, 0x4702d2ec
imul rax, rax, 0x7418efef
shr rax, 0x3e
or eax, 0xccb6b892
cmp eax, 0x7b134d4a
jb 0x140082870
mov r8d, r15d
and r8d, 0x1f
lea r10, [r11 + 2]
mov eax, r8d
shl eax, 6
movzx r9d, byte [r11 + 1]
mov edx, dword [0x141dca970]
imul edx, dword [0x141dca974]
or edx, 0x3b34fd37
xor edx, 0x6e39545e
imul edx, edx, 0xcbde7a8f
cmp edx, 0xf610406a
ja 0x1400828af
and r9d, 0x3f
cmp r15b, 0xdf
jbe 0x140082a47
mov eax, dword [0x141dca978]
or eax, dword [0x141dca97c]
add eax, 0xaaf6a2df
xor eax, 0x58835f
and eax, 0x41d8d3df
cmp eax, 0x6fc34b1d
je 0x1400828e4
mov qword [rbp - 8], r11
add r11, 3
movzx r10d, byte [r10]
shl r9d, 6
and r10d, 0x3f
mov eax, dword [0x141dca980]
xor edx, edx
div dword [0x141dca984]
xor eax, 0x7aeaf4cf
add eax, 0xe62f5428
cmp eax, 0xcc9ebbb0
ja 0x14008291a
or r9d, r10d
cmp r15b, 0xf0
jb 0x140082bef
mov r11, qword [rbp - 8]
movzx r15d, byte [r11 + 3]
add r11, 4
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and r15d, 0x3f
or r15d, r9d
mov r10, r12
nop dword [rax]
mov eax, dword [0x141dca988]
or eax, dword [0x141dca98c]
add eax, 0x25e0817b
xor eax, 0xc140c073
or eax, 0x2eae198c
cmp eax, 0x5eae922e
je 0x140082970
or r15d, r8d
cmp r15d, 0xffff
ja 0x140082c09
mov r10, r11
jmp 0x140082a4d
mov eax, dword [0x141dca990]
xor edx, edx
div dword [0x141dca994]
imul eax, eax, 0x9fdb2539
add eax, 0xe41de3de
and eax, 0x8845be27
cmp eax, 0xf45ddb5f
je 0x1400829b0
cmp r10w, 1
jne 0x140082c3a
mov eax, dword [0x141dca998]
xor eax, dword [str.H0U]
xor eax, 0xa6ef9e43
imul rax, r13
shr rax, 0x3d
cmp eax, 0x87673da2
je 0x1400829e0
mov rax, qword [rdi]
mov edx, dword [0x141dca9a0]
xor edx, dword [0x141dca9a4]
and edx, 0x52896a43
add edx, 0xbf995f7f
cmp edx, 0xc4ac8208
ja 0x140082a03
xor r11d, r11d
movzx edx, word [rbp + 6]
mov r15d, edx
mov r10d, 0
mov r8d, 0
cmp rbx, rax
jne 0x140082750
jmp 0x140082b54
or eax, r9d
mov r15d, eax
xor r9d, r9d
mov r11, r10
mov r10, r12
cmp rbx, qword [rdi]
jne 0x14008274d
mov eax, dword [0x141dca9a8]
xor edx, edx
div dword [0x141dca9ac]
mov r13, r10
mov r12, r15
nop word cs:[rax + rax]
mov eax, dword [0x141dca9b0]
and eax, dword [0x141dca9b4]
add eax, 0x91cd1fb6
imul rax, rax, 0x298ebea9
shr rax, 0x3b
xor eax, 0x72049c02
cmp eax, 0xca917fa2
ja 0x140082a80
mov rcx, qword [rbp - 0x18]
sub rcx, r11
mov eax, dword [0x141dca9b8]
xor edx, edx
div dword [0x141dca9bc]
xor eax, eax
test r9w, r9w
setne dl
mov r8d, dword [0x141dca9c0]
add r8d, dword [0x141dca9c4]
and r8d, 0x452b7960
imul r8d, r8d, 0x1398f821
imul r10, r8, 0x1cbd43ed
shr r10, 0x3c
mov r8, rcx
add r8, 3
mov r15, 0xffffffffffffffff
cmovb r8, r15
cmp r10d, 0xefdbc24b
ja 0x140082abd
shr r8, 2
mov al, dl
mov r10, r13
cmp r10w, 2
je 0x140082bb2
movzx ecx, r10w
add r8, rax
mov r15, r12
nop word cs:[rax + rax]
mov eax, dword [0x141dca9d0]
imul eax, dword [0x141dca9d4]
add eax, 0x5eec1d69
or eax, 0x7a9a5
cmp eax, 0xd3b45b36
je 0x140082b30
add r8, rcx
mov r12d, r9d
inc r8
sub rsp, 0x30
mov qword [rsp + 0x20], 2
mov r9d, 2
mov rcx, rdi
mov rdx, rbx
mov r13, rbx
mov rbx, r15
mov r15, r10
mov r14d, r12d
mov r12, rdi
mov rdi, r11
call fcn.1400faca0
mov r11, rdi
mov rdi, r12
mov r12d, r14d
mov r14d, 0x8bbcf557
mov r10, r15
mov r15, rbx
mov rbx, r13
mov r13d, 0xbc970bab
add rsp, 0x30
mov rcx, qword [rdi + 8]
jmp 0x140082750
add r8, rax
mov r15, r12
nop dword [rax + rax]
mov eax, dword [0x141dca9c8]
xor edx, edx
div dword [0x141dca9cc]
imul eax, eax, 0x1a99028
add eax, 0x9f0c188
xor eax, 0x1159e7c3
cmp eax, 0xfe704dcd
jae 0x140082bc0
mov r10w, 2
jmp 0x140082b51
shl r8d, 0xc
or r9d, r8d
mov r15d, r9d
mov r10, r12
cmp r15d, 0xffff
jbe 0x1400829a2
lea eax, [r15 + 0xff0000]
shr eax, 0xa
or eax, 0xd800
and r15d, 0x3ff
or r15d, 0xdc00
mov r9d, r15d
mov r15d, eax
cmp rbx, qword [rdi]
jne 0x14008274d
jmp 0x140082a5f
mov rax, qword [rdi + 0x10]
mov rcx, qword [rbp - 0x20]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rdi]
movups xmmword [rcx], xmm0
nop dword [rax]
mov eax, dword [0x141dca9d8]
mov ecx, dword [0x141dca9dc]
add eax, ecx
add eax, 0x35a6d4a0
or eax, 0x90458304
and eax, 0xb0458354
cmp eax, 0xfac680a7
ja 0x140082c50
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret