Function at 0x1400109a0
Capabilities:
Parse credit card information

Disassembly:
push rbp
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], rcx
mov dword [rbp - 0x14], 0
cmp dword [rbp - 0x14], 0x2e
jle 0x14001086c
mov eax, 0xfffffb43
jmp 0x140010e3c
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov rcx, rax
call fcn.1400046c1
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movsx ebx, al
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x73
je 0x140010993
cmp eax, 0x73
jg 0x140010a63
cmp eax, 0x6d
je 0x140010922
cmp eax, 0x6d
jg 0x140010a63
cmp eax, 0x63
je 0x14001099d
cmp eax, 0x63
jg 0x140010a63
cmp eax, 0x56
je 0x1400109e0
cmp eax, 0x56
jg 0x140010a63
cmp eax, 0x54
je 0x1400109d6
cmp eax, 0x54
jg 0x140010a63
cmp eax, 0x4a
je 0x140010989
cmp eax, 0x4a
jg 0x140010a63
cmp eax, 0x16
je 0x140010969
cmp eax, 0x3b
je 0x14001097f
jmp 0x140010a63
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x5d
je 0x14001094a
cmp eax, 0x5d
jg 0x140010958
cmp eax, 0x1e
je 0x14001095b
cmp eax, 0x55
je 0x14001095e
jmp 0x140010958
mov rax, qword [rbp - 0x28]
mov rcx, rax
call fcn.140001653
jmp 0x14001095f
nop
jmp 0x14001095f
nop
jmp 0x14001095f
nop
mov eax, 0x256c
jmp 0x140010a68
mov rax, qword [rbp - 0x20]
mov rcx, rax
call fcn.1400046c1
mov eax, 0x450
jmp 0x140010a68
mov eax, 0x1cd0
jmp 0x140010a68
mov eax, 0x1d8b
jmp 0x140010a68
mov eax, 0x18e7
jmp 0x140010a68
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 3
je 0x1400109bb
cmp eax, 0x2b
je 0x1400109cb
jmp 0x1400109c9
mov rax, qword [rbp - 0x30]
mov rcx, rax
call fcn.140001c69
jmp 0x1400109cc
jmp 0x1400109cc
nop
mov eax, 0x2663
jmp 0x140010a68
mov eax, 0xacb
jmp 0x140010a68
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp - 0x38]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x57
je 0x140010a4c
cmp eax, 0x57
jg 0x140010a4f
cmp eax, 0x4b
je 0x140010a3c
cmp eax, 0x4b
jg 0x140010a4f
cmp eax, 0x44
je 0x140010a52
cmp eax, 0x44
jg 0x140010a4f
cmp eax, 0x40
je 0x140010a55
cmp eax, 0x40
jg 0x140010a4f
cmp eax, 0x3f
je 0x140010a58
cmp eax, 0x3f
jg 0x140010a4f
cmp eax, 0x33
je 0x140010a5b
cmp eax, 0x38
jne 0x140010a4a
mov rax, qword [rbp - 0x38]
mov rcx, rax
call fcn.140001653
jmp 0x140010a5c
mov rax, qword [rbp - 0x38]
mov rcx, rax
call fcn.140001e42
jmp 0x140010a5c
jmp 0x140010a4f
nop
jmp 0x140010a5c
nop
jmp 0x140010a5c
nop
jmp 0x140010a5c
nop
jmp 0x140010a5c
nop
jmp 0x140010a5c
nop
mov eax, 0xb62
jmp 0x140010a68
mov eax, 0
cmp ebx, eax
je 0x140010e2f
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov rcx, rax
call fcn.140001653
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movsx ebx, al
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov rcx, rax
call fcn.1400018a2
cmp ebx, eax
je 0x140010e32
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov qword [rbp - 0x40], rax
mov rax, qword [rbp - 0x40]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x75
je 0x140010c09
cmp eax, 0x75
jg 0x140010c0c
cmp eax, 0x57
je 0x140010b7a
cmp eax, 0x57
jg 0x140010c0c
cmp eax, 0x4f
je 0x140010c0f
cmp eax, 0x4f
jg 0x140010c0c
cmp eax, 0x3e
je 0x140010c12
cmp eax, 0x3e
jg 0x140010c0c
cmp eax, 0x3a
je 0x140010c15
cmp eax, 0x3a
jg 0x140010c0c
cmp eax, 0x38
je 0x140010c18
cmp eax, 0x38
jg 0x140010c0c
cmp eax, 0x37
je 0x140010c1b
cmp eax, 0x37
jg 0x140010c0c
cmp eax, 0x33
je 0x140010b69
cmp eax, 0x33
jg 0x140010c0c
cmp eax, 0x16
je 0x140010b8b
cmp eax, 0x23
jmp 0x140010c0c
mov rax, qword [rbp - 0x40]
mov rcx, rax
call fcn.1400018a2
jmp 0x140010c1c
mov rax, qword [rbp - 0x40]
mov rcx, rax
call fcn.140001c69
jmp 0x140010c1c
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp - 0x48]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x57
je 0x140010bf7
cmp eax, 0x57
jg 0x140010bfa
cmp eax, 0x4b
je 0x140010be7
cmp eax, 0x4b
jg 0x140010bfa
cmp eax, 0x44
je 0x140010bfd
cmp eax, 0x44
jg 0x140010bfa
cmp eax, 0x40
je 0x140010c00
cmp eax, 0x40
jg 0x140010bfa
cmp eax, 0x3f
je 0x140010c03
cmp eax, 0x3f
jg 0x140010bfa
cmp eax, 0x33
je 0x140010c06
cmp eax, 0x38
jne 0x140010bf5
mov rax, qword [rbp - 0x48]
mov rcx, rax
call fcn.140001653
jmp 0x140010c07
mov rax, qword [rbp - 0x48]
mov rcx, rax
call fcn.140001e42
jmp 0x140010c07
jmp 0x140010bfa
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
jmp 0x140010c1c
nop
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movsx ebx, al
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov rcx, rax
call fcn.140008c97
cmp ebx, eax
je 0x140010e35
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movsx ebx, al
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp + 0x10]
add rax, rdx
mov qword [rbp - 0x50], rax
mov rax, qword [rbp - 0x50]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x7f
je 0x140010cfb
cmp eax, 0x7f
jg 0x140010e1d
cmp eax, 0x56
je 0x140010ce5
cmp eax, 0x56
jg 0x140010e1d
cmp eax, 0x23
je 0x140010cc5
cmp eax, 0x23
jg 0x140010e1d
cmp eax, 0xc
je 0x140010d05
cmp eax, 0xc
jg 0x140010e1d
cmp eax, 2
je 0x140010d3e
cmp eax, 0xa
je 0x140010ccf
jmp 0x140010e1d
mov eax, 0x4c
jmp 0x140010e22
mov rax, qword [rbp - 0x50]
mov rcx, rax
call fcn.14000475a
mov eax, 0x29a
jmp 0x140010e22
mov rax, qword [rbp - 0x50]
mov rcx, rax
call fcn.14000293c
mov eax, 0xbcc
jmp 0x140010e22
mov eax, 0x220e
jmp 0x140010e22
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x58], rax
mov rax, qword [rbp - 0x58]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 3
je 0x140010d23
cmp eax, 0x2b
je 0x140010d33
jmp 0x140010d31
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.140001c69
jmp 0x140010d34
jmp 0x140010d34
nop
mov eax, 0x11a
jmp 0x140010e22
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x7b
je 0x140010df8
cmp eax, 0x7b
jg 0x140010e06
cmp eax, 0x76
je 0x140010dce
cmp eax, 0x76
jg 0x140010e06
cmp eax, 0x6c
je 0x140010e09
cmp eax, 0x6c
jg 0x140010e06
cmp eax, 0x69
je 0x140010dea
cmp eax, 0x69
jg 0x140010e06
cmp eax, 0x5c
je 0x140010e0c
cmp eax, 0x5c
jg 0x140010e06
cmp eax, 0x58
je 0x140010ddc
cmp eax, 0x58
jg 0x140010e06
cmp eax, 0x27
je 0x140010e0f
cmp eax, 0x27
jg 0x140010e06
cmp eax, 0x23
je 0x140010dc0
cmp eax, 0x23
jg 0x140010e06
cmp eax, 0x19
je 0x140010e12
cmp eax, 0x22
je 0x140010e15
jmp 0x140010e06
mov rax, qword [rbp - 0x60]
mov rcx, rax
call fcn.140001560
jmp 0x140010e16
mov rax, qword [rbp - 0x60]
mov rcx, rax
call fcn.140001560
jmp 0x140010e16
mov rax, qword [rbp - 0x60]
mov rcx, rax
call fcn.140001653
jmp 0x140010e16
mov rax, qword [rbp - 0x60]
mov rcx, rax
call fcn.140001560
jmp 0x140010e16
mov rax, qword [rbp - 0x60]
mov rcx, rax
call fcn.140001653
jmp 0x140010e16
nop
jmp 0x140010e16
nop
jmp 0x140010e16
nop
jmp 0x140010e16
nop
jmp 0x140010e16
nop
jmp 0x140010e16
nop
mov eax, 0x22e3
jmp 0x140010e22
mov eax, 0
cmp ebx, eax
je 0x140010e38
add dword [rbp - 0x14], 1
jmp 0x14001085c
nop
jmp 0x140010e39
nop
jmp 0x140010e39
nop
jmp 0x140010e39
nop
mov eax, dword [rbp - 0x14]
add rsp, 0x78
pop rbx
pop rbp
ret