Function at 0x180038aa0
Capabilities:
Encode data using base64

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x10], rdx
push rsi
push r14
sub rsp, 0x58
imul r10d, ecx, 0x604
mov rax, r9
mov rsi, r8
mov r9, rdx
mov r14d, ecx
mov dword [rsp + 0x70], r10d
cmp ecx, r10d
ja 0x180038be3
mov qword [r11 + 0x18], rbx
mov ecx, 0xfffe
mov qword [r11 - 0x18], rbp
movabs r8, 0xaaaaaaaaaaaaaaab
mov ebp, dword [rsp + 0x70]
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x28], r12
mov r12d, dword [rsp + 0x70]
mov qword [r11 - 0x30], r13
mov r13d, dword [rsp + 0x70]
mov qword [r11 - 0x38], r15
imul r11d, r14d, 0x9a
mov dword [rsp + 0x20], r11d
mov rdi, qword [rsp + 0x20]
mov r15, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x20]
cmp r14d, 0x69f5
ja 0x180038c17
je 0x180038c08
mov eax, r14d
sub eax, 0x76
je 0x180038beb
sub eax, 0x39
je 0x180038b70
sub eax, 0x1c
je 0x180038b5c
cmp eax, 0x3bc1
jne 0x180038bae
movzx eax, word [r9]
mov dword [rsi + 0x24], eax
jmp 0x180038bae
mov eax, dword [0x40021000]
btr eax, 0x10
mov dword [0x40021000], eax
jmp 0x180038bae
mov rcx, qword [rsi + 0x10]
mov rax, r8
add rcx, 2
xor r8d, r8d
mul rcx
mov rcx, r9
shr rdx, 1
shl rdx, 2
call fcn.18007a2c0
mov r9, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x70]
mov r11d, dword [rsp + 0x20]
movabs r8, 0xaaaaaaaaaaaaaaab
mov ecx, 0xfffe
mov rax, qword [rsp + 0x88]
add r14d, r11d
cmp r14d, r10d
jbe 0x180038b23
mov r15, qword [rsp + 0x30]
mov r13, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x80]
add rsp, 0x58
pop r14
pop rsi
ret
cmp dword [r9], 0
movzx eax, word [rsi + 0xc]
je 0x180038bff
or ax, 1
mov word [rsi + 0xc], ax
jmp 0x180038bae
and ax, cx
mov word [rsi + 0xc], ax
jmp 0x180038bae
cmp qword [rsi + 0x18], 0x10
mov rdi, rsi
jb 0x180038bb6
mov rdi, qword [rsi]
jmp 0x180038bb6
cmp r14d, 0x78b4
je 0x180038e75
cmp r14d, 0x7ae9
je 0x180038e18
cmp r14d, 0xd33b
je 0x180038d28
cmp r14d, 0x13c81
jne 0x180038bb6
cmp r15, qword [rsi + 0x10]
jae 0x180038bb6
mov r8d, 0xec
nop dword [rax + rax]
mov eax, r8d
sub eax, 0xe9
je 0x180038d0d
sub eax, 1
je 0x180038ca4
sub eax, 1
je 0x180038c8a
cmp eax, 1
jne 0x180038d13
movzx r13d, byte [rdi]
jmp 0x180038d13
lea rax, [r15 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x180038c9d
movzx ebp, byte [rdi + 1]
xor r12d, r12d
jmp 0x180038d13
xor ebp, ebp
xor r12d, r12d
jmp 0x180038d13
mov rax, qword [0x18009a438]
mov ecx, r13d
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov eax, ebp
mov byte [rbx], cl
mov ecx, r13d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x18009a438]
movzx ecx, byte [rcx + rax]
lea rax, [r15 + 1]
mov byte [rbx + 1], cl
cmp rax, qword [rsi + 0x10]
jae 0x180038d02
mov ecx, ebp
mov eax, r12d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x18009a438]
movzx edx, byte [rcx + rax]
mov byte [rbx + 2], dl
add rbx, 3
jmp 0x180038d13
mov dl, 0x3d
mov byte [rbx + 2], dl
add rbx, 3
jmp 0x180038d13
mov byte [rbx], 0x3d
inc rbx
dec r8d
cmp r8d, 0xe8
ja 0x180038c60
jmp 0x180038b9f
cmp qword [r9 + 0x18], 0x10
mov rbx, r9
jb 0x180038d35
mov rbx, qword [r9]
mov rax, r8
xor r15d, r15d
mul qword [rsi + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
test rcx, rcx
je 0x180038ba9
dec rcx
mov rax, r8
mul rcx
shr rdx, 1
inc rdx
lea r15, [rdx + rdx*2]
nop dword [rax]
nop word [rax + rax]
mov r8d, 0x112
mov eax, r8d
sub eax, 0x112
je 0x180038da2
cmp eax, 1
jne 0x180038df9
movzx ecx, byte [rdi + 2]
mov rax, qword [0x18009a438]
and ecx, 0x3f
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
inc rbx
add rdi, 3
jmp 0x180038df9
mov rax, qword [0x18009a438]
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 [0x18009a438]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 1], cl
movzx ecx, byte [rdi + 2]
movzx eax, byte [rdi + 1]
shr ecx, 6
and eax, 0xf
lea ecx, [rcx + rax*4]
mov rax, qword [0x18009a438]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 2], cl
add rbx, 3
inc r8d
cmp r8d, 0x114
jb 0x180038d76
sub rdx, 1
jne 0x180038d70
jmp 0x180038b9f
mov eax, dword [0x40021000]
btr eax, 0x12
mov dword [0x40021000], eax
mov eax, dword [rsi]
cmp eax, 0x10000
je 0x180038e58
cmp eax, 0x40000
jne 0x180038e6a
mov eax, dword [0x40021000]
mov r14d, 0x7ae9
or eax, 0x50000
mov dword [0x40021000], eax
jmp 0x180038bae
mov eax, dword [0x40021000]
bts eax, 0x10
mov dword [0x40021000], eax
mov r14d, 0x7ae9
jmp 0x180038bae
movzx eax, word [rax]
mov dword [rsi + 0x28], eax
jmp 0x180038bae