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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r13
sub rsp, 0x20
mov rsi, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x14002e7f4
mov ebp, 4
lea r13d, [rbp + 3]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x14002e7f4
cmp ecx, 0x29
jne 0x14002e382
cmp dword [rsi + 0x1c], 0
jne 0x14002e7f4
test dword [rsi + 0x80], edx
je 0x14002e81c
jmp 0x14002e6ac
cmp ecx, 0x2e
jne 0x14002e3a2
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.14002e998
mov rcx, rsi
call fcn.14002e2dc
jmp 0x14002e6ee
cmp ecx, 0x5c
jne 0x14002e515
mov rcx, rsi
call fcn.14002e2dc
mov ecx, dword [rsi + 0x80]
mov eax, ecx
and eax, 0x80
je 0x14002e3e0
cmp byte [rsi + 0x78], 0x62
jne 0x14002e3e0
mov edx, ebp
lea rcx, [rsi + 0x40]
call fcn.14002e998
mov rcx, rsi
call fcn.14002e2dc
jmp 0x14002e7e6
test eax, eax
je 0x14002e3ff
cmp byte [rsi + 0x78], 0x42
jne 0x14002e3ff
lea rcx, [rsi + 0x40]
mov edx, ebp
call fcn.14002e998
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], 1
jmp 0x14002e3d3
bt ecx, 8
jae 0x14002e4de
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.140030ce4
cmp eax, 0x7fffffff
je 0x14002e4de
mov edi, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test edi, edi
jne 0x14002e453
bt eax, 0x14
jae 0x14002e85b
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.14002fa7c
jmp 0x14002e6ee
bt eax, 9
jae 0x14002e462
cmp edi, 9
ja 0x14002e866
mov eax, edi
movsxd rcx, eax
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x14002e866
cmp qword [rsi + 0x38], rcx
jbe 0x14002e866
mov r8, qword [rsi + 0x20]
mov rdx, rcx
and ecx, 0x1f
shr rdx, 5
mov eax, 1
shl eax, cl
test dword [r8 + rdx*4], eax
je 0x14002e866
mov ecx, 0x28
call fcn.1400da2e0
lea rcx, vtable.std::_Node_back.0
mov qword [rsp + 0x40], rax
mov rdx, rax
and dword [rax + 0xc], 0
and qword [rax + 0x10], 0
and qword [rax + 0x18], 0
mov qword [rax], rcx
lea rcx, [rsi + 0x40]
mov dword [rax + 8], 0xf
mov dword [rax + 0x20], edi
call fcn.14002e960
jmp 0x14002e6ee
mov rcx, rsi
call fcn.140030468
test al, al
jne 0x14002e442
test dword [rsi + 0x80], 0x20000
je 0x14002e827
mov dl, 1
mov rcx, rsi
call fcn.14003016c
test al, al
je 0x14002e827
jmp 0x14002e6ee
cmp ecx, 0x5b
jne 0x14002e581
mov rcx, rsi
call fcn.14002e2dc
lea rcx, [rsi + 0x40]
call fcn.140030758
mov eax, dword [rsi + 0x7c]
cmp eax, 0x5e
jne 0x14002e546
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], 1
call fcn.14002e2dc
mov eax, dword [rsi + 0x7c]
test dword [rsi + 0x80], 0x20000000
je 0x14002e56a
cmp eax, 0x5d
jne 0x14002e56a
mov dl, al
lea rcx, [rsi + 0x40]
call fcn.1400307b4
mov rcx, rsi
call fcn.14002e2dc
mov rcx, rsi
call fcn.140030208
cmp dword [rsi + 0x7c], 0x5d
jne 0x14002e832
jmp 0x14002e395
cmp ecx, 0x28
jne 0x14002e674
mov rcx, rsi
call fcn.14002e2dc
inc dword [rsi + 0x1c]
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x14002e5ab
cmp dword [rsi + 0x7c], 0x29
je 0x14002e871
test al, 0x20
je 0x14002e5f3
cmp dword [rsi + 0x7c], 0x3f
jne 0x14002e5f3
mov rcx, rsi
call fcn.14002e2dc
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.14002e2dc
cmp ebx, 0x3a
je 0x14002e5fc
cmp ebx, 0x21
jne 0x14002e5e6
mov dl, 1
mov rcx, rsi
call fcn.14003069c
dec dword [rsi + 0x1c]
xor bl, bl
jmp 0x14002e668
cmp ebx, 0x3d
jne 0x14002e87c
xor edx, edx
jmp 0x14002e5d4
test dword [rsi + 0x70], 0x200
je 0x14002e606
mov rcx, rsi
call fcn.140030654
jmp 0x14002e663
mov edx, dword [rsi + 0x18]
inc edx
mov dword [rsi + 0x18], edx
cmp edx, 0x3e8
jae 0x14002e807
lea rcx, [rsi + 0x40]
call fcn.14002d870
mov rcx, rsi
mov rdi, rax
call fcn.14002d6d0
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.14002d7f4
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
inc edx
call fcn.14002def4
mov ecx, dword [rdi + 0x20]
mov r8, qword [rsi + 0x20]
mov edx, ecx
shr rdx, 5
and ecx, 0x1f
mov eax, dword [r8 + rdx*4]
bts eax, ecx
mov dword [r8 + rdx*4], eax
dec dword [rsi + 0x1c]
mov bl, 1
cmp dword [rsi + 0x7c], 0x29
jne 0x14002e83a
jmp 0x14002e6de
cmp ecx, 0x5e
jne 0x14002e681
lea edx, [rcx - 0x5c]
jmp 0x14002e3ca
cmp ecx, 0x24
jne 0x14002e68e
lea edx, [rcx - 0x21]
jmp 0x14002e3ca
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14002e850
cmp ecx, 0x3f
je 0x14002e850
cmp ecx, 0x7b
je 0x14002e850
cmp ecx, 0x7d
jne 0x14002e6bf
test dword [rsi + 0x80], edx
je 0x14002e845
jmp 0x14002e6d0
cmp ecx, 0x5d
jne 0x14002e6d0
test dword [rsi + 0x80], edx
je 0x14002e887
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.14002fa7c
mov bl, 1
mov rcx, rsi
call fcn.14002e2dc
test bl, bl
je 0x14002e7e6
mov eax, dword [rsi + 0x7c]
xor edi, edi
or ebx, 0xffffffff
cmp eax, 0x2a
je 0x14002e79f
cmp eax, 0x2b
jne 0x14002e70c
lea edi, [rbx + 2]
jmp 0x14002e79f
cmp eax, 0x3f
jne 0x14002e719
lea ebx, [rax - 0x3e]
jmp 0x14002e79f
cmp eax, 0x7b
jne 0x14002e7e6
mov rcx, rsi
call fcn.14002e2dc
mov edi, 0x7fffffff
mov r9d, r13d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.140030ce4
cmp eax, edi
je 0x14002e813
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x14002e757
mov ebx, edi
jmp 0x14002e788
mov rcx, rsi
call fcn.14002e2dc
cmp dword [rsi + 0x7c], 0x7d
je 0x14002e792
mov ebx, 0x7fffffff
mov r9d, r13d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.140030ce4
cmp eax, ebx
je 0x14002e88f
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x14002e898
cmp ebx, 0xffffffff
je 0x14002e79f
cmp ebx, edi
jl 0x14002e898
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], ebp
call fcn.14002e2dc
test dword [rsi + 0x80], 0x400
je 0x14002e7cd
cmp dword [rsi + 0x7c], 0x3f
jne 0x14002e7cd
xor bpl, bpl
mov rcx, rsi
call fcn.14002e2dc
jmp 0x14002e7d0
mov bpl, 1
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.140030830
mov ebp, 4
mov ecx, dword [rsi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x14002e354
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rsi
ret
mov ecx, 0xc
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xregex_error_enum_std::regex_constants::error_type_]
int3
mov edx, r13d
call fcn.14002d4e8
int3
mov edx, 5
call fcn.14002d4e8
int3
mov edx, 2
call fcn.14002d4e8
int3
mov edx, ebp
call fcn.14002d4e8
int3
mov edx, 5
call fcn.14002d4e8
int3
mov edx, 6
call fcn.14002d4e8
int3
mov edx, 0xa
call fcn.14002d4e8
int3
mov edx, 2
call fcn.14002d4e8
int3
mov edx, 3
call fcn.14002d4e8
int3
mov edx, 5
call fcn.14002d4e8
int3
mov edx, 0xe
call fcn.14002d4e8
int3
mov edx, ebp
call fcn.14002d4e8
int3
mov edx, r13d
call fcn.14002d4e8
int3
mov edx, r13d
call fcn.14002d4e8
int3