Function at 0x140018570
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x14001893f
mov r14, 0xffffffffffffffff
cmp ecx, 0x7c
je 0x14001893f
cmp ecx, 0x29
jne 0x1400185cf
cmp dword [rbx + 0x1c], 0
jne 0x14001893f
test dword [rbx + 0x80], 0x10000000
je 0x140018968
jmp 0x140018843
cmp ecx, 0x2e
jne 0x1400185e7
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.14001b640
jmp 0x140018850
cmp ecx, 0x5c
jne 0x14001865c
mov rcx, rbx
call fcn.14001b6d0
test byte [rbx + 0x80], 0x80
je 0x14001864f
movzx eax, word [rbx + 0x78]
cmp ax, 0x62
jne 0x140018622
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001b640
mov rcx, rbx
call fcn.14001b6d0
jmp 0x140018931
cmp ax, 0x42
jne 0x14001864f
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001b640
mov rax, qword [rbx + 0x48]
mov rcx, rbx
xor dword [rax + 0xc], 1
add rax, 0xc
call fcn.14001b6d0
jmp 0x140018931
mov rcx, rbx
call fcn.1400189b0
jmp 0x140018858
cmp ecx, 0x5b
jne 0x140018680
mov rcx, rbx
call fcn.14001b6d0
mov rcx, rbx
call fcn.140018dd0
cmp dword [rbx + 0x7c], 0x5d
jne 0x140018976
jmp 0x140018850
cmp ecx, 0x28
jne 0x1400187b9
mov rcx, rbx
call fcn.14001b6d0
inc dword [rbx + 0x1c]
mov eax, dword [rbx + 0x80]
bt eax, 0x1b
jb 0x1400186aa
cmp dword [rbx + 0x7c], 0x29
je 0x140018968
test al, 0x20
je 0x14001870b
cmp dword [rbx + 0x7c], 0x3f
jne 0x14001870b
mov rcx, rbx
call fcn.14001b6d0
mov edi, dword [rbx + 0x7c]
mov rcx, rbx
call fcn.14001b6d0
mov rcx, rbx
cmp edi, 0x3a
jne 0x1400186d9
call fcn.14001a2f0
jmp 0x140018793
cmp edi, 0x21
jne 0x1400186f0
mov dl, 1
call fcn.140019a40
dec dword [rbx + 0x1c]
xor dil, dil
jmp 0x140018799
cmp edi, 0x3d
jne 0x140018992
xor edx, edx
call fcn.140019a40
dec dword [rbx + 0x1c]
xor dil, dil
jmp 0x140018799
test dword [rbx + 0x70], 0x200
lea rcx, [rbx + 0x40]
je 0x14001873b
mov edx, 8
call fcn.14001b640
mov rcx, rbx
mov rdi, rax
call fcn.140019720
mov rdx, rdi
lea rcx, [rbx + 0x40]
call fcn.14001aaa0
jmp 0x140018793
inc dword [rbx + 0x18]
mov edx, dword [rbx + 0x18]
call fcn.140018b70
mov rcx, rbx
mov rsi, rax
call fcn.140019720
mov rdx, rsi
lea rcx, [rbx + 0x40]
call fcn.14001aaa0
mov edx, dword [rbx + 0x18]
lea rcx, [rbx + 0x20]
add edx, 1
cmovb rdx, r14
xor r8d, r8d
call fcn.14001c5f0
mov r8d, dword [rsi + 0x20]
mov rcx, qword [rbx + 0x20]
mov eax, r8d
shr rax, 5
and r8d, 0x1f
lea rdx, [rcx + rax*4]
mov eax, dword [rcx + rax*4]
bts eax, r8d
mov dword [rdx], eax
dec dword [rbx + 0x1c]
mov dil, 1
cmp dword [rbx + 0x7c], 0x29
jne 0x140018968
mov rcx, rbx
call fcn.14001b6d0
test dil, dil
je 0x140018931
jmp 0x140018858
cmp ecx, 0x5e
jne 0x1400187d9
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.14001b640
mov rcx, rbx
call fcn.14001b6d0
jmp 0x140018931
cmp ecx, 0x24
jne 0x1400187f9
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.14001b640
mov rcx, rbx
call fcn.14001b6d0
jmp 0x140018931
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14001895a
cmp ecx, 0x3f
je 0x14001895a
cmp ecx, 0x7b
je 0x14001895a
cmp ecx, 0x7d
jne 0x14001882e
test dword [rbx + 0x80], 0x10000000
je 0x140018984
jmp 0x140018843
cmp ecx, 0x5d
jne 0x140018843
test dword [rbx + 0x80], 0x10000000
je 0x140018976
movzx edx, word [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.1400179c0
mov rcx, rbx
call fcn.14001b6d0
mov eax, dword [rbx + 0x7c]
xor esi, esi
mov edi, r14d
cmp eax, 0x2a
je 0x1400188e9
cmp eax, 0x2b
jne 0x140018873
lea esi, [rax - 0x2a]
jmp 0x1400188e9
cmp eax, 0x3f
jne 0x14001887d
lea edi, [rax - 0x3e]
jmp 0x1400188e9
cmp eax, 0x7b
jne 0x140018931
mov rcx, rbx
call fcn.14001b6d0
mov rcx, rbx
call fcn.140019650
test al, al
je 0x14001899d
mov eax, dword [rbx + 0x7c]
mov esi, dword [rbx + 0x74]
cmp eax, 0x2c
je 0x1400188ad
mov edi, esi
jmp 0x1400188d3
mov rcx, rbx
call fcn.14001b6d0
mov eax, dword [rbx + 0x7c]
cmp eax, 0x7d
je 0x1400188dc
mov rcx, rbx
call fcn.140019650
test al, al
je 0x14001899d
mov edi, dword [rbx + 0x74]
mov eax, dword [rbx + 0x7c]
cmp eax, 0x7d
jne 0x14001899d
cmp edi, r14d
je 0x1400188e9
cmp edi, esi
jl 0x14001899d
mov rax, qword [rbx + 0x48]
mov rcx, rbx
or dword [rax + 0xc], 4
add rax, 0xc
call fcn.14001b6d0
test dword [rbx + 0x80], 0x400
je 0x14001891c
cmp dword [rbx + 0x7c], 0x3f
jne 0x14001891c
xor bpl, bpl
mov rcx, rbx
call fcn.14001b6d0
jmp 0x14001891f
mov bpl, 1
lea rcx, [rbx + 0x40]
movzx r9d, bpl
mov r8d, edi
mov edx, esi
call fcn.140018240
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, r14d
jne 0x1400185a2
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
mov edx, 0xa
mov rcx, rbx
call fcn.14001ab50
int3
mov edx, 5
mov rcx, rbx
call fcn.14001ab50
int3
mov edx, 4
mov rcx, rbx
call fcn.14001ab50
int3
mov edx, 6
mov rcx, rbx
call fcn.14001ab50
int3
mov edx, 0xe
call fcn.14001ab50
int3
mov edx, 7
mov rcx, rbx
call fcn.14001ab50
int3