Function at 0x14009fe10
Capabilities:
Parse credit card information

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x14039bc30]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x48], r9d
mov r11, rdx
mov qword [rsp + 0x60], r8
mov rdi, rdx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x68], rdx
test rcx, rcx
je 0x1400a0213
test rdx, rdx
je 0x1400a0213
cmp rcx, rdx
je 0x1400a0213
movzx ebx, byte [rcx]
lea r15, [rcx + 1]
xor r13d, r13d
mov r10d, r9d
add r10, rdx
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x44], r13d
mov esi, r13d
mov qword [rsp + 0x50], r10
mov r8d, r13d
mov qword [rsp + 0x70], r15
lea r14d, [r13 + 1]
lea ebp, [r14 + 0x7f]
mov r12d, r13d
test bl, bl
je 0x1400a01be
mov rdx, r15
nop dword [rax + rax]
cmp esi, r9d
cmove r14d, r13d
cmp bl, 0x3a
jne 0x14009ff72
test bpl, bpl
jns 0x1400a001e
test r12d, r12d
jne 0x1400a001e
test r14d, r14d
je 0x14009ff69
mov eax, esi
mov rcx, rdi
sub rcx, rax
mov byte [rdi], r13b
cmp rcx, r11
jb 0x1400a0213
cmp rcx, r10
ja 0x1400a0213
mov rdx, r10
sub rdx, rcx
inc rdx
call fcn.1402bfdc0
test eax, eax
je 0x14009ff2e
cmp eax, 0xc
je 0x1400a0208
cmp eax, 0x16
je 0x1400a021e
cmp eax, 0x22
je 0x1400a021e
cmp eax, 0x50
jne 0x1400a0213
cmp esi, 4
jne 0x14009ff64
lea rdx, [rdi - 4]
mov r8d, esi
lea rcx, str.file
call fcn.14015ec40
mov r8d, dword [rsp + 0x44]
lea r12d, [rsi + 1]
test eax, eax
mov eax, 1
cmove r8d, eax
mov dword [rsp + 0x44], r8d
jmp 0x1400a001e
mov r8d, dword [rsp + 0x44]
lea r12d, [rsi + 1]
jmp 0x1400a001e
cmp bl, 0x25
jne 0x1400a000b
test bpl, 4
je 0x1400a001e
movzx ecx, byte [r15]
test cl, cl
je 0x1400a01be
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x14009ff9d
lea ebx, [rcx - 0x30]
jmp 0x14009ffb7
lea eax, [rcx - 0x41]
cmp al, 5
ja 0x14009ffa9
lea ebx, [rcx - 0x37]
jmp 0x14009ffb7
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x1400a01b9
lea ebx, [rcx - 0x57]
test bx, bx
js 0x1400a01b9
movzx ecx, byte [rdx + 1]
shl bl, 4
test cl, cl
je 0x1400a01be
lea eax, [rcx - 0x30]
lea r15, [rdx + 2]
mov qword [rsp + 0x70], r15
cmp al, 9
ja 0x14009ffe4
lea eax, [rcx - 0x30]
jmp 0x14009fffe
lea eax, [rcx - 0x41]
cmp al, 5
ja 0x14009fff0
lea eax, [rcx - 0x37]
jmp 0x14009fffe
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x1400a01b9
lea eax, [rcx - 0x57]
test ax, ax
js 0x1400a01b9
add bl, al
jmp 0x1400a001e
cmp bl, 0x3f
je 0x1400a0015
cmp bl, 0x23
jne 0x1400a001e
test bpl, 0x20
je 0x1400a001e
or ebp, 2
mov eax, ebp
and al, 0x82
cmp al, 0x80
jne 0x1400a0097
cmp bl, 0x5c
jne 0x1400a0049
test r12d, r12d
jne 0x1400a0036
bt ebp, 8
jae 0x1400a0097
test r14d, r14d
je 0x1400a0097
test r8d, r8d
je 0x1400a0045
cmp esi, 7
jae 0x1400a0097
mov bl, 0x2f
jmp 0x1400a0097
cmp bl, 0x2e
jne 0x1400a0097
test esi, esi
je 0x1400a0097
test bpl, 8
jne 0x1400a0097
mov dword [rsp + 0x30], r12d
lea rax, [rsp + 0x40]
mov dword [rsp + 0x28], ebp
lea rdx, [rdi - 1]
lea r9, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r8d, esi
lea rcx, [rsp + 0x68]
call fcn.14009fcc0
mov esi, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
test eax, eax
jne 0x1400a018a
movzx r10d, bl
lea eax, [r10 - 0x20]
cmp eax, 0x5d
ja case.0x1400a00bf.33
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0xa0234]
mov ecx, dword [rdx + rax*4 + 0xa022c]
add rcx, rdx
jmp rcx
lea eax, [rbx - 0x20]
cmp al, 0x5e
jbe 0x1400a0175
test bpl, 2
jne 0x1400a0175
test bpl, 0x10
je 0x1400a00e5
cmp bl, 0x20
jne 0x1400a0175
test bpl, 8
je 0x1400a00f4
cmp bl, 0x2e
je 0x1400a0175
test bpl, 0x40
jne 0x1400a00ff
cmp bl, 0x25
je 0x1400a0175
mov eax, dword [rsp + 0x48]
add eax, 0xfffffffd
cmp esi, eax
jb 0x1400a0112
mov r14d, r13d
add esi, 2
jmp 0x1400a0184
test r14d, r14d
je 0x1400a0170
mov byte [rdi], 0x25
lea rdx, [rdi + 1]
cmp bl, 0x10
jae 0x1400a0129
mov byte [rdx], 0x30
inc rdx
mov r8, qword [rsp + 0x50]
mov r9d, 0x10
sub r8, rdx
mov ecx, r10d
call fcn.140166394
test eax, eax
je 0x1400a0167
cmp eax, 0xc
je 0x1400a0208
cmp eax, 0x16
je 0x1400a021e
cmp eax, 0x22
je 0x1400a021e
cmp eax, 0x50
jne 0x1400a0213
add rdi, 3
mov qword [rsp + 0x68], rdi
add esi, 2
jmp 0x1400a0184
test r14d, r14d
je 0x1400a0184
mov byte [rdi], bl
inc rdi
mov qword [rsp + 0x68], rdi
inc esi
mov dword [rsp + 0x40], esi
movzx eax, byte [r15]
inc r15
mov r9d, dword [rsp + 0x48]
mov rdx, r15
mov qword [rsp + 0x70], r15
movzx ebx, al
test al, al
je 0x1400a01be
mov r8d, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x58]
jmp 0x14009feb0
mov r14d, r13d
jmp 0x1400a01cb
test r14d, r14d
je 0x1400a01cb
cmp esi, r9d
jae 0x1400a01cb
mov byte [rdi], r13b
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400a01da
lea ecx, [rsi + 1]
mov dword [rax], ecx
lea ecx, [rsi + 1]
cmp ecx, r9d
cmovbe r13d, r14d
mov eax, r13d
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14013af80
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov ecx, 0x8007000e
call fcn.140043070
int3
mov ecx, 0x80004005
call fcn.140043070
int3
mov ecx, 0x80070057
call fcn.140043070
int3