Function at 0x140012aa4
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 0x140012f61
mov ebp, 4
lea r13d, [rbp + 3]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x140012f61
cmp ecx, 0x29
jne 0x140012afe
cmp dword [rsi + 0x1c], 0
jne 0x140012f61
test dword [rsi + 0x80], edx
je 0x140012f7d
jmp 0x140012e19
cmp ecx, 0x2e
jne 0x140012b1e
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.1400130f8
mov rcx, rsi
call fcn.140012a58
jmp 0x140012e5b
cmp ecx, 0x5c
jne 0x140012c91
mov rcx, rsi
call fcn.140012a58
mov ecx, dword [rsi + 0x80]
mov eax, ecx
and eax, 0x80
je 0x140012b5c
cmp byte [rsi + 0x78], 0x62
jne 0x140012b5c
mov edx, ebp
lea rcx, [rsi + 0x40]
call fcn.1400130f8
mov rcx, rsi
call fcn.140012a58
jmp 0x140012f53
test eax, eax
je 0x140012b7b
cmp byte [rsi + 0x78], 0x42
jne 0x140012b7b
lea rcx, [rsi + 0x40]
mov edx, ebp
call fcn.1400130f8
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], 1
jmp 0x140012b4f
bt ecx, 8
jae 0x140012c5a
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.140014328
cmp eax, 0x7fffffff
je 0x140012c5a
mov edi, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test edi, edi
jne 0x140012bcf
bt eax, 0x14
jae 0x140012fbc
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.140013834
jmp 0x140012e5b
bt eax, 9
jae 0x140012bde
cmp edi, 9
ja 0x140012fc7
mov eax, edi
movsxd rcx, eax
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x140012fc7
cmp qword [rsi + 0x38], rcx
jbe 0x140012fc7
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 0x140012fc7
mov ecx, 0x28
call fcn.1400b8d70
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.1400130c0
jmp 0x140012e5b
mov rcx, rsi
call fcn.140013c8c
test al, al
jne 0x140012bbe
test dword [rsi + 0x80], 0x20000
je 0x140012f88
mov dl, 1
mov rcx, rsi
call fcn.140013990
test al, al
je 0x140012f88
jmp 0x140012e5b
cmp ecx, 0x5b
jne 0x140012cfd
mov rcx, rsi
call fcn.140012a58
lea rcx, [rsi + 0x40]
call fcn.140013f7c
mov eax, dword [rsi + 0x7c]
cmp eax, 0x5e
jne 0x140012cc2
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], 1
call fcn.140012a58
mov eax, dword [rsi + 0x7c]
test dword [rsi + 0x80], 0x20000000
je 0x140012ce6
cmp eax, 0x5d
jne 0x140012ce6
mov dl, al
lea rcx, [rsi + 0x40]
call fcn.140013fd8
mov rcx, rsi
call fcn.140012a58
mov rcx, rsi
call fcn.140013a2c
cmp dword [rsi + 0x7c], 0x5d
jne 0x140012f93
jmp 0x140012b11
cmp ecx, 0x28
jne 0x140012de1
mov rcx, rsi
call fcn.140012a58
inc dword [rsi + 0x1c]
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x140012d27
cmp dword [rsi + 0x7c], 0x29
je 0x140012fd2
test al, 0x20
je 0x140012d6c
cmp dword [rsi + 0x7c], 0x3f
jne 0x140012d6c
mov rcx, rsi
call fcn.140012a58
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.140012a58
cmp ebx, 0x3a
je 0x140012d75
cmp ebx, 0x21
jne 0x140012d5f
mov dl, 1
mov rcx, rsi
call fcn.140013ec0
dec dword [rsi + 0x1c]
xor bl, bl
jmp 0x140012dd5
cmp ebx, 0x3d
jne 0x140012fdd
xor edx, edx
jmp 0x140012d50
test dword [rsi + 0x70], 0x200
je 0x140012d7f
mov rcx, rsi
call fcn.140013e78
jmp 0x140012dd0
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x40]
inc edx
mov dword [rsi + 0x18], edx
call fcn.1400120c8
mov rcx, rsi
mov rdi, rax
call fcn.140011f28
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.14001204c
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
inc edx
call fcn.1400110b4
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 0x140012f9b
jmp 0x140012e4b
cmp ecx, 0x5e
jne 0x140012dee
lea edx, [rcx - 0x5c]
jmp 0x140012b46
cmp ecx, 0x24
jne 0x140012dfb
lea edx, [rcx - 0x21]
jmp 0x140012b46
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140012fb1
cmp ecx, 0x3f
je 0x140012fb1
cmp ecx, 0x7b
je 0x140012fb1
cmp ecx, 0x7d
jne 0x140012e2c
test dword [rsi + 0x80], edx
je 0x140012fa6
jmp 0x140012e3d
cmp ecx, 0x5d
jne 0x140012e3d
test dword [rsi + 0x80], edx
je 0x140012fe8
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.140013834
mov bl, 1
mov rcx, rsi
call fcn.140012a58
test bl, bl
je 0x140012f53
mov eax, dword [rsi + 0x7c]
xor edi, edi
or ebx, 0xffffffff
cmp eax, 0x2a
je 0x140012f0c
cmp eax, 0x2b
jne 0x140012e79
lea edi, [rbx + 2]
jmp 0x140012f0c
cmp eax, 0x3f
jne 0x140012e86
lea ebx, [rax - 0x3e]
jmp 0x140012f0c
cmp eax, 0x7b
jne 0x140012f53
mov rcx, rsi
call fcn.140012a58
mov edi, 0x7fffffff
mov r9d, r13d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.140014328
cmp eax, edi
je 0x140012f74
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x140012ec4
mov ebx, edi
jmp 0x140012ef5
mov rcx, rsi
call fcn.140012a58
cmp dword [rsi + 0x7c], 0x7d
je 0x140012eff
mov ebx, 0x7fffffff
mov r9d, r13d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.140014328
cmp eax, ebx
je 0x140012ff0
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x140012ff9
cmp ebx, 0xffffffff
je 0x140012f0c
cmp ebx, edi
jl 0x140012ff9
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], ebp
call fcn.140012a58
test dword [rsi + 0x80], 0x400
je 0x140012f3a
cmp dword [rsi + 0x7c], 0x3f
jne 0x140012f3a
xor bpl, bpl
mov rcx, rsi
call fcn.140012a58
jmp 0x140012f3d
mov bpl, 1
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.140014054
mov ebp, 4
mov ecx, dword [rsi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x140012ad0
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rsi
ret
mov edx, r13d
call fcn.140011d40
int3
mov edx, 5
call fcn.140011d40
int3
mov edx, 2
call fcn.140011d40
int3
mov edx, ebp
call fcn.140011d40
int3
mov edx, 5
call fcn.140011d40
int3
mov edx, 6
call fcn.140011d40
int3
mov edx, 0xa
call fcn.140011d40
int3
mov edx, 2
call fcn.140011d40
int3
mov edx, 3
call fcn.140011d40
int3
mov edx, 5
call fcn.140011d40
int3
mov edx, 0xe
call fcn.140011d40
int3
mov edx, ebp
call fcn.140011d40
int3
mov edx, r13d
call fcn.140011d40
int3
mov edx, r13d
call fcn.140011d40
int3