Function at 0x140024a40
Capabilities:
Parse credit card information

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x38
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x140024b10
lea rbp, vtable.std::_Node_base.0
xor esi, esi
cmp ecx, 0x7c
je 0x140024b10
cmp ecx, 0x29
jne 0x140024b19
cmp dword [rbx + 0x1c], 0
jne 0x140024b10
test dword [rbx + 0x80], 0x10000000
je 0x140024f00
cmp ecx, 0x5d
jne 0x140024aa4
test dword [rbx + 0x80], 0x10000000
je 0x140024ed4
lea rcx, [rbx + 0x40]
movzx edx, byte [rbx + 0x78]
call fcn.140026010
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx]
cmp rcx, rax
je 0x140024af2
cmp byte [rcx], 0x5c
jne 0x140024aef
inc rcx
cmp rcx, rax
je 0x140024aef
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024ade
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024aec
test dl, 0x10
jne 0x140024aef
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024aef
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
mov rcx, rbx
call fcn.140025db0
mov al, 1
mov ecx, dword [rbx + 0x7c]
cmp ecx, 0xffffffff
jne 0x140024a63
add rsp, 0x38
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp ecx, 0x2e
jne 0x140024b83
mov ecx, 0x20
call fcn.14008bf00
mov rdx, rax
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax], rbp
mov qword [rax + 8], 5
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 rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140024b76
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 0x140024ab1
cmp ecx, 0x5c
jne 0x140024c98
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x140024bcd
cmp byte [rcx], 0x5c
jne 0x140024bca
inc rcx
cmp rcx, rax
je 0x140024bca
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024bb9
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024bc7
test dl, 0x10
jne 0x140024bca
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024bca
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
test byte [rbx + 0x80], 0x80
je 0x140024c8b
cmp byte [rbx + 0x78], 0x62
jne 0x140024c1c
mov ecx, 0x20
call fcn.14008bf00
mov rdx, rax
mov qword [rsp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax], rbp
mov qword [rax + 8], 4
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x140024e29
cmp byte [rbx + 0x78], 0x42
jne 0x140024c8b
mov ecx, 0x20
call fcn.14008bf00
mov rdx, rax
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax], rbp
mov qword [rax + 8], 4
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 rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140024c7a
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 0x140024e5a
mov rcx, rbx
call fcn.140025a40
jmp 0x140024afa
cmp ecx, 0x5b
jne 0x140024cfd
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x140024cde
cmp byte [rcx], 0x5c
jne 0x140024cdb
inc rcx
cmp rcx, rax
je 0x140024cdb
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024cca
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024cd8
test dl, 0x10
jne 0x140024cdb
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024cdb
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
mov rcx, rbx
call fcn.1400258e0
cmp dword [rbx + 0x7c], 0x5d
jne 0x140024edf
jmp 0x140024ab1
cmp ecx, 0x28
jne 0x140024dbb
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
cmp rcx, rax
je 0x140024d47
cmp byte [rcx], 0x5c
jne 0x140024d44
inc rcx
cmp rcx, rax
je 0x140024d44
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024d33
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024d41
test dl, 0x10
jne 0x140024d44
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024d44
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
mov rcx, rbx
call fcn.140025bd0
movzx edi, al
cmp dword [rbx + 0x7c], 0x29
jne 0x140024f0b
mov rcx, qword [rbx]
mov rdx, qword [rbx + 0x10]
cmp rcx, rdx
je 0x140024da5
cmp byte [rcx], 0x5c
jne 0x140024da2
inc rcx
cmp rcx, rdx
je 0x140024da2
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024d91
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024d9f
test dl, 0x10
jne 0x140024da2
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024da2
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
test dil, dil
je 0x140024b02
jmp 0x140024afa
cmp ecx, 0x5e
jne 0x140024df1
mov ecx, 0x20
call fcn.14008bf00
mov rdx, rax
mov qword [rsp + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax], rbp
mov qword [rax + 8], 2
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
jmp 0x140024e29
cmp ecx, 0x24
jne 0x140024ea8
mov ecx, 0x20
call fcn.14008bf00
mov rdx, rax
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rax], rbp
mov qword [rax + 8], 3
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 rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140024e52
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 0x140024e9b
cmp byte [rcx], 0x5c
jne 0x140024e98
inc rcx
cmp rcx, rax
je 0x140024e98
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140024e87
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140024e95
test dl, 0x10
jne 0x140024e98
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x140024e98
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140023b80
jmp 0x140024b02
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140024ef5
cmp ecx, 0x3f
je 0x140024ef5
cmp ecx, 0x7b
je 0x140024ef5
cmp ecx, 0x7d
jne 0x140024a8f
test dword [rbx + 0x80], 0x10000000
je 0x140024eea
jmp 0x140024aa4
mov edx, 4
call fcn.140023b70
int3
mov edx, 4
call fcn.140023b70
int3
mov edx, 6
call fcn.140023b70
int3
mov edx, 0xa
call fcn.140023b70
int3
mov edx, 5
call fcn.140023b70
int3
mov edx, 5
call fcn.140023b70
int3