Function at 0x5ef560
Capabilities:
Parse credit card information

Disassembly:
mov rax, qword [rcx + 0xb8]
cmp qword [rcx + 0xb0], rax
jne 0x5ef57c
mov dword [rcx + 0x90], 0x1b
jmp 0x5ef59e
mov eax, dword [rcx + 0x88]
test eax, eax
jne 0x5ef58b
jmp 0x5ef650
cmp eax, 2
jne 0x5ef595
jmp 0x5efdf0
dec eax
jne 0x5ef59e
jmp 0x5ef8e0
ret
push rdi
push rsi
push rbx
sub rsp, 0x20
mov r8d, 0x20
mov rax, qword [rcx + 0xb0]
lea rdx, [rax + 1]
mov qword [rcx + 0xb0], rdx
movsx edi, byte [rax]
mov rbx, rcx
mov rcx, qword [rcx + 0xc0]
mov edx, edi
mov esi, edi
call fcn.00542e30
mov rcx, qword [rbx + 0xa0]
movsx edx, al
call sub.msvcrt.dll_strchr
test rax, rax
jne 0x5ef6b2
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov r8d, edi
jmp 0x5ef8c4
cmp dil, 0x5c
jne 0x5ef72a
mov rax, qword [rbx + 0xb0]
lea rdx, [0x00612133]
mov ecx, 2
cmp rax, qword [rbx + 0xb8]
je 0x5ef7ef
test dword [rbx + 0x8c], 0x120
je 0x5ef703
mov dl, byte [rax]
lea ecx, [rdx - 0x28]
cmp cl, 1
jbe 0x5ef6f3
cmp dl, 0x7b
jne 0x5ef703
lea rdx, [rax + 1]
mov qword [rbx + 0xb0], rdx
mov sil, byte [rax]
jmp 0x5ef72a
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x5ef720
mov rdx, qword [rcx]
mov rax, qword [rdx + rax - 1]
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp rax
cmp sil, 0x28
jne 0x5ef7f4
mov edx, dword [rbx + 0x8c]
test dl, 0x10
je 0x5ef74b
mov rax, qword [rbx + 0xb0]
cmp byte [rax], 0x3f
je 0x5ef75b
and edx, 2
cmp edx, 1
sbb eax, eax
add eax, 6
jmp 0x5ef8a2
lea rdx, [rax + 1]
mov qword [rbx + 0xb0], rdx
cmp rdx, qword [rbx + 0xb8]
jne 0x5ef778
lea rdx, [0x00612d11]
jmp 0x5ef7ea
mov dl, byte [rax + 1]
lea rax, [rax + 2]
cmp dl, 0x3a
jne 0x5ef79a
mov qword [rbx + 0xb0], rax
mov dword [rbx + 0x90], 6
jmp 0x5ef8d5
cmp dl, 0x3d
lea rcx, [rbx + 0xc8]
jne 0x5ef7c2
mov qword [rbx + 0xb0], rax
mov r8d, 0x70
mov dword [rbx + 0x90], 7
jmp 0x5ef8c4
cmp dl, 0x21
jne 0x5ef7e3
mov qword [rbx + 0xb0], rax
mov r8d, 0x6e
mov dword [rbx + 0x90], 7
jmp 0x5ef8c4
lea rdx, [0x00612d46]
mov ecx, 5
call fcn.005fb140
cmp sil, 0x29
jne 0x5ef809
mov dword [rbx + 0x90], 8
jmp 0x5ef8d5
cmp sil, 0x5b
jne 0x5ef85a
mov byte [rbx + 0xa8], 1
mov rax, qword [rbx + 0xb0]
mov dword [rbx + 0x88], 2
cmp rax, qword [rbx + 0xb8]
je 0x5ef84e
cmp byte [rax], 0x5e
jne 0x5ef84e
mov dword [rbx + 0x90], 0xa
inc rax
mov qword [rbx + 0xb0], rax
jmp 0x5ef8d5
mov dword [rbx + 0x90], 9
jmp 0x5ef8d5
cmp sil, 0x7b
jne 0x5ef876
mov dword [rbx + 0x88], 1
mov dword [rbx + 0x90], 0xc
jmp 0x5ef8d5
movsx edx, sil
and esi, 0xffffffdf
cmp sil, 0x5d
je 0x5ef8b0
mov rcx, qword [rbx + 0xc0]
xor r8d, r8d
mov rsi, rbx
call fcn.00542e30
mov dl, byte [rsi]
test dl, dl
je 0x5ef8d5
cmp dl, al
jne 0x5ef8aa
mov eax, dword [rsi + 4]
mov dword [rbx + 0x90], eax
jmp 0x5ef8d5
add rsi, 8
jmp 0x5ef895
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov r8d, edx
mov edx, 1
add rsp, 0x20
pop rbx
pop rsi
pop rdi
jmp fcn.005d6f70
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
lea rdx, [0x00612d68]
mov rsi, qword [rcx + 0xb0]
mov r12, qword [rcx + 0xb8]
mov rbx, rcx
mov ecx, 6
cmp rsi, r12
je 0x5efa04
lea rbp, [rsi + 1]
mov rcx, qword [rbx + 0xc0]
mov edx, 8
mov qword [rbx + 0xb0], rbp
movsx r8d, byte [rsi]
mov dword [rsp + 0x2c], r8d
mov edi, r8d
call fcn.00542d80
mov r8d, dword [rsp + 0x2c]
test al, al
je 0x5ef9a8
mov dword [rbx + 0x90], 0x1a
lea rdi, [rbx + 0xc8]
mov edx, 1
mov rcx, rdi
call fcn.005d6f70
mov rsi, qword [rbx + 0xb0]
cmp rsi, qword [rbx + 0xb8]
je 0x5efa23
mov rcx, qword [rbx + 0xc0]
movsx r8d, byte [rsi]
mov edx, 8
call fcn.00542d80
test al, al
je 0x5efa23
lea rax, [rsi + 1]
mov rcx, rdi
mov qword [rbx + 0xb0], rax
movsx edx, byte [rsi]
call fcn.005d81a0
jmp 0x5ef95f
cmp dil, 0x2c
jne 0x5ef9ba
mov dword [rbx + 0x90], 0x19
jmp 0x5efa23
test dword [rbx + 0x8c], 0x120
je 0x5efa09
cmp dil, 0x5c
jne 0x5ef9f8
cmp r12, rbp
je 0x5ef9f8
cmp byte [rsi + 1], 0x7d
jne 0x5ef9f8
mov dword [rbx + 0x88], 0
add rsi, 2
mov dword [rbx + 0x90], 0xd
mov qword [rbx + 0xb0], rsi
jmp 0x5efa23
lea rdx, [0x00612d9a]
mov ecx, 7
call fcn.005fb140
cmp dil, 0x7d
jne 0x5ef9f8
mov dword [rbx + 0x88], 0
mov dword [rbx + 0x90], 0xd
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
push rbx
sub rsp, 0x20
lea rdx, [0x00612de7]
mov rax, qword [rcx + 0xb0]
mov rbx, rcx
mov rcx, qword [rcx + 0xb8]
cmp rax, rcx
je 0x5efe48
lea rdx, [rax + 1]
mov qword [rbx + 0xb0], rdx
movsx r8d, byte [rax]
cmp r8b, 0x2d
jne 0x5efe36
mov dword [rbx + 0x90], 0x1c
jmp 0x5eff3a
cmp r8b, 0x5b
jne 0x5efebb
cmp rcx, rdx
jne 0x5efe52
lea rdx, [0x00612e1b]
mov ecx, 4
call fcn.005fb140
mov dl, byte [rax + 1]
cmp dl, 0x2e
jne 0x5efe66
mov dword [rbx + 0x90], 0x10
jmp 0x5efe86
cmp dl, 0x3a
jne 0x5efe77
mov dword [rbx + 0x90], 0xf
jmp 0x5efe86
cmp dl, 0x3d
jne 0x5efea2
mov dword [rbx + 0x90], 0x11
lea rdx, [rax + 2]
mov rcx, rbx
mov qword [rbx + 0xb0], rdx
movsx edx, byte [rax + 1]
call fcn.005ef5a0
jmp 0x5eff3a
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov r8d, 0x5b
jmp 0x5eff2c
cmp r8b, 0x5d
jne 0x5efed5
test byte [rbx + 0x8c], 0x10
jne 0x5efedd
cmp byte [rbx + 0xa8], 0
jne 0x5eff1b
jmp 0x5efedd
cmp r8b, 0x5c
je 0x5efef3
jmp 0x5eff1b
mov dword [rbx + 0x90], 0xb
mov dword [rbx + 0x88], 0
jmp 0x5eff3a
test byte [rbx + 0x8c], 0x90
je 0x5eff1b
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x5eff38
mov rdx, qword [rcx]
mov rax, qword [rdx + rax - 1]
jmp 0x5eff38
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov edx, 1
call fcn.005d6f70
jmp 0x5eff3a
call rax
mov byte [rbx + 0xa8], 0
add rsp, 0x20
pop rbx
ret