Function at 0x1802467f0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
cmp dword [rdx], 0x35
mov rdi, rdx
mov rbx, rcx
jne 0x180246818
mov rcx, qword [rdx + 0x4d0]
jmp 0x18024682f
cmp dword [rdx], 0x91
je 0x18024680f
cmp dword [rdx], 0x92
jne 0x180246834
mov rcx, qword [rdx + 0x4d8]
call sub.msvcrt.dll_free
xor edx, edx
mov r8d, 0x4e8
mov rcx, rdi
call fcn.18024adb8
mov r13, qword [rbx]
mov esi, dword [r13]
lea rax, [r13 + 4]
mov qword [rbx], rax
mov eax, esi
mov r12d, esi
shr eax, 0x13
shr r12d, 0x18
mov edx, esi
and eax, 0xf
and edx, 0x7ff
and r12d, 0x7f
mov dword [rdi + 0x490], eax
mov eax, esi
mov dword [rdi], edx
and eax, 0x2000
cmp edx, 0xcf
mov dword [rdi + 0x4c4], eax
jge 0x1802470ac
xor ebp, ebp
movsxd rax, edx
lea rcx, [rax + rax*8]
lea rax, [0x1802650c0]
lea r14d, [rbp + 1]
movzx eax, byte [rax + rcx*8]
lea r15d, [rbp + 4]
mov dword [rdi + 0x488], eax
mov eax, esi
shr eax, 0x1f
cmp eax, ebp
je 0x1802468e1
cmp edx, 0x92
je 0x1802468c9
cmp edx, 0x91
jne 0x1802468e1
mov dword [rdi + 0x48c], r14d
mov rax, qword [rbx]
mov r12d, dword [rax]
add rax, r15
mov qword [rbx], rax
jmp 0x1802469cb
neg eax
mov dword [rdi + 0x48c], ebp
mov r9d, ebp
sbb eax, eax
test eax, 3
jle 0x1802469cb
lea r10, [rdi + 0x494]
add dword [rdi + 0x48c], r14d
mov rax, qword [rbx]
mov edx, dword [rax]
add rax, r15
mov ecx, edx
mov r11d, edx
mov qword [rbx], rax
and ecx, 0x3f
shr r11d, 0x1f
mov dword [r10], ecx
sub ecx, r14d
je 0x180246976
sub ecx, r14d
je 0x180246957
cmp ecx, r14d
jne 0x1802469b6
mov ecx, 6
lea r8, [rdi + 0x4ac]
mov eax, edx
shr eax, cl
add ecx, r15d
and eax, 0xf
mov dword [r8], eax
add r8, r15
cmp ecx, 0x16
jb 0x180246940
jmp 0x1802469b6
mov eax, edx
shr edx, 0xb
shr eax, 6
and eax, 0x1f
and edx, 0xfff
mov dword [rdi + 0x4a8], edx
mov dword [rdi + 0x4a4], eax
jmp 0x1802469b6
mov eax, edx
lea rcx, [rdi + 0x4a0]
shr eax, 9
and al, 0xf
mov byte [rcx], al
mov eax, edx
shr edx, 0x11
shr eax, 0xd
and al, 0xf
and dl, 0xf
mov byte [rdi + 0x4a2], dl
mov edx, 3
mov byte [rdi + 0x4a1], al
mov al, byte [rcx]
test al, 8
je 0x1802469ae
or al, 0xf0
mov byte [rcx], al
add rcx, r14
sub rdx, r14
jne 0x1802469a4
cmp r11d, ebp
je 0x1802469cb
add r9d, r14d
add r10, r15
cmp r9d, 3
jl 0x180246900
mov ecx, dword [rdi]
cmp ecx, 0x69
jg 0x180246ceb
je 0x180246c60
cmp ecx, 0x5c
jg 0x180246bd9
je 0x180246bc8
cmp ecx, 0x3d
jg 0x180246afb
je 0x180246ac8
cmp ecx, 3
je 0x180246bc3
cmp ecx, 5
je 0x180246abd
cmp ecx, 8
je 0x180246bc3
cmp ecx, 0xd
je 0x180246bc3
cmp ecx, 0x1f
je 0x180246bc3
cmp ecx, 0x35
jne 0x180246ff4
shr esi, 0xb
mov dword [rdi + 0x4c8], esi
mov rax, qword [rbx]
mov r12d, dword [rax]
cmp r12d, 2
jae 0x180246a5b
lea r12d, [rcx - 0x33]
mov qword [rdi + 0x4d0], rbp
mov dword [rdi + 0x4cc], ebp
jmp 0x18024708c
lea eax, [r12*4 - 8]
mov dword [rdi + 0x4cc], eax
mov rax, qword [rbx]
mov ecx, dword [rax]
add ecx, 0xfffffffe
shl rcx, 2
call sub.msvcrt.dll_malloc
mov rcx, rax
mov qword [rdi + 0x4d0], rax
cmp rax, rbp
jne 0x180246aa3
lea rdx, [0x18025d1e8]
lea rcx, [rsp + 0x60]
mov dword [rsp + 0x60], 0x8007000e
call sub.msvcrt.dll__CxxThrowException
int3
mov rdx, qword [rbx]
mov eax, dword [rdx]
add rdx, r15
lea r8d, [rax*4 - 8]
call sub.msvcrt.dll_memcpy
jmp 0x18024708c
shr esi, 0x12
and esi, r14d
jmp 0x180246dd7
shr esi, 0xb
lea rdx, [rdi + 8]
mov rcx, rbx
and esi, 3
mov dword [rdi + 0x4c8], esi
call fcn.18024649c
lea rdx, [rdi + 0xc8]
mov rcx, rbx
call fcn.18024649c
lea rdx, [rdi + 0x188]
jmp 0x180246dc4
sub ecx, 0x3f
je 0x180246bc3
sub ecx, 0x19
je 0x180246b56
sub ecx, r14d
je 0x180246b4e
sub ecx, r14d
je 0x180246b39
cmp ecx, r14d
jne 0x180246ff4
lea rdx, [rdi + 8]
mov rcx, rbx
call fcn.18024649c
mov r11, qword [rbx]
mov eax, dword [r11]
mov dword [rdi + 0x4c8], eax
jmp 0x180247089
shr esi, 0xb
and esi, 0xf
mov dword [rdi + 0x4c8], esi
lea rdx, [rdi + 8]
jmp 0x180246dc4
shr esi, 0xb
and esi, r14d
jmp 0x180246b3f
mov eax, esi
lea rdx, [rdi + 8]
mov rcx, rbx
shr eax, 0xb
and eax, 0x1f
mov dword [rdi + 0x4c8], eax
call fcn.18024649c
mov r11, qword [rbx]
mov eax, dword [r11]
shr esi, 0x10
and eax, 0xf
mov dword [rdi + 0x4cc], eax
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 4
and ecx, 0xf
mov dword [rdi + 0x4d0], ecx
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 8
and ecx, 0xf
mov dword [rdi + 0x4d4], ecx
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 0xc
and ecx, 0xf
and esi, 0x7f
mov dword [rdi + 0x4dc], esi
mov dword [rdi + 0x4d8], ecx
jmp 0x180247089
shr esi, 0x12
jmp 0x180246b51
shr esi, 0xb
and esi, 0x3f
mov dword [rdi + 0x4c8], esi
jmp 0x18024708c
cmp ecx, 0x63
jg 0x180246c2f
je 0x180246c0b
sub ecx, 0x5d
je 0x180246bc8
sub ecx, r14d
je 0x180246c50
sub ecx, r14d
je 0x180246b45
sub ecx, r14d
je 0x180246c17
sub ecx, r14d
je 0x180246c17
cmp ecx, r14d
jne 0x180246ff4
jmp 0x180246b39
shr esi, 0xb
and esi, 0xf
mov dword [rdi + 0x4cc], esi
lea rdx, [rdi + 8]
mov rcx, rbx
call fcn.18024649c
mov r11, qword [rbx]
movzx eax, word [r11]
jmp 0x180246b2e
sub ecx, 0x64
je 0x180246c0b
sub ecx, r14d
je 0x180246b45
sub ecx, r14d
je 0x180246c17
sub ecx, r14d
je 0x180246c17
cmp ecx, r14d
jne 0x180246ff4
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4c8], ecx
jmp 0x180247089
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4c8], ecx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4cc], ecx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
cmp ecx, r14d
jb 0x180246c93
cmp ecx, r15d
jbe 0x180246c90
mov ecx, r15d
jmp 0x180246c97
cmp ecx, r14d
cmovb ecx, r14d
sub ecx, r14d
je 0x180246cdc
sub ecx, r14d
je 0x180246ccd
sub ecx, r14d
je 0x180246cbe
cmp ecx, r14d
jne 0x180247089
mov dword [rdi + 0x4d0], 0xf0
jmp 0x180247089
mov dword [rdi + 0x4d0], 0x70
jmp 0x180247089
mov dword [rdi + 0x4d0], 0x30
jmp 0x180247089
mov dword [rdi + 0x4d0], 0x10
jmp 0x180247089
mov eax, 0x98
cmp ecx, eax
jg 0x180246ecf
je 0x180246c50
cmp ecx, 0x92
jg 0x180246e91
je 0x180246dfd
sub ecx, 0x6a
je 0x180246df2
sub ecx, 5
je 0x180246dd1
sub ecx, 9
je 0x180246dab
sub ecx, 0x17
je 0x180246b45
sub ecx, r14d
je 0x180246c50
cmp ecx, r14d
jne 0x180246ff4
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4c8], ecx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4cc], ecx
shl rcx, 2
call sub.msvcrt.dll_malloc
mov qword [rdi + 0x4d0], rax
cmp rax, rbp
jne 0x180246d8e
lea rdx, [0x18025d1e8]
lea rcx, [rsp + 0x68]
mov dword [rsp + 0x68], 0x8007000e
call sub.msvcrt.dll__CxxThrowException
int3
add qword [rbx], r15
mov r8d, dword [rdi + 0x4cc]
mov rdx, qword [rbx]
mov rcx, qword [rdi + 0x4d0]
shl r8, 2
jmp 0x180246ab3
mov rax, qword [rbx]
lea rdx, [rdi + 8]
mov ecx, dword [rax]
mov dword [rdi + 0x4c8], ecx
add qword [rbx], r15
mov qword [rdi + 0x4d0], rdx
mov rcx, rbx
call fcn.18024649c
jmp 0x18024708c
shr esi, 0xb
and esi, 3
lea rdx, [rdi + 8]
mov rcx, rbx
mov dword [rdi + 0x4c8], esi
call fcn.18024649c
lea rdx, [rdi + 0xc8]
jmp 0x180246dc4
and esi, 0xfff800
jmp 0x180246bce
shr esi, 0xb
and sil, r14b
mov byte [rdi + 0x4e0], sil
mov rax, qword [rbx]
movzx ecx, word [rax]
mov word [rdi + 0x4c8], cx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4cc], ecx
add qword [rbx], r15
mov rax, qword [rbx]
movzx edx, word [rax]
mov dword [rdi + 0x4d0], edx
mov rax, qword [rbx]
movzx ecx, word [rax + 2]
mov word [rdi + 0x4ca], cx
mov rcx, rdx
shl rcx, 2
call sub.msvcrt.dll_malloc
mov qword [rdi + 0x4d8], rax
cmp rax, rbp
jne 0x180246e74
lea rdx, [0x18025d1e8]
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x70], 0x8007000e
call sub.msvcrt.dll__CxxThrowException
int3
add qword [rbx], r15
mov r8d, dword [rdi + 0x4d0]
mov rdx, qword [rbx]
mov rcx, qword [rdi + 0x4d8]
shl r8, 2
jmp 0x180246ab3
sub ecx, 0x93
je 0x180246bc8
sub ecx, r14d
je 0x180246bc8
sub ecx, r14d
je 0x180246ec4
sub ecx, r14d
je 0x180246eb9
cmp ecx, r14d
jne 0x180246ff4
shr esi, 0xb
and esi, 7
jmp 0x180246bce
shr esi, 0xb
and esi, 3
jmp 0x180246bce
mov eax, 0x9f
cmp ecx, eax
jg 0x180246fc8
je 0x180246b1c
sub ecx, 0x99
je 0x180246c50
sub ecx, r14d
je 0x180246c50
sub ecx, r14d
je 0x180246f9c
sub ecx, r14d
je 0x180246f2f
sub ecx, r14d
je 0x180246f24
cmp ecx, r14d
jne 0x180246ff4
and esi, 0x810000
mov dword [rdi + 0x4cc], esi
jmp 0x180246b1c
and esi, 0x10000
jmp 0x180246b3f
mov eax, esi
lea rdx, [rdi + 8]
and esi, 0x10000
shr eax, 0xb
mov rcx, rbx
mov dword [rdi + 0x4dc], esi
and eax, 0x1f
mov dword [rdi + 0x4c8], eax
call fcn.18024649c
mov r11, qword [rbx]
mov eax, dword [r11]
and eax, 0xf
mov dword [rdi + 0x4cc], eax
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 4
and ecx, 0xf
mov dword [rdi + 0x4d0], ecx
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 8
and ecx, 0xf
mov dword [rdi + 0x4d4], ecx
mov rax, qword [rbx]
mov ecx, dword [rax]
shr ecx, 0xc
and ecx, 0xf
mov dword [rdi + 0x4d8], ecx
jmp 0x18024708c
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4c8], ecx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4cc], ecx
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4d0], ecx
jmp 0x180247089
sub ecx, 0xa0
je 0x180247063
sub ecx, r14d
je 0x180246b45
sub ecx, r14d
je 0x180246b1c
sub ecx, 0x1c
je 0x180247024
cmp ecx, 0x10
je 0x180246c50
cmp dword [rdi + 0x488], ebp
jbe 0x18024708c
mov eax, ebp
lea rcx, [rax + rax*2]
shl rcx, 6
lea rdx, [rcx + rdi + 8]
mov rcx, rbx
call fcn.18024649c
add ebp, r14d
cmp ebp, dword [rdi + 0x488]
jb 0x180247000
jmp 0x18024708c
and esi, 0x7800
mov eax, esi
shr eax, 0xb
and al, r14b
mov byte [rdi + 0x4c8], al
mov eax, esi
shr eax, 0xc
and al, r14b
mov byte [rdi + 0x4c9], al
mov eax, esi
shr esi, 0xe
shr eax, 0xd
and al, r14b
and sil, r14b
mov byte [rdi + 0x4ca], sil
mov byte [rdi + 0x4cb], al
jmp 0x18024708c
lea rdx, [rdi + 8]
mov rcx, rbx
call fcn.18024649c
mov r11, qword [rbx]
mov eax, dword [r11]
mov dword [rdi + 0x4c8], eax
add qword [rbx], r15
mov rax, qword [rbx]
mov ecx, dword [rax]
mov dword [rdi + 0x4cc], ecx
add qword [rbx], r15
mov eax, r12d
lea rcx, [r13 + rax*4]
mov qword [rbx], rcx
mov rbx, qword [rsp + 0x78]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x18025d1e8]
lea rcx, [rsp + 0x60]
mov dword [rsp + 0x60], 0x80004005
call sub.msvcrt.dll__CxxThrowException
int3