Function at 0x140279f10
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rdi
push r12
push r14
sub rsp, 0x58
mov r12d, dword [r8]
mov rdi, rdx
mov r14, rcx
mov qword [rsp + 0x20], rcx
mov dword [rsp + 0x80], 0
mov rbx, rdx
test rdx, rdx
je 0x140279f60
cmp byte [rdx], 0
je 0x140279f58
nop word [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x140279f50
sub ebx, edx
and ebx, 0x3fffffff
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r15
test r12b, 0x40
jne 0x140279f87
cmp dword [0x1403ee12c], 0
je 0x14027a45c
cmp ebx, 5
jl 0x14027a45c
mov eax, dword [rdx]
cmp eax, dword [str.file:]
jne 0x14027a45c
movzx eax, byte [rdx + 4]
cmp al, byte [0x14034b1e0]
jne 0x14027a45c
or r12d, 0x40
movsxd r8, ebx
xor esi, esi
xor r14d, r14d
xor r15d, r15d
xor ecx, ecx
lea ebp, [rbx + 2]
mov dword [rsp + 0x88], r12d
cmp r8, 2
jl 0x14027a001
lea rdx, [r8 - 1]
nop dword [rax]
nop dword [rax + rax]
xor eax, eax
cmp byte [rdi + rcx], 0x26
sete al
add esi, eax
xor eax, eax
cmp byte [rdi + rcx + 1], 0x26
sete al
add rcx, 2
add r14d, eax
cmp rcx, rdx
jl 0x140279fe0
cmp rcx, r8
jge 0x14027a011
xor eax, eax
cmp byte [rcx + rdi], 0x26
sete al
add ebp, eax
call fcn.140277500
test eax, eax
jne 0x14027a51a
lea ecx, [r14 + rsi]
add ecx, ebp
call fcn.140201950
mov rsi, rax
mov qword [rsp + 0x28], rax
test rax, rax
je 0x14027a51a
cmp byte [rdi + 5], 0x2f
mov r9d, 5
jne 0x14027a0bc
cmp byte [rdi + 6], 0x2f
jne 0x14027a0bc
movzx ecx, byte [rdi + 7]
lea r8, [rdi + 7]
mov r9d, 7
test cl, cl
je 0x14027a0bc
mov rax, r8
cmp cl, 0x2f
je 0x14027a074
movzx ecx, byte [rax + 1]
inc rax
inc r9d
test cl, cl
jne 0x14027a061
cmp r9d, 7
je 0x14027a0bc
cmp r9d, 0x10
jne 0x14027a099
mov rax, qword [str.localhost]
cmp rax, qword [r8]
jne 0x14027a099
movzx eax, byte [0x14034b1d8]
cmp al, byte [r8 + 8]
je 0x14027a0bc
lea edx, [r9 - 7]
lea rcx, str.invalid_uri_authority:__.s
call fcn.140203b00
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x14027a4de
movsxd rax, r9d
xor r11d, r11d
movzx edx, byte [rax + rdi]
test dl, dl
je 0x14027a254
xor r10d, r10d
lea rbx, [0x14030c2b0]
nop dword [rax + rax]
cmp dl, 0x23
je 0x14027a244
inc r9d
cmp dl, 0x25
jne 0x14027a1b2
movsxd rax, r9d
movzx ecx, byte [rax + rdi]
test byte [rcx + rbx], 8
je 0x14027a1b2
movzx eax, byte [rax + rdi + 1]
test byte [rax + rbx], 8
je 0x14027a1b2
movsx edx, cl
inc r9d
mov ecx, edx
movsxd rax, r9d
inc r9d
movsx r8d, byte [rax + rdi]
sar ecx, 6
mov al, 7
and cl, 1
imul cl
mov ecx, r8d
sar ecx, 6
sub dl, al
and cl, 1
mov al, 7
and edx, 0xf
shl edx, 4
imul cl
movzx ecx, r8b
sub cl, al
and ecx, 0xf
add edx, ecx
jne 0x14027a22b
movsxd rax, r9d
lea rcx, [rax + rdi]
movzx eax, byte [rax + rdi]
test al, al
je 0x14027a235
movsxd rdx, r11d
nop
cmp al, 0x23
je 0x14027a235
test r11d, r11d
jne 0x14027a181
cmp al, 0x3f
jmp 0x14027a199
cmp rdx, 1
jne 0x14027a191
cmp al, 0x3d
je 0x14027a235
jmp 0x14027a197
cmp rdx, 2
jne 0x14027a19f
cmp al, 0x26
je 0x14027a235
movzx eax, byte [rcx + 1]
inc rcx
inc r9d
test al, al
jne 0x14027a170
jmp 0x14027a235
cmp r11d, 1
jne 0x14027a20c
cmp dl, 0x26
je 0x14027a1c2
cmp dl, 0x3d
jne 0x14027a22b
cmp byte [r10 + rsi - 1], 0
jne 0x14027a1f2
movsxd rax, r9d
movzx ecx, byte [rax + rdi]
test cl, cl
je 0x14027a235
cmp cl, 0x23
je 0x14027a235
cmp byte [rax + rdi - 1], 0x26
je 0x14027a235
movzx ecx, byte [rax + rdi + 1]
inc rax
inc r9d
test cl, cl
jne 0x14027a1d5
jmp 0x14027a235
cmp dl, 0x26
jne 0x14027a204
mov byte [r10 + rsi], 0
inc r15d
inc r10
jmp 0x14027a229
mov r11d, 2
jmp 0x14027a229
test r11d, r11d
jne 0x14027a218
cmp dl, 0x3f
je 0x14027a223
jmp 0x14027a22b
cmp r11d, 2
jne 0x14027a22b
cmp dl, 0x26
jne 0x14027a22b
mov r11d, 1
xor dl, dl
mov byte [r10 + rsi], dl
inc r15d
inc r10
movsxd rax, r9d
movzx edx, byte [rax + rdi]
test dl, dl
jne 0x14027a0e0
cmp r11d, 1
jne 0x14027a254
movsxd rax, r15d
inc r15d
mov byte [rax + rsi], 0
movsxd rax, r15d
mov word [rax + rsi], 0
cmp byte [rsi], 0
mov rax, rsi
je 0x14027a26d
inc rax
cmp byte [rax], 0
jne 0x14027a265
sub eax, esi
and eax, 0x3fffffff
inc eax
movsxd rdx, eax
add rdx, rsi
cmp byte [rdx], 0
je 0x14027a4a7
movzx r13d, byte [0x14034b1aa]
nop dword [rax]
mov rcx, rdx
inc rcx
cmp byte [rcx], 0
jne 0x14027a293
sub ecx, edx
and ecx, 0x3fffffff
lea eax, [rcx + 1]
movsxd rbp, eax
add rbp, rdx
mov rbx, rbp
jne 0x14027a2b5
xor ebx, ebx
jmp 0x14027a2d0
cmp byte [rbp], 0
je 0x14027a2c8
nop dword [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x14027a2c0
sub ebx, ebp
and ebx, 0x3fffffff
cmp ecx, 3
jne 0x14027a2fc
movzx eax, word [0x14034b1a8]
cmp ax, word [rdx]
jne 0x14027a40b
cmp r13b, byte [rdx + 2]
jne 0x14027a40b
mov r14, rbp
mov qword [rsp + 0x20], rbp
jmp 0x14027a410
cmp ecx, 5
jne 0x14027a338
mov eax, dword [str.cache]
cmp eax, dword [rdx]
jne 0x14027a40b
movzx eax, byte [0x14034b204]
cmp al, byte [rdx + 4]
jne 0x14027a40b
mov r14d, 0x60000
lea rsi, str.shared
lea r12, str.cache
mov r15d, r14d
jmp 0x14027a369
cmp ecx, 4
jne 0x14027a40b
mov eax, dword [str.mode]
cmp eax, dword [rdx]
jne 0x14027a40b
mov r15d, r12d
mov r14d, 0x87
lea rsi, [0x1403ecef0]
and r15d, r14d
lea r12, str.access
mov rcx, qword [rsi]
xor edi, edi
test rcx, rcx
je 0x14027a3b7
mov rax, rcx
test rcx, rcx
je 0x14027a38f
cmp byte [rcx], 0
je 0x14027a388
inc rax
cmp byte [rax], 0
jne 0x14027a380
sub eax, ecx
and eax, 0x3fffffff
cmp ebx, eax
jne 0x14027a3a5
mov rdx, rcx
movsxd r8, ebx
mov rcx, rbp
call fcn.1402a2dc0
test eax, eax
je 0x14027a3dc
inc rdi
mov rax, rdi
add rax, rax
mov rcx, qword [rsi + rax*8]
test rcx, rcx
jne 0x14027a373
lea rcx, str.no_such__s_mode:__s
mov r8, rbp
mov rdx, r12
call fcn.140203b00
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x14027a4de
add rdi, rdi
mov ecx, dword [rsi + rdi*8 + 8]
test ecx, ecx
je 0x14027a3b7
mov eax, ecx
btr eax, 7
cmp eax, r15d
jg 0x14027a42c
mov r12d, dword [rsp + 0x88]
not r14d
and r12d, r14d
or r12d, ecx
mov dword [rsp + 0x88], r12d
mov r14, qword [rsp + 0x20]
lea eax, [rbx + 1]
movsxd rdx, eax
add rdx, rbp
cmp byte [rdx], 0
jne 0x14027a290
mov rsi, qword [rsp + 0x28]
jmp 0x14027a4ac
lea rcx, str._s_mode_not_allowed:__s
mov r8, rbp
mov rdx, r12
call fcn.140203b00
mov dword [rsp + 0x80], 3
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x14027a4e9
call fcn.140277500
test eax, eax
jne 0x14027a51a
lea ecx, [rbx + 2]
call fcn.140201950
mov rsi, rax
mov qword [rsp + 0x28], rax
test rax, rax
je 0x14027a51a
movsxd rbx, ebx
mov rdx, rdi
mov rcx, rax
mov r8, rbx
call fcn.140298710
and r12d, 0xffffffbf
mov word [rbx + rsi], 0
mov dword [rsp + 0x88], r12d
jmp 0x14027a4ac
mov r14, qword [rsp + 0x20]
mov rcx, r14
call fcn.140201020
mov rcx, qword [rsp + 0x98]
mov qword [rcx], rax
test rax, rax
jne 0x14027a4f5
lea rcx, str.no_such_vfs:__s
mov rdx, r14
call fcn.140203b00
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
mov dword [rsp + 0x80], 1
mov rcx, qword [rsp + 0x28]
call fcn.140201c90
xor esi, esi
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x88]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x80]
mov qword [rcx], rsi
jmp 0x14027a51f
mov eax, 7
mov r15, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
pop r14
pop r12
pop rdi
pop rbx
ret