Function at 0x180030210
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor al, al
cmp dword [rcx + 0x7c], 0xffffffff
mov rbx, rcx
je 0x18003064c
nop dword [rax]
mov ecx, dword [rbx + 0x7c]
cmp ecx, 0x7c
je 0x18003064c
cmp ecx, 0x29
jne 0x18003025b
cmp dword [rbx + 0x1c], 0
jne 0x18003064c
test dword [rbx + 0x80], 0x10000000
je 0x180030657
cmp ecx, 0x2e
jne 0x1800302bc
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.180012390
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800302af
cmp byte [rcx], 0x5c
jne 0x1800302ac
inc rcx
cmp rcx, rax
je 0x1800302ac
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18003029b
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800302a9
test dl, 0x10
jne 0x1800302ac
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800302ac
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
jmp 0x180030638
cmp ecx, 0x5c
jne 0x1800303f8
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180030306
cmp byte [rcx], 0x5c
jne 0x180030303
inc rcx
cmp rcx, rax
je 0x180030303
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800302f2
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x180030300
test dl, 0x10
jne 0x180030303
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x180030303
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
mov eax, dword [rbx + 0x80]
and eax, 0x80
je 0x18003037d
cmp byte [rbx + 0x78], 0x62
jne 0x18003037d
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.180012390
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180030370
cmp byte [rcx], 0x5c
jne 0x18003036d
inc rcx
cmp rcx, rax
je 0x18003036d
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18003035c
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x18003036a
test dl, 0x10
jne 0x18003036d
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x18003036d
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
jmp 0x180030640
test eax, eax
je 0x1800303eb
cmp byte [rbx + 0x78], 0x42
jne 0x1800303eb
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.180012390
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800303de
cmp byte [rcx], 0x5c
jne 0x1800303db
inc rcx
cmp rcx, rax
je 0x1800303db
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800303ca
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800303d8
test dl, 0x10
jne 0x1800303db
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800303db
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
jmp 0x180030640
mov rcx, rbx
call fcn.1800318d0
jmp 0x180030638
cmp ecx, 0x5b
jne 0x1800304aa
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180030442
cmp byte [rcx], 0x5c
jne 0x18003043f
inc rcx
cmp rcx, rax
je 0x18003043f
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18003042e
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x18003043c
test dl, 0x10
jne 0x18003043f
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x18003043f
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
mov rcx, rbx
call fcn.180031810
cmp dword [rbx + 0x7c], 0x5d
jne 0x180030662
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x18003049d
cmp byte [rcx], 0x5c
jne 0x18003049a
inc rcx
cmp rcx, rax
je 0x18003049a
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x180030489
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x180030497
test dl, 0x10
jne 0x18003049a
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x18003049a
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
jmp 0x180030638
cmp ecx, 0x28
jne 0x180030568
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800304f4
cmp byte [rcx], 0x5c
jne 0x1800304f1
inc rcx
cmp rcx, rax
je 0x1800304f1
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800304e0
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800304ee
test dl, 0x10
jne 0x1800304f1
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800304f1
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
mov rcx, rbx
call fcn.1800319c0
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x18003066d
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180030552
cmp byte [rcx], 0x5c
jne 0x18003054f
inc rcx
cmp rcx, rax
je 0x18003054f
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18003053e
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x18003054c
test dl, 0x10
jne 0x18003054f
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x18003054f
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
test dil, dil
je 0x180030640
jmp 0x180030638
cmp ecx, 0x5e
jne 0x1800305c6
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.180012390
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800305bc
cmp byte [rcx], 0x5c
jne 0x1800305b9
inc rcx
cmp rcx, rax
je 0x1800305b9
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800305a8
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800305b6
test dl, 0x10
jne 0x1800305b9
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800305b9
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.18002eb30
jmp 0x180030640
cmp ecx, 0x24
jne 0x1800305e3
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.180012390
mov rcx, rbx
call fcn.1800301c0
jmp 0x180030640
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x18003068e
cmp ecx, 0x3f
je 0x18003068e
cmp ecx, 0x7b
je 0x18003068e
cmp ecx, 0x7d
jne 0x180030612
test dword [rbx + 0x80], 0x10000000
je 0x180030678
cmp ecx, 0x5d
jne 0x180030623
test dword [rbx + 0x80], 0x10000000
je 0x180030683
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.180014380
mov rcx, rbx
call fcn.1800301c0
mov rcx, rbx
call fcn.180031ae0
cmp dword [rbx + 0x7c], 0xffffffff
mov al, 1
jne 0x180030230
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov ecx, 5
call fcn.18008491c
int3
mov ecx, 4
call fcn.18008491c
int3
mov ecx, 5
call fcn.18008491c
int3
mov ecx, 6
call fcn.18008491c
int3
mov ecx, 4
call fcn.18008491c
int3
mov ecx, 0xa
call fcn.18008491c
int3