Function at 0x1400228c0
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 0x140022c2e
mov esi, 0xfffd
mov ecx, dword [rbx + 0x7c]
cmp ecx, 0x7c
je 0x140022c2e
cmp ecx, 0x29
jne 0x14002290e
cmp dword [rbx + 0x1c], 0
jne 0x140022c2e
test dword [rbx + 0x80], 0x10000000
je 0x140022c3e
cmp ecx, 0x2e
jne 0x140022979
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.140022e50
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x14002296c
cmp word [rcx], 0x5c
jne 0x140022968
add rcx, 2
cmp rcx, rax
je 0x140022968
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140022954
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x140022965
test dl, 0x10
jne 0x140022968
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x140022968
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.140021010
jmp 0x140022c1a
cmp ecx, 0x5c
jne 0x140022a42
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1400229cc
cmp word [rax], cx
jne 0x1400229c8
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x1400229c8
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1400229b4
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x1400229c5
test dl, 0x10
jne 0x1400229c8
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x1400229c8
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.140021010
mov eax, dword [rbx + 0x80]
and eax, 0x80
je 0x140022a03
cmp word [rbx + 0x78], 0x62
jne 0x140022a03
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.140022e50
mov rcx, rbx
call fcn.140022860
jmp 0x140022c22
test eax, eax
je 0x140022a35
cmp word [rbx + 0x78], 0x42
jne 0x140022a35
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.140022e50
mov rax, qword [rbx + 0x48]
mov rcx, rbx
xor dword [rax + 0xc], 1
add rax, 0xc
call fcn.140022860
jmp 0x140022c22
mov rcx, rbx
call fcn.140023f00
jmp 0x140022c1a
cmp ecx, 0x5b
jne 0x140022ab9
mov rcx, rbx
call fcn.140022860
mov rcx, rbx
call fcn.140023e40
cmp dword [rbx + 0x7c], 0x5d
jne 0x140022c49
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x140022aac
cmp word [rax], 0x5c
jne 0x140022aa8
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x140022aa8
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140022a94
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x140022aa5
test dl, 0x10
jne 0x140022aa8
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x140022aa8
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.140021010
jmp 0x140022c1a
cmp ecx, 0x28
jne 0x140022b8b
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x140022b0d
cmp word [rax], 0x5c
jne 0x140022b09
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x140022b09
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140022af5
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x140022b06
test dl, 0x10
jne 0x140022b09
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x140022b09
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.140021010
mov rcx, rbx
call fcn.140024080
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x140022c54
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x140022b75
cmp word [rax], 0x5c
jne 0x140022b71
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x140022b71
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140022b5d
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x140022b6e
test dl, 0x10
jne 0x140022b71
movzx eax, word [rcx]
sub ax, 0x7b
test si, ax
jne 0x140022b71
mov qword [rbx], rcx
add qword [rbx], 2
mov rcx, rbx
call fcn.140021010
test dil, dil
je 0x140022c22
jmp 0x140022c1a
cmp ecx, 0x5e
jne 0x140022ba8
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.140022e50
mov rcx, rbx
call fcn.140022860
jmp 0x140022c22
cmp ecx, 0x24
jne 0x140022bc5
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.140022e50
mov rcx, rbx
call fcn.140022860
jmp 0x140022c22
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140022c75
cmp ecx, 0x3f
je 0x140022c75
cmp ecx, 0x7b
je 0x140022c75
cmp ecx, 0x7d
jne 0x140022bf4
test dword [rbx + 0x80], 0x10000000
je 0x140022c5f
cmp ecx, 0x5d
jne 0x140022c05
test dword [rbx + 0x80], 0x10000000
je 0x140022c6a
movzx edx, word [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.140024350
mov rcx, rbx
call fcn.140022860
mov rcx, rbx
call fcn.1400241a0
cmp dword [rbx + 0x7c], 0xffffffff
mov al, 1
jne 0x1400228e3
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov edx, 5
call fcn.140021000
int3
mov edx, 4
call fcn.140021000
int3
mov edx, 5
call fcn.140021000
int3
mov edx, 6
call fcn.140021000
int3
mov edx, 4
call fcn.140021000
int3
mov edx, 0xa
call fcn.140021000
int3