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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
mov rsi, qword [rsp + 0x1c8]
mov rdi, qword [rsp + 0x1c0]
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov eax, dword [r9 + 8]
test eax, eax
jle 0x14002bca9
mov r10, qword [r9]
mov r11, qword [r10]
test r11b, 1
jne 0x14002bccd
mov dword [rsp + 0x20], 0x27a
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c.inc
xor r15d, r15d
mov ecx, 3
xor edx, edx
mov r8d, 0x68
jmp 0x14002bef5
cmp dword [r9 + 0x10], 0
je 0x14002bcf8
mov dword [rsp + 0x20], 0x27e
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c.inc
xor r15d, r15d
mov ecx, 3
xor edx, edx
mov r8d, WSASetLastError
jmp 0x14002bef5
cmp dword [rdx + 0x10], 0
jne 0x14002bed6
mov qword [rsp + 0x48], rcx
movsxd rcx, dword [rdx + 8]
mov r12, rcx
sub r12, rax
mov r13, rax
cmovb r13, rcx
mov r15, qword [rdx]
test rcx, rcx
mov qword [rsp + 0x30], rsi
je 0x14002bda1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], rdi
xor ebx, ebx
xor ebp, ebp
nop word cs:[rax + rax]
mov rdi, qword [r10 + rbp*8]
mov r12, qword [r15 + rbp*8]
xor r14d, r14d
mov rsi, r12
sub rsi, rdi
sete r14b
neg r14
xor rdi, r12
xor rsi, r12
or rsi, rdi
xor rsi, r12
sar rsi, 0x3f
or rsi, 1
xor rbx, rsi
and rbx, r14
xor rbx, rsi
inc rbp
cmp r13, rbp
jne 0x14002bd40
mov rdi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
cmp ecx, eax
jae 0x14002bda7
mov r12, rax
sub r12, rcx
cmp r12, 3
ja 0x14002bdc3
xor ebp, ebp
mov r15, rcx
jmp 0x14002be30
xor ebx, ebx
cmp ecx, eax
jb 0x14002bd8b
cmp eax, ecx
jae 0x14002becd
cmp r12, 3
ja 0x14002be4e
xor esi, esi
mov r13, rax
jmp 0x14002beb0
mov r13, r12
and r13, 0xfffffffffffffffc
lea r15, [rcx + r13]
lea rsi, [r10 + rcx*8]
add rsi, 0x10
pxor xmm0, xmm0
xor r14d, r14d
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rsi + r14*8 - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [rsi + r14*8]
por xmm1, xmm2
add r14, 4
cmp r13, r14
jne 0x14002bdf0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq rbp, xmm0
cmp r12, r13
je 0x14002be3c
nop word cs:[rax + rax]
or rbp, qword [r10 + r15*8]
inc r15
cmp rax, r15
jne 0x14002be30
xor ecx, ecx
cmp rbp, 1
sbb rcx, rcx
not ecx
or ebx, ecx
jmp 0x14002becd
mov r14, rdi
mov rbp, r12
and rbp, 0xfffffffffffffffc
lea r13, [rax + rbp]
lea rsi, [r15 + rax*8]
add rsi, 0x10
pxor xmm0, xmm0
xor edi, edi
pxor xmm1, xmm1
movdqu xmm2, xmmword [rsi + rdi*8 - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [rsi + rdi*8]
por xmm1, xmm2
add rdi, 4
cmp rbp, rdi
jne 0x14002be6e
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
movq rsi, xmm0
cmp r12, rbp
mov rdi, r14
je 0x14002bebc
nop word cs:[rax + rax]
or rsi, qword [r15 + r13*8]
inc r13
cmp rcx, r13
jne 0x14002beb0
xor ecx, ecx
cmp rsi, 1
sbb rcx, rcx
xor ebx, 1
and ebx, ecx
xor ebx, 1
test ebx, ebx
mov rbx, qword [rsp + 0x48]
js 0x14002bf2b
mov dword [rsp + 0x20], 0x283
lea r9, str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c.inc
xor r15d, r15d
mov ecx, 3
xor edx, edx
mov r8d, WSASetLastError
call fcn.1400885a0
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x14002bf25
mov eax, r15d
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14029fd30
int3
mov r14d, dword [r8 + 8]
test r14d, r14d
jle 0x14002bf54
mov rsi, qword [r8]
mov ecx, r14d
cmp qword [rsi + rcx*8 - 8], 0
jne 0x14002bf62
lea ecx, [r14 - 1]
cmp r14d, 1
mov r14d, ecx
jg 0x14002bf37
jmp 0x14002c0af
je 0x14002c0af
mov r13, rdi
mov rsi, qword [r8]
jmp 0x14002bf65
mov r13, rdi
movsxd rcx, r14d
shl r14d, 6
mov rcx, qword [rsi + rcx*8 - 8]
xor ebx, ebx
test rcx, rcx
setne bl
or ebx, r14d
xor r14d, r14d
mov rsi, rcx
shr rsi, 0x20
cmove rsi, rcx
setne r14b
shl r14d, 5
mov rcx, rsi
shr rcx, 0x10
xor ebp, ebp
cmp rsi, 0x10000
cmovb rcx, rsi
setae bpl
shl ebp, 4
mov rdi, rcx
shr rdi, 8
xor esi, esi
cmp rcx, 0x100
cmovb rdi, rcx
setae sil
mov rcx, rdi
shr rcx, 4
xor r15d, r15d
cmp rdi, 0x10
setae r15b
cmovb rcx, rdi
mov rdi, rcx
shr rdi, 2
xor r12d, r12d
cmp rcx, 4
setae r12b
cmovb rdi, rcx
or r14d, ebx
or r14d, ebp
cmp rdi, 2
lea ecx, [r14 + rsi*8]
lea ecx, [rcx + r15*4]
lea ebp, [rcx + r12*2]
sbb ebp, 0xffffffff
add ebp, 0xffffffc0
mov rbx, qword [rsp + 0x48]
je 0x14002c0af
mov rdi, r13
mov rbx, r9
cmp byte [r13 + 0x28], 0
mov qword [rsp + 0x40], r8
mov rsi, qword [rsp + 0x30]
jne 0x14002c184
mov rcx, qword [rdi + 0x10]
mov r14, qword [rdi + 0x20]
cmp rcx, qword [rdi + 0x18]
jne 0x14002c16b
lea rax, [rcx + rcx*2]
shr rax, 1
test rcx, rcx
mov esi, 0x20
cmovne rsi, rax
cmp rsi, rcx
setbe al
mov rcx, rsi
shr rcx, 0x3d
setne cl
or cl, al
jne 0x14002c179
lea rax, [rsi*8]
mov rcx, qword [rdi + 8]
mov r15, rdi
mov rdi, rdx
mov rdx, rax
call fcn.1400987b0
mov rdx, rdi
mov rdi, r15
test rax, rax
je 0x14002c179
mov qword [rdi + 8], rax
mov qword [rdi + 0x18], rsi
mov rcx, qword [rdi + 0x10]
mov rsi, qword [rsp + 0x30]
jmp 0x14002c16f
and r11, 0xfffffffffffffffe
cmp eax, 1
je 0x14002c11f
mov edx, 1
cmp eax, 5
jb 0x14002c113
lea r8, [rax - 1]
mov r9, r8
and r9, 0xfffffffffffffffc
lea rdx, [r9 + 1]
movq xmm1, r11
pxor xmm0, xmm0
xor r11d, r11d
movdqu xmm2, xmmword [r10 + r11*8 + 8]
por xmm1, xmm2
movdqu xmm2, xmmword [r10 + r11*8 + 0x18]
por xmm0, xmm2
add r11, 4
cmp r9, r11
jne 0x14002c0dd
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq r11, xmm1
cmp r8, r9
je 0x14002c11f
or r11, qword [r10 + rdx*8]
inc rdx
cmp rax, rdx
jne 0x14002c113
test r11, r11
je 0x14002c152
mov rax, qword [rsp + 0x150]
xor rax, rsp
mov rcx, rax
call fcn.14029fd30
mov rcx, rbx
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140027920
mov dword [rbx + 0x10], 0
mov dword [rbx + 8], 0
mov r15d, 1
jmp 0x14002befa
mov rax, qword [rdi + 8]
mov qword [rax + rcx*8], r14
inc qword [rdi + 0x10]
jmp 0x14002c184
mov word [rdi + 0x28], 0x101
mov rsi, qword [rsp + 0x30]
mov r13, rdx
mov rcx, rdi
call fcn.140028b10
mov r14, rax
mov rcx, rdi
call fcn.140028b10
mov r12, rax
mov qword [rsp + 0x50], rax
test r14, r14
sete al
test r12, r12
sete cl
xor r15d, r15d
or cl, al
je 0x14002c1bc
xor ebx, ebx
jmp 0x14002c55e
test rsi, rsi
je 0x14002c1c5
xor ebx, ebx
jmp 0x14002c1db
mov rcx, rbx
mov rdx, rdi
call fcn.14002c590
mov rbx, rax
mov rsi, rax
test rax, rax
je 0x14002c1b5
mov eax, 6
mov qword [rsp + 0x38], rax
cmp ebp, 0x29f
ja 0x14002c222
mov eax, 5
mov qword [rsp + 0x38], rax
cmp ebp, 0xef
ja 0x14002c222
mov eax, 4
mov qword [rsp + 0x38], rax
cmp ebp, 0x4f
ja 0x14002c222
xor eax, eax
cmp ebp, 0x18
setae al
lea eax, [rax*2 + 1]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x20], rdi
mov rcx, r12
mov rdx, r13
mov r8, rsi
mov r9, rsi
call fcn.14002c600
xor r15d, r15d
test eax, eax
je 0x14002c55e
mov qword [rsp + 0x30], rbx
cmp dword [rsp + 0x38], 2
jb 0x14002c2d7
mov rcx, rdi
call fcn.140028b10
test rax, rax
je 0x14002c559
mov r13, rax
mov qword [rsp + 0x20], rdi
mov rcx, rax
mov rdx, r12
mov r8, r12
mov r9, rsi
call fcn.14002c600
test eax, eax
je 0x14002c559
mov rax, qword [rsp + 0x38]
lea r12d, [rax - 1]
mov ebx, 1
mov rcx, rdi
call fcn.140028b10
mov qword [rsp + rbx*8 + 0x50], rax
test rax, rax
je 0x14002c559
mov rdx, qword [rsp + rbx*8 + 0x48]
mov qword [rsp + 0x20], rdi
mov rcx, rax
mov r8, r13
mov r9, rsi
call fcn.14002c600
test eax, eax
je 0x14002c559
inc rbx
mov eax, ebx
mov ecx, r12d
shr eax, cl
test eax, eax
je 0x14002c293
dec ebp
xor r13d, r13d
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
mov r12d, ebp
jmp 0x14002c2fa
sub r12, 1
jb 0x14002c53e
test r12d, r12d
js 0x14002c31c
movsxd rdx, dword [r9 + 8]
mov rax, r12
shr rax, 6
cmp rax, rdx
jae 0x14002c31c
mov r8, qword [r9]
mov rax, qword [r8 + rax*8]
bt rax, r12
jb 0x14002c34b
test r13b, 1
je 0x14002c2f0
mov qword [rsp + 0x20], rdi
mov rcx, r14
mov rdx, r14
mov r8, r14
mov r9, rsi
call fcn.14002c600
mov r9, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
test eax, eax
jne 0x14002c2f0
jmp 0x14002c551
cmp dword [rsp + 0x38], 2
jb 0x14002c49f
test r12, r12
je 0x14002c49f
mov rbx, rsi
mov r9d, r12d
and r9d, 0x7fffffff
xor r15d, r15d
mov rcx, r9
mov eax, 1
sub rcx, 1
jb 0x14002c3a0
mov r10, rcx
shr r10, 6
cmp r10, rdx
jae 0x14002c3a0
mov rax, qword [r8 + r10*8]
xor r15d, r15d
bt rax, rcx
setb r15b
lea eax, [r15*2 + 1]
cmp dword [rsp + 0x38], 3
jb 0x14002c48e
cmp r9d, 2
jb 0x14002c48e
lea rcx, [r9 - 2]
mov r10, rcx
shr r10, 6
cmp r10, rdx
jae 0x14002c3df
mov r10, qword [r8 + r10*8]
bt r10, rcx
jae 0x14002c3df
mov cl, 2
sub cl, r15b
shl eax, cl
or eax, 1
mov r15d, 2
cmp dword [rsp + 0x38], 4
jb 0x14002c48e
cmp r9d, 3
jb 0x14002c48e
lea rcx, [r9 - 3]
mov r10, rcx
shr r10, 6
cmp r10, rdx
jae 0x14002c420
mov r10, qword [r8 + r10*8]
bt r10, rcx
jae 0x14002c420
xor r15b, 3
mov ecx, r15d
shl eax, cl
or eax, 1
mov r15d, 3
cmp dword [rsp + 0x38], 5
jb 0x14002c48e
cmp r9d, 4
jb 0x14002c48e
lea rcx, [r9 - 4]
mov r10, rcx
shr r10, 6
cmp r10, rdx
jae 0x14002c457
mov r10, qword [r8 + r10*8]
bt r10, rcx
jae 0x14002c457
mov cl, 4
sub cl, r15b
shl eax, cl
or eax, 1
mov r15d, 4
cmp dword [rsp + 0x38], 6
jb 0x14002c48e
cmp r9d, 5
jb 0x14002c48e
add r9, 0xfffffffffffffffb
mov rcx, r9
shr rcx, 6
cmp rcx, rdx
jae 0x14002c48e
mov rcx, qword [r8 + rcx*8]
bt rcx, r9
jae 0x14002c48e
mov cl, 5
sub cl, r15b
shl eax, cl
or eax, 1
mov r15d, 5
sar eax, 1
cdqe
test r13b, 1
je 0x14002c505
test r15d, r15d
jns 0x14002c4b5
jmp 0x14002c4e1
mov rbx, rsi
xor eax, eax
mov r15d, 0
mov ebp, 0
test r13b, 1
je 0x14002c508
mov r13, rax
mov esi, 0xffffffff
mov qword [rsp + 0x20], rdi
mov rcx, r14
mov rdx, r14
mov r8, r14
mov r9, rbx
call fcn.14002c600
test eax, eax
je 0x14002c556
inc esi
cmp r15d, esi
jne 0x14002c4bd
mov rax, r13
mov r8, qword [rsp + rax*8 + 0x50]
mov qword [rsp + 0x20], rdi
mov rcx, r14
mov rdx, r14
mov rsi, rbx
mov r9, rbx
call fcn.14002c600
mov ebp, r15d
test eax, eax
jne 0x14002c51d
jmp 0x14002c556
mov ebp, r15d
mov rdx, qword [rsp + rax*8 + 0x50]
mov rcx, r14
call fcn.140027620
test rax, rax
mov rsi, rbx
je 0x14002c556
cmp r12d, ebp
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
je 0x14002c53e
not ebp
add ebp, r12d
mov r13b, 1
jmp 0x14002c2eb
mov rdx, r14
mov r8, rsi
mov r9, rdi
call fcn.14002c7a0
mov r15d, eax
jmp 0x14002c55e
xor r15d, r15d
jmp 0x14002c55e
xor r15d, r15d
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
call fcn.14002c8a0
cmp byte [rdi + 0x28], 0
jne 0x14002befa
mov rax, qword [rdi + 8]
mov rcx, qword [rdi + 0x10]
lea rdx, [rcx - 1]
mov qword [rdi + 0x10], rdx
mov rax, qword [rax + rcx*8 - 8]
mov qword [rdi + 0x20], rax
jmp 0x14002befa