Function at 0x180011840
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r13, r8
lea r12d, [rdx + 0xd]
xor r8d, r8d
mov rsi, r9
mov ebp, edx
mov ebx, r8d
cmp edx, r12d
jae case.0x1800118b1.306
mov r14, qword [rsp + 0x30]
lea rdx, [0x180000000]
mov edi, dword [rsp + 0x78]
mov r15, qword [rsp + 0x30]
nop dword [rax]
lea eax, [rbp - 0x128]
cmp eax, 0x35
ja case.0x1800118b1.309
movzx eax, byte [rdx + rax + 0x11b7c]
mov ecx, dword [rdx + rax*4 + 0x11b44]
add rcx, rdx
jmp rcx
mov r14, rsi
jmp case.0x1800118b1.309
mov ecx, 0x17
mov eax, ecx
sub eax, 0x17
je 0x1800118e0
cmp eax, 1
jne 0x1800118e9
cmp byte [rsi], 0xd
jne 0x1800118e9
mov ebp, 0x136
jmp case.0x1800118b1.309
cmp byte [rsi], 0
je case.0x1800118b1.306
inc ecx
cmp ecx, 0x19
jb 0x1800118c5
inc rsi
jmp case.0x1800118b1.299
movzx eax, byte [rsi]
cmp al, 0xd
jne 0x18001192e
mov ecx, 0x4d
mov eax, ecx
sub eax, 0x4d
je 0x18001191a
cmp eax, 0x67
jne 0x180011921
inc rsi
cmp byte [rsi], 0xa
jne 0x180011921
inc rsi
jmp 0x180011921
mov byte [r14], 0xa
inc r14
add ecx, 0x67
cmp ecx, 0x11b
jb 0x180011901
jmp 0x180011937
mov byte [r14], al
inc r14
inc rsi
movzx eax, byte [rsi]
test al, al
jne 0x1800118f8
mov byte [r14], al
jmp case.0x1800118b1.309
mov rbx, qword [rsi]
mov eax, r8d
test edi, edi
je case.0x1800118b1.309
nop dword [rax]
nop dword [rax + rax]
mov dword [rbx + 8], eax
add rbx, 0x10
add eax, 2
cmp eax, edi
jb 0x180011960
jmp case.0x1800118b1.309
mov ecx, 1
cmp edi, ecx
jbe case.0x1800118b1.309
nop dword [rax]
mov eax, 0x35
cmp eax, 0x35
je 0x180011997
cmp eax, 0xe1
jne 0x18001199a
add rbx, 0x10
jmp 0x18001199a
mov dword [rbx + 8], ecx
add eax, 0xac
cmp eax, 0x18d
jb 0x180011985
add ecx, 2
cmp ecx, edi
jb 0x180011980
jmp case.0x1800118b1.309
inc qword [rsi + 0xd0]
mov rax, qword [rsi + 0xc0]
test rax, rax
je case.0x1800118b1.309
mov rdx, r13
mov rcx, rsi
call rax
xor r8d, r8d
lea rdx, [0x180000000]
inc ebp
cmp ebp, r12d
jb 0x180011890
mov rax, qword [rsp + 0x30]
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rax, qword [rsp + 0x90]
mov dword [rsi + 0x88], r8d
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
jmp case.0x1800118b1.309
mov r15, rsi
jmp case.0x1800118b1.309
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 0x1d]
call fcn.180009270
mov rcx, qword [rsi + 8]
mov rdi, rax
mov r9, qword [rsi]
mov r8, rcx
sub r8, r9
mov edx, eax
sar r8, 4
mov byte [rsp + 0x78], 0
cmp rdx, r8
jae 0x180011a61
shl rdx, 4
add rdx, r9
mov qword [rsi + 8], rdx
jmp 0x1800119ca
jbe 0x1800119ca
mov rax, qword [rsi + 0x10]
sub rax, r9
sar rax, 4
cmp rdx, rax
jbe 0x180011a89
lea r8, [rsp + 0x78]
mov rcx, rsi
call fcn.180007820
jmp 0x1800119ca
sub rdx, r8
je 0x180011ab2
xor r8d, r8d
mov qword [rcx], r8
mov dword [rcx + 8], 0xffffffff
mov dword [rcx + 0xc], r8d
add rcx, 0x10
sub rdx, 1
jne 0x180011a91
mov qword [rsi + 8], rcx
jmp 0x1800119cd
xor r8d, r8d
mov qword [rsi + 8], rcx
jmp 0x1800119cd
mov eax, 0x114
cmp eax, 0x114
je 0x180011b15
add eax, 0x2a0c
cmp eax, 0x2a0c
jbe 0x180011ac3
nop word [rax + rax]
mov ebx, 0x3d
mov eax, ebx
sub eax, 0x3d
je 0x180011b2a
cmp eax, 1
jne 0x180011b38
mov eax, dword [r15 + 8]
lea r9, [rsp + 0x78]
mov rdx, qword [r15]
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x20], 0xc1
call fcn.1800b1170
jmp 0x180011b38
mov eax, dword [0x4000000]
shr eax, 3
and al, 1
mov byte [rsp + 0x30], al
jmp case.0x1800118b1.306
imul ecx, dword [r15 + 0xc], 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0x3f
jb 0x180011ae5
jmp case.0x1800118b1.308