Function at 0x14002f12c
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 0x14002f5f8
mov ebp, 4
lea r13d, [rbp + 3]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x14002f5f8
cmp ecx, 0x29
jne 0x14002f186
cmp dword [rsi + 0x1c], 0
jne 0x14002f5f8
test dword [rsi + 0x80], edx
je 0x14002f620
jmp 0x14002f4b0
cmp ecx, 0x2e
jne 0x14002f1a6
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.14002f79c
mov rcx, rsi
call fcn.14002f0e0
jmp 0x14002f4f2
cmp ecx, 0x5c
jne 0x14002f319
mov rcx, rsi
call fcn.14002f0e0
mov ecx, dword [rsi + 0x80]
mov eax, ecx
and eax, 0x80
je 0x14002f1e4
cmp byte [rsi + 0x78], 0x62
jne 0x14002f1e4
mov edx, ebp
lea rcx, [rsi + 0x40]
call fcn.14002f79c
mov rcx, rsi
call fcn.14002f0e0
jmp 0x14002f5ea
test eax, eax
je 0x14002f203
cmp byte [rsi + 0x78], 0x42
jne 0x14002f203
lea rcx, [rsi + 0x40]
mov edx, ebp
call fcn.14002f79c
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], 1
jmp 0x14002f1d7
bt ecx, 8
jae 0x14002f2e2
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.140031b0c
cmp eax, 0x7fffffff
je 0x14002f2e2
mov edi, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test edi, edi
jne 0x14002f257
bt eax, 0x14
jae 0x14002f65f
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.140030894
jmp 0x14002f4f2
bt eax, 9
jae 0x14002f266
cmp edi, 9
ja 0x14002f66a
mov eax, edi
movsxd rcx, eax
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x14002f66a
cmp qword [rsi + 0x38], rcx
jbe 0x14002f66a
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 0x14002f66a
mov ecx, 0x28
call fcn.1400ed2f0
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.14002f764
jmp 0x14002f4f2
mov rcx, rsi
call fcn.140031290
test al, al
jne 0x14002f246
test dword [rsi + 0x80], 0x20000
je 0x14002f62b
mov dl, 1
mov rcx, rsi
call fcn.140030f94
test al, al
je 0x14002f62b
jmp 0x14002f4f2
cmp ecx, 0x5b
jne 0x14002f385
mov rcx, rsi
call fcn.14002f0e0
lea rcx, [rsi + 0x40]
call fcn.140031580
mov eax, dword [rsi + 0x7c]
cmp eax, 0x5e
jne 0x14002f34a
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], 1
call fcn.14002f0e0
mov eax, dword [rsi + 0x7c]
test dword [rsi + 0x80], 0x20000000
je 0x14002f36e
cmp eax, 0x5d
jne 0x14002f36e
mov dl, al
lea rcx, [rsi + 0x40]
call fcn.1400315dc
mov rcx, rsi
call fcn.14002f0e0
mov rcx, rsi
call fcn.140031030
cmp dword [rsi + 0x7c], 0x5d
jne 0x14002f636
jmp 0x14002f199
cmp ecx, 0x28
jne 0x14002f478
mov rcx, rsi
call fcn.14002f0e0
inc dword [rsi + 0x1c]
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x14002f3af
cmp dword [rsi + 0x7c], 0x29
je 0x14002f675
test al, 0x20
je 0x14002f3f7
cmp dword [rsi + 0x7c], 0x3f
jne 0x14002f3f7
mov rcx, rsi
call fcn.14002f0e0
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.14002f0e0
cmp ebx, 0x3a
je 0x14002f400
cmp ebx, 0x21
jne 0x14002f3ea
mov dl, 1
mov rcx, rsi
call fcn.1400314c4
dec dword [rsi + 0x1c]
xor bl, bl
jmp 0x14002f46c
cmp ebx, 0x3d
jne 0x14002f680
xor edx, edx
jmp 0x14002f3d8
test dword [rsi + 0x70], 0x200
je 0x14002f40a
mov rcx, rsi
call fcn.14003147c
jmp 0x14002f467
mov edx, dword [rsi + 0x18]
inc edx
mov dword [rsi + 0x18], edx
cmp edx, 0x3e8
jae 0x14002f60b
lea rcx, [rsi + 0x40]
call fcn.14002e690
mov rcx, rsi
mov rdi, rax
call fcn.14002e4f0
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.14002e614
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
inc edx
call fcn.14002ecf8
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 0x14002f63e
jmp 0x14002f4e2
cmp ecx, 0x5e
jne 0x14002f485
lea edx, [rcx - 0x5c]
jmp 0x14002f1ce
cmp ecx, 0x24
jne 0x14002f492
lea edx, [rcx - 0x21]
jmp 0x14002f1ce
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14002f654
cmp ecx, 0x3f
je 0x14002f654
cmp ecx, 0x7b
je 0x14002f654
cmp ecx, 0x7d
jne 0x14002f4c3
test dword [rsi + 0x80], edx
je 0x14002f649
jmp 0x14002f4d4
cmp ecx, 0x5d
jne 0x14002f4d4
test dword [rsi + 0x80], edx
je 0x14002f68b
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.140030894
mov bl, 1
mov rcx, rsi
call fcn.14002f0e0
test bl, bl
je 0x14002f5ea
mov eax, dword [rsi + 0x7c]
xor edi, edi
or ebx, 0xffffffff
cmp eax, 0x2a
je 0x14002f5a3
cmp eax, 0x2b
jne 0x14002f510
lea edi, [rbx + 2]
jmp 0x14002f5a3
cmp eax, 0x3f
jne 0x14002f51d
lea ebx, [rax - 0x3e]
jmp 0x14002f5a3
cmp eax, 0x7b
jne 0x14002f5ea
mov rcx, rsi
call fcn.14002f0e0
mov edi, 0x7fffffff
mov r9d, r13d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.140031b0c
cmp eax, edi
je 0x14002f617
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x14002f55b
mov ebx, edi
jmp 0x14002f58c
mov rcx, rsi
call fcn.14002f0e0
cmp dword [rsi + 0x7c], 0x7d
je 0x14002f596
mov ebx, 0x7fffffff
mov r9d, r13d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.140031b0c
cmp eax, ebx
je 0x14002f693
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x14002f69c
cmp ebx, 0xffffffff
je 0x14002f5a3
cmp ebx, edi
jl 0x14002f69c
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], ebp
call fcn.14002f0e0
test dword [rsi + 0x80], 0x400
je 0x14002f5d1
cmp dword [rsi + 0x7c], 0x3f
jne 0x14002f5d1
xor bpl, bpl
mov rcx, rsi
call fcn.14002f0e0
jmp 0x14002f5d4
mov bpl, 1
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.140031658
mov ebp, 4
mov ecx, dword [rsi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x14002f158
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.14002e308
int3
mov edx, 5
call fcn.14002e308
int3
mov edx, 2
call fcn.14002e308
int3
mov edx, ebp
call fcn.14002e308
int3
mov edx, 5
call fcn.14002e308
int3
mov edx, 6
call fcn.14002e308
int3
mov edx, 0xa
call fcn.14002e308
int3
mov edx, 2
call fcn.14002e308
int3
mov edx, 3
call fcn.14002e308
int3
mov edx, 5
call fcn.14002e308
int3
mov edx, 0xe
call fcn.14002e308
int3
mov edx, ebp
call fcn.14002e308
int3
mov edx, r13d
call fcn.14002e308
int3
mov edx, r13d
call fcn.14002e308
int3