Function at 0x1400a9b60
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r14d, edx
mov rax, qword [0x140165040]
xor rax, rsp
mov qword [rsp + 0x70], rax
test r14b, 0x3f
je 0x1400a9bb0
mov dword [rsp + 0x20], 0x3a2
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsa_rsa_impl.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x44
call fcn.1400bacd0
jmp 0x1400aa004
cmp r14d, 0x3ffffff
jl 0x1400a9be1
mov dword [rsp + 0x20], 0x3c7
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsa_rsa_impl.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x80
call fcn.1400bacd0
jmp 0x1400aa004
mov r12, r9
mov r13, r8
mov r15, rcx
mov rbx, qword [rsp + 0xf0]
mov eax, dword [r8 + 8]
test rax, rax
je 0x1400a9c31
mov rdx, qword [r13]
mov rcx, qword [rdx]
xor rcx, 3
cmp eax, 2
jl 0x1400a9c2c
mov r8d, 1
nop word cs:[rax + rax]
or rcx, qword [rdx + r8*8]
inc r8
cmp rax, r8
jne 0x1400a9c20
test rcx, rcx
je 0x1400a9c41
lea edi, [r14 + r14*4]
cmp byte [rbx + 0x28], 0
jne 0x1400a9cc8
jmp 0x1400a9c5b
cmp dword [r13 + 0x10], 0
lea eax, [r14*8]
lea edi, [r14 + r14*4]
cmove edi, eax
cmp byte [rbx + 0x28], 0
jne 0x1400a9cc8
mov rcx, qword [rbx + 0x10]
mov rsi, qword [rbx + 0x20]
cmp rcx, qword [rbx + 0x18]
jne 0x1400a9cb2
mov ebp, edi
lea rax, [rcx + rcx*2]
shr rax, 1
test rcx, rcx
mov edi, 0x20
cmovne rdi, rax
cmp rdi, rcx
jbe 0x1400a9cc0
mov rax, rdi
shr rax, 0x3d
jne 0x1400a9cc0
lea rdx, [rdi*8]
mov rcx, qword [rbx + 8]
call fcn.1400ae2f0
test rax, rax
je 0x1400a9cc0
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 0x10]
mov edi, ebp
jmp 0x1400a9cb6
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], rsi
inc qword [rbx + 0x10]
jmp 0x1400a9cc8
mov word [rbx + 0x28], 0x101
mov edi, ebp
mov rcx, rbx
call fcn.140084300
test rax, rax
je 0x1400a9fe3
mov qword [rsp + 0x40], rax
test r15, r15
sete al
xor ecx, ecx
cmp qword [rsp + 0xe0], 0
setne cl
sete dl
or dl, al
mov byte [rsp + 0x3b], dl
mov dword [rsp + 0x3c], 0
mov rax, r15
neg rax
mov eax, 0
sbb eax, eax
or eax, ecx
mov dword [rsp + 0x4c], eax
cmp edi, 2
mov eax, 1
cmovl edi, eax
dec edi
xor ebp, ebp
jmp 0x1400a9d4d
movsxd r9, dword [rax + 8]
mov r8, qword [rax]
movsxd rdx, dword [r15 + 8]
mov rcx, qword [r15]
call fcn.140083f40
mov ecx, eax
neg ecx
test esi, esi
cmove ecx, eax
test ecx, ecx
jg 0x1400a9e2c
inc ebp
mov rcx, r15
mov edx, r14d
xor r8d, r8d
mov r9d, 1
call fcn.14008e1d0
test eax, eax
je 0x1400a9fe3
mov r8, qword [rsp + 0xf8]
test r8, r8
je 0x1400a9d8e
mov rax, qword [r8 + 8]
xor esi, esi
xor ecx, ecx
mov edx, ebp
call qword [0x140191008]
test eax, eax
je 0x1400a9fe5
test r12, r12
je 0x1400a9e00
mov rcx, qword [rsp + 0x40]
mov rdx, r15
mov r8, r12
mov r9, rbx
call fcn.14008b930
test eax, eax
je 0x1400a9fe3
cmp qword [rsp + 0xe8], 0
je 0x1400a9d4b
mov rax, qword [rsp + 0x40]
mov esi, dword [rax + 0x10]
mov rcx, qword [rsp + 0xe8]
cmp esi, dword [rcx + 0x10]
jne 0x1400a9df3
movsxd r9, dword [rcx + 8]
mov r8, qword [rcx]
movsxd rdx, dword [rax + 8]
mov rcx, qword [rax]
call fcn.140083f40
mov ecx, eax
neg ecx
test esi, esi
cmove ecx, eax
test ecx, ecx
jg 0x1400a9e00
jmp 0x1400a9d4b
test esi, esi
jne 0x1400a9d4b
nop dword [rax + rax]
mov ecx, dword [rsp + 0x4c]
cmp byte [rsp + 0x3b], 0
jne 0x1400a9d43
mov esi, dword [r15 + 0x10]
mov rax, qword [rsp + 0xe0]
cmp esi, dword [rax + 0x10]
je 0x1400a9d27
test esi, esi
jne 0x1400a9d4b
mov dword [rsp + 0x48], edi
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], r12
mov r8d, dword [r15 + 8]
xor ebx, ebx
cmp r8d, 0x11
setge bl
shl ebx, 9
lea rax, [rbx + 0x200]
mov qword [rsp + 0x60], rax
inc ebp
xor rbx, 0xfffffffffffffe01
mov r13b, 1
mov edi, 2
nop word [rax + rax]
lea rax, [0x14014f370]
movzx esi, word [rax + rdi*2 - 2]
mov rcx, r15
mov edx, esi
mov r12, r8
call fcn.140085e60
mov r8, r12
test ax, ax
je 0x1400a9eae
cmp rdi, qword [rsp + 0x60]
setb r13b
lea rax, [rbx + rdi]
inc rax
inc rdi
cmp rax, 2
jne 0x1400a9e70
mov si, 0xaaaa
test r13b, 1
mov rbx, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x58]
mov r13, qword [rsp + 0x50]
mov edi, dword [rsp + 0x48]
je 0x1400a9f08
movzx eax, si
test r8, r8
je 0x1400a9eef
mov rcx, qword [r15]
xor rax, qword [rcx]
cmp r8d, 2
jl 0x1400a9eef
mov edx, 1
or rax, qword [rcx + rdx*8]
inc rdx
cmp r8, rdx
jne 0x1400a9ee3
test rax, rax
jne 0x1400a9fa3
test si, si
je 0x1400a9f08
cmp dword [r15 + 0x10], 0
jne 0x1400a9fa3
mov dword [rsp + 0x6c], 0xaaaaaaaa
lea rcx, [0x14017e408]
lea rdx, [0x1400839c0]
call fcn.1400ba2e0
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
mov rdx, r15
lea r8, [0x14017e410]
call fcn.1400829c0
test eax, eax
je 0x1400a9fe3
lea rcx, [rsp + 0x6c]
mov rdx, rsi
mov r8, r13
mov r9, rbx
call fcn.14008a300
test eax, eax
je 0x1400a9fe3
cmp dword [rsp + 0x6c], 0
je 0x1400a9fa3
mov dword [rsp + 0x68], 0xaaaaaaaa
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
lea rcx, [rsp + 0x68]
mov rdx, r15
xor r8d, r8d
mov r9, rbx
call fcn.14008d0f0
test eax, eax
je 0x1400a9fe3
cmp dword [rsp + 0x68], 0
jne 0x1400aa049
mov edx, dword [rsp + 0x3c]
cmp edx, edi
je 0x1400aa024
inc edx
mov r8, qword [rsp + 0xf8]
test r8, r8
mov dword [rsp + 0x3c], edx
je 0x1400a9fcf
mov rax, qword [r8 + 8]
mov ecx, 2
call qword [0x140191008]
jmp 0x1400a9fd4
mov eax, 1
mov esi, 0
test eax, eax
jne 0x1400a9d4d
jmp 0x1400a9fe5
xor esi, esi
cmp byte [rbx + 0x28], 0
jne 0x1400aa004
mov rax, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
lea rdx, [rcx - 1]
mov qword [rbx + 0x10], rdx
mov rax, qword [rax + rcx*8 - 8]
mov qword [rbx + 0x20], rax
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1400fb950
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x20], 0x40c
lea r9, str....._third_party_boringssl_srccrypto_fipsmodule_rsa_rsa_impl.c
xor esi, esi
mov ecx, 4
xor edx, edx
mov r8d, 0x8d
call fcn.1400bacd0
jmp 0x1400a9fe5
mov esi, 1
jmp 0x1400a9fe5