Function at 0x140268a40
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x28
mov r14, rcx
mov rsi, rdx
mov rbp, r8
mov ebx, r9d
mov edi, dword [rsp + 0x90]
xor r15d, r15d
xor r13d, r13d
xor r12d, r12d
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x140268c48
xor r8d, r8d
test dword [rax + 0x10], 0x10000000
setne r8b
mov dword [rsp + 0x24], r8d
mov eax, dword [rbp]
cmp eax, ebx
jge 0x140268b50
movsxd rcx, eax
movzx ecx, word [rsi + rcx*2]
cmp ecx, 0x1f
jle 0x140268c05
cmp ecx, 0x7f
jge 0x140268d00
cmp ecx, 0x7e
jg 0x140268d11
movzx r10d, di
cmp ecx, r10d
je 0x140268b50
cmp r10d, 0x3f
jne 0x140268ad5
cmp ecx, 0x23
je 0x140268df5
cmp ecx, 0x3f
je 0x140268e13
cmp ecx, 0x23
je 0x140268e52
cmp ecx, 0x2f
je 0x140268b7d
cmp ecx, 0x5c
je 0x140268b7d
cmp ecx, 0x2e
je 0x140268bb8
cmp ecx, 0x22
jle 0x140268c3d
cmp ecx, 0x5b
jl 0x140268b19
cmp ecx, 0x5e
jle 0x140268c23
cmp ecx, 0x3e
je 0x140268c23
cmp ecx, 0x3c
je 0x140268c23
cmp ecx, 0x60
je 0x140268c23
cmp ecx, 0x7b
jge 0x140268c86
cmp ecx, 0x25
je 0x140268c90
inc eax
cmp eax, ebx
jl 0x140268a97
test r12d, r12d
jne 0x140268c78
or r15d, 2
test r13d, r13d
jne 0x140268b66
or r15d, 1
mov dword [rbp], eax
mov eax, r15d
add rsp, 0x28
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
test r15b, 0x10
jne 0x140268b8c
cmp ecx, 0x5c
je 0x140268c1a
test r15b, 4
jne 0x140268b46
lea ecx, [rax + 1]
cmp ecx, ebx
je 0x140268b46
lea r10d, [rax + 1]
movsxd rcx, r10d
movzx ecx, word [rsi + rcx*2]
cmp ecx, 0x2f
je 0x140268e8a
cmp ecx, 0x5c
je 0x140268e8a
jmp 0x140268b46
test r15b, 4
jne 0x140268bc9
lea ecx, [rax + 1]
cmp ecx, ebx
je 0x140268e8a
lea ecx, [rax + 1]
movsxd rcx, ecx
movzx ecx, word [rsi + rcx*2]
cmp ecx, 0x2e
je 0x140268e8a
cmp ecx, 0x2f
je 0x140268e8a
cmp ecx, 0x5c
je 0x140268e8a
cmp ecx, 0x3f
je 0x140268e8a
cmp ecx, 0x23
je 0x140268e8a
jmp 0x140268b46
mov r13d, 1
mov r12d, 1
or r15d, 0x20
jmp 0x140268b46
or r15d, 0x10
jmp 0x140268b8c
test r13d, r13d
je 0x140268c53
movabs rcx, 0x200000000
test qword [r14 + 0x28], rcx
jne 0x140268c5b
jmp 0x140268b46
cmp ecx, 0x21
je 0x140268b0b
jmp 0x140268c23
mov r8d, 1
jmp 0x140268a87
mov r13d, 1
jmp 0x140268c28
or r15d, 0x40
jmp 0x140268b46
test r13d, r13d
jne 0x140268b46
mov r13d, 1
jmp 0x140268b46
test r13d, r13d
jne 0x140268b66
jmp 0x140268b62
cmp ecx, 0x7d
jle 0x140268c6d
jmp 0x140268b3d
test r12d, r12d
jne 0x140268c9b
mov r12d, 1
lea ecx, [rax + 2]
cmp ecx, ebx
jge 0x140268c64
lea ecx, [rax + 1]
movsxd rcx, ecx
movzx edx, word [rsi + rcx*2]
mov ecx, edx
mov dword [rsp + 0x20], eax
lea edx, [rax + 2]
movsxd rdx, edx
movzx edx, word [rsi + rdx*2]
call fcn.14026da70
mov ecx, eax
cmp ecx, 0xffff
je 0x140268cf2
cmp ecx, 0x2e
je 0x140268cda
cmp ecx, 0x2f
je 0x140268cda
cmp ecx, 0x5c
jne 0x140268ce1
or r15d, 0x80
mov eax, dword [rsp + 0x20]
add eax, 2
mov r8d, dword [rsp + 0x24]
jmp 0x140268b46
mov eax, dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
jmp 0x140268c64
cmp ecx, 0x9f
jg 0x140268ab0
jmp 0x140268c05
test r8d, r8d
je 0x140268de2
or r15d, 8
lea edx, [rcx - 0xd800]
cmp edx, 0x3ff
ja 0x140268d97
lea edx, [rax + 1]
cmp edx, ebx
jge 0x140268dde
lea edx, [rax + 1]
movsxd rdx, edx
movzx edx, word [rsi + rdx*2]
add ecx, 0xffff2800
lea r10d, [rdx - 0xdc00]
or r10d, ecx
cmp r10d, 0x3ff
ja 0x140268d6b
shl ecx, 0xa
lea ecx, [rcx + rdx + 0x2400]
mov edx, 1
jmp 0x140268d6f
xor ecx, ecx
xor edx, edx
test edx, edx
je 0x140268d93
movzx edx, cx
cmp edx, 0xfffe
jge 0x140268d93
add ecx, 0xfff20000
cmp ecx, 0x1000
jb 0x140268d93
mov ecx, 1
jmp 0x140268d95
xor ecx, ecx
jmp 0x140268dda
lea edx, [rcx - 0xa0]
cmp edx, 0xd75f
jbe 0x140268dd5
lea edx, [rcx - 0xf900]
cmp edx, 0x4cf
jbe 0x140268dd5
lea edx, [rcx - 0xfdf0]
cmp edx, 0x1ff
jbe 0x140268dd5
add ecx, 0xffff2000
cmp ecx, 0x18ff
setbe cl
movzx ecx, cl
jmp 0x140268dda
mov ecx, 1
test ecx, ecx
jne 0x140268de2
or r15d, 0x40
test r13d, r13d
mov r8d, dword [rsp + 0x24]
jne 0x140268b46
jmp 0x140268c6d
cmp qword [r14 + 0x18], 0
je 0x140268ad5
mov rdx, qword [r14 + 0x18]
test byte [rdx + 0x10], 0x40
jne 0x140268b50
jmp 0x140268ad5
test dword [r14 + 0x28], 0x20000000
jne 0x140268e43
cmp qword [r14 + 0x18], 0
je 0x140268b46
mov rcx, qword [r14 + 0x18]
test byte [rcx + 0x10], 0x20
jne 0x140268b46
cmp r10d, 0xfffe
je 0x140268b46
or r15d, 0x20
mov r12d, 1
jmp 0x140268c6d
mov r13d, 1
test dword [r14 + 0x28], 0x20000000
jne 0x140268e7b
cmp qword [r14 + 0x18], 0
je 0x140268b46
mov rcx, qword [r14 + 0x18]
test byte [rcx + 0x10], 0x40
jne 0x140268b46
or r15d, 0x20
mov r12d, 1
jmp 0x140268b46
or r15d, 4
jmp 0x140268b46