Function at 0x140170f10
Capabilities:
Decode data using base64 via dword translation table
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rdi
push r13
push r15
sub rsp, 0x48
mov rdi, qword [rdx + 0x20]
mov r15, r8
inc rdi
mov rbx, rdx
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r13, rax
test rax, rax
jne 0x140170f4d
add rsp, 0x48
pop r15
pop r13
pop rdi
pop rbx
ret
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x40], rsi
mov rsi, qword [rbx + 0x20]
lea rax, [rsi + 1]
cmp rdi, rax
jb 0x140170fbb
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x140170f75
mov rdx, qword [rdx + 8]
add rdx, qword [rbx + 0x18]
mov r8, rsi
mov rcx, r13
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r13], 0
cmp qword [rbx + 0x20], 0
je 0x140170fbb
mov ecx, 0x1c
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x140170fbb
mov ecx, 0x1a
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
mov rcx, rbx
test rax, rax
jne 0x140170fcb
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor al, al
jmp 0x1401714f8
lea r9, str.CERTIFICATE
mov edx, 0x1c
lea r8, str._____BEGIN__s_____
call fcn.1401aee50
lea r9, str.CERTIFICATE
mov edx, 0x1a
lea r8, str._____END__s_____
mov rcx, rsi
call fcn.1401aee50
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rdx, rsi
mov rcx, r13
mov rbp, rax
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rcx, rsi
mov rdi, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test rbp, rbp
je 0x140170fbb
test rdi, rdi
je 0x140170fbb
lea rbx, [rbp + 0x1c]
mov qword [rsp + 0x30], r14
cmp rbx, rdi
jae 0x140171547
lfence
sub rdi, rbx
lea rcx, [rdi + 1]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r14, rax
test rax, rax
je 0x140171547
mov qword [rsp + 0x38], r12
lfence
mov r9, rdi
lea rdx, [rdi + 1]
mov r8, rbx
mov rcx, rax
call fcn.1401aedb0
lea rax, [rsp + 0x70]
mov byte [r14 + rdi], 0
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x70], 0
mov rdx, rdi
mov rcx, r14
call fcn.14014fb30
test al, al
jne 0x1401714d7
mov rsi, qword [rsp + 0x70]
mov rcx, r15
lea rdx, [rsi + 1]
call fcn.14015f4a0
test eax, eax
je 0x1401714d7
mov rax, qword [r15 + 8]
mov rbx, rdi
test rax, rax
jne 0x1401710de
xor r12d, r12d
mov rax, rsi
jmp 0x1401710eb
mov r12, qword [rax + 8]
mov rax, rsi
add r12, qword [r15 + 0x18]
jne 0x1401710f4
test rax, rax
jne 0x1401714d7
xor ecx, ecx
mov qword [rsp + 0x70], rcx
cmp rdi, 0xffffffffffffffff
jne 0x140171110
lfence
mov rbx, rdi
inc rbx
cmp byte [r14 + rbx], cl
jne 0x140171107
lea rax, [rbx + r14]
cmp rax, r14
jb 0x1401714d7
lea rax, [rbx + 3]
shr rax, 2
lea rdx, [rax + rax*2]
cmp rsi, rdx
jae 0x14017116d
mov rcx, rbx
test rbx, rbx
je 0x140171144
cmp byte [r14 + rcx - 1], 0x3d
jne 0x140171144
sub rcx, 1
jne 0x140171136
mov rax, rcx
and eax, 3
jbe 0x1401714d7
shr rcx, 2
lea rdx, [rcx*2 - 1]
add rdx, rax
add rdx, rcx
cmp rsi, rdx
jb 0x1401714d7
xor ecx, ecx
test r12, r12
je 0x14017150d
lea rax, [rsi + r12]
cmp rax, r12
jbe 0x14017150d
mov edi, ecx
mov esi, ecx
mov rax, rcx
mov r15, rcx
test rbx, rbx
je 0x1401714ce
movabs rbp, 0x100002600
movabs rdx, 0xffffffc07ff1
mov r11d, ecx
mov r9d, ecx
mov r8d, ecx
mov r10d, ecx
cmp rax, rbx
jae 0x14017141a
lfence
movzx r10d, byte [rax + r14]
inc rax
cmp r10d, 0x41
jb 0x1401711d6
cmp r10b, 0x5a
jbe 0x140171214
lea ecx, [r10 - 0x61]
cmp cl, 0x19
jbe 0x140171214
lea ecx, [r10 - 0x2f]
cmp cl, 0xa
jbe 0x140171214
cmp r10b, 0x2b
je 0x140171214
cmp r10b, 0x3d
je 0x14017120f
cmp r10b, 0x20
ja 0x140171200
bt rbp, r10
jb 0x140171205
mov edi, 1
cmp rax, rbx
jb 0x1401711c2
jmp 0x14017132f
mov esi, 1
cmp rax, rbx
jae 0x14017132f
nop dword [rax]
movzx r8d, byte [rax + r14]
inc rax
cmp r8d, 0x41
jb 0x140171234
cmp r8b, 0x5a
jbe 0x140171272
lea ecx, [r8 - 0x61]
cmp cl, 0x19
jbe 0x140171272
lea ecx, [r8 - 0x2f]
cmp cl, 0xa
jbe 0x140171272
cmp r8b, 0x2b
je 0x140171272
cmp r8b, 0x3d
je 0x14017126d
cmp r8b, 0x20
ja 0x14017125e
bt rbp, r8
jb 0x140171263
mov edi, 1
cmp rax, rbx
jb 0x140171220
jmp 0x14017132f
mov esi, 1
cmp rax, rbx
jae 0x14017132f
nop dword [rax + rax]
movzx r9d, byte [rax + r14]
inc rax
cmp r9d, 0x41
jb 0x140171294
cmp r9b, 0x5a
jbe 0x1401712cf
lea ecx, [r9 - 0x61]
cmp cl, 0x19
jbe 0x1401712cf
lea ecx, [r9 - 0x2f]
cmp cl, 0xa
jbe 0x1401712cf
cmp r9b, 0x2b
je 0x1401712cf
cmp r9b, 0x3d
je 0x1401712ca
cmp r9b, 0x20
ja 0x1401712be
bt rbp, r9
jb 0x1401712c3
mov edi, 1
cmp rax, rbx
jb 0x140171280
jmp 0x14017132f
mov esi, 1
cmp rax, rbx
jae 0x14017132f
lfence
nop word [rax + rax]
movzx r11d, byte [rax + r14]
inc rax
cmp r11d, 0x41
jb 0x1401712f4
cmp r11b, 0x5a
jbe 0x14017132f
lea ecx, [r11 - 0x61]
cmp cl, 0x19
jbe 0x14017132f
lea ecx, [r11 - 0x2f]
cmp cl, 0xa
jbe 0x14017132f
cmp r11b, 0x2b
je 0x14017132f
cmp r11b, 0x3d
je 0x14017132a
cmp r11b, 0x20
ja 0x14017131e
bt rbp, r11
jb 0x140171323
mov edi, 1
cmp rax, rbx
jb 0x1401712e0
jmp 0x14017132f
mov esi, 1
lea ecx, [r10 - 0x2b]
cmp ecx, 0x2f
ja 0x14017133e
bt rdx, rcx
jb 0x14017134b
lea ecx, [r10 - 0x61]
cmp ecx, 0x19
ja 0x14017141a
lea ecx, [r8 - 0x2b]
cmp ecx, 0x2f
ja 0x14017135a
bt rdx, rcx
jb 0x140171367
lea ecx, [r8 - 0x61]
cmp ecx, 0x19
ja 0x14017141a
lea ecx, [r9 - 0x2b]
cmp ecx, 0x2f
ja 0x140171376
bt rdx, rcx
jb 0x140171383
lea ecx, [r9 - 0x61]
cmp ecx, 0x19
ja 0x14017141a
lea ecx, [r11 - 0x2b]
cmp ecx, 0x2f
ja 0x140171392
bt rdx, rcx
jb 0x14017139b
lea ecx, [r11 - 0x61]
cmp ecx, 0x19
ja 0x14017141a
mov ecx, r8d
lea rdx, [0x140204270]
movzx r8d, byte [rcx + rdx]
mov ecx, r9d
movzx r9d, byte [rcx + rdx]
movzx ecx, r8b
movzx edx, byte [r10 + rdx]
shr cl, 4
and cl, 3
shl dl, 2
or dl, cl
shl r8b, 4
mov byte [r15 + r12], dl
movzx ecx, r9b
shr cl, 2
and cl, 0xf
shl r9b, 6
or cl, r8b
lea r8, [0x140204270]
mov byte [r15 + r12 + 1], cl
mov ecx, r11d
movzx edx, byte [rcx + r8]
xor ecx, ecx
and dl, 0x3f
or dl, r9b
mov byte [r15 + r12 + 2], dl
add r15, 3
test esi, esi
jne 0x1401714ce
cmp rax, rbx
jae 0x1401714ce
jmp 0x1401711a0
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x1401714cc
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14017148e
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14017148e
cmp r11d, 0x3d
jne 0x14017148e
mov eax, r8d
lea r8, [0x140204270]
movzx edx, byte [rax + r8]
mov eax, r10d
movzx ecx, byte [rax + r8]
movzx eax, dl
shl cl, 2
shr al, 4
and al, 3
shl dl, 4
or cl, al
mov eax, r9d
mov byte [r15 + r12], cl
movzx ecx, byte [rax + r8]
shr cl, 2
and cl, 0xf
or cl, dl
mov byte [r15 + r12 + 1], cl
add r15, 2
jmp 0x1401714cc
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x1401714cc
cmp r9d, 0x3d
jne 0x1401714cc
cmp r11d, r9d
jne 0x1401714cc
mov eax, r8d
lea rcx, [0x140204270]
movzx edx, byte [rax + rcx]
shr dl, 4
and dl, 3
mov eax, r10d
movzx ecx, byte [rax + rcx]
shl cl, 2
or dl, cl
mov byte [r15 + r12], dl
inc r15
xor ecx, ecx
mov qword [rsp + 0x70], r15
test edi, edi
je 0x140171514
lfence
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor al, al
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x40]
add rsp, 0x48
pop r15
pop r13
pop rdi
pop rbx
ret
test rsi, rsi
jne 0x1401714d7
jmp 0x14017151c
mov r15, qword [rsp + 0x80]
lfence
mov rdx, qword [rsp + 0x70]
mov word [r12 + rdx], cx
mov rcx, r15
call fcn.14015f4a0
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov al, 1
jmp 0x1401714ee
lfence
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor al, al
jmp 0x1401714f3