Function at 0x180031db0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x180031e8c
lea rbp, vtable.std::_Node_base.0
xor esi, esi
nop
cmp ecx, 0x7c
je 0x180031e8c
cmp ecx, 0x29
jne 0x180031ea1
cmp dword [rbx + 0x1c], esi
jne 0x180031e8c
test dword [rbx + 0x80], 0x10000000
je 0x180032236
cmp ecx, 0x5d
jne 0x180031e20
test dword [rbx + 0x80], 0x10000000
je 0x180032244
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.1800332e0
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x180031e6e
cmp byte [rcx], 0x5c
jne 0x180031e6b
inc rcx
cmp rcx, rax
je 0x180031e6b
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x180031e5a
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x180031e68
test dl, 0x10
jne 0x180031e6b
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x180031e6b
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
mov rcx, rbx
call fcn.180033090
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x180031de0
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0x2e
jne 0x180031f0b
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1801338e8
mov rdx, rax
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 0x18], rsi
mov qword [rax], rbp
mov qword [rax + 8], 5
mov qword [rax + 0x10], rsi
mov rax, qword [rbx + 0x48]
mov qword [rdx + 0x18], rax
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x180031efe
mov qword [rdx + 0x10], rcx
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [rcx + 0x18], rdx
mov rax, qword [rbx + 0x48]
mov qword [rax + 0x10], rdx
mov qword [rbx + 0x48], rdx
jmp 0x180031e2d
cmp ecx, 0x5c
jne 0x18003200d
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180031f55
cmp byte [rcx], 0x5c
jne 0x180031f52
inc rcx
cmp rcx, rax
je 0x180031f52
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x180031f41
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x180031f4f
test dl, 0x10
jne 0x180031f52
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x180031f52
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
test byte [rbx + 0x80], 0x80
je 0x180032000
cmp byte [rbx + 0x78], 0x62
jne 0x180031f91
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1801338e8
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 8], 4
jmp 0x180032178
cmp byte [rbx + 0x78], 0x42
jne 0x180032000
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1801338e8
mov rdx, rax
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 0x18], rsi
mov qword [rax], rbp
mov qword [rax + 8], 4
mov qword [rax + 0x10], rsi
mov rax, qword [rbx + 0x48]
mov qword [rdx + 0x18], rax
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x180031fef
mov qword [rdx + 0x10], rcx
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [rcx + 0x18], rdx
mov rax, qword [rbx + 0x48]
mov qword [rax + 0x10], rdx
mov qword [rbx + 0x48], rdx
xor dword [rdx + 0xc], 1
jmp 0x1800321bc
mov rcx, rbx
call fcn.180032d30
jmp 0x180031e76
cmp ecx, 0x5b
jne 0x180032072
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x180032053
cmp byte [rcx], 0x5c
jne 0x180032050
inc rcx
cmp rcx, rax
je 0x180032050
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x18003203f
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x18003204d
test dl, 0x10
jne 0x180032050
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x180032050
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
mov rcx, rbx
call fcn.180032bd0
cmp dword [rbx + 0x7c], 0x5d
jne 0x180032244
jmp 0x180031e2d
cmp ecx, 0x28
jne 0x180032130
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x1800320bc
cmp byte [rcx], 0x5c
jne 0x1800320b9
inc rcx
cmp rcx, rax
je 0x1800320b9
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800320a8
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800320b6
test dl, 0x10
jne 0x1800320b9
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800320b9
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
mov rcx, rbx
call fcn.180032eb0
cmp dword [rbx + 0x7c], 0x29
movzx edi, al
jne 0x180032236
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x18003211a
cmp byte [rcx], 0x5c
jne 0x180032117
inc rcx
cmp rcx, rdx
je 0x180032117
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x180032106
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x180032114
test dl, 0x10
jne 0x180032117
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x180032117
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
test dil, dil
je 0x180031e7e
jmp 0x180031e76
cmp ecx, 0x5e
jne 0x180032153
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1801338e8
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 8], 2
jmp 0x180032178
cmp ecx, 0x24
jne 0x18003220a
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.1801338e8
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax + 8], 3
mov qword [rax], rbp
mov rdx, rax
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
mov rax, qword [rbx + 0x48]
mov qword [rdx + 0x18], rax
mov rax, qword [rbx + 0x48]
mov qword [rsp + 0x30], rdx
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1800321b4
mov qword [rdx + 0x10], rcx
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [rcx + 0x18], rdx
mov rax, qword [rbx + 0x48]
mov qword [rax + 0x10], rdx
mov qword [rbx + 0x48], rdx
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x1800321fd
cmp byte [rcx], 0x5c
jne 0x1800321fa
inc rcx
cmp rcx, rax
je 0x1800321fa
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1800321e9
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1800321f7
test dl, 0x10
jne 0x1800321fa
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1800321fa
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.180030860
jmp 0x180031e7e
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x180032260
cmp ecx, 0x3f
je 0x180032260
cmp ecx, 0x7b
je 0x180032260
cmp ecx, 0x7d
jne 0x180031e0b
test dword [rbx + 0x80], 0x10000000
je 0x180032252
jmp 0x180031e20
mov edx, 5
mov rcx, rbx
call fcn.180030850
int3
mov edx, 4
mov rcx, rbx
call fcn.180030850
int3
mov edx, 6
mov rcx, rbx
call fcn.180030850
int3
mov edx, 0xa
mov rcx, rbx
call fcn.180030850
int3