Function at 0x18001e430
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push r12
push r13
push r15
sub rsp, 0x68
mov eax, dword [0x18009e220]
mov r13d, r8d
mov r15, r9
mov r8, rdx
mov r10, rcx
test al, 1
jne 0x18001e464
or eax, 1
mov dword [0x18009e220], eax
mov qword [rsp + 0xa8], rbx
xor r11d, r11d
mov ebx, dword [rsp + 0xa0]
mov ebp, r13d
mov qword [rsp + 0x60], rsi
imul r12d, r13d, 0x1a4
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r14
mov dword [rsp + 0xa0], ebx
cmp r13d, r12d
ja 0x18001e6b3
movabs rdx, 0xfffffffff
mov ecx, 0x5251
movabs r11, 0x666666666666666
movabs r9, 0x6666666666666667
cmp ebp, 0x5027
ja 0x18001e7b5
je 0x18001e797
cmp ebp, 0x258c
ja 0x18001e74c
je 0x18001e727
mov eax, ebp
sub eax, 0xb4
je 0x18001e526
sub eax, 0x57
je 0x18001e510
cmp eax, 0x16
jne 0x18001e699
mov rax, qword [r8]
cmp dword [rax], 1
je 0x18001e699
xor eax, eax
jmp 0x18001ebe1
mov dword [0x18009e1d0], 0x44434241
mov byte [0x18009e1d4], 0
jmp 0x18001e699
mov rsi, qword [r8 + 8]
mov rax, r9
mov rdi, qword [r8]
mov r14, rsi
mov r8, qword [r15]
sub r14, rdi
mov rcx, qword [r15 + 0x10]
sub rcx, r8
sar r14, 5
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r14, rdx
jbe 0x18001e5c3
cmp r14, r11
ja 0x18001ec0a
mov rcx, qword [r15 + 8]
mov rax, r9
sub rcx, r8
imul rcx
mov rcx, r15
mov rsi, rdx
mov rdx, r14
sar rsi, 4
mov rax, rsi
shr rax, 0x3f
add rsi, rax
call fcn.180032f20
mov rdx, qword [r15 + 8]
mov r9, r15
mov rcx, qword [r15]
mov r8, rax
mov rdi, rax
call fcn.180003df0
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov rcx, r15
call fcn.18002ea70
mov r8, qword [rsp + 0x98]
mov rdi, qword [r8]
mov rsi, qword [r8 + 8]
jmp 0x18001e5cb
mov r8, qword [rsp + 0x98]
cmp rdi, rsi
je 0x18001e68a
mov r14, qword [rsp + 0x90]
nop dword [rax]
xor eax, eax
mov qword [rsp + 0x40], 0xf
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x28], al
mov word [rsp + 0x48], ax
mov dword [rsp + 0x4c], eax
lea rax, [rsp + 0x28]
cmp rax, rdi
je 0x18001e622
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x18001e614
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
lea rcx, [rsp + 0x28]
call fcn.180033410
movzx eax, word [r14]
lea rdx, [rsp + 0x28]
mov rcx, r15
mov word [rsp + 0x48], ax
call fcn.180003f40
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x18001e675
mov rcx, qword [rsp + 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e670
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001ec04
call fcn.180054514
add rdi, 0x20
cmp rdi, rsi
jne 0x18001e5e0
mov r8, qword [rsp + 0x98]
movabs rdx, 0xfffffffff
mov ecx, 0x5251
mov r10, qword [rsp + 0x90]
imul eax, r13d, 0x23
add ebp, eax
cmp ebp, r12d
jbe 0x18001e4ae
xor r11d, r11d
lea eax, [r13 + 0xc]
cmp r13d, eax
jae 0x18001ebdf
mov r14d, dword [rsp + 0xa0]
lea r12d, [r13 - 0x10b]
mov ebp, dword [rsp + 0xa0]
lea rdx, [0x180000000]
mov r15d, dword [rsp + 0xa0]
mov eax, 0xc
mov r9, qword [0x18009e218]
mov ebx, 0x6a69
mov qword [rsp + 0x20], 0xc
mov r13, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x20]
nop
cmp r12d, 0xb
ja case.default.0x18001e725
mov ecx, dword [rdx + r12*4 + 0x1ec10]
add rcx, rdx
jmp rcx
mov eax, dword [0x1800827cc]
mov dword [0x18009e1d4], eax
movzx eax, byte [0x1800827d0]
mov byte [0x18009e1d8], al
mov byte [0x18009e1d9], 0
jmp 0x18001e699
cmp ebp, 0x28a4
je 0x18001e785
cmp ebp, 0x4a0d
jne 0x18001e699
mov r8d, 2
lea rdx, [0x1800827b1]
lea rcx, [0x18009e1d9]
call fcn.1800591c0
mov byte [0x18009e1db], 0
jmp 0x18001e682
cmp qword [r10], rdx
mov rcx, rdx
cmovb rcx, qword [r10]
mov qword [r10], rcx
jmp 0x18001e694
mov rcx, qword [r8]
mov ebx, 1
mov rax, qword [r10]
mov dword [rsp + 0xa0], ebx
mov qword [rcx + 0x250], rax
jmp 0x18001e694
cmp ebp, 0x6e8e
je 0x18001e836
cmp ebp, 0x77aa
je 0x18001ebdf
cmp ebp, 0x930f
je 0x18001e82a
cmp ebp, 0xb790
je 0x18001e805
cmp ebp, 0xdc11
jne 0x18001e699
movzx eax, word [0x1800827ec]
mov word [0x18009e1e7], ax
movzx eax, byte [0x1800827ee]
mov byte [0x18009e1e9], al
jmp 0x18001e699
mov eax, dword [0x1800827a1]
mov dword [0x18009e1e2], eax
movzx eax, byte [0x1800827a5]
mov byte [0x18009e1e6], al
mov byte [0x18009e1e7], 0
jmp 0x18001e699
mov byte [0x18009e1e2], 0
jmp 0x18001e699
mov eax, dword [0x180082774]
mov dword [0x18009e1db], eax
movzx eax, byte [0x180082778]
mov byte [0x18009e1df], al
mov word [0x18009e1e0], cx
jmp 0x18001e699
cmp r13, qword [r8 + 0x10]
jae 0x18001ebab
mov edx, 0x1d
nop word [rax + rax]
cmp edx, 0x1d
je 0x18001e8cc
cmp edx, 0xbab
jne 0x18001e8f7
mov ecx, r14d
mov eax, ebp
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
lea rax, [r13 + 1]
movzx ecx, byte [rcx + r9]
mov byte [rdi], cl
cmp rax, qword [r8 + 0x10]
jae 0x18001e8be
mov eax, r15d
mov ecx, ebp
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + r9]
mov byte [rdi + 1], al
mov byte [rdi + 2], 0x3d
add rdi, 3
jmp 0x18001e8f7
mov al, 0x3d
mov byte [rdi + 1], al
mov byte [rdi + 2], al
add rdi, 3
jmp 0x18001e8f7
movzx r14d, byte [rsi]
lea rax, [r13 + 1]
cmp rax, qword [r8 + 0x10]
jae 0x18001e8e0
movzx ebp, byte [rsi + 1]
jmp 0x18001e8e3
mov ebp, r11d
mov rax, r14
mov r15d, r11d
shr rax, 2
movzx eax, byte [rax + r9]
mov byte [rdi], al
inc rdi
add edx, 0xb8e
cmp edx, 0x171c
jbe 0x18001e870
jmp 0x18001eba4
mov r8d, 2
lea rdx, [0x180082810]
lea rcx, [0x18009e1d0]
call fcn.180058e00
mov r8d, 3
lea rdx, [0x180082863]
lea rcx, [0x18009e203]
call fcn.1800591c0
mov r8d, 1
mov byte [0x18009e206], 0
lea rdx, [0x1800828e9]
lea rcx, [0x18009e1d0]
call fcn.180058e00
mov eax, 0x3433
mov word [0x18009e207], ax
jmp 0x18001eb9d
mov eax, dword [0x1800828f4]
mov dword [0x18009e1ed], eax
movzx eax, byte [0x1800828f8]
mov byte [0x18009e1f1], al
mov word [0x18009e1f2], bx
mov byte [0x18009e1f4], 0
jmp 0x18001ebab
cmp qword [r8 + 0x18], 0x10
mov rsi, r8
jb 0x18001e9aa
mov rsi, qword [r8]
cmp qword [r10 + 0x18], 0x10
mov rdi, r10
jb 0x18001e9b7
mov rdi, qword [r10]
movabs r10, 0xaaaaaaaaaaaaaaab
mov r13, r11
mov rax, r10
mul qword [r8 + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
test rcx, rcx
je 0x18001eba4
dec rcx
mov rax, r10
mul rcx
shr rdx, 1
inc rdx
lea r13, [rdx + rdx*2]
nop
mov r8d, 0x36
mov eax, r8d
sub eax, 0x36
je 0x18001ea21
sub eax, 1
je 0x18001ea0e
cmp eax, 1
jne 0x18001ea66
add rsi, 3
jmp 0x18001ea66
movzx eax, byte [rsi + 2]
and eax, 0x3f
movzx eax, byte [rax + r9]
mov byte [rdi], al
inc rdi
jmp 0x18001ea66
movzx eax, byte [rsi]
shr rax, 2
movzx eax, byte [rax + r9]
mov byte [rdi], al
movzx ecx, byte [rsi]
movzx eax, byte [rsi + 1]
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
movzx ecx, byte [rcx + r9]
mov byte [rdi + 1], cl
movzx eax, byte [rsi + 2]
movzx ecx, byte [rsi + 1]
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + r9]
mov byte [rdi + 2], al
add rdi, 3
inc r8d
cmp r8d, 0x39
jb 0x18001e9f6
sub rdx, 1
jne 0x18001e9f0
jmp 0x18001eba4
mov r8d, 4
mov word [0x18009e209], 0x35
lea rdx, [0x18008292f]
lea rcx, [0x18009e20a]
call fcn.1800591c0
mov byte [0x18009e20e], 0
jmp 0x18001eb9d
mov rcx, qword [r8 + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaab
add rcx, 2
xor r8d, r8d
mul rcx
mov rcx, r10
shr rdx, 1
shl rdx, 2
call fcn.180045700
jmp 0x18001eb9d
mov word [0x18009e20e], 0x2b
jmp 0x18001ebab
movzx eax, word [0x180082952]
mov word [0x18009e1ea], ax
movzx eax, byte [0x180082954]
mov byte [0x18009e1ec], al
mov byte [0x18009e1ed], 0
jmp 0x18001ebab
mov r8d, 1
lea rdx, str.___No_new_pull_requests_targeting_this_module_will_be_accepted
lea rcx, [0x18009e1d0]
call fcn.180058e00
lea r9, [0x18009e1d0]
mov qword [0x18009e218], r9
jmp 0x18001eba4
mov r8d, 4
lea rdx, [0x1800829ab]
lea rcx, [0x18009e1d0]
call fcn.180058e00
jmp 0x18001eb9d
mov dword [0x18009e1fd], 0x77767574
mov byte [0x18009e201], 0
jmp 0x18001ebab
mov r8d, 1
lea rdx, str.openDatabaseHelper::CreateDatabaseConnection
lea rcx, [0x18009e1d0]
call fcn.180058e00
mov r8d, 4
lea rdx, [0x180082a1a]
lea rcx, [0x18009e1f9]
call fcn.1800591c0
mov byte [0x18009e1fd], 0
mov r9, qword [0x18009e218]
lea rdx, [0x180000000]
mov rax, qword [rsp + 0x20]
mov r8, qword [rsp + 0x98]
inc r12d
mov r10, qword [rsp + 0x90]
sub rax, 1
mov qword [rsp + 0x20], rax
mov r11d, 0
jne 0x18001e710
mov ebx, dword [rsp + 0xa0]
mov eax, ebx
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0xa8]
add rsp, 0x68
pop r15
pop r13
pop r12
pop rbp
ret
call fcn.180058754
int3
call fcn.180032690
int3