Function at 0x567830
Capabilities:
Parse credit card information

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x18]
cmp rax, qword [rcx + 0x10]
jbe 0x568046
sub rsp, 0x98
mov qword [rsp + 0x90], rbp
lea rbp, [rsp + 0x90]
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x568000
lea rcx, [0x00615360]
mov qword [rsp], rcx
mov qword [rsp + 8], 0
shr rax, 1
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x10], rax
call fcn.00448c20
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0xa0]
cmp byte [rcx], 0x22
jne 0x567ced
mov rdx, qword [rsp + 0xa8]
dec rdx
mov rbx, rdx
neg rdx
sar rdx, 0x3f
and rdx, 1
add rcx, rdx
mov rdx, qword [rsp + 0x70]
xor esi, esi
jmp 0x5678db
mov rsi, rdi
test rbx, rbx
je 0x567cb2
movzx edi, byte [rcx]
lea r8, [rbx - 1]
mov r9, r8
neg r8
sar r8, 0x3f
and r8, 1
lea r10, [r8 + rcx]
cmp dil, 0x22
je 0x567b6b
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x48], rsi
cmp dil, 0x5c
jne 0x567a56
cmp rbx, 1
je 0x567a1b
movzx ecx, byte [rcx + r8]
cmp cl, 0xb
jne 0x5679bb
lea rdi, [rsi + 1]
cmp rdi, rdx
ja 0x56795c
mov byte [rax + rsi], cl
lea rcx, [rbx - 2]
mov rbx, rcx
neg rcx
sar rcx, 0x3f
and rcx, 1
add rcx, r10
jmp 0x5678d8
mov byte [rsp + 0x45], cl
mov qword [rsp + 0xa8], rbx
lea rcx, [0x00615360]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rdi
call fcn.00448d30
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
lea rdi, [rcx + 1]
movzx ecx, byte [rsp + 0x45]
mov rbx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x48]
mov r10, qword [rsp + 0x88]
jmp 0x56793f
cmp cl, 0xc
je 0x567936
cmp cl, 1
jb 0x5679d2
cmp cl, 9
jbe 0x567936
cmp cl, 0xe
jb 0x5679e0
cmp cl, 0x7f
jbe 0x567936
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
cmp dil, 0xb
jne 0x567ad0
lea rcx, [rsi + 1]
cmp rcx, rdx
ja 0x567a77
mov byte [rax + rsi], dil
mov rbx, r9
mov rdi, rcx
mov rcx, r10
jmp 0x5678d8
mov byte [rsp + 0x44], dil
mov qword [rsp + 0x70], r9
lea rbx, [0x00615360]
mov qword [rsp], rbx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rcx
call fcn.00448d30
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
inc rcx
mov rsi, qword [rsp + 0x48]
movzx edi, byte [rsp + 0x44]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x88]
jmp 0x567a65
cmp dil, 0xc
je 0x567a5c
cmp dil, 0x20
je 0x567a5c
cmp dil, 0x21
je 0x567a5c
cmp dil, 0x7f
je 0x567a5c
cmp dil, 1
jb 0x567b00
cmp dil, 8
jbe 0x567a5c
cmp dil, 0xe
jb 0x567b10
cmp dil, 0x1f
jbe 0x567a5c
cmp dil, 0x23
jb 0x567b20
cmp dil, 0x5b
jbe 0x567a5c
cmp dil, 0x5d
jb 0x567b30
cmp dil, 0x7e
jbe 0x567a5c
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
test r9, r9
jne 0x567bab
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
cmp byte [r10], 0x40
jne 0x567b70
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x78], rax
lea rax, [r9 - 1]
mov qword [rsp + 0xa8], rax
mov rcx, rax
neg rax
sar rax, 0x3f
and rax, 1
add rax, r10
mov qword [rsp + 0xa0], rax
mov qword [rsp], rax
mov qword [rsp + 8], rcx
call fcn.00568050
cmp byte [rsp + 0x28], 0
je 0x567c77
mov qword [rsp], 0
mov rax, qword [rsp + 0x78]
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x18], rax
call fcn.0044cdb0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xc8], rax
mov byte [rsp + 0xd0], 1
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa8]
xor esi, esi
jmp 0x567d1d
mov byte [rax + rsi], r9b
dec r8
mov r9, r8
neg r8
sar r8, 0x3f
and r8, 1
lea rcx, [rdi + r8]
mov rsi, rbx
mov rbx, r9
mov qword [rsp + 0x58], rsi
test rbx, rbx
jle 0x567ecf
movzx edi, byte [rcx]
cmp dil, 0x5c
jne 0x567e14
lea rdi, [rbx - 1]
mov r8, rdi
neg rdi
sar rdi, 0x3f
and rdi, 1
add rdi, rcx
cmp rbx, 1
je 0x567dd9
test r8, r8
jbe 0x56803b
lea rbx, [rsi + 1]
movzx r9d, byte [rdi]
cmp rbx, rdx
jbe 0x567cfe
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], r8
mov byte [rsp + 0x45], r9b
lea rcx, [0x00615360]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rbx
call fcn.00448d30
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
lea rbx, [rcx + 1]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
movzx r9d, byte [rsp + 0x45]
jmp 0x567cfe
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
cmp dil, 0x30
jb 0x567e2b
cmp dil, 0x39
ja 0x567e2b
mov rdi, rcx
mov r8, rbx
jmp 0x567d57
cmp dil, 0x61
jb 0x567e37
cmp dil, 0x7a
jbe 0x567e20
cmp dil, 0x41
jb 0x567e43
cmp dil, 0x5a
jbe 0x567e20
cmp dil, 0x21
je 0x567e20
cmp dil, 0x23
je 0x567e20
cmp dil, 0x24
je 0x567e20
cmp dil, 0x25
je 0x567e20
cmp dil, 0x26
je 0x567e20
cmp dil, 0x27
je 0x567e20
cmp dil, 0x2a
je 0x567e20
cmp dil, 0x2b
je 0x567e20
cmp dil, 0x2d
je 0x567e20
cmp dil, 0x2f
je 0x567e20
cmp dil, 0x3d
je 0x567e20
cmp dil, 0x3f
je 0x567e20
cmp dil, 0x5e
je 0x567e20
cmp dil, 0x5f
je 0x567e20
cmp dil, 0x60
je 0x567e20
cmp dil, 0x7b
je 0x567e20
cmp dil, 0x7c
je 0x567e20
cmp dil, 0x7d
je 0x567e20
cmp dil, 0x7e
je 0x567e20
cmp dil, 0x2e
je 0x567e20
test rsi, rsi
je 0x567fc5
mov word [rsp + 0x46], 0
mov word [rsp + 0x46], 0x2e2e
cmp byte [rax], 0x2e
jne 0x567f3b
mov edi, 1
test dil, dil
jne 0x567f00
mov r9, rbx
mov r10, rcx
jmp 0x567b6b
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
movzx edi, byte [rsi + rax - 1]
cmp dil, 0x2e
jne 0x567f4d
mov edi, 1
jmp 0x567ef0
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x80], rax
nop
mov qword [rsp], rax
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rdx
lea rcx, [rsp + 0x46]
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], 2
mov qword [rsp + 0x28], 2
call fcn.00478190
cmp qword [rsp + 0x30], 0xffffffffffffffff
setne dil
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x58]
jmp 0x567ef0
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
mov qword [rsp + 0xb0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xd0], 0
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
ret
xor eax, eax
mov rcx, r8
call fcn.004624f0
nop
call fcn.0045fb00
jmp fcn.00567830