Function at 0x18004acc0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
imul eax, edx, 0x333
mov r9, r8
mov r10d, edx
mov rsi, rcx
mov r15d, edx
mov dword [rsp + 0x20], eax
cmp edx, eax
ja 0x18004affb
mov r14, qword [rsp + 0x30]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rbx, qword [rsp + 0x30]
mov ebp, dword [rsp + 0x88]
mov r13d, dword [rsp + 0x88]
mov r12d, dword [rsp + 0x88]
mov rdi, qword [rsp + 0x30]
cmp r15d, 0x45c4
ja 0x18004adc9
je 0x18004ad97
mov eax, r15d
sub eax, 0x4c
je 0x18004afc2
sub eax, 0x6b
je 0x18004ad80
cmp eax, 0x2251
jne 0x18004afe9
mov rdx, qword [rsp + 0x30]
xor r8d, r8d
mov rcx, r9
call fcn.180037e10
mov r9, qword [rsp + 0x90]
mov r10d, dword [rsp + 0x88]
jmp 0x18004afdf
mov eax, dword [rsi]
mov dword [0x18006187c], eax
mov rax, qword [r9]
mov qword [0x1800b3ef0], rax
jmp 0x18004afe9
cmp qword [rsi + 0x18], 0x10
mov rdi, rsi
jb 0x18004ada4
mov rdi, qword [rsi]
cmp qword [r9 + 0x18], 0x10
mov rbx, r9
jb 0x18004adb1
mov rbx, qword [r9]
mov rax, rdx
mul qword [rsi + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
mov qword [rsp + 0x28], rcx
jmp 0x18004afdf
cmp r15d, 0x545a
je 0x18004afac
cmp r15d, 0x6880
je 0x18004aed7
cmp r15d, 0x8b3c
jne 0x18004afe9
cmp r14, qword [rsi + 0x10]
jae 0x18004afe9
mov edx, 0x118
nop
cmp edx, 0x118
je 0x18004aeaa
cmp edx, 0xbc20
je 0x18004aea5
cmp edx, 0x17728
je 0x18004ae6d
cmp edx, 0x23230
jne 0x18004aec0
lea rax, [r14 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x18004ae5d
mov ecx, ebp
mov eax, r13d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1829550c0]
movzx r8d, byte [rcx + rax]
mov byte [rbx], r8b
mov byte [rbx + 1], 0x3d
add rbx, 2
jmp 0x18004aec0
mov r8b, 0x3d
mov byte [rbx], r8b
mov byte [rbx + 1], r8b
add rbx, 2
jmp 0x18004aec0
mov rax, qword [0x1829550c0]
mov ecx, r12d
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov eax, ebp
mov byte [rbx], cl
mov ecx, r12d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x1829550c0]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 1], cl
add rbx, 2
jmp 0x18004aec0
xor r13d, r13d
jmp 0x18004aec0
movzx r12d, byte [rdi]
lea rax, [r14 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x18004aebe
movzx ebp, byte [rdi + 1]
jmp 0x18004aec0
xor ebp, ebp
add edx, 0xbb08
cmp edx, 0x2ec20
jbe 0x18004ae00
jmp 0x18004afdf
mov rcx, qword [rsp + 0x28]
xor r14d, r14d
test rcx, rcx
je 0x18004afe9
mov rax, rdx
dec rcx
mul rcx
shr rdx, 1
inc rdx
lea r14, [rdx + rdx*2]
nop dword [rax + rax]
mov r8d, 0x96
mov eax, r8d
sub eax, 0x94
je 0x18004af8c
sub eax, 1
je 0x18004af73
cmp eax, 1
jne 0x18004af90
mov rax, qword [0x1829550c0]
movzx ecx, byte [rdi]
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
movzx ecx, byte [rdi]
movzx eax, byte [rdi + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
mov rax, qword [0x1829550c0]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 1], cl
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1829550c0]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 2], cl
add rbx, 3
jmp 0x18004af90
movzx ecx, byte [rdi + 2]
mov rax, qword [0x1829550c0]
and ecx, 0x3f
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
inc rbx
jmp 0x18004af90
add rdi, 3
dec r8d
cmp r8d, 0x93
ja 0x18004af06
sub rdx, 1
jne 0x18004af00
jmp 0x18004afdf
mov eax, 0x59
cmp eax, 0x59
je 0x18004b01a
add eax, 0xa6
cmp eax, 0xff
jb 0x18004afb1
mov rcx, qword [rsi + 0x10]
mov rax, rdx
add rcx, 2
mul rcx
mov rax, rdx
shr rax, 1
shl rax, 2
mov qword [rsp + 0x30], rax
movabs rdx, 0xaaaaaaaaaaaaaaab
imul eax, r10d, 0x75
add r15d, eax
cmp r15d, dword [rsp + 0x20]
jbe 0x18004ad30
mov eax, dword [rsp + 0x88]
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rsp + 0x98]
mov qword [0x1800b3ef8], rax
mov eax, 1
jmp 0x18004b002