Function at 0x1400381d0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x1400386e4
lea rdi, [rbx + 0x10]
cmp ecx, 0x7c
je 0x1400386e4
cmp ecx, 0x29
jne 0x140038221
cmp dword [rbx + 0x1c], 0
jne 0x1400386e4
test dword [rbx + 0x80], 0x10000000
je 0x1400386ff
jmp 0x140038675
cmp ecx, 0x2e
jne 0x140038287
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.140038740
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x1400386c2
cmp byte [rcx], 0x5c
jne 0x14003827b
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x14003827b
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x140038267
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x140038278
test r8b, 0x10
jne 0x14003827b
movzx eax, byte [rdx]
cmp al, 0x7b
je 0x140038278
cmp al, 0x7d
jne 0x14003827b
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
jmp 0x1400386c2
cmp ecx, 0x5c
jne 0x1400383db
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x1400382da
cmp byte [rcx], 0x5c
jne 0x1400382d3
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x1400382d3
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1400382bf
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x1400382d0
test r8b, 0x10
jne 0x1400382d3
movzx eax, byte [rdx]
cmp al, 0x7b
je 0x1400382d0
cmp al, 0x7d
jne 0x1400382d3
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
test byte [rbx + 0x80], 0x80
je 0x1400383ce
movzx eax, byte [rbx + 0x78]
cmp al, 0x62
jne 0x14003835c
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.140038740
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x14003834f
cmp byte [rcx], 0x5c
jne 0x140038348
lea rdx, [rcx + 1]
cmp rdx, rax
je 0x140038348
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x140038334
movzx eax, byte [rdx]
sub al, 0x28
cmp al, 1
jbe 0x140038345
test r8b, 0x10
jne 0x140038348
movzx eax, byte [rdx]
cmp al, 0x7b
je 0x140038345
cmp al, 0x7d
jne 0x140038348
mov rcx, rdx
lea rax, [rcx + 1]
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
jmp 0x1400386d6
cmp al, 0x42
jne 0x1400383ce
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.140038740
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
mov rax, qword [rbx]
mov rdx, qword [rdi]
cmp rax, rdx
je 0x1400383c1
cmp byte [rax], 0x5c
jne 0x1400383bb
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x1400383bb
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1400383a6
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1400383b8
mov rax, qword [rbx]
test dl, 0x10
jne 0x1400383bb
movzx edx, byte [rcx]
cmp dl, 0x7b
je 0x1400383b8
cmp dl, 0x7d
jne 0x1400383bb
mov rax, rcx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
jmp 0x1400386d6
mov rcx, rbx
call fcn.14003a060
jmp 0x1400386ca
cmp ecx, 0x5b
jne 0x14003849d
mov rax, qword [rbx]
mov rdx, qword [rdi]
cmp rax, rdx
je 0x14003842f
cmp byte [rax], 0x5c
jne 0x140038429
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x140038429
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x140038414
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140038426
mov rax, qword [rbx]
test dl, 0x10
jne 0x140038429
movzx edx, byte [rcx]
cmp dl, 0x7b
je 0x140038426
cmp dl, 0x7d
jne 0x140038429
mov rax, rcx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
mov rcx, rbx
call fcn.140039ee0
cmp dword [rbx + 0x7c], 0x5d
jne 0x140038720
mov rax, qword [rbx]
mov rdx, qword [rdi]
cmp rax, rdx
je 0x1400386c2
cmp byte [rax], 0x5c
jne 0x140038492
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x140038492
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14003847d
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x14003848f
mov rax, qword [rbx]
test dl, 0x10
jne 0x140038492
movzx edx, byte [rcx]
cmp dl, 0x7b
je 0x14003848f
cmp dl, 0x7d
jne 0x140038492
mov rax, rcx
inc rax
mov qword [rbx], rax
jmp 0x1400386c2
cmp ecx, 0x28
jne 0x14003856f
mov rax, qword [rbx]
mov rdx, qword [rdi]
cmp rax, rdx
je 0x1400384f1
cmp byte [rax], 0x5c
jne 0x1400384eb
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x1400384eb
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1400384d6
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1400384e8
mov rax, qword [rbx]
test dl, 0x10
jne 0x1400384eb
movzx edx, byte [rcx]
cmp dl, 0x7b
je 0x1400384e8
cmp dl, 0x7d
jne 0x1400384eb
mov rax, rcx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
mov rcx, rbx
call fcn.14003a1f0
cmp dword [rbx + 0x7c], 0x29
movzx esi, al
jne 0x14003872b
mov rax, qword [rbx]
mov rdx, qword [rdi]
cmp rax, rdx
je 0x140038559
cmp byte [rax], 0x5c
jne 0x140038553
lea rcx, [rax + 1]
cmp rcx, rdx
je 0x140038553
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14003853e
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x140038550
mov rax, qword [rbx]
test dl, 0x10
jne 0x140038553
movzx edx, byte [rcx]
cmp dl, 0x7b
je 0x140038550
cmp dl, 0x7d
jne 0x140038553
mov rax, rcx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.140036530
test sil, sil
je 0x1400386d6
jmp 0x1400386ca
cmp ecx, 0x5e
jne 0x1400385cf
lea rcx, [rbx + 0x40]
mov edx, 2
call fcn.140038740
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x1400385c2
cmp byte [rcx], 0x5c
jne 0x1400385bf
inc rcx
cmp rcx, rax
je 0x1400385bf
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1400385ae
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1400385bc
test dl, 0x10
jne 0x1400385bf
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1400385bf
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140036530
jmp 0x1400386d6
cmp ecx, 0x24
jne 0x14003862f
lea rcx, [rbx + 0x40]
mov edx, 3
call fcn.140038740
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x140038622
cmp byte [rcx], 0x5c
jne 0x14003861f
inc rcx
cmp rcx, rax
je 0x14003861f
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x14003860e
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x14003861c
test dl, 0x10
jne 0x14003861f
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x14003861f
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140036530
jmp 0x1400386d6
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140038715
cmp ecx, 0x3f
je 0x140038715
cmp ecx, 0x7b
je 0x140038715
cmp ecx, 0x7d
jne 0x140038664
test dword [rbx + 0x80], 0x10000000
je 0x14003870a
jmp 0x140038675
cmp ecx, 0x5d
jne 0x140038675
test dword [rbx + 0x80], 0x10000000
je 0x1400386f4
movzx edx, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.14003a660
mov rcx, qword [rbx]
mov rax, qword [rdi]
cmp rcx, rax
je 0x1400386c2
cmp byte [rcx], 0x5c
jne 0x1400386bf
inc rcx
cmp rcx, rax
je 0x1400386bf
mov edx, dword [rbx + 0x80]
test dl, 8
jne 0x1400386ae
movzx eax, byte [rcx]
sub al, 0x28
cmp al, 1
jbe 0x1400386bc
test dl, 0x10
jne 0x1400386bf
movzx eax, byte [rcx]
sub al, 0x7b
test al, 0xfd
jne 0x1400386bf
mov qword [rbx], rcx
inc qword [rbx]
mov rcx, rbx
call fcn.140036530
mov rcx, rbx
call fcn.14003a410
lea rdi, [rbx + 0x10]
mov ecx, dword [rbx + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x1400381f4
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov edx, 4
call fcn.140036520
int3
mov edx, 5
call fcn.140036520
int3
mov edx, 6
call fcn.140036520
int3
mov edx, 0xa
call fcn.140036520
int3
mov edx, 4
call fcn.140036520
int3
mov edx, 5
call fcn.140036520
int3