Function at 0x56c780
Capabilities:
Parse credit card information

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x56cb9a
push rbp
mov rbp, rsp
sub rsp, 0x78
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x88], rax
mov byte [rsp + 0x90], bl
mov qword [rsp + 0xc8], r11
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x58], 0
movups xmmword [rsp + 0x60], xmm15
nop word [rax + rax]
cmp rdi, 1
jle 0x56c8a6
lea rdx, [rdi - 1]
test rdx, rdx
ja 0x56c7fd
xor esi, esi
xor r12d, r12d
xor r13d, r13d
jmp 0x56c83b
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x98], rcx
xor eax, eax
mov rbx, rdx
xor ecx, ecx
mov rdi, rbx
lea rsi, [0x005879c0]
nop dword [rax + rax]
call fcn.0044d000
mov rdx, qword [rsp + 0x38]
mov rsi, rax
mov r12, rcx
mov r13, rbx
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x70], rsi
lea rbx, [rcx + 1]
mov rax, rsi
mov rcx, rdx
call fcn.00469840
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x58], rdx
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x68], rdx
mov rax, qword [rsp + 0x88]
movzx ebx, byte [rsp + 0x90]
mov rdi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0xc8]
cmp qword [rax + 0xc8], 0
jg 0x56c8ed
mov ebx, 1
call fcn.00562940
test al, al
je 0x56c8f5
mov rax, qword [rsp + 0x88]
movzx ebx, byte [rsp + 0x90]
mov rdi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0xc8]
test rdi, rdi
setne dl
jmp 0x56c921
xor eax, eax
add rsp, 0x78
pop rbp
ret
movzx ebx, byte [rsp + 0x90]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0xc8]
mov edx, 1
mov rcx, qword [rax + 0xb0]
mov r12, qword [rax + 0xc0]
cmp rcx, r12
jbe 0x56cb91
mov r13, qword [rax + 0xa8]
movzx r12d, byte [r13 + r12]
cmp r12b, 0x30
jb 0x56c98a
cmp r12b, 0x39
jbe 0x56c96c
cmp r12b, 0x41
jb 0x56c98a
cmp r12b, 0x5a
jbe 0x56c96c
nop dword [rax]
cmp r12b, 0x61
jb 0x56c980
cmp r12b, 0x7a
ja 0x56c9e0
cmp r12b, 0x25
je 0x56ca3c
jmp 0x56ca0c
cmp r12b, 0x5f
je 0x56ca0c
cmp r12b, 0x2d
je 0x56ca0c
cmp r12b, 0x3b
je 0x56ca0c
cmp r12b, 0x2f
je 0x56ca0c
nop dword [rax]
cmp r12b, 0x3f
je 0x56ca0c
cmp r12b, 0x3a
je 0x56ca0c
cmp r12b, 0x40
je 0x56ca0c
cmp r12b, 0x26
je 0x56ca0c
cmp r12b, 0x3d
je 0x56ca0c
nop
cmp r12b, 0x2b
je 0x56ca0c
cmp r12b, 0x24
je 0x56ca0c
cmp r12b, 0x2c
je 0x56ca0c
cmp r12b, 0x2e
je 0x56ca0c
cmp r12b, 0x21
je 0x56ca0c
nop
cmp r12b, 0x7e
je 0x56ca0c
cmp r12b, 0x2a
je 0x56ca0c
cmp r12b, 0x27
je 0x56ca0c
cmp r12b, 0x28
je 0x56ca0c
cmp r12b, 0x29
je 0x56ca0c
nop
cmp r12b, 0x5b
je 0x56ca0c
cmp r12b, 0x5d
jne 0x56ca36
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
nop dword [rax + rax]
call fcn.005653a0
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
jmp 0x56ca53
cmp r12b, 0x25
jne 0x56ca95
mov rcx, r8
mov rdi, r9
mov rsi, r10
lea r8, [rsp + 0x58]
call fcn.0056cc00
test al, al
je 0x56ca8d
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0xc8], 0
jg 0x56c8fd
mov ebx, 1
call fcn.00562940
test al, al
je 0x56ca85
mov rax, qword [rsp + 0x88]
nop
jmp 0x56c8fd
xor eax, eax
add rsp, 0x78
pop rbp
ret
xor eax, eax
add rsp, 0x78
pop rbp
ret
test dl, dl
je 0x56cae1
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x58]
mov qword [r11 + 8], rcx
mov qword [r11 + 0x10], rdx
cmp dword [0x008e9d40], 0
je 0x56cad2
mov rax, r11
nop dword [rax]
call fcn.00468b20
mov qword [r11], rbx
mov rcx, qword [rax]
mov qword [r11 + 8], rcx
mov r11, rax
mov qword [r11], rbx
mov eax, 1
add rsp, 0x78
pop rbp
nop
ret
movzx ecx, bl
nop
mov qword [rax], 3
test rcx, rcx
mov ecx, 0x13
mov edx, 0x1e
cmovne rcx, rdx
mov qword [rax + 0x48], rcx
lea rcx, [0x005be8a8]
lea rdx, [0x005c2fc2]
cmovne rcx, rdx
cmp dword [0x008e9d40], 0
je 0x56cb30
nop dword [rax]
call fcn.00468b20
mov qword [r11], rcx
mov rdx, qword [rax + 0x40]
mov qword [r11 + 8], rdx
mov qword [rax + 0x40], rcx
mov qword [rax + 0x50], r8
mov qword [rax + 0x58], r9
mov qword [rax + 0x60], r10
mov qword [rax + 0x10], 0x1d
cmp dword [0x008e9d40], 0
je 0x56cb5d
mov rcx, qword [rax + 8]
call fcn.00468b00
mov qword [r11], rcx
lea rcx, [0x005c2963]
mov qword [rax + 8], rcx
mov rcx, qword [rax + 0x100]
mov rdx, qword [rax + 0x108]
mov rbx, qword [rax + 0x110]
mov qword [rax + 0x28], rcx
mov qword [rax + 0x30], rdx
mov qword [rax + 0x38], rbx
xor eax, eax
add rsp, 0x78
pop rbp
ret
mov rax, r12
call fcn.00468ec0
nop
mov qword [rsp + 8], rax
mov byte [rsp + 0x10], bl
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.00466be0
mov rax, qword [rsp + 8]
movzx ebx, byte [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp fcn.0056c780