Function at 0x140076fc0
Capabilities:
Parse credit card information

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r12, qword [rsp + 0x98]
mov rcx, rdx
and dword [rsp + 0x20], 0
mov rsi, rdx
mov r15d, dword [r8]
call fcn.140009f2c
movsxd rdi, eax
mov r13d, 1
test r15b, 0x40
jne 0x140077019
cmp byte [0x14013bc96], 0
je 0x140077459
cmp edi, 5
jl 0x140077459
cmp dword [rdx], 0x656c6966
jne 0x140077459
cmp byte [rdx + 4], 0x3a
jne 0x140077459
or r15d, 0x40
lea eax, [rdi + 8]
xor ebp, ebp
movsxd rcx, eax
mov dword [rsp + 0x24], r15d
test edi, edi
jle 0x140077063
xor edx, edx
xor eax, eax
cmp byte [rdx + rsi], 0x26
sete al
add rdx, r13
add rcx, rax
cmp rdx, rdi
jl 0x14007704f
call fcn.140007404
mov rbx, rax
test rax, rax
je 0x14007746c
xor eax, eax
mov r9b, 0x2f
mov dword [rbx], eax
add rbx, 4
lea ecx, [rax + 5]
cmp byte [rsi + 5], r9b
jne 0x1400770eb
cmp byte [rsi + 6], r9b
jne 0x1400770eb
lea r8, [rsi + 7]
lea ecx, [rax + 7]
mov al, byte [r8]
test al, al
je 0x1400770eb
mov rdx, r8
cmp al, r9b
je 0x1400770b0
add rdx, r13
add ecx, r13d
mov al, byte [rdx]
test al, al
jne 0x14007709f
cmp ecx, 7
je 0x1400770eb
cmp ecx, 0x10
jne 0x1400770d2
movabs rax, 0x736f686c61636f6c
cmp rax, qword [r8]
jne 0x1400770d2
lea eax, [rcx + 0x64]
cmp al, byte [r8 + 8]
je 0x1400770eb
lea edx, [rcx - 7]
mov dword [rsp + 0x20], r13d
lea rcx, str.invalid_uri_authority:__.s
call fcn.140009310
jmp 0x1400773e4
movsxd rax, ecx
xor r10d, r10d
mov dl, byte [rax + rsi]
test dl, dl
je 0x14007725b
mov rdi, rbx
lea r14, [rbx - 1]
lea r12, [0x14011f0c0]
movsxd r11, ecx
cmp dl, 0x23
je 0x140077244
add ecx, r13d
cmp dl, 0x25
jne 0x1400771ba
movsxd rax, ecx
movzx r9d, byte [rax + rsi]
test byte [r9 + r12], 8
je 0x1400771ba
movzx r8d, byte [r11 + rsi + 2]
test byte [r8 + r12], 8
je 0x1400771ba
movsx ecx, r9b
call fcn.14000af90
movzx r9d, al
movsx ecx, r8b
shl r9d, 4
call fcn.14000af90
movzx edx, al
lea ecx, [r11 + 3]
add edx, r9d
jne 0x14007722b
movsxd rdx, ecx
add rdx, rsi
jmp 0x1400771b2
cmp al, 0x23
je 0x140077236
test r10d, r10d
jne 0x140077189
cmp al, 0x3f
je 0x140077236
cmp r10d, r13d
jne 0x14007719e
cmp al, 0x3d
je 0x140077236
cmp al, 0x26
je 0x140077236
cmp r10d, 2
jne 0x1400771ac
cmp al, 0x26
je 0x140077236
add ecx, r13d
add rdx, r13
mov al, byte [rdx]
test al, al
jne 0x140077174
jmp 0x140077236
cmp r10d, r13d
jne 0x140077211
mov r8b, 0x26
cmp dl, r8b
je 0x1400771cc
cmp dl, 0x3d
jne 0x14007722b
cmp byte [r14], 0
jne 0x1400771f6
movsxd rdx, ecx
add rdx, rsi
mov al, byte [rdx]
test al, al
je 0x140077236
cmp al, 0x23
je 0x140077236
cmp byte [rdx - 1], r8b
je 0x140077236
add rdx, r13
add ecx, r13d
mov al, byte [rdx]
cmp al, 0
jne 0x1400771de
jmp 0x140077236
cmp dl, r8b
jne 0x140077209
add ebp, r13d
mov byte [rdi], 0
add r14, r13
add rdi, r13
jmp 0x140077229
mov r10d, 2
jmp 0x140077229
test r10d, r10d
jne 0x14007721b
cmp dl, 0x3f
je 0x140077226
cmp r10d, 2
jne 0x14007722b
cmp dl, 0x26
jne 0x14007722b
mov r10d, r13d
xor dl, dl
add ebp, r13d
mov byte [rdi], dl
add r14, r13
add rdi, r13
movsxd rax, ecx
mov dl, byte [rax + rsi]
test dl, dl
jne 0x14007710a
mov r12, qword [rsp + 0x98]
cmp r10d, r13d
jne 0x14007725b
movsxd rax, ebp
add ebp, r13d
mov byte [rax + rbx], 0
movsxd rax, ebp
xor ecx, ecx
mov dword [rax + rbx], ecx
mov rcx, rbx
call fcn.140009f2c
add eax, r13d
movsxd rdx, eax
add rdx, rbx
cmp byte [rdx], 0
je 0x1400773b3
mov rcx, rdx
call fcn.140009f2c
mov r8d, eax
inc eax
movsxd rbp, eax
add rbp, rdx
mov rcx, rbp
call fcn.140009f2c
movsxd r13, eax
cmp r8d, 3
jne 0x1400772c6
mov eax, 0x6676
cmp ax, word [rdx]
jne 0x140077395
lea eax, [r8 + 0x70]
cmp al, byte [rdx + 2]
jne 0x140077395
mov qword [rsp + 0x70], rbp
jmp 0x140077395
cmp r8d, 5
jne 0x1400772fe
mov eax, 0x68636163
cmp eax, dword [rdx]
jne 0x140077395
lea eax, [r8 + 0x60]
cmp al, byte [rdx + 4]
jne 0x140077395
mov edi, 0x60000
lea r14, str.shared
mov r15d, edi
lea r12, str.cache
jmp 0x14007732b
cmp r8d, 4
jne 0x140077395
mov eax, 0x65646f6d
cmp eax, dword [rdx]
jne 0x140077395
mov edi, 0x87
lea r14, [0x14013e440]
and r15d, edi
lea r12, str.access
mov rcx, qword [r14]
xor esi, esi
test rcx, rcx
je 0x140077435
call fcn.140009f2c
cmp r13d, eax
jne 0x140077355
mov rdx, rcx
mov r8, r13
mov rcx, rbp
call fcn.1400dafd0
test eax, eax
je 0x140077364
inc rsi
mov rax, rsi
add rax, rax
mov rcx, qword [r14 + rax*8]
jmp 0x140077330
add rsi, rsi
mov ecx, dword [r14 + rsi*8 + 8]
test ecx, ecx
je 0x140077435
mov eax, ecx
btr eax, 7
cmp eax, r15d
jg 0x140077424
mov r15d, dword [rsp + 0x24]
not edi
and r15d, edi
or r15d, ecx
mov dword [rsp + 0x24], r15d
lea rdx, [r13 + 1]
add rdx, rbp
cmp byte [rdx], 0
jne 0x14007727d
mov r12, qword [rsp + 0x98]
mov r13d, 1
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.140006af8
mov rcx, qword [rsp + 0x88]
mov qword [rcx], rax
test rax, rax
jne 0x1400773f2
mov rdx, rdi
mov dword [rsp + 0x20], r13d
lea rcx, str.no_such_vfs:__s
call fcn.140009310
mov qword [r12], rax
mov rcx, rbx
call fcn.140078538
xor ebx, ebx
mov rcx, qword [rsp + 0x80]
mov eax, dword [rsp + 0x24]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x20]
mov qword [rcx], rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rsp + 0x20], 3
lea rcx, str._s_mode_not_allowed:__s
jmp 0x140077444
mov dword [rsp + 0x20], 1
lea rcx, str.no_such__s_mode:__s
mov rdx, r12
mov r8, rbp
call fcn.140009310
mov r12, qword [rsp + 0x98]
jmp 0x1400773e4
lea eax, [rdi + 8]
movsxd rcx, eax
call fcn.140007404
mov rbx, rax
test rax, rax
jne 0x140077473
mov eax, 7
jmp 0x14007740f
xor eax, eax
mov dword [rbx], eax
add rbx, 4
test edi, edi
je 0x14007748d
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.1400db0d0
xor eax, eax
and r15d, 0xffffffbf
mov dword [rdi + rbx], eax
mov dword [rsp + 0x24], r15d
jmp 0x1400773b3