Function at 0x14017fc90
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov qword [rsp + 0x48], r8
mov rax, qword [rdx]
test rax, rax
je 0x140180126
mov r15, rcx
mov rcx, rax
shr rcx, 0x3d
jne 0x140180140
mov qword [rsp + 0x50], r9
test r9, r9
je 0x14018015a
mov rcx, rax
shr rcx, 0x20
mov rbp, rax
shl rbp, 0x20
mov edx, dword [rdx + 0x18]
test rcx, rcx
cmovne rbp, rax
lea ecx, [rdx - 0x20]
cmovne ecx, edx
mov rdx, rbp
shr rdx, 0x30
mov rax, rbp
shl rax, 0x10
test rdx, rdx
cmovne rax, rbp
lea edx, [rcx - 0x10]
cmovne edx, ecx
mov rbp, rax
shr rbp, 0x38
mov rcx, rax
shl rcx, 8
test rbp, rbp
cmovne rcx, rax
lea eax, [rdx - 8]
cmovne eax, edx
mov rdx, rcx
shr rdx, 0x3c
mov rbp, rcx
shl rbp, 4
test rdx, rdx
cmovne rbp, rcx
lea ecx, [rax - 4]
cmovne ecx, eax
mov rax, rbp
shr rax, 0x3e
lea rdx, [rbp*4]
test rax, rax
cmovne rdx, rbp
lea eax, [rcx - 2]
cmovne eax, ecx
mov rcx, rdx
not rcx
shr rcx, 0x3f
mov rsi, rdx
shl rsi, cl
sar rdx, 0x3f
not edx
add edx, eax
mov eax, 0xffffffa0
sub eax, edx
cwde
lea eax, [rax + rax*4]
shl eax, 4
add eax, 0x153b0
cdqe
imul rax, rax, 0x7b4dc993
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x2a
add eax, ecx
movsxd rcx, eax
cmp ecx, 0x51
jae 0x140180113
movzx r12d, word [rsp + 0xd0]
shl rcx, 4
lea r10, [0x1402ebb80]
mov rdi, qword [rcx + r10]
movzx r11d, word [rcx + r10 + 0xa]
mov rbx, rsi
shr rbx, 0x20
mov esi, esi
mov eax, edi
shr rdi, 0x20
mov r14, rdi
imul r14, rbx
imul rdi, rsi
imul rbx, rax
imul rax, rsi
shr rax, 0x20
mov ebp, ebx
add rbp, rax
mov r9d, edi
add r9, rbp
sub r9, 0xffffffff80000000
shr rbx, 0x20
add rbx, r14
shr rdi, 0x20
add rdi, rbx
shr r9, 0x20
add dx, word [rcx + r10 + 8]
add r9, rdi
mov r14d, 0xffffffc0
sub r14d, edx
mov r10d, r14d
and r10d, 0x3f
mov rdx, r9
mov ecx, r10d
shr rdx, cl
mov ebp, 1
shl rbp, cl
cmp edx, 0x2710
jae 0x14017fe56
cmp edx, 0x64
jae 0x14017fe75
xor ecx, ecx
cmp edx, 9
seta cl
lea ebx, [rcx + rcx*8]
add ebx, 1
jmp 0x14017fec3
cmp edx, 0xf4240
jae 0x14017fe8c
cmp edx, 0x186a0
mov eax, 0x2710
mov ebx, 0x186a0
cmovb ebx, eax
mov cl, 5
jmp 0x14017fec0
cmp edx, 0x3e8
mov eax, 0x64
mov ebx, 0x3e8
cmovb ebx, eax
mov cl, 3
jmp 0x14017fec0
cmp edx, 0x5f5e100
jae 0x14017feab
cmp edx, 0x989680
mov eax, 0xf4240
mov ebx, 0x989680
cmovb ebx, eax
mov cl, 7
jmp 0x14017fec0
cmp edx, 0x3b9aca00
mov eax, 0x5f5e100
mov ebx, 0x3b9aca00
cmovb ebx, eax
mov cl, 9
sbb cl, 0
movzx ecx, cl
mov r13d, ecx
sub r13d, r11d
add r13d, 1
cmp r13w, r12w
jle 0x14017ff86
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], rbp
lea r8, [rbp - 1]
and r9, r8
movsx rax, r13w
mov edi, r13d
sub edi, r12d
movsx rbp, r12w
sub rax, rbp
mov rbp, qword [rsp + 0x50]
cmp rax, rbp
movsx r12, di
cmovae r12, rbp
movzx edi, r14w
lea r14, [r12 - 1]
xor r11d, r11d
mov r15d, 0xcccccccd
mov rsi, qword [rsp + 0x48]
nop word cs:[rax + rax]
nop dword [rax]
mov eax, edx
xor edx, edx
div ebx
cmp rbp, r11
je 0x1401800e9
add al, 0x30
mov byte [rsi + r11], al
cmp r14, r11
je 0x14017ffda
cmp rcx, r11
je 0x140180026
add r11, 1
mov eax, ebx
imul rax, r15
shr rax, 0x23
cmp ebx, 0xa
mov ebx, eax
jae 0x14017ff30
lea rcx, str.attempt_to_divide_by_zero
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x19
call fcn.14019e390
ud2
movabs rcx, 0xcccccccccccccccd
mov rax, r9
mul rcx
shr rdx, 3
mov eax, ebx
mov ecx, r10d
shl rax, cl
mov qword [rsp + 0x40], rbp
mov word [rsp + 0x28], r12w
mov word [rsp + 0x20], r13w
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rax
mov rcx, r15
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
xor r9d, r9d
call fcn.140180180
mov rax, r15
jmp 0x1401800d8
mov eax, edx
mov ecx, r10d
shl rax, cl
add rax, r9
mov edx, ebx
shl rdx, cl
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x40], rcx
movzx ecx, word [rsp + 0xd0]
mov word [rsp + 0x28], cx
mov word [rsp + 0x20], r13w
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rax
mov rsi, qword [rsp + 0x58]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
mov r8, rbp
jmp 0x1401800bf
add edi, 0xffffffff
and edi, 0x3f
lea rdx, [r11 + 1]
cmp r11, rbp
mov rax, rdx
cmovb rax, rbp
mov ebx, 1
nop
mov rbp, rbx
mov ecx, edi
shr rbp, cl
test rbp, rbp
jne 0x1401800cc
cmp rax, rdx
je 0x1401800fd
add r9, r9
lea rsi, [r9 + r9*4]
add rbx, rbx
lea rbx, [rbx + rbx*4]
mov r9, rsi
and r9, r8
mov ecx, r10d
shr rsi, cl
add sil, 0x30
mov rcx, qword [rsp + 0x48]
mov byte [rcx + rdx], sil
add rdx, 1
cmp r12, rdx
jne 0x140180040
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r9
movzx eax, word [rsp + 0xd0]
mov word [rsp + 0x28], ax
mov word [rsp + 0x20], r13w
mov rsi, qword [rsp + 0x58]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
mov r9, r12
call fcn.140180180
mov rax, rsi
jmp 0x1401800d8
mov rax, qword [rsp + 0x58]
mov qword [rax], 0
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov rcx, rbp
mov rdx, rbp
call fcn.14019e3e0
ud2
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.14019e3e0
ud2
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x51
call fcn.14019e3e0
ud2
lea rcx, [0x1402eb89f]
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x1c
call fcn.14019e390
ud2
lea rcx, str.assertion_failed:_d.mant____1____61_
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x24
call fcn.14019e390
ud2
lea rcx, str.assertion_failed:__buf.is_empty__
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x21
call fcn.14019e390
ud2