Function at 0x180009330
Capabilities:
Parse credit card information

Disassembly:
mov r11, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov r15, rdx
mov rsi, rcx
xor edi, edi
mov qword [r11 - 0x48], rdi
mov ebp, edi
mov dword [rsp + 0x48], edi
lea rax, vtable.CBufferT_char_.0
mov qword [r11 - 0x50], rax
mov r13d, edi
mov dword [rsp + 0x58], edi
mov r12d, edi
mov qword [r11 - 0x38], rdi
lea r14d, [rdi + 8]
movzx ebx, byte [rsi + 0x130]
test bl, bl
jne 0x18000939c
cmp dword [rsi + 0x134], 1
je 0x1800095ed
mov eax, dword [rsi + 0x134]
test eax, eax
jne 0x1800093fa
movzx eax, byte [rsi + 0x140]
cmp al, 0x7b
jne 0x1800093be
cmp dword [rsi + 0x144], 1
je 0x18000953f
cmp al, 0x3f
jne 0x1800093cf
cmp dword [rsi + 0x144], 1
je 0x18000953f
cmp al, 0x2a
jne 0x1800093e0
cmp dword [rsi + 0x144], 1
je 0x18000953f
cmp al, 0x2b
jne 0x1800094cd
cmp dword [rsi + 0x144], 1
je 0x18000953f
jmp 0x1800094cd
cmp eax, 1
jne 0x180009384
cmp bl, 0x29
je 0x1800095ed
cmp bl, 0x7c
je 0x1800095ed
test ebp, ebp
jg 0x1800095f1
cmp bl, 0x28
je 0x1800095dd
cmp bl, 0x5b
je 0x1800095cd
cmp bl, 0x2e
je 0x1800095cd
cmp bl, 0x77
je 0x1800095cd
cmp bl, 0x57
je 0x1800095cd
cmp bl, 0x73
je 0x1800095cd
cmp bl, 0x53
je 0x1800095cd
cmp bl, 0x64
je 0x1800095cd
cmp bl, 0x44
je 0x1800095cd
cmp bl, 0x5e
je 0x1800095ba
cmp bl, 0x24
je 0x1800095ba
cmp bl, 0x41
je 0x1800095ba
cmp bl, 0x5a
je 0x1800095ba
cmp bl, 0x7a
je 0x1800095ba
cmp bl, 0x62
je 0x1800095ba
cmp bl, 0x42
je 0x1800095ba
cmp bl, 0x47
je 0x1800095ba
cmp bl, 0x5c
je 0x1800095a7
cmp bl, 0x6b
je 0x1800095a7
cmp bl, 0x67
je 0x1800095a7
mov edi, r13d
cmp r13d, r14d
cmovl edi, r14d
lea eax, [rbp + 2]
cmp eax, edi
jle 0x1800094f9
add edi, edi
cmp eax, edi
jle 0x1800094f9
lea edi, [rbp + 0xd]
mov eax, edi
and eax, 0x80000007
jge 0x1800094f7
dec eax
or eax, 0xfffffff8
inc eax
sub edi, eax
cmp edi, r13d
jle 0x18000951d
movsxd rdx, edi
mov rcx, r12
call fcn.180017d6c
mov r12, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rax
mov r13d, edi
mov dword [rsp + 0x58], edi
movsxd rax, ebp
mov byte [rax + r12], bl
inc ebp
mov dword [rsp + 0x48], ebp
movsxd rax, ebp
mov byte [rax + r12], 0
mov rcx, rsi
call fcn.180007130
jmp 0x180009384
test ebp, ebp
jne 0x1800095ef
movzx ebx, byte [rsi + 0x130]
cmp r14d, r13d
jg 0x18000956d
cmp r13d, 2
jge 0x18000958a
lea eax, [r13 + r13]
cmp eax, 2
cmovl eax, r14d
mov r14d, eax
cmp eax, r13d
jle 0x18000958a
movsxd rdx, r14d
mov rcx, r12
call fcn.180017d6c
mov r12, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x58], r14d
mov byte [r12], bl
mov ebp, 1
mov dword [rsp + 0x48], ebp
mov byte [r12 + 1], 0
mov rcx, rsi
call fcn.180007130
jmp 0x1800095f1
mov rdx, r15
mov rcx, rsi
call fcn.18000b510
mov rbx, rax
jmp 0x18000964e
mov rdx, r15
mov rcx, rsi
call fcn.18000b250
mov rbx, rax
jmp 0x18000964e
mov rdx, r15
mov rcx, rsi
call fcn.1800099f0
mov rbx, rax
jmp 0x18000964e
mov rdx, r15
mov rcx, rsi
call fcn.18000a0e0
mov rbx, rax
jmp 0x18000964e
test ebp, ebp
jle 0x180009641
mov ecx, 0x38
call fcn.180016f44
test rax, rax
je 0x18000962f
lea rdx, [0x18002a13b]
test r12, r12
cmovne rdx, r12
mov r9d, dword [r15]
mov ecx, r9d
and ecx, 8
and r9d, 0x10
mov dword [rsp + 0x20], ecx
mov r8d, ebp
mov rcx, rax
call fcn.18000bba0
mov rdi, rax
jmp 0x180009631
xor edi, edi
mov rdx, rdi
mov rcx, rsi
call fcn.1800089a0
mov rbx, rax
jmp 0x18000964e
xor edx, edx
mov rcx, rsi
call fcn.180008050
mov rbx, rax
test r12, r12
je 0x18000965b
mov rcx, r12
call fcn.180017658
mov rax, rbx
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret