Function at 0x1401bcc50
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xa0
mov rsi, qword [rdx]
mov r12, r8
mov r14, rdx
mov dword [rbp - 0x1d], 1
mov edi, ecx
lea rdx, [0x1403b8788]
xor ebx, ebx
mov rcx, rsi
mov r15, r9
lea r8d, [rbx + 2]
call fcn.140005690
test eax, eax
jne 0x1401bccbd
lea r8d, [rbx + 6]
mov rcx, rsi
lea rdx, str.novice
call fcn.140005690
test eax, eax
je 0x1401bccbd
mov dword [rbp - 0x1d], ebx
add rsi, 2
jmp 0x1401bcce1
mov r8d, 3
lea rdx, [0x1403b878c]
mov rcx, rsi
call fcn.140005690
test eax, eax
jne 0x1401bcce1
mov dword [rbp - 0x1d], 2
add rsi, 3
lea r9, [rbp - 0x19]
mov qword [r14], rsi
lea r8, [rbp - 0x21]
mov qword [rbp - 9], rsi
lea rdx, [rbp - 0x11]
mov dword [rbp - 0x19], ebx
mov rcx, rsi
call fcn.1401bf280
test eax, eax
jne 0x1401bcd0f
lea rax, str.E474:_Invalid_argument
jmp 0x1401bd260
movsxd r14, dword [rbp - 0x21]
movzx eax, byte [rsi + r14]
lea rcx, [rsi + r14]
mov r9d, dword [0x14045b4bc]
mov r8d, dword [0x14046a500]
mov dword [rbp - 0x21], eax
cmp r9d, 0xf423f
je 0x1401bcd41
bt r8d, 0xe
jae 0x1401bcdd0
bt r8d, 0xf
jb 0x1401bcdd0
mov rdi, rcx
nop
cmp al, 0x20
je 0x1401bcd58
cmp al, 9
jne 0x1401bcd61
movzx eax, byte [rdi + 1]
inc rdi
jmp 0x1401bcd50
cmp rdi, rcx
jbe 0x1401bcd92
cmp al, 0x3d
je 0x1401bcdb7
movzx edx, al
lea rcx, [0x1403c8934]
call fcn.14028abb0
test rax, rax
je 0x1401bcd84
cmp byte [rdi + 1], 0x3d
je 0x1401bcdb7
mov r9d, dword [0x14045b4bc]
mov r8d, dword [0x14046a500]
mov edi, dword [rbp + 0x47]
movsxd rcx, r14d
mov dword [rbp - 0x25], ebx
movzx eax, byte [rcx + rsi]
test al, al
je 0x1401bce01
cmp byte [rcx + rsi + 1], 0x3d
jne 0x1401bce01
cmp al, 0x2b
jne 0x1401bcde6
mov dword [rbp - 0x25], 1
jmp 0x1401bcdfe
lea rbx, str.E1205:_No_white_space_allowed_between_option_and
mov qword [r15], rdi
mov rsi, rdi
jmp 0x1401bd256
movsxd rax, r14d
movzx ecx, byte [rax + rsi]
cmp cl, 0x20
je 0x1401bcde1
cmp cl, 9
jne 0x1401bcd95
inc r14d
jmp 0x1401bcdd0
cmp al, 0x5e
jne 0x1401bcdf3
mov dword [rbp - 0x25], 2
jmp 0x1401bcdfe
cmp al, 0x2d
jne 0x1401bce01
mov dword [rbp - 0x25], 3
inc r14d
mov ecx, dword [rbp - 0x19]
lea r10, str.aleph
movsxd r15, r14d
movsxd r14, dword [rbp - 0x11]
add r15, rsi
mov qword [rsp + 0xf0], r13
movzx edx, byte [r15]
mov dword [rbp - 0x29], edx
cmp r14d, 0xffffffff
jne 0x1401bce7a
test ecx, ecx
jne 0x1401bcee7
cmp r9d, 0xf423f
je 0x1401bce42
bt r8d, 0xe
jae 0x1401bce6e
bt r8d, 0xf
jb 0x1401bce6e
cmp rsi, r12
jbe 0x1401bce6e
movzx edx, byte [rsi]
lea rcx, [0x1403c8938]
call fcn.14028abb0
test rax, rax
je 0x1401bce6e
lea rbx, str.E1205:_No_white_space_allowed_between_option_and
jmp 0x1401bd24e
lea rbx, str.E518:_Unknown_option
jmp 0x1401bd24e
test r14d, r14d
js 0x1401bcee7
imul rdi, r14, 0x58
cmp qword [rdi + r10 + 0x18], rbx
jne 0x1401bcec4
lea rcx, str.:__
call fcn.14028abb0
test rax, rax
jne 0x1401bd24e
lea r14, str.aleph
test byte [rdi + r14 + 0x10], 1
je 0x1401bceb8
cmp byte [rbp - 0x29], 0x3f
jne 0x1401bd24e
lea rbx, str.E519:_Option_not_supported
jmp 0x1401bd24e
mov r13, qword [rdi + r10 + 0x10]
lea rcx, [rdi + r10]
mov edi, dword [rbp + 0x47]
mov edx, edi
call fcn.1401b6cd0
mov edx, dword [rbp - 0x29]
lea r10, str.aleph
mov qword [rbp - 0x11], rax
jmp 0x1401bcf0e
mov qword [rbp - 0x11], rbx
mov r13d, 4
test ecx, ecx
jns 0x1401bcf04
movzx eax, cl
neg ecx
neg al
mov byte [rbp + 0x7f], al
shr ecx, 8
jmp 0x1401bcf08
mov byte [rbp + 0x7f], 0xf2
mov byte [rbp + 0x80], cl
test dil, 0x10
je 0x1401bcf2d
test r14d, r14d
js 0x1401bd24e
imul rcx, r14, 0x58
cmp qword [rcx + r10 + 0x18], 0xffffffffffffffff
jne 0x1401bd24e
test dil, 0x20
je 0x1401bcf48
test r14d, r14d
js 0x1401bcf48
imul rcx, r14, 0x58
cmp qword [rcx + r10 + 0x18], 0xffffffffffffffff
je 0x1401bd24e
test dil, 8
je 0x1401bcfb1
test r13, 0x2080000
je 0x1401bcf63
lea rbx, str.E520:_Not_allowed_in_a_modeline
jmp 0x1401bd24e
bt r13, 0x1d
jae 0x1401bcf7e
cmp dword [0x140469200], ebx
jne 0x1401bcf7e
lea rbx, str.E992:_Not_allowed_in_a_modeline_when_modelineexpr_is_off
jmp 0x1401bd24e
mov rax, qword [0x14046a618]
cmp dword [rax + 0x3c8], ebx
je 0x1401bcfb1
test r14d, r14d
js 0x1401bcfb1
imul rcx, r14, 0x58
mov eax, dword [rcx + r10 + 0x20]
cmp eax, 0x2011
je 0x1401bd24e
cmp eax, 0x202d
je 0x1401bd24e
cmp dword [0x14045b4d0], ebx
je 0x1401bcfcc
bt r13, 0x13
jae 0x1401bcfcc
lea rbx, str.E48:_Not_allowed_in_sandbox
jmp 0x1401bd24e
mov r12d, dword [0x140469298]
lea rcx, [0x1403c8944]
call fcn.14028abb0
test rax, rax
je 0x1401bd06d
cmp byte [rbp - 0x29], 0x26
mov rsi, r15
mov qword [rbp - 9], r15
mov rdi, r15
jne 0x1401bd031
cmp byte [r15 + 1], 0x76
jne 0x1401bd031
cmp byte [r15 + 2], 0x69
lea rax, [r15 + 2]
jne 0x1401bd031
cmp byte [r15 + 3], 0x6d
lea rsi, [r15 + 3]
jne 0x1401bd021
mov r12d, ebx
mov qword [rbp - 9], rsi
mov rdi, rsi
jmp 0x1401bd031
mov r12d, 1
mov qword [rbp - 9], rax
mov rsi, rax
mov rdi, rax
mov r15d, dword [rbp - 0x29]
lea rcx, [0x1403c894c]
mov edx, r15d
call fcn.14028abb0
test rax, rax
je 0x1401bd071
movzx eax, byte [rdi + 1]
cmp al, 0x20
ja 0x1401bd061
movabs rcx, 0x100000201
bt rcx, rax
jb 0x1401bd071
lea rbx, str.E488:_Trailing_characters
jmp 0x1401bd24e
mov r15d, dword [rbp - 0x29]
cmp r15b, 0x3f
je 0x1401bd104
mov edi, dword [rbp - 0x1d]
cmp edi, 1
jne 0x1401bd09c
mov edx, r15d
lea rcx, str.:_
call fcn.14028abb0
test rax, rax
jne 0x1401bd09c
test dil, r13b
je 0x1401bd104
mov rax, qword [rbp + 0x77]
lea r8, [rbp - 9]
mov edx, dword [rbp + 0x47]
mov r9d, edi
mov qword [rsp + 0x68], 0x50
mov ecx, r14d
mov qword [rsp + 0x60], rax
mov rax, qword [rbp + 0x6f]
mov qword [rsp + 0x58], rax
mov eax, dword [rbp - 0x21]
mov dword [rsp + 0x50], r12d
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x7f]
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x38], rax
mov rax, qword [rbp - 0x11]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp - 0x25]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], eax
call fcn.1401bd3a0
mov rsi, qword [rbp - 9]
mov rbx, rax
jmp 0x1401bd24e
mov rdi, qword [rbp + 0x67]
cmp dword [rdi], ebx
je 0x1401bd118
xor edx, edx
lea ecx, [rdx + 0xa]
call fcn.140184470
jmp 0x1401bd157
call fcn.140185c60
cmp dword [0x14045b82c], ebx
je 0x1401bd12f
mov eax, dword [0x140420870]
dec eax
jmp 0x1401bd131
mov eax, ebx
cmp dword [0x14045b530], ebx
mov dword [0x14046a49c], eax
jne 0x1401bd144
call fcn.14017f920
mov ecx, dword [0x14046a250]
xor edx, edx
call fcn.1402471a0
mov dword [rdi], 1
test r14d, r14d
js 0x1401bd20f
mov edx, dword [rbp + 0x47]
imul rdi, r14, 0x58
lea r14, str.aleph
lea rcx, [rdi + r14]
call fcn.1401b87a0
cmp dword [0x14046a3b4], ebx
jle 0x1401bd359
mov rax, qword [rbp - 0x11]
cmp rax, qword [rdi + r14 + 0x18]
jne 0x1401bd1a6
movups xmm0, xmmword [rdi + r14 + 0x48]
lea rcx, [rbp - 9]
movaps xmmword [rbp - 9], xmm0
call fcn.1400ac4d0
jmp 0x1401bd359
mov ecx, dword [rdi + r14 + 0x20]
bt ecx, 0xd
jae 0x1401bd1db
mov rax, qword [0x14046a618]
and ecx, 0xfff
add rcx, 0x4f
add rcx, rcx
movups xmm0, xmmword [rax + rcx*8]
lea rcx, [rbp - 9]
movaps xmmword [rbp - 9], xmm0
call fcn.1400ac4d0
jmp 0x1401bd359
bt ecx, 0xe
jae 0x1401bd359
mov rax, qword [0x14045b410]
and ecx, 0xfff
add rcx, rcx
movups xmm0, xmmword [rax + rcx*8 + 0x105c]
lea rcx, [rbp - 9]
movaps xmmword [rbp - 9], xmm0
call fcn.1400ac4d0
jmp 0x1401bd359
mov edx, dword [0x140464fd4]
mov ecx, ebx
test edx, edx
jle 0x1401bd247
mov r14, qword [0x140464e90]
movzx r9d, byte [rbp + 0x80]
mov rax, r14
movzx r8d, byte [rbp + 0x7f]
cmp byte [rax], r8b
jne 0x1401bd23d
cmp byte [rax + 1], r9b
je 0x1401bd272
inc ecx
add rax, 0x18
cmp ecx, edx
jl 0x1401bd232
lea rbx, str.E846:_Key_code_not_set
mov r13, qword [rsp + 0xf0]
mov rax, qword [rbp + 0x4f]
mov qword [rax], rsi
mov rax, rbx
add rsp, 0xa0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov r14, qword [r14 + rcx*8 + 8]
test r14, r14
je 0x1401bd247
mov rcx, qword [0x14046a328]
cmp r8b, 0x7e
jbe 0x1401bd298
mov dword [rcx], 0x20202020
jmp 0x1401bd2ae
mov word [rcx], 0x5f74
movzx eax, byte [rbp + 0x7f]
mov byte [rcx + 2], al
movzx eax, byte [rbp + 0x80]
mov byte [rcx + 3], al
mov byte [rcx + 4], 0x20
xor edx, edx
movzx ecx, byte [rbp + 0x80]
movzx eax, byte [rbp + 0x7f]
shl ecx, 8
add ecx, eax
neg ecx
call fcn.14018e700
mov rdx, qword [0x14046a328]
cmp byte [rax + 1], 0x74
je 0x1401bd2f2
mov r8, rdx
sub r8, rax
nop
movzx ecx, byte [rax]
mov byte [rax + r8 + 5], cl
lea rax, [rax + 1]
test cl, cl
jne 0x1401bd2e0
jmp 0x1401bd2f5
mov byte [rdx + 5], bl
mov rdi, 0xffffffffffffffff
mov rax, rdi
nop
inc rax
cmp byte [rdx + rax], bl
jne 0x1401bd300
movsxd rcx, eax
nop dword [rax + rax]
mov byte [rdx + rcx], 0x20
inc eax
inc rcx
cmp rcx, 0x11
jl 0x1401bd310
cdqe
mov rcx, r14
mov byte [rax + rdx], bl
mov edx, 0x7fffffff
call fcn.14005a290
mov rcx, qword [0x14046a328]
xor r8d, r8d
mov edx, edi
call fcn.140181960
inc rdi
cmp byte [r14 + rdi], bl
jne 0x1401bd342
mov rdx, rdi
xor r8d, r8d
mov rcx, r14
call fcn.140184570
cmp r15b, 0x3f
je 0x1401bd24e
test r15b, r15b
je 0x1401bd24e
mov eax, dword [rbp - 0x21]
cmp al, 0x20
je 0x1401bd24e
cmp al, 9
je 0x1401bd24e
lea rbx, str.E488:_Trailing_characters
jmp 0x1401bd24e