Function at 0x14003ca90
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
test rdx, rdx
je 0x14003cf0d
mov rax, rdx
shr rax, 0x3d
jne 0x14003cf25
mov r14, rcx
mov rax, rdx
shr rax, 0x20
mov rcx, rdx
shl rcx, 0x20
lea r10d, [r8 - 0x20]
test rax, rax
cmovne rcx, rdx
cmovne r10d, r8d
mov rax, rcx
shr rax, 0x30
mov rdx, rcx
shl rdx, 0x10
lea r8d, [r10 - 0x10]
test rax, rax
cmovne rdx, rcx
cmovne r8d, r10d
mov rax, rdx
shr rax, 0x38
mov rcx, rdx
shl rcx, 8
lea r10d, [r8 - 8]
test rax, rax
cmovne rcx, rdx
cmovne r10d, r8d
mov rax, rcx
shr rax, 0x3c
mov r8, rcx
shl r8, 4
lea r11d, [r10 - 4]
test rax, rax
cmovne r8, rcx
cmovne r11d, r10d
mov rcx, r8
shr rcx, 0x3e
lea rax, [r8*4]
lea edx, [r11 - 2]
test rcx, rcx
cmovne rax, r8
cmovne edx, r11d
xor ecx, ecx
test rax, rax
setns cl
sub edx, ecx
mov ecx, 0xffffffa0
sub ecx, edx
movsx ecx, cx
lea ecx, [rcx + rcx*4]
shl ecx, 4
add ecx, 0x153b0
movsxd rcx, ecx
imul rcx, rcx, 0x7b4dc993
mov r8, rcx
shr r8, 0x3f
sar rcx, 0x2a
add ecx, r8d
movsxd rdi, ecx
cmp edi, 0x51
jae 0x14003cef9
test rax, rax
setns cl
shl rax, cl
mov r15, qword [rbp + 0x70]
shl rdi, 4
lea r10, [0x140138a80]
mov r8, qword [rdi + r10]
mov rcx, rax
shr rcx, 0x20
mov eax, eax
mov r11d, r8d
shr r8, 0x20
mov rsi, r8
imul rsi, rcx
imul r8, rax
imul rcx, r11
imul r11, rax
shr r11, 0x20
mov ebx, ecx
add rbx, r11
mov eax, r8d
add rax, rbx
sub rax, 0xffffffff80000000
shr rcx, 0x20
add rcx, rsi
shr r8, 0x20
add r8, rcx
shr rax, 0x20
add dx, word [rdi + r10 + 8]
add rax, r8
mov ecx, 0xffffffc0
sub ecx, edx
movzx esi, cx
mov r11d, esi
and r11d, 0x3f
mov rdx, rax
mov ecx, r11d
shr rdx, cl
mov ebx, 1
shl rbx, cl
movzx edi, word [rdi + r10 + 0xa]
lea rcx, [rbx - 1]
mov r12, rax
mov qword [rbp - 0x10], rcx
and r12, rcx
je 0x14003cc5f
mov r8, r15
cmp edx, 0x2710
jae 0x14003cc7f
cmp edx, 0x64
jae 0x14003cca5
xor ecx, ecx
cmp edx, 0xa
setae cl
lea r15d, [rcx + rcx*8]
inc r15d
jmp 0x14003cd05
cmp r15, 0xa
ja 0x14003cc73
lea rcx, [0x140139148]
cmp dword [rcx + r15*4 - 4], edx
jbe 0x14003cc3b
mov qword [r14], 0
jmp 0x14003cebf
cmp edx, 0xf4240
jae 0x14003ccc3
cmp edx, 0x186a0
setb cl
mov r10d, 0x2710
mov r15d, 0x186a0
cmovb r15d, r10d
xor cl, 5
jmp 0x14003cd05
cmp edx, 0x3e8
setb cl
mov r10d, 0x64
mov r15d, 0x3e8
cmovb r15d, r10d
xor cl, 3
jmp 0x14003cd05
cmp edx, 0x5f5e100
jae 0x14003cce9
cmp edx, 0x989680
setb cl
mov r10d, 0xf4240
mov r15d, 0x989680
cmovb r15d, r10d
xor cl, 7
jmp 0x14003cd05
cmp edx, 0x3b9aca00
setb cl
mov r10d, 0x5f5e100
mov r15d, 0x3b9aca00
cmovb r15d, r10d
xor cl, 9
movzx ecx, cl
mov r10d, ecx
sub r10d, edi
inc r10d
movzx edi, word [rbp + 0x78]
cmp r10w, di
jle 0x14003cdb2
mov qword [rbp], rbx
mov qword [rbp - 8], r14
movsx rax, r10w
mov ebx, r10d
sub ebx, edi
movsx rdi, di
sub rax, rdi
cmp rax, r8
movsx rdi, bx
cmovae rdi, r8
neg rcx
neg r8
mov ebx, 1
mov r14d, 0xcccccccd
nop word cs:[rax + rax]
lea r13, [r8 + rbx]
mov eax, edx
xor edx, edx
div r15d
cmp r13, 1
je 0x14003ced1
add al, 0x30
mov byte [r9 + rbx - 1], al
cmp rdi, rbx
je 0x14003cdf4
lea rax, [rcx + rbx]
cmp rax, 1
je 0x14003ce37
mov eax, r15d
imul rax, r14
shr rax, 0x23
inc rbx
cmp r15d, 0xa
mov r15d, eax
jae 0x14003cd60
lea rcx, str.librarycore_src_num_flt2dec_strategygrisu.rs
call fcn.14003ca50
movabs rcx, 0xcccccccccccccccd
mul rcx
shr rdx, 3
mov eax, r15d
mov ecx, r11d
shl rax, cl
mov qword [rsp + 0x40], rbx
mov word [rsp + 0x28], di
mov word [rsp + 0x20], r10w
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rax
mov rcx, r14
mov rdx, r9
xor r9d, r9d
jmp 0x14003ceba
mov eax, edx
mov ecx, r11d
shl rax, cl
add rax, r12
mov edx, r15d
shl rdx, cl
mov rcx, qword [rbp]
mov qword [rsp + 0x40], rcx
movzx ecx, word [rbp + 0x78]
mov word [rsp + 0x28], cx
mov word [rsp + 0x20], r10w
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rax
mov rcx, qword [rbp - 8]
mov rdx, r9
mov r8, qword [rbp + 0x70]
jmp 0x14003ceb7
dec esi
and esi, 0x3f
mov eax, 1
mov r14, qword [rbp - 8]
mov r8, qword [rbp + 0x70]
mov r15, qword [rbp - 0x10]
nop dword [rax]
mov rdx, rax
mov ecx, esi
shr rdx, cl
test rdx, rdx
jne 0x14003cc73
cmp rbx, r8
jae 0x14003cee4
add r12, r12
lea rdx, [r12 + r12*4]
mov r12, rdx
and r12, r15
add rax, rax
lea rax, [rax + rax*4]
mov ecx, r11d
shr rdx, cl
add dl, 0x30
mov byte [r9 + rbx], dl
inc rbx
cmp rdi, rbx
jne 0x14003ce50
mov qword [rsp + 0x40], rax
mov rax, qword [rbp]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r12
movzx eax, word [rbp + 0x78]
mov word [rsp + 0x28], ax
mov word [rsp + 0x20], r10w
mov rcx, r14
mov rdx, r9
mov r9, rdi
call fcn.14003cf40
nop
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov rcx, qword [rbp + 0x70]
mov rdx, rcx
call fcn.140038810
lea rax, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov rcx, rbx
mov rdx, r8
mov r8, rax
call fcn.140038810
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x51
mov rcx, rdi
call fcn.140038810
lea rcx, [0x1401387ff]
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x1c
call fcn.1400396c0
lea rcx, str.assertion_failed:_d.mant____1____61_
lea r8, str.librarycore_src_num_flt2dec_strategygrisu.rs
mov edx, 0x24
call fcn.1400396c0
int3