Function at 0x1400a9a24
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov r13, qword [rsp + 0xa8]
xor r12d, r12d
mov r14d, dword [r8]
mov rsi, rdx
mov dword [rsp + 0x88], r12d
mov r15, rcx
test rdx, rdx
jne 0x1400a9a69
mov edi, r12d
jmp 0x1400a9a7c
or rdi, 0xffffffffffffffff
inc rdi
cmp byte [rdx + rdi], r12b
jne 0x1400a9a6d
and edi, 0x3fffffff
test r14b, 0x40
jne 0x1400a9a8f
cmp byte [0x140144eb6], r12b
je 0x1400a9f6d
cmp edi, 5
jb 0x1400a9f6d
cmp dword [rdx], 0x656c6966
jne 0x1400a9f6d
cmp byte [rdx + 4], 0x3a
jne 0x1400a9f6d
or r14d, 0x40
mov r8d, edi
mov dword [rsp + 0x20], r14d
mov ebp, r12d
lea ecx, [rdi + 8]
test edi, edi
je 0x1400a9adc
mov rdx, r12
cmp byte [rdx + rsi], 0x26
mov rax, r12
sete al
inc rdx
add rcx, rax
cmp rdx, r8
jl 0x1400a9ac7
call fcn.14002b0b4
mov rbx, rax
test rax, rax
je 0x1400a9f7d
xor eax, eax
mov r9b, 0x2f
mov dword [rbx], eax
add rbx, 4
lea ecx, [rax + 5]
cmp byte [rsi + 5], r9b
jne 0x1400a9b69
cmp byte [rsi + 6], r9b
jne 0x1400a9b69
lea r8, [rsi + 7]
lea ecx, [rax + 7]
mov al, byte [r8]
test al, al
je 0x1400a9b69
mov rdx, r8
cmp al, r9b
je 0x1400a9b28
inc rdx
inc ecx
mov al, byte [rdx]
test al, al
jne 0x1400a9b18
cmp ecx, 7
je 0x1400a9b69
cmp ecx, 0x10
jne 0x1400a9b4a
movabs rax, 0x736f686c61636f6c
cmp rax, qword [r8]
jne 0x1400a9b4a
lea eax, [rcx + 0x64]
cmp al, byte [r8 + 8]
je 0x1400a9b69
lea edx, [rcx - 7]
mov dword [rsp + 0x88], 1
lea rcx, str.invalid_uri_authority:__.s
call fcn.14002d238
jmp 0x1400a9f01
movsxd rax, ecx
mov r9d, r12d
mov dl, byte [rax + rsi]
test dl, dl
je 0x1400a9d09
mov r15, rbx
lea r12, [rbx - 1]
lea r13, [0x14012d250]
movsxd rdi, ecx
cmp dl, 0x23
je 0x1400a9ce2
inc ecx
cmp dl, 0x25
jne 0x1400a9c54
movsxd rax, ecx
movzx r11d, byte [rax + rsi]
test byte [r11 + r13], 8
je 0x1400a9c54
movzx r10d, byte [rdi + rsi + 2]
test byte [r10 + r13], 8
je 0x1400a9c54
mov dl, r11b
movsx eax, r11b
sar eax, 6
and al, 1
movsx r8d, r10b
movzx eax, al
imul ecx, eax, 7
sar r8d, 6
and r8b, 1
movzx eax, r8b
sub dl, cl
imul ecx, eax, 7
mov al, r10b
and edx, 0xf
shl edx, 4
sub al, cl
lea ecx, [rdi + 3]
and eax, 0xf
add edx, eax
jne 0x1400a9cc9
movsxd rdx, ecx
add rdx, rsi
jmp 0x1400a9c49
cmp al, 0x23
je 0x1400a9cd4
test r9d, r9d
jne 0x1400a9c20
cmp al, 0x3f
je 0x1400a9cd4
cmp r9d, 1
jne 0x1400a9c36
cmp al, 0x3d
je 0x1400a9cd4
cmp al, 0x26
je 0x1400a9cd4
cmp r9d, 2
jne 0x1400a9c44
cmp al, 0x26
je 0x1400a9cd4
inc ecx
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1400a9c0b
jmp 0x1400a9cd4
cmp r9d, 1
jne 0x1400a9cac
mov r8b, 0x26
cmp dl, r8b
je 0x1400a9c67
cmp dl, 0x3d
jne 0x1400a9cc9
cmp byte [r12], 0
jne 0x1400a9c91
movsxd rdx, ecx
add rdx, rsi
mov al, byte [rdx]
test al, al
je 0x1400a9cd4
cmp al, 0x23
je 0x1400a9cd4
cmp byte [rdx - 1], r8b
je 0x1400a9cd4
inc rdx
inc ecx
mov al, byte [rdx]
cmp al, 0
jne 0x1400a9c7a
jmp 0x1400a9cd4
cmp dl, r8b
jne 0x1400a9ca4
inc ebp
mov byte [r15], 0
inc r12
inc r15
jmp 0x1400a9cc7
mov r9d, 2
jmp 0x1400a9cc7
test r9d, r9d
jne 0x1400a9cb6
cmp dl, 0x3f
je 0x1400a9cc1
cmp r9d, 2
jne 0x1400a9cc9
cmp dl, 0x26
jne 0x1400a9cc9
mov r9d, 1
xor dl, dl
inc ebp
mov byte [r15], dl
inc r12
inc r15
movsxd rax, ecx
mov dl, byte [rax + rsi]
test dl, dl
jne 0x1400a9b88
mov r13, qword [rsp + 0xa8]
mov r15, qword [rsp + 0x80]
cmp r9d, 1
jne 0x1400a9d06
movsxd rax, ebp
xor r12d, r12d
inc ebp
mov byte [rax + rbx], r12b
jmp 0x1400a9d09
xor r12d, r12d
xor ecx, ecx
movsxd rax, ebp
mov dword [rax + rbx], ecx
test rbx, rbx
jne 0x1400a9d1b
mov rax, r12
jmp 0x1400a9d2d
or rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], r12b
jne 0x1400a9d1f
and eax, 0x3fffffff
lea rdx, [rax + 1]
add rdx, rbx
cmp byte [rdx], r12b
je 0x1400a9ecb
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], r12b
jne 0x1400a9d41
and r8d, 0x3fffffff
lea ebp, [r8 + 1]
add rbp, rdx
jne 0x1400a9d67
mov r9d, r12d
mov dword [rsp + 0x24], r12d
mov rsi, r12
jmp 0x1400a9d89
or rsi, 0xffffffffffffffff
inc rsi
cmp byte [rsi + rbp], r12b
jne 0x1400a9d6b
mov r9d, esi
and r9d, 0x3fffffff
mov dword [rsp + 0x24], r9d
and esi, 0x3fffffff
cmp r8d, 3
jne 0x1400a9dba
mov eax, 0x6676
cmp ax, word [rdx]
jne 0x1400a9eab
lea eax, [r8 + 0x70]
cmp al, byte [rdx + 2]
jne 0x1400a9eab
mov r15, rbp
mov qword [rsp + 0x80], rbp
jmp 0x1400a9eb3
cmp r8d, 5
jne 0x1400a9df2
mov eax, 0x68636163
cmp eax, dword [rdx]
jne 0x1400a9eab
lea eax, [r8 + 0x60]
cmp al, byte [rdx + 4]
jne 0x1400a9eab
mov edi, 0x60000
lea r15, str.shared
mov r12d, edi
lea rdx, str.cache
jmp 0x1400a9e22
cmp r8d, 4
jne 0x1400a9eab
mov eax, 0x65646f6d
cmp eax, dword [rdx]
jne 0x1400a9eab
mov edi, 0x87
lea r15, [0x140147a50]
mov r12d, r14d
lea rdx, str.access
and r12d, edi
mov rcx, qword [r15]
xor r14d, r14d
test rcx, rcx
je 0x1400a9f46
mov r13, rdx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1400a9e38
and eax, 0x3fffffff
cmp r9d, eax
jne 0x1400a9e62
mov rdx, rcx
mov r8d, r9d
mov rcx, rbp
call fcn.1400e7800
test eax, eax
je 0x1400a9e74
mov r9d, dword [rsp + 0x24]
inc r14
mov rdx, r13
mov rax, r14
add rax, rax
mov rcx, qword [r15 + rax*8]
jmp 0x1400a9e28
add r14, r14
mov rdx, r13
mov ecx, dword [r15 + r14*8 + 8]
test ecx, ecx
je 0x1400a9f46
mov eax, ecx
btr eax, 7
cmp eax, r12d
jg 0x1400a9f32
mov r14d, dword [rsp + 0x20]
not edi
and r14d, edi
or r14d, ecx
mov dword [rsp + 0x20], r14d
xor r12d, r12d
mov r15, qword [rsp + 0x80]
lea rdx, [rbp + 1]
add rdx, rsi
cmp byte [rdx], r12b
jne 0x1400a9d3d
mov r13, qword [rsp + 0xa8]
mov rcx, r15
call fcn.14002a8e4
mov rcx, qword [rsp + 0x98]
mov qword [rcx], rax
test rax, rax
jne 0x1400a9fbe
mov rdx, r15
mov dword [rsp + 0x88], 1
lea rcx, str.no_such_vfs:__s
call fcn.14002d238
mov qword [r13], rax
test rbx, rbx
je 0x1400a9fbb
cmp byte [rbx - 1], r12b
jne 0x1400a9f2d
cmp byte [rbx - 2], r12b
jne 0x1400a9f2d
cmp byte [rbx - 3], r12b
jne 0x1400a9f2d
lea rcx, [rbx - 4]
cmp byte [rcx], r12b
je 0x1400a9fb6
dec rbx
jmp 0x1400a9f0e
mov dword [rsp + 0x88], 3
lea rcx, str._s_mode_not_allowed:__s
jmp 0x1400a9f58
mov dword [rsp + 0x88], 1
lea rcx, str.no_such__s_mode:__s
mov r8, rbp
call fcn.14002d238
mov r13, qword [rsp + 0xa8]
xor r12d, r12d
jmp 0x1400a9f01
lea ecx, [rdi + 8]
call fcn.14002b0b4
mov rbx, rax
test rax, rax
jne 0x1400a9f84
mov eax, 7
jmp 0x1400a9fde
xor eax, eax
mov dword [rbx], eax
add rbx, 4
test edi, edi
je 0x1400a9fa0
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.1400e6d00
jmp 0x1400a9fa3
mov rdi, r12
xor eax, eax
and r14d, 0xffffffbf
mov dword [rdi + rbx], eax
mov dword [rsp + 0x20], r14d
jmp 0x1400a9ecb
call fcn.14002b114
mov rbx, r12
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x20]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x88]
mov qword [rcx], rbx
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret