Function at 0x14001f220
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
xor al, al
mov rbx, rcx
cmp dword [rcx + 0x7c], 0xffffffff
je 0x14001f58e
mov esi, 0xfffd
mov ecx, dword [rbx + 0x7c]
cmp ecx, 0x7c
je 0x14001f58e
cmp ecx, 0x29
jne 0x14001f26e
cmp dword [rbx + 0x1c], 0
jne 0x14001f58e
test dword [rbx + 0x80], 0x10000000
je 0x14001f59e
cmp ecx, 0x2e
jne 0x14001f2d9
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.14001f7b0
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x14001f2cc
cmp word [rcx], 0x5c
jne 0x14001f2c8
add rcx, 2
cmp rcx, rax
je 0x14001f2c8
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001f2b4
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001f2c5
test dl, 0x10
jne 0x14001f2c8
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x14001f2c8
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.14001da80
jmp 0x14001f57a
cmp ecx, 0x5c
jne 0x14001f3a2
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x14001f32c
cmp word [rax], cx
jne 0x14001f328
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001f328
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001f314
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001f325
test dl, 0x10
jne 0x14001f328
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x14001f328
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.14001da80
mov eax, dword [rbx + 0x80]
and eax, 0x80
je 0x14001f363
cmp word [rbx + 0x78], 0x62
jne 0x14001f363
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001f7b0
mov rcx, rbx
call fcn.14001f1c0
jmp 0x14001f582
test eax, eax
je 0x14001f395
cmp word [rbx + 0x78], 0x42
jne 0x14001f395
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.14001f7b0
mov rax, qword [rbx + 0x48]
mov rcx, rbx
xor dword [rax + 0xc], 1
add rax, 0xc
call fcn.14001f1c0
jmp 0x14001f582
mov rcx, rbx
call fcn.140020920
jmp 0x14001f57a
cmp ecx, 0x5b
jne 0x14001f419
mov rcx, rbx
call fcn.14001f1c0
mov rcx, rbx
call fcn.1400207f0
cmp dword [rbx + 0x7c], 0x5d
jne 0x14001f5a9
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x14001f40c
cmp word [rax], 0x5c
jne 0x14001f408
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001f408
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001f3f4
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001f405
test dl, 0x10
jne 0x14001f408
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x14001f408
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.14001da80
jmp 0x14001f57a
cmp ecx, 0x28
jne 0x14001f4eb
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x14001f46d
cmp word [rax], 0x5c
jne 0x14001f469
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001f469
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001f455
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001f466
test dl, 0x10
jne 0x14001f469
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x14001f469
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.14001da80
mov rcx, rbx
call fcn.140020b10
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x14001f5b4
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x14001f4d5
cmp word [rax], 0x5c
jne 0x14001f4d1
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x14001f4d1
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14001f4bd
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x14001f4ce
test dl, 0x10
jne 0x14001f4d1
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x14001f4d1
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.14001da80
test dil, dil
je 0x14001f582
jmp 0x14001f57a
cmp ecx, 0x5e
jne 0x14001f508
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.14001f7b0
mov rcx, rbx
call fcn.14001f1c0
jmp 0x14001f582
cmp ecx, 0x24
jne 0x14001f525
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.14001f7b0
mov rcx, rbx
call fcn.14001f1c0
jmp 0x14001f582
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x14001f5d5
cmp ecx, 0x3f
je 0x14001f5d5
cmp ecx, 0x7b
je 0x14001f5d5
cmp ecx, 0x7d
jne 0x14001f554
test dword [rbx + 0x80], 0x10000000
je 0x14001f5bf
cmp ecx, 0x5d
jne 0x14001f565
test dword [rbx + 0x80], 0x10000000
je 0x14001f5ca
movzx edx, word [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.140020de0
mov rcx, rbx
call fcn.14001f1c0
mov rcx, rbx
call fcn.140020c30
cmp dword [rbx + 0x7c], 0xffffffff
mov al, 1
jne 0x14001f243
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov edx, 5
call fcn.14001da70
int3
mov edx, 4
call fcn.14001da70
int3
mov edx, 5
call fcn.14001da70
int3
mov edx, 6
call fcn.14001da70
int3
mov edx, 4
call fcn.14001da70
int3
mov edx, 0xa
call fcn.14001da70
int3