Function at 0x140005065
Capabilities:
Parse credit card information

Disassembly:
jmp 0x14009b494
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 0x18], r8
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rbx, qword [0x140184080]
mov rdi, rcx
and qword [rbp - 0x40], 0
mov ecx, 0xffff0000
and dword [rbp - 0x38], ecx
xor esi, esi
and qword [rbp - 0x30], 0
movsx eax, byte [rbx]
inc rbx
and dword [rbp - 0x28], ecx
mov qword [0x140184080], rbx
cmp eax, 0x41
jg 0x14009b6ab
je 0x14009bbb2
test eax, eax
je 0x14009b692
cmp eax, 0x2f
jle 0x14009b7d1
cmp eax, 0x31
jle 0x14009b561
cmp eax, 0x39
jg 0x14009b7d1
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143790]
lea rcx, [rbp - 0x40]
call fcn.140003742
cmp qword [rbp - 0x40], 0
je 0x14009b671
lea rdx, [0x140143de8]
lea rcx, [rbp - 0x10]
call fcn.140004a66
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.140002581
movaps xmm0, xmmword [rbp - 0x20]
jmp 0x14009b675
and dword [rbp - 0x28], ecx
mov qword [rbp - 0x30], rsi
test dl, dl
je 0x14009b60b
lea rcx, [rbp - 0x10]
call fcn.1400042b9
mov dl, 0x3c
lea rcx, [rbp - 0x20]
mov rbx, rax
call fcn.1400050bf
mov rdx, rbx
lea rcx, [rbp - 0x40]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x40], xmm0
call fcn.140002581
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x30]
call fcn.140002581
mov rsi, qword [rbp - 0x30]
test rsi, rsi
je 0x14009b5d4
mov rax, qword [rsi]
mov rbx, qword [rax + 8]
mov rcx, rbx
call fcn.140002f18
mov rcx, rsi
call rbx
cmp al, 0x3e
jne 0x14009b5d4
mov dl, 0x20
lea rcx, [rbp - 0x30]
call fcn.14000279d
mov dl, 0x3e
lea rcx, [rbp - 0x30]
call fcn.14000279d
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x14009b5eb
mov byte [rax], 1
mov rbx, qword [0x140184080]
cmp byte [rbx], 0
jne 0x14009b5fd
movups xmm0, xmmword [rbp - 0x30]
jmp 0x14009b675
mov rsi, qword [rbp - 0x30]
inc rbx
mov qword [0x140184080], rbx
xor r8d, r8d
lea rcx, [rbp - 0x10]
xor edx, edx
call fcn.140002b4e
movups xmm0, xmmword [rax]
mov qword [0x140184080], rbx
movq rax, xmm0
movaps xmmword [rbp - 0x40], xmm0
test rax, rax
je 0x14009b65f
cmp byte [rbx - 1], 0x31
jne 0x14009b65f
mov dl, 0x7e
lea rcx, [rbp - 0x10]
call fcn.1400050bf
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.140002581
movaps xmm0, xmmword [rbp - 0x20]
movaps xmmword [rbp - 0x40], xmm0
test rsi, rsi
je 0x14009b675
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x40]
call fcn.140002581
movaps xmm0, xmmword [rbp - 0x40]
movdqu xmmword [rdi], xmm0
lea r11, [rsp + 0x60]
mov rax, rdi
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
dec rbx
mov edx, 1
mov qword [0x140184080], rbx
mov rcx, rdi
call fcn.1400050c9
jmp 0x14009b679
cmp eax, 0x42
je 0x14009bbad
jle 0x14009b7d1
cmp eax, 0x5a
jle 0x14009bbb2
cmp eax, 0x5f
jne 0x14009b7d1
movsx ecx, byte [rbx]
lea esi, [rax - 0x5e]
add rbx, rsi
mov qword [0x140184080], rbx
cmp ecx, 0x4f
jg 0x14009b7e7
cmp ecx, 0x44
jge 0x14009bb7b
cmp ecx, 0x39
jg 0x14009b786
je 0x14009b75f
test ecx, ecx
je 0x14009b74e
cmp ecx, 0x2f
jle 0x14009b7d1
cmp ecx, 0x36
jle 0x14009b735
cmp ecx, 0x38
jg 0x14009b7d1
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x1438b0]
mov rcx, rdi
call fcn.140004a66
jmp 0x14009b679
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x1438b0]
jmp 0x14009b51f
sub rbx, rsi
mov qword [0x140184080], rbx
mov edx, esi
jmp 0x14009b6a1
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x30]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x1438b0]
call fcn.140004a66
bts dword [rbp - 0x28], 0xf
jmp 0x14009b5f7
cmp ecx, 0x3f
je 0x14009b7bb
cmp ecx, 0x40
jle 0x14009b7d1
cmp ecx, 0x42
jle 0x14009bb7b
cmp ecx, 0x43
jne 0x14009b7d1
mov r8d, esi
lea rdx, [0x1401433d8]
lea rcx, [rbp - 0x30]
call fcn.1400011d6
bts dword [rbp - 0x28], 0xc
jmp 0x14009b5f7
movsx eax, byte [rbx]
add rbx, rsi
mov qword [0x140184080], rbx
test eax, eax
je 0x14009b74e
cmp eax, 0x30
je 0x14009b7db
mov edx, 2
jmp 0x14009b6a1
xor r8d, r8d
lea rdx, [0x140143e40]
jmp 0x14009b7a8
cmp ecx, 0x54
jg 0x14009ba2e
cmp ecx, 0x53
jge 0x14009bb7b
sub ecx, 0x50
je 0x14009b9dc
sub ecx, esi
je 0x14009b671
cmp ecx, esi
jne 0x14009b7d1
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x40]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143878]
call fcn.140003742
mov rax, qword [0x140184080]
mov cl, byte [rax]
test cl, cl
jne 0x14009b84f
movaps xmm0, xmmword [rbp - 0x40]
mov edx, esi
mov rcx, rdi
movdqu xmmword [rdi], xmm0
call fcn.140001005
jmp 0x14009b679
movsx eax, cl
sub eax, 0x30
js 0x14009b7d1
movsxd rdx, eax
cmp rdx, 5
jae 0x14009b7d1
mov rdx, qword [rbx + rdx*8 + 0x143880]
lea rcx, [rbp - 0x30]
call fcn.140003742
mov rcx, qword [0x140184080]
movsx eax, byte [rcx]
add rcx, rsi
mov qword [0x140184080], rcx
cmp eax, 0x30
je 0x14009b99e
cmp eax, 0x31
je 0x14009b8cb
add eax, 0xffffffce
cmp eax, 2
ja 0x14009b8bc
movaps xmm0, xmmword [rbp - 0x40]
lea rdx, [rbp - 0x30]
mov rcx, rdi
movdqu xmmword [rdi], xmm0
call fcn.140002581
jmp 0x14009b679
sub rcx, rsi
mov qword [0x140184080], rcx
jmp 0x14009b758
movaps xmm0, xmmword [rbp - 0x40]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
call fcn.140002581
lea rcx, [rbp - 0x10]
call fcn.140004430
mov dl, 0x2c
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.14000279d
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x40]
call fcn.140002581
lea rcx, [rbp - 0x10]
call fcn.140004430
mov dl, 0x2c
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.14000279d
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x40]
call fcn.140002581
lea rcx, [rbp - 0x10]
call fcn.140004430
mov dl, 0x2c
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.14000279d
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x40]
call fcn.140002581
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.140001fe1
mov dl, 0x29
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x20], xmm0
call fcn.14000279d
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x40]
call fcn.140002581
movaps xmm0, xmmword [rbp - 0x40]
mov dl, 0x27
mov rcx, rdi
movdqu xmmword [rdi], xmm0
call fcn.14000279d
jmp 0x14009b679
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.1400034e5
movaps xmm0, xmmword [rbp - 0x10]
lea rcx, [rbp - 0x20]
mov dl, 0x20
movdqa xmmword [rbp - 0x20], xmm0
call fcn.14000279d
movaps xmm0, xmmword [rbp - 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
call fcn.140002581
movaps xmm0, xmmword [rbp - 0x20]
jmp 0x14009b8a7
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x40]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143878]
call fcn.140003742
xor r8d, r8d
lea rcx, [rbp - 0x10]
xor edx, edx
call fcn.140005065
movups xmm0, xmmword [rax]
movq rax, xmm0
movups xmmword [rbp - 0x30], xmm0
test rax, rax
je 0x14009b8a3
test dword [rbp - 0x28], 0x400
je 0x14009b8a3
jmp 0x14009b7d1
cmp ecx, 0x56
jle 0x14009bb94
cmp ecx, 0x57
jle 0x14009b7d1
cmp ecx, 0x59
jle 0x14009bb7b
cmp ecx, 0x5f
jne 0x14009b7d1
movsx eax, byte [rbx]
add rbx, rsi
mov qword [0x140184080], rbx
cmp eax, 0x41
jl 0x14009b7d1
cmp eax, 0x44
jle 0x14009bb62
cmp eax, 0x46
jle 0x14009bae6
cmp eax, 0x4a
jle 0x14009bb62
cmp eax, 0x4b
jne 0x14009b7d1
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x20]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143940]
call fcn.140004a66
jmp 0x14009bac1
cmp cl, 0x40
je 0x14009bad3
add rax, rsi
mov dl, cl
lea rcx, [rbp - 0x20]
mov qword [0x140184080], rax
call fcn.14000279d
mov rax, qword [0x140184080]
mov cl, byte [rax]
test cl, cl
jne 0x14009baa7
cmp cl, 0x40
jne 0x14009badd
add rax, rsi
mov qword [0x140184080], rax
movups xmm0, xmmword [rbp - 0x20]
jmp 0x14009b675
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x30]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143940]
call fcn.140004a66
mov rax, qword [0x140184080]
lea rcx, [rbp - 0x10]
cmp byte [rax], 0x3f
jne 0x14009bb3c
call fcn.140001550
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.140002581
mov rax, qword [0x140184080]
cmp byte [rax], 0x40
jne 0x14009bb4d
add rax, rsi
mov qword [0x140184080], rax
jmp 0x14009bb4d
call fcn.1400056af
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.140002581
lea rdx, [0x140143e5c]
lea rcx, [rbp - 0x30]
call fcn.140003922
jmp 0x14009b5f7
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143940]
jmp 0x14009b728
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143878]
jmp 0x14009b728
movsx rdx, byte [rbx - 1]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143878]
jmp 0x14009b51f
mov esi, 1
movsx rdx, byte [rbx - 1]
lea rcx, [rbp - 0x40]
lea rbx, [0x140000000]
mov rdx, qword [rbx + rdx*8 + 0x143758]
call fcn.140003742
test esi, esi
je 0x14009b528
cmp qword [rbp - 0x40], 0
je 0x14009b671
bts dword [rbp - 0x38], 9
jmp 0x14009b671