Function at 0x1400790e0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x20
cmp dword [rcx + 0x1b4], 0
mov rdi, rcx
jne 0x14006bbe0
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax + 0x28]
sub rdx, qword [rax + 0x20]
cmp rdx, 0xfa
jge 0x14006bbe0
call fcn.140078340
mov rdx, qword [rdi + 0x38]
mov r9, qword [rdx + 0x20]
mov rbx, r9
movzx ecx, byte [r9]
lea eax, [rcx - 0x41]
cmp al, 0x39
ja 0x14006bc06
movabs r8, 0x3ffffff43ffffff
bt r8, rax
jb 0x14006bc0f
cmp cl, 0x3a
jne 0x14006bcdc
movabs r8, 0x43ffffff03ffb
movzx ecx, byte [rbx + 1]
inc rbx
lea eax, [rcx - 0x61]
cmp al, 0x19
jbe 0x14006bc19
sub cl, 0x2d
cmp cl, 0x32
ja 0x14006bc35
bt r8, rcx
jb 0x14006bc19
movzx eax, byte [rbx]
dec al
cmp al, 0x7e
ja 0x14006bcdc
mov qword [rsp + 0x38], rsi
mov esi, ebx
sub esi, r9d
cmp esi, 0xc350
jle 0x14006bc86
test dword [rdi + 0x224], 0x80000
jne 0x14006bc86
lea r8, str.Name
mov edx, 0x6e
mov rcx, rdi
call fcn.1400752d0
mov rsi, qword [rsp + 0x38]
xor eax, eax
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rcx, qword [rdi + 0x1b8]
mov r8d, esi
mov rdx, r9
mov qword [rsp + 0x30], rbp
call fcn.140095110
mov rcx, qword [rdi + 0x38]
mov rbp, rax
mov qword [rcx + 0x20], rbx
add dword [rdi + 0x130], esi
mov rcx, qword [rdi + 0x38]
add dword [rcx + 0x38], esi
test rax, rax
jne 0x14006bcc4
xor edx, edx
mov rcx, rdi
call fcn.1400a9670
mov rsi, qword [rsp + 0x38]
mov rax, rbp
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rcx, rdi
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x1400790e0
push rsi
push rdi
sub rsp, 0x28
xor esi, esi
mov rdi, rcx
cmp dword [rcx + 0x1b4], esi
jne 0x14007910e
mov rax, qword [rcx + 0x38]
mov rdx, qword [rax + 0x28]
sub rdx, qword [rax + 0x20]
cmp rdx, 0xfa
jge 0x14007910e
call fcn.140078340
cmp dword [rdi + 0x108], 0xffffffff
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x20], r15
je 0x1400796be
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
test dword [rdi + 0x224], 0x20000
movsxd rbx, eax
jne 0x1400793de
cmp ebx, 0x3e
ja 0x140079168
movabs rdx, 0x4000800100000000
bt rdx, rbx
jb 0x1400796be
cmp ebx, 0x37e
je 0x140079206
lea eax, [rbx - 0xfdd0]
cmp eax, 0x1f
jbe 0x140079206
lea eax, [rbx - 0xd800]
cmp eax, 0x20ff
jbe 0x140079206
lea eax, [rbx - 0x2ff0]
cmp eax, 0x10
jbe 0x140079206
lea eax, [rbx - 0x2190]
cmp eax, 0xa6f
jbe 0x140079206
lea eax, [rbx - 0x200e]
cmp eax, 0x61
jbe 0x140079206
lea eax, [rbx - 0x2000]
cmp eax, 0xb
jbe 0x140079206
cmp ebx, 0x39
jle 0x140079206
lea eax, [rbx - 0x300]
cmp eax, 0x6f
jbe 0x140079206
cmp ebx, 0xf7
je 0x140079206
cmp ebx, 0xd7
je 0x140079206
lea eax, [rbx - 0x7b]
cmp eax, 0x44
jbe 0x140079206
lea eax, [rbx - 0x3b]
cmp eax, 0x25
ja 0x1400791fe
movabs rcx, 0x2f0000003f
bt rcx, rax
jb 0x140079206
cmp ebx, 0xfffe
jl 0x140079217
lea eax, [rbx - 0x10000]
cmp eax, 0xdffff
ja 0x1400796be
mov rcx, qword [rdi + 0x38]
mov ebp, dword [rsp + 0x40]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0xa
jne 0x140079238
inc dword [rcx + 0x34]
mov rax, qword [rdi + 0x38]
mov dword [rax + 0x38], 1
jmp 0x14007923b
inc dword [rcx + 0x38]
mov rcx, qword [rdi + 0x38]
movsxd rax, dword [rsp + 0x40]
add qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
cmp byte [rcx], 0x25
jne 0x14007925d
mov rcx, rdi
call fcn.140074c60
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
mov ecx, eax
cmp eax, 0x20
je 0x140079696
movabs rbx, 0x7fffffffffffcfff
movabs r14, 0x80000000800000ff
movabs r15, 0x2f0000003f001
cmp ecx, 0x3e
je 0x140079696
cmp ecx, 0x2f
je 0x140079696
lea eax, [rcx - 0x2000]
cmp eax, 0x3e
ja 0x1400792b6
bt rbx, rax
jb 0x14007932d
lea eax, [rcx - 0xfdd0]
cmp eax, 0x1f
jbe 0x14007932d
lea eax, [rcx - 0xd800]
cmp eax, 0x20ff
jbe 0x14007932d
lea eax, [rcx - 0x2ff0]
cmp eax, 0x10
jbe 0x14007932d
lea eax, [rcx - 0x2190]
cmp eax, 0xa6f
jbe 0x14007932d
lea eax, [rcx - 0x2041]
cmp eax, 0x2e
jbe 0x14007932d
cmp ecx, 0x2c
jle 0x14007932d
cmp ecx, 0x37e
je 0x14007932d
lea eax, [rcx - 0xb8]
cmp eax, 0x3f
ja 0x14007930f
bt r14, rax
jb 0x14007932d
lea eax, [rcx - 0x7b]
cmp eax, 0x3b
jbe 0x14007932d
lea eax, [rcx - 0x2f]
cmp eax, 0x31
ja 0x140079325
bt r15, rax
jb 0x14007932d
cmp ecx, 0xfffe
jl 0x14007933e
lea eax, [rcx - 0x10000]
cmp eax, 0xdffff
ja 0x140079696
mov eax, esi
inc esi
cmp eax, 0x64
jle 0x14007937b
xor esi, esi
cmp dword [rdi + 0x1b4], esi
jne 0x14007936e
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x28]
sub rcx, qword [rax + 0x20]
cmp rcx, 0xfa
jge 0x14007936e
mov rcx, rdi
call fcn.140078340
cmp dword [rdi + 0x108], 0xffffffff
je 0x1400796be
mov rcx, qword [rdi + 0x38]
add ebp, dword [rsp + 0x40]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0xa
jne 0x14007939c
inc dword [rcx + 0x34]
mov rax, qword [rdi + 0x38]
mov dword [rax + 0x38], 1
jmp 0x14007939f
inc dword [rcx + 0x38]
mov rcx, qword [rdi + 0x38]
movsxd rax, dword [rsp + 0x40]
add qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
cmp byte [rcx], 0x25
jne 0x1400793c1
mov rcx, rdi
call fcn.140074c60
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
mov ecx, eax
cmp eax, 0x20
jne 0x140079293
jmp 0x140079696
cmp ebx, 0x3e
ja 0x1400793f7
movabs rdx, 0x4000800100000000
bt rdx, rbx
jb 0x1400796be
cmp ebx, 0x100
jge 0x140079424
cmp ebx, 0xd7
je 0x140079436
lea eax, [rbx - 0x7b]
cmp eax, 0x44
jbe 0x140079436
lea eax, [rbx - 0x5b]
cmp eax, 5
jbe 0x140079436
cmp ebx, 0x40
jle 0x140079436
cmp ebx, 0xf7
jmp 0x140079434
lea rdx, [0x14014fe80]
mov ecx, ebx
call fcn.1400ad3b0
test eax, eax
jne 0x140079464
lea eax, [rbx - 0x4e00]
cmp eax, 0x51a5
jbe 0x140079464
cmp ebx, 0x3007
je 0x140079464
lea eax, [rbx - 0x3021]
cmp eax, 8
jbe 0x140079464
cmp ebx, 0x5f
je 0x140079464
cmp ebx, 0x3a
jne 0x1400796be
mov rcx, qword [rdi + 0x38]
mov ebp, dword [rsp + 0x40]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0xa
jne 0x140079485
inc dword [rcx + 0x34]
mov rax, qword [rdi + 0x38]
mov dword [rax + 0x38], 1
jmp 0x140079488
inc dword [rcx + 0x38]
mov rcx, qword [rdi + 0x38]
movsxd rax, dword [rsp + 0x40]
add qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
cmp byte [rcx], 0x25
jne 0x1400794aa
mov rcx, rdi
call fcn.140074c60
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
mov ebx, eax
cmp eax, 0x20
je 0x140079696
movabs r14, 0x4000000002003
nop dword [rax]
cmp ebx, 0x3e
je 0x140079696
cmp ebx, 0x2f
je 0x140079696
cmp ebx, 0x100
jge 0x14007950f
cmp ebx, 0xd7
je 0x140079525
lea eax, [rbx - 0x7b]
cmp eax, 0x44
jbe 0x140079525
lea eax, [rbx - 0x5b]
cmp eax, 5
jbe 0x140079525
cmp ebx, 0x40
jle 0x140079525
cmp ebx, 0xf7
jmp 0x14007951f
lea rdx, [0x14014fe80]
mov ecx, ebx
call fcn.1400ad3b0
test eax, eax
jne 0x1400795b8
lea eax, [rbx - 0x4e00]
cmp eax, 0x51a5
jbe 0x1400795b8
cmp ebx, 0x3007
je 0x1400795b8
lea eax, [rbx - 0x3021]
cmp eax, 8
jbe 0x1400795b8
cmp ebx, 0x100
jge 0x14007955b
lea eax, [rbx - 0x30]
cmp eax, 9
ja 0x14007956d
jmp 0x1400795b8
lea rdx, [0x14014fec8]
mov ecx, ebx
call fcn.1400ad3b0
test eax, eax
jne 0x1400795b8
lea eax, [rbx - 0x2d]
cmp eax, 0x32
ja 0x14007957b
bt r14, rax
jb 0x1400795b8
cmp ebx, 0x100
jl 0x1400795a5
lea rdx, [0x14014feb0]
mov ecx, ebx
call fcn.1400ad3b0
test eax, eax
jne 0x1400795b8
lea rdx, [0x14014fee0]
mov ecx, ebx
call fcn.1400ad3b0
jmp 0x1400795b0
xor eax, eax
cmp ebx, 0xb7
sete al
test eax, eax
je 0x140079696
mov eax, esi
inc esi
cmp eax, 0x64
jle 0x1400795f5
xor esi, esi
cmp dword [rdi + 0x1b4], esi
jne 0x1400795e8
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x28]
sub rcx, qword [rax + 0x20]
cmp rcx, 0xfa
jge 0x1400795e8
mov rcx, rdi
call fcn.140078340
cmp dword [rdi + 0x108], 0xffffffff
je 0x1400796be
mov rcx, qword [rdi + 0x38]
add ebp, dword [rsp + 0x40]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0xa
jne 0x140079616
inc dword [rcx + 0x34]
mov rax, qword [rdi + 0x38]
mov dword [rax + 0x38], 1
jmp 0x140079619
inc dword [rcx + 0x38]
mov rcx, qword [rdi + 0x38]
movsxd rax, dword [rsp + 0x40]
add qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
cmp byte [rcx], 0x25
jne 0x14007963b
mov rcx, rdi
call fcn.140074c60
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
mov ebx, eax
test eax, eax
jne 0x14007968d
xor esi, esi
cmp dword [rdi + 0x1b4], esi
jne 0x140079675
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x28]
sub rcx, qword [rax + 0x20]
cmp rcx, 0xfa
jge 0x140079675
mov rcx, rdi
call fcn.140078340
cmp dword [rdi + 0x108], 0xffffffff
je 0x1400796be
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400a8c80
mov ebx, eax
cmp ebx, 0x20
jne 0x1400794d0
cmp ebp, 0xc350
jle 0x1400796db
test dword [rdi + 0x224], 0x80000
jne 0x1400796db
lea r8, str.Name
mov edx, 0x6e
mov rcx, rdi
call fcn.1400752d0
xor eax, eax
mov r15, qword [rsp + 0x20]
mov r14, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
add rsp, 0x28
pop rdi
pop rsi
ret
mov rax, qword [rdi + 0x38]
mov rdx, qword [rax + 0x20]
cmp byte [rdx], 0xa
jne 0x140079708
cmp byte [rdx - 1], 0xd
jne 0x140079708
lea eax, [rbp + 1]
mov r8d, ebp
movsxd rcx, eax
sub rdx, rcx
mov rcx, qword [rdi + 0x1b8]
call fcn.140095110
jmp 0x1400796c0
mov rcx, qword [rdi + 0x1b8]
mov r8d, ebp
movsxd rax, ebp
sub rdx, rax
call fcn.140095110
jmp 0x1400796c0