Function at 0x1800c81d0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x1800c8552
nop dword [rax + rax]
cmp ecx, 0x7c
je 0x1800c8552
cmp ecx, 0x29
jne 0x1800c821d
cmp dword [rbx + 0x1c], 0
jne 0x1800c8552
test dword [rbx + 0x80], 0x10000000
je 0x1800c8568
jmp 0x1800c84db
cmp ecx, 0x2e
jne 0x1800c8235
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.1800c85a0
jmp 0x1800c84e8
cmp ecx, 0x5c
jne 0x1800c82d9
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800c828a
cmp byte [rcx], 0x5c
jne 0x1800c8283
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c8280
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c8271
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c8283
test r8b, 0x10
jne 0x1800c8280
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c8283
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
test byte [rbx + 0x80], 0x80
je 0x1800c82cc
movzx eax, byte [rbx + 0x78]
cmp al, 0x62
jne 0x1800c82ad
mov edx, 4
jmp 0x1800c842f
cmp al, 0x42
jne 0x1800c82cc
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.1800c85a0
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
jmp 0x1800c8438
mov rcx, rbx
call fcn.1800c9380
jmp 0x1800c853c
cmp ecx, 0x5b
jne 0x1800c8349
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800c832a
cmp byte [rcx], 0x5c
jne 0x1800c8323
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c8320
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c8311
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c8323
test r8b, 0x10
jne 0x1800c8320
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c8323
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
mov rcx, rbx
call fcn.1800c9210
cmp dword [rbx + 0x7c], 0x5d
jne 0x1800c8573
jmp 0x1800c84e8
cmp ecx, 0x28
jne 0x1800c841d
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800c839e
cmp byte [rcx], 0x5c
jne 0x1800c8397
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c8394
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c8385
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c8397
test r8b, 0x10
jne 0x1800c8394
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c8397
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
mov rcx, rbx
call fcn.1800c94f0
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x1800c8589
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800c8407
cmp byte [rcx], 0x5c
jne 0x1800c8400
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c83fd
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c83ee
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c8400
test r8b, 0x10
jne 0x1800c83fd
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c8400
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
test dil, dil
je 0x1800c8544
jmp 0x1800c853c
cmp ecx, 0x5e
jne 0x1800c8427
lea edx, [rcx - 0x5c]
jmp 0x1800c842f
cmp ecx, 0x24
jne 0x1800c8491
lea edx, [rcx - 0x21]
lea rcx, [rbx + 0x40]
call fcn.1800c85a0
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x1800c8484
cmp byte [rcx], 0x5c
jne 0x1800c847d
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c847a
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c846b
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c847d
test r8b, 0x10
jne 0x1800c847a
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c847d
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
jmp 0x1800c8544
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x1800c855d
cmp ecx, 0x3f
je 0x1800c855d
cmp ecx, 0x7b
je 0x1800c855d
cmp ecx, 0x7d
jne 0x1800c84c6
test dword [rbx + 0x80], 0x10000000
je 0x1800c857e
jmp 0x1800c84db
cmp ecx, 0x5d
jne 0x1800c84db
test dword [rbx + 0x80], 0x10000000
je 0x1800c8594
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.1800c9980
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x1800c8534
cmp byte [rcx], 0x5c
jne 0x1800c852d
lea rdx, [rcx + 1]
mov rcx, rdx
cmp rdx, rax
je 0x1800c852a
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1800c851b
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1800c852d
test r8b, 0x10
jne 0x1800c852a
movzx eax, byte [rdx]
sub al, 0x7b
test al, 0xfd
je 0x1800c852d
mov rcx, qword [rbx]
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.1800c6cc0
mov rcx, rbx
call fcn.1800c9720
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x1800c81f0
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov edx, 0xa
call fcn.1800c6cb0
int3
mov edx, 5
call fcn.1800c6cb0
int3
mov edx, 4
call fcn.1800c6cb0
int3
mov edx, 6
call fcn.1800c6cb0
int3
mov edx, 5
call fcn.1800c6cb0
int3
mov edx, 4
call fcn.1800c6cb0
int3