Function at 0x1806b37a0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x1806b3fd7
lea r15, vtable.N_.1.0
xor r14d, r14d
lea r13, vtable..17.0
mov r12d, 0xfffd
cmp ecx, 0x7c
je 0x1806b3fd7
cmp ecx, 0x29
jne 0x1806b3811
cmp dword [rbx + 0x1c], r14d
jne 0x1806b3fd7
test dword [rbx + 0x80], 0x10000000
je 0x1806b4002
jmp 0x1806b3e97
cmp ecx, 0x2e
jne 0x1806b38cf
mov ecx, 0x20
call fcn.180704600
test rax, rax
je 0x1806b383e
mov qword [rax], r15
mov qword [rax + 8], 5
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x1806b3841
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1806b3ef1
cmp word [rax], 0x5c
jne 0x1806b38c3
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x1806b38c0
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b3892
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x1806b38b0
cmp cx, 0x29
je 0x1806b38b0
mov rcx, rax
test r9b, 0x10
jne 0x1806b38c0
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x1806b38b0
mov rdx, rcx
cmp r8w, 0x7d
jne 0x1806b38c0
lea rax, [rdx + 2]
add rax, 2
mov qword [rbx], rax
jmp 0x1806b3ef1
mov rax, rcx
add rax, 2
mov qword [rbx], rax
jmp 0x1806b3ef1
cmp ecx, 0x5c
jne 0x1806b3b99
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1806b3946
cmp word [rax], cx
jne 0x1806b393f
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x1806b393c
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b3918
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x1806b3936
cmp cx, 0x29
je 0x1806b3936
mov rcx, rax
test r9b, 0x10
jne 0x1806b393c
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x1806b3936
mov rdx, rcx
cmp r8w, 0x7d
jne 0x1806b393c
lea rax, [rdx + 2]
jmp 0x1806b393f
mov rax, rcx
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.1806b75f0
mov ecx, dword [rbx + 0x80]
test cl, cl
jns 0x1806b3a79
movzx eax, word [rbx + 0x78]
cmp ax, 0x62
jne 0x1806b3a33
mov ecx, 0x20
call fcn.180704600
test rax, rax
je 0x1806b398e
mov qword [rax], r15
mov qword [rax + 8], 4
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x1806b3991
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1806b3e40
cmp word [rax], 0x5c
jne 0x1806b3da3
lea r8, [rax + 2]
mov rcx, rax
cmp r8, rdx
je 0x1806b3a1c
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b39e6
movzx ecx, word [r8]
mov rdx, rax
cmp cx, 0x28
je 0x1806b3a04
cmp cx, 0x29
je 0x1806b3a04
mov rcx, rax
test r9b, 0x10
jne 0x1806b3a1c
movzx r8d, word [r8]
mov rdx, rax
cmp r8w, 0x7b
je 0x1806b3a04
mov rdx, rcx
cmp r8w, 0x7d
jne 0x1806b3a1c
lea rax, [rdx + 2]
mov rcx, rbx
add rax, 2
mov qword [rbx], rax
call fcn.1806b75f0
jmp 0x1806b3fc9
mov rax, rcx
mov rcx, rbx
add rax, 2
mov qword [rbx], rax
call fcn.1806b75f0
jmp 0x1806b3fc9
cmp ax, 0x42
jne 0x1806b3a79
mov ecx, 0x20
call fcn.180704600
test rax, rax
je 0x1806b3a5d
mov qword [rax], r15
mov qword [rax + 8], 4
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x1806b3a60
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
jmp 0x1806b3d47
bt ecx, 8
jae 0x1806b3b54
mov edx, 3
mov rcx, rbx
call fcn.1806b4d50
test al, al
je 0x1806b3b54
mov edi, dword [rbx + 0x74]
mov eax, dword [rbx + 0x80]
test edi, edi
jne 0x1806b3ac0
bt eax, 0x14
jae 0x1806b4010
lea rcx, [rbx + 0x40]
movzx edx, di
call fcn.1806b2d30
jmp 0x1806b3ef9
bt eax, 9
jae 0x1806b3acf
cmp edi, 9
ja 0x1806b403a
mov eax, edi
movsxd rcx, eax
mov eax, dword [rbx + 0x18]
cmp rax, rcx
jb 0x1806b403a
cmp qword [rbx + 0x38], rcx
jbe 0x1806b403a
mov rdx, qword [rbx + 0x20]
movzx eax, cl
and al, 0x1f
mov r8, rcx
shr r8, 5
movzx ecx, al
mov eax, dword [rdx + r8*4]
bt eax, ecx
jae 0x1806b403a
mov ecx, 0x28
call fcn.180704600
test rax, rax
je 0x1806b3b40
mov rdx, rax
mov qword [rax + 8], 0xf
lea rcx, [rbx + 0x40]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
mov qword [rax], r13
mov dword [rax + 0x20], edi
call fcn.1806b6950
jmp 0x1806b3ef9
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
jmp 0x1806b3ef9
mov rcx, rbx
call fcn.1806b4680
test al, al
je 0x1806b3b72
movzx edx, word [rbx + 0x74]
lea rcx, [rbx + 0x40]
call fcn.1806b2d30
jmp 0x1806b3ef9
test dword [rbx + 0x80], 0x20000
je 0x1806b4010
mov dl, 1
mov rcx, rbx
call fcn.1806b45d0
test al, al
je 0x1806b4010
jmp 0x1806b3ef9
cmp ecx, 0x5b
jne 0x1806b3c70
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1806b3c01
cmp word [rax], 0x5c
jne 0x1806b3bfa
lea r8, [rax + 2]
cmp r8, rcx
je 0x1806b3bfa
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b3bdd
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x28
je 0x1806b3bf6
cmp dx, 0x29
je 0x1806b3bf6
test r9b, 0x10
jne 0x1806b3bfa
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x7b
je 0x1806b3bf6
cmp dx, 0x7d
jne 0x1806b3bfa
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.1806b75f0
lea rcx, [rbx + 0x40]
call fcn.1806b2f70
mov eax, dword [rbx + 0x7c]
cmp eax, 0x5e
jne 0x1806b3c2d
mov rax, qword [rbx + 0x48]
mov rcx, rbx
xor dword [rax + 0xc], 1
call fcn.1806b7050
mov eax, dword [rbx + 0x7c]
test dword [rbx + 0x80], 0x20000000
je 0x1806b3c51
cmp eax, 0x5d
jne 0x1806b3c51
mov edx, eax
lea rcx, [rbx + 0x40]
call fcn.1806b2ed0
mov rcx, rbx
call fcn.1806b7050
mov rcx, rbx
call fcn.1806b4bd0
cmp dword [rbx + 0x7c], 0x5d
jne 0x1806b4048
mov rcx, rbx
call fcn.1806b7050
jmp 0x1806b3ef9
cmp ecx, 0x28
jne 0x1806b3d0b
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1806b3cd8
cmp word [rax], 0x5c
jne 0x1806b3cd1
lea r8, [rax + 2]
cmp r8, rcx
je 0x1806b3cd1
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b3cb4
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x28
je 0x1806b3ccd
cmp dx, 0x29
je 0x1806b3ccd
test r9b, 0x10
jne 0x1806b3cd1
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x7b
je 0x1806b3ccd
cmp dx, 0x7d
jne 0x1806b3cd1
lea rax, [rcx + 2]
add rax, 2
mov qword [rbx], rax
mov rcx, rbx
call fcn.1806b75f0
mov rcx, rbx
call fcn.1806b7870
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x1806b4002
mov rcx, rbx
call fcn.1806b7050
test dil, dil
je 0x1806b3fc9
jmp 0x1806b3ef9
cmp ecx, 0x5e
jne 0x1806b3db7
mov ecx, 0x20
call fcn.180704600
test rax, rax
je 0x1806b3d38
mov qword [rax], r15
mov qword [rax + 8], 2
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x1806b3d3b
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
mov rcx, qword [rbx + 0x10]
mov rax, qword [rbx]
cmp rax, rcx
je 0x1806b3e40
cmp word [rax], 0x5c
jne 0x1806b3da3
lea r8, [rax + 2]
cmp r8, rcx
je 0x1806b3da3
mov r9d, dword [rbx + 0x80]
test r9b, 8
jne 0x1806b3d86
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x28
je 0x1806b3d9f
cmp dx, 0x29
je 0x1806b3d9f
test r9b, 0x10
jne 0x1806b3da3
movzx edx, word [r8]
mov rcx, rax
cmp dx, 0x7b
je 0x1806b3d9f
cmp dx, 0x7d
jne 0x1806b3da3
lea rax, [rcx + 2]
add rax, 2
mov rcx, rbx
mov qword [rbx], rax
call fcn.1806b75f0
jmp 0x1806b3fc9
cmp ecx, 0x24
jne 0x1806b3e4d
mov ecx, 0x20
call fcn.180704600
test rax, rax
je 0x1806b3de4
mov qword [rax], r15
mov qword [rax + 8], 3
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x1806b3de7
mov rax, r14
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.1806b6950
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1806b3e40
cmp word [rax], 0x5c
jne 0x1806b3e3c
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x1806b3e3c
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1806b3e26
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x1806b3e38
test dl, 0x10
jne 0x1806b3e3c
movzx eax, word [rcx]
sub ax, 0x7b
test r12w, ax
jne 0x1806b3e3c
add qword [rbx], 2
add qword [rbx], 2
mov rcx, rbx
call fcn.1806b75f0
jmp 0x1806b3fc9
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x1806b402c
cmp ecx, 0x3f
je 0x1806b402c
cmp ecx, 0x7b
je 0x1806b402c
cmp ecx, 0x7d
jne 0x1806b3e82
test dword [rbx + 0x80], 0x10000000
je 0x1806b401e
jmp 0x1806b3e97
cmp ecx, 0x5d
jne 0x1806b3e97
test dword [rbx + 0x80], 0x10000000
je 0x1806b4048
movzx edx, word [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.1806b2d30
mov rax, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rax, rdx
je 0x1806b3ef1
cmp word [rax], 0x5c
jne 0x1806b3eed
lea rcx, [rax + 2]
cmp rcx, rdx
je 0x1806b3eed
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1806b3ed7
movzx eax, word [rcx]
sub ax, 0x28
cmp ax, 1
jbe 0x1806b3ee9
test dl, 0x10
jne 0x1806b3eed
movzx eax, word [rcx]
sub ax, 0x7b
test r12w, ax
jne 0x1806b3eed
add qword [rbx], 2
add qword [rbx], 2
mov rcx, rbx
call fcn.1806b75f0
mov eax, dword [rbx + 0x7c]
mov ebp, r14d
mov edi, 0xffffffff
cmp eax, 0x2a
je 0x1806b3f85
cmp eax, 0x2b
jne 0x1806b3f13
lea ebp, [rdi + 2]
jmp 0x1806b3f85
cmp eax, 0x3f
jne 0x1806b3f1d
lea edi, [rax - 0x3e]
jmp 0x1806b3f85
cmp eax, 0x7b
jne 0x1806b3fc9
mov rcx, rbx
call fcn.1806b7050
mov edx, 7
mov rcx, rbx
call fcn.1806b4d50
test al, al
je 0x1806b3ff4
cmp dword [rbx + 0x7c], 0x2c
mov ebp, dword [rbx + 0x74]
je 0x1806b3f50
mov edi, ebp
jmp 0x1806b3f76
mov rcx, rbx
call fcn.1806b7050
cmp dword [rbx + 0x7c], 0x7d
je 0x1806b3f7c
mov edx, 7
mov rcx, rbx
call fcn.1806b4d50
test al, al
je 0x1806b3ff4
mov edi, dword [rbx + 0x74]
cmp dword [rbx + 0x7c], 0x7d
jne 0x1806b3ff4
cmp edi, 0xffffffff
je 0x1806b3f85
cmp edi, ebp
jl 0x1806b3ff4
mov rax, qword [rbx + 0x48]
mov rcx, rbx
or dword [rax + 0xc], 4
call fcn.1806b7050
test dword [rbx + 0x80], 0x400
je 0x1806b3fb4
cmp dword [rbx + 0x7c], 0x3f
jne 0x1806b3fb4
xor sil, sil
mov rcx, rbx
call fcn.1806b7050
jmp 0x1806b3fb7
mov sil, 1
lea rcx, [rbx + 0x40]
movzx r9d, sil
mov r8d, edi
mov edx, ebp
call fcn.1806b34e0
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x1806b37e4
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov edx, 7
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 5
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 2
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 6
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 0xa
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 3
mov rcx, rbx
call fcn.1806b6310
int3
mov edx, 4
mov rcx, rbx
call fcn.1806b6310
int3