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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x88
lea rbp, [rsp + 0x80]
mov r11, rdx
xor edx, edx
mov eax, 0x400
call fcn.1400ed360
sub rsp, rax
mov rbx, rsp
test dl, dl
jne 0x1400928c0
mov r15, qword [r11 + 8]
mov rsi, qword [r11 + 0x10]
cmp rsi, 4
jb 0x140092a10
movabs rax, 0x5c003f003f005c
lea rdx, [rax + 0x1d0000]
xor edi, edi
nop dword [rax]
mov r10d, dword [0x141dccd58]
or r10d, dword [0x141dccd5c]
add r10d, 0xe9dc9fc7
and r10d, 0xbfcba277
add r10d, 0x7ff7e16f
cmp rdx, qword [r15]
setne r9b
cmp r10d, 0x28f012b1
jb 0x140092900
mov dil, r9b
test edi, edi
je 0x140092a2f
cmp rax, qword [r15]
je 0x140092a2f
nop word [rax + rax]
mov eax, dword [0x141dccd70]
xor edx, edx
div dword [0x141dccd74]
cmp eax, 0x8116521
je 0x140092950
nop word cs:[rax + rax]
mov eax, dword [0x141dccd78]
xor eax, dword [0x141dccd7c]
and eax, 0xdc12c022
add eax, 0xd99c8f15
cmp eax, 0x843fc2f9
jb 0x140092970
cmp rsi, 0xf8
jae 0x140092c30
cmp word [r15 + 2], 0x3a
jne 0x140092b82
mov r9d, 0x9b1f4cf1
nop dword [rax]
mov eax, dword [0x141dcceb8]
xor edx, edx
div dword [0x141dccebc]
imul rax, r9
shr rax, 0x3f
add eax, 0xbbebf57f
xor eax, 0xab9574fc
cmp eax, 0x77499663
ja 0x1400929b0
movzx eax, word [r15 + 4]
nop dword [rax]
mov edx, dword [0x141dccec0]
and edx, dword [0x141dccec4]
or edx, 0xe625d6ca
imul rdx, rdx, 0x30bc9b1
shr rdx, 0x39
add edx, 0xa4af246f
cmp edx, 0x98815657
jb 0x1400929e0
jmp 0x140092b27
cmp rsi, 3
je 0x140092ac0
cmp rsi, 1
jne 0x140092b48
cmp word [r15], 0
jne 0x140092c30
mov r8d, 0x8ef3ee25
nop word cs:[rax + rax]
mov eax, dword [0x141dccd60]
xor edx, edx
div dword [0x141dccd64]
shr eax, 1
imul rax, r8
shr rax, 0x3e
or eax, 0x2c77f28
xor eax, 0x668ab99c
mov rdx, qword [r11 + 0x10]
mov qword [rcx + 0x10], rdx
movups xmm0, xmmword [r11]
movups xmmword [rcx], xmm0
cmp eax, 0x21cc136f
jae 0x140092a90
mov rax, qword [r11 + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [r11]
movups xmmword [rcx], xmm0
jmp 0x140092a40
mov eax, dword [0x141dccd68]
add eax, dword [0x141dccd6c]
imul eax, eax, 0x1a2f924f
add eax, 0xffcb2b8d
xor eax, 0xda5147fb
cmp eax, 0x57b68b57
ja 0x140092a90
jmp 0x1400937fe
mov eax, dword [0x141dccea0]
add eax, dword [0x141dccea4]
imul rdx, rax, 0x2d01369f
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1c
add eax, 0x3e402b68
cmp eax, 0x835bd080
ja 0x140092ac0
cmp word [r15 + 2], 0x3a
jne 0x140092b82
nop dword [rax + rax]
mov eax, dword [0x141dccea8]
add eax, dword [0x141dcceac]
imul eax, eax, 0x752972bd
cmp eax, 0x5935d5cf
je 0x140092b00
movzx eax, word [r15 + 4]
test ax, ax
je 0x140093386
cmp ax, 0x2f
je 0x140092b35
movzx eax, ax
cmp eax, 0x5c
jne 0x140092b82
movzx eax, word [r15]
cmp eax, 0x2f
je 0x140092b86
cmp eax, 0x5c
je 0x140092b86
jmp 0x140092c13
mov eax, 0xd14a7aa7
nop dword [rax]
mov edx, dword [0x141dcceb0]
xor edx, dword [0x141dcceb4]
add edx, 0x37a9220d
imul rdx, rax
shr rdx, 0x3d
imul edx, edx, 0xf9639133
cmp edx, 0xf508fe66
je 0x140092b50
cmp rsi, 1
jbe 0x140092c30
movzx eax, word [r15]
cmp ax, 0x5c
je 0x140092b98
movzx eax, ax
cmp eax, 0x2f
jne 0x140092c30
mov r9d, 0x99827689
nop
mov eax, dword [0x141dccec8]
xor edx, edx
div dword [0x141dccecc]
add eax, 0x812f1794
imul rax, r9
shr rax, 0x3d
xor eax, 0xa517e19b
cmp eax, 0x1cd47031
jb 0x140092ba0
movzx r9d, word [r15 + 2]
mov r10d, 0xbbc114fd
nop word cs:[rax + rax]
mov eax, dword [0x141dcced0]
xor edx, edx
div dword [0x141dcced4]
or eax, 0xd581eee7
imul rax, r10
shr rax, 0x3e
or eax, 0x2e6a740c
cmp eax, 0x5421cad7
ja 0x140092be0
cmp r9d, 0x5c
je 0x140092c13
cmp r9d, 0x2f
jne 0x140092c30
mov rax, qword [r11 + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [r11]
movups xmmword [rcx], xmm0
jmp 0x1400937fe
mov eax, dword [0x141dccd80]
xor eax, dword [0x141dccd84]
or eax, 0x5dbf165b
add eax, 0x479d26cf
and eax, 0x805923c4
cmp eax, 0x1609a8fe
jb 0x140092c30
mov qword [rbp - 0x68], rbx
mov byte [rbp + 7], r8b
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x40], r11
mov eax, dword [0x141dccd88]
sub eax, dword [0x141dccd8c]
mov qword [rbp - 0x30], 0
and eax, 0xc421000e
imul eax, eax, 0x38a2989c
cmp eax, 0x369a9ff4
jae 0x140092c98
mov qword [rbp - 0x28], 2
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x28], 2
mov qword [rbp - 0x20], 0
mov r12d, 0x200
mov eax, 2
mov qword [rbp - 0x10], rax
xor esi, esi
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, 0xffffffff
xor r13d, r13d
mov qword [rbp - 0x60], r15
nop dword [rax]
cmp r12, 0x201
jae 0x140092cf0
mov eax, 0x200
mov qword [rbp - 0x18], rax
mov rbx, qword [rbp - 0x68]
jmp 0x140092d85
sub r12, r13
mov rax, rsi
sub rax, r13
cmp r12, rax
jbe 0x140092d50
sub rsp, 0x30
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rbp - 0x30]
mov rdx, r13
mov r8, r12
call fcn.1400faca0
add rsp, 0x30
mov rsi, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0x10], rax
jmp 0x140092d50
cmp rsi, r14
mov eax, 0xffffffff
cmovb rax, rsi
mov qword [rbp - 0x20], rax
mov eax, dword [0x141dccd90]
xor eax, dword [0x141dccd94]
imul eax, eax, 0x71f73a00
cmp rsi, r14
mov r13d, 0xffffffff
cmovb r13, rsi
mov qword [rbp - 0x20], r13
cmp eax, 0xa32a831a
jbe 0x140092d40
mov qword [rbp - 0x18], r13
mov rbx, qword [rbp - 0x10]
mov r12, r13
mov eax, dword [str.W2Mv2_]
add eax, dword [0x141dccd9c]
xor eax, 0x4107200
or eax, 0xebef8d87
add eax, 0xdd57cd2e
cmp eax, 0x7a003ec5
jae 0x140092dc9
sub rsp, 0x20
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, r15
mov edx, r12d
mov r8, rbx
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
add rsp, 0x20
sub rsp, 0x20
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, r15
mov edx, r12d
mov qword [rbp - 8], rbx
mov r8, rbx
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
add rsp, 0x20
mov ebx, eax
test eax, eax
jne 0x140092e68
jmp 0x140092e0a
sub rsp, 0x20
call rdi
add rsp, 0x20
mov eax, dword [0x141dccda0]
add eax, dword [0x141dccda4]
imul r15d, eax, 0x737d38bf
add r15d, 0x751f802d
sub rsp, 0x20
call rdi
add rsp, 0x20
cmp r15d, 0xe45ff0ec
ja 0x140092e00
mov r15, qword [rbp - 0x60]
nop dword [rax + rax]
mov ecx, dword [0x141dccda8]
sub ecx, dword [0x141dccdac]
imul ecx, ecx, 0xc7e30f6a
add ecx, 0x36f41f3f
cmp ecx, 0x17deac89
jb 0x140092e40
test eax, eax
jne 0x140093093
mov r10d, ebx
nop dword [rax + rax]
mov eax, dword [0x141dccdb8]
add eax, dword [0x141dccdbc]
imul eax, eax, 0xd27cb660
add eax, 0x957e1f6c
cmp eax, 0x789efb3c
ja 0x140092e70
cmp r12, r10
jne 0x140092f50
nop word [rax + rax]
mov eax, dword [0x141dccdc0]
and eax, dword [0x141dccdc4]
or eax, 0xc44ba8c9
imul ebx, eax, 0x402036ca
add ebx, 0xca72e0ac
sub rsp, 0x20
call rdi
add rsp, 0x20
cmp ebx, 0xdeda56fe
jbe 0x140092ee0
sub rsp, 0x20
call rdi
add rsp, 0x20
jmp 0x140092ea0
mov ecx, dword [0x141dccdc8]
and ecx, dword [0x141dccdcc]
add ecx, 0x592b2b7c
xor ecx, 0x20c250c0
or ecx, 0x87290d2f
cmp ecx, 0xf2902158
ja 0x140092ee0
nop word cs:[rax + rax]
mov ecx, dword [0x141dccdd0]
sub ecx, dword [0x141dccdd4]
and ecx, 0x30215018
xor ecx, 0x3102c012
or ecx, 0x48c82fe5
cmp ecx, 0x6692b8ed
jb 0x140092f10
cmp eax, 0x7a
jne 0x1400937c8
cmp r12, 0x7fffffff
lea r12, [r12 + r12]
cmova r12, r14
jmp 0x140092f60
jae 0x140092f83
mov r12, r10
nop word cs:[rax + rax]
mov eax, dword [0x141dccdd8]
or eax, dword [0x141dccddc]
imul eax, eax, 0x2c3d67a2
add eax, 0x6663abcc
cmp eax, 0x5a48e625
jbe 0x140092f60
jmp 0x140092cd0
cmp qword [rbp - 0x18], r10
jb 0x1400937c6
mov r9, r15
mov r15, qword [rbp - 0x40]
mov qword [r15 + 0x10], 0
cmp ebx, 0xf6
movzx eax, byte [rbp + 7]
ja 0x140092fc0
test al, al
jne 0x140092fc0
mov rdi, qword [r15]
cmp rdi, r10
jbe 0x140093248
xor r13d, r13d
jmp 0x140093550
mov eax, dword [0x141dccde0]
add eax, dword [0x141dccde4]
imul rcx, rax, 0x323c35c9
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0x54df825c
xor eax, 0x561e81df
cmp eax, 0x54561ef0
ja 0x140092fc0
cmp ebx, 2
jbe 0x140093050
mov rcx, qword [rbp - 8]
movzx eax, word [rcx + 2]
cmp eax, 0x3a
jne 0x140093271
movzx ecx, word [rcx + 4]
nop dword [rax + rax]
mov edx, dword [0x141dcce08]
sub edx, dword [0x141dcce0c]
add edx, 0x4d365875
cmp edx, 0x72d24b18
ja 0x140093010
cmp cx, 0x5c
mov rcx, qword [rbp - 8]
jne 0x140093271
lea r8, [0x141db6a58]
mov r13d, 4
mov rbx, rcx
jmp 0x14009345d
mov eax, dword [0x141dcce00]
or eax, dword [0x141dcce04]
imul rax, rax, 0x44cd08bb
shr rax, 0x3c
cmp al, 0x69
rcl byte [rdi + 0x57], 0xda
invalid
cmp eax, 0x68f1ac84
je 0x140093050
cmp ebx, 2
jne 0x140093374
mov rbx, qword [rbp - 8]
movzx ecx, word [rbx]
cmp cx, 0x5c
je 0x140093433
jmp 0x140093454
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rbx, [r10 + 1]
lea r8, [rbx + rbx]
mov r14, r10
test rdi, rdi
je 0x1400933a1
add rdi, rdi
mov qword [rbp - 0x58], r9
mov qword [rbp - 0x48], rdi
mov eax, 2
mov r8d, 2
xor r13d, r13d
mov rbx, qword [rbp - 8]
movzx eax, word [r15]
cmp eax, 0x2f
je 0x140092b82
idiv edi
invalid
cmp eax, 0x5c
je 0x140092b82
jmp 0x140092c13
xor eax, eax