Function at 0x14003c890
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 0x14003cd4d
mov ebp, 4
lea r13d, [rbp + 3]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x14003cd4d
cmp ecx, 0x29
jne 0x14003c8ea
cmp dword [rsi + 0x1c], 0
jne 0x14003cd4d
test dword [rsi + 0x80], edx
je 0x14003cd69
jmp 0x14003cc05
cmp ecx, 0x2e
jne 0x14003c90a
lea rcx, [rsi + 0x40]
mov edx, 5
call fcn.14003cee4
mov rcx, rsi
call fcn.14003c844
jmp 0x14003cc47
cmp ecx, 0x5c
jne 0x14003ca7d
mov rcx, rsi
call fcn.14003c844
mov ecx, dword [rsi + 0x80]
mov eax, ecx
and eax, 0x80
je 0x14003c948
cmp byte [rsi + 0x78], 0x62
jne 0x14003c948
mov edx, ebp
lea rcx, [rsi + 0x40]
call fcn.14003cee4
mov rcx, rsi
call fcn.14003c844
jmp 0x14003cd3f
test eax, eax
je 0x14003c967
cmp byte [rsi + 0x78], 0x42
jne 0x14003c967
lea rcx, [rsi + 0x40]
mov edx, ebp
call fcn.14003cee4
mov rax, qword [rsi + 0x48]
xor dword [rax + 0xc], 1
jmp 0x14003c93b
bt ecx, 8
jae 0x14003ca46
mov edx, 0xa
mov r8d, 0x7fffffff
mov rcx, rsi
lea r9d, [rdx - 7]
call fcn.14004a5e8
cmp eax, 0x7fffffff
je 0x14003ca46
mov ebx, dword [rsi + 0x74]
mov eax, dword [rsi + 0x80]
test ebx, ebx
jne 0x14003c9bb
bt eax, 0x14
jae 0x14003cda8
mov dl, byte [rsi + 0x74]
lea rcx, [rsi + 0x40]
call fcn.140042b64
jmp 0x14003cc47
bt eax, 9
jae 0x14003c9ca
cmp ebx, 9
ja 0x14003cdb3
mov eax, ebx
movsxd rcx, ebx
mov eax, dword [rsi + 0x18]
cmp rax, rcx
jb 0x14003cdb3
cmp qword [rsi + 0x38], rcx
jbe 0x14003cdb3
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 0x14003cdb3
mov ecx, 0x28
call fcn.140057348
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], reloc.WS2_32.dll_ntohs
mov dword [rax + 0x20], ebx
call fcn.14003ceac
jmp 0x14003cc47
mov rcx, rsi
call fcn.140047020
test al, al
jne 0x14003c9aa
test dword [rsi + 0x80], 0x20000
je 0x14003cd74
mov dl, 1
mov rcx, rsi
call fcn.140046d24
test al, al
je 0x14003cd74
jmp 0x14003cc47
cmp ecx, 0x5b
jne 0x14003cae9
mov rcx, rsi
call fcn.14003c844
lea rcx, [rsi + 0x40]
call fcn.140047310
mov eax, dword [rsi + 0x7c]
cmp eax, 0x5e
jne 0x14003caae
mov rax, qword [rsi + 0x48]
mov rcx, rsi
xor dword [rax + 0xc], 1
call fcn.14003c844
mov eax, dword [rsi + 0x7c]
test dword [rsi + 0x80], 0x20000000
je 0x14003cad2
cmp eax, 0x5d
jne 0x14003cad2
mov dl, al
lea rcx, [rsi + 0x40]
call fcn.14004736c
mov rcx, rsi
call fcn.14003c844
mov rcx, rsi
call fcn.140046dc0
cmp dword [rsi + 0x7c], 0x5d
jne 0x14003cd7f
jmp 0x14003c8fd
cmp ecx, 0x28
jne 0x14003cbcd
mov rcx, rsi
call fcn.14003c844
inc dword [rsi + 0x1c]
mov eax, dword [rsi + 0x80]
bt eax, 0x1b
jb 0x14003cb13
cmp dword [rsi + 0x7c], 0x29
je 0x14003cdbe
test al, 0x20
je 0x14003cb58
cmp dword [rsi + 0x7c], 0x3f
jne 0x14003cb58
mov rcx, rsi
call fcn.14003c844
mov ebx, dword [rsi + 0x7c]
mov rcx, rsi
call fcn.14003c844
cmp ebx, 0x3a
je 0x14003cb61
cmp ebx, 0x21
jne 0x14003cb4b
mov dl, 1
mov rcx, rsi
call fcn.140047254
dec dword [rsi + 0x1c]
xor bl, bl
jmp 0x14003cbc1
cmp ebx, 0x3d
jne 0x14003cdc9
xor edx, edx
jmp 0x14003cb3c
test dword [rsi + 0x70], 0x200
je 0x14003cb6b
mov rcx, rsi
call fcn.14004720c
jmp 0x14003cbbc
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x40]
inc edx
mov dword [rsi + 0x18], edx
call fcn.1400333fc
mov rcx, rsi
mov rdi, rax
call fcn.14003325c
mov rdx, rdi
lea rcx, [rsi + 0x40]
call fcn.140033380
mov edx, dword [rsi + 0x18]
lea rcx, [rsi + 0x20]
inc edx
call fcn.1400309b8
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 0x14003cd87
jmp 0x14003cc37
cmp ecx, 0x5e
jne 0x14003cbda
lea edx, [rcx - 0x5c]
jmp 0x14003c932
cmp ecx, 0x24
jne 0x14003cbe7
lea edx, [rcx - 0x21]
jmp 0x14003c932
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14003cd9d
cmp ecx, 0x3f
je 0x14003cd9d
cmp ecx, 0x7b
je 0x14003cd9d
cmp ecx, 0x7d
jne 0x14003cc18
test dword [rsi + 0x80], edx
je 0x14003cd92
jmp 0x14003cc29
cmp ecx, 0x5d
jne 0x14003cc29
test dword [rsi + 0x80], edx
je 0x14003cdd4
mov dl, byte [rsi + 0x78]
lea rcx, [rsi + 0x40]
call fcn.140042b64
mov bl, 1
mov rcx, rsi
call fcn.14003c844
test bl, bl
je 0x14003cd3f
mov eax, dword [rsi + 0x7c]
xor edi, edi
or ebx, 0xffffffff
cmp eax, 0x2a
je 0x14003ccf8
cmp eax, 0x2b
jne 0x14003cc65
lea edi, [rbx + 2]
jmp 0x14003ccf8
cmp eax, 0x3f
jne 0x14003cc72
lea ebx, [rax - 0x3e]
jmp 0x14003ccf8
cmp eax, 0x7b
jne 0x14003cd3f
mov rcx, rsi
call fcn.14003c844
mov edi, 0x7fffffff
mov r9d, r13d
mov r8d, edi
mov edx, 0xa
mov rcx, rsi
call fcn.14004a5e8
cmp eax, edi
je 0x14003cd60
cmp dword [rsi + 0x7c], 0x2c
mov edi, dword [rsi + 0x74]
je 0x14003ccb0
mov ebx, edi
jmp 0x14003cce1
mov rcx, rsi
call fcn.14003c844
cmp dword [rsi + 0x7c], 0x7d
je 0x14003cceb
mov ebx, 0x7fffffff
mov r9d, r13d
mov r8d, ebx
mov edx, 0xa
mov rcx, rsi
call fcn.14004a5e8
cmp eax, ebx
je 0x14003cddc
mov ebx, dword [rsi + 0x74]
cmp dword [rsi + 0x7c], 0x7d
jne 0x14003cde5
cmp ebx, 0xffffffff
je 0x14003ccf8
cmp ebx, edi
jl 0x14003cde5
mov rax, qword [rsi + 0x48]
mov rcx, rsi
or dword [rax + 0xc], ebp
call fcn.14003c844
test dword [rsi + 0x80], 0x400
je 0x14003cd26
cmp dword [rsi + 0x7c], 0x3f
jne 0x14003cd26
xor bpl, bpl
mov rcx, rsi
call fcn.14003c844
jmp 0x14003cd29
mov bpl, 1
lea rcx, [rsi + 0x40]
mov r9b, bpl
mov r8d, ebx
mov edx, edi
call fcn.1400473e8
mov ebp, 4
mov ecx, dword [rsi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x14003c8bc
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.140033074
int3
mov edx, 5
call fcn.140033074
int3
mov edx, 2
call fcn.140033074
int3
mov edx, ebp
call fcn.140033074
int3
mov edx, 5
call fcn.140033074
int3
mov edx, 6
call fcn.140033074
int3
mov edx, 0xa
call fcn.140033074
int3
mov edx, 2
call fcn.140033074
int3
mov edx, 3
call fcn.140033074
int3
mov edx, 5
call fcn.140033074
int3
mov edx, reloc.WS2_32.dll_ntohl
call fcn.140033074
int3
mov edx, ebp
call fcn.140033074
int3
mov edx, r13d
call fcn.140033074
int3
mov edx, r13d
call fcn.140033074
int3