Function at 0x180081494
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, 0x48
mov r12d, dword [r8]
xor edi, edi
mov rsi, rdx
mov r13, rcx
mov r14d, edi
test rdx, rdx
jne 0x1800814ca
mov ebx, edi
jmp 0x1800814dd
or rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], dil
jne 0x1800814ce
and ebx, 0x3fffffff
test r12b, 0x40
jne 0x1800814f0
cmp byte [0x180156b56], dil
je 0x1800819e3
cmp ebx, 5
jb 0x1800819e3
mov eax, dword [rdx]
cmp eax, dword [str.file:]
jne 0x1800819e3
mov al, byte [rdx + 4]
cmp al, byte [0x180111fb8]
jne 0x1800819e3
or r12d, 0x40
mov r8d, ebx
mov dword [rsp + 0x98], r12d
lea ecx, [rbx + 2]
test ebx, ebx
je 0x180081544
mov rdx, rdi
cmp byte [rdx + rsi], 0x26
mov rax, rdi
sete al
inc rdx
add rcx, rax
cmp rdx, r8
jl 0x18008152f
call fcn.1800163fc
mov rbp, rax
test rax, rax
je 0x1800819f3
mov r9b, 0x2f
mov ecx, 5
cmp byte [rsi + 5], r9b
jne 0x1800815d6
cmp byte [rsi + 6], r9b
jne 0x1800815d6
lea r8, [rsi + 7]
mov ecx, 7
mov al, byte [r8]
test al, al
je 0x1800815d6
mov rdx, r8
cmp al, r9b
je 0x18008158c
inc rdx
inc ecx
mov al, byte [rdx]
test al, al
jne 0x18008157c
cmp ecx, 7
je 0x1800815d6
cmp ecx, 0x10
jne 0x1800815ae
mov rax, qword [str.localhost]
cmp rax, qword [r8]
jne 0x1800815ae
mov al, byte [0x180111fc8]
cmp al, byte [r8 + 8]
je 0x1800815d6
lea edx, [rcx - 7]
lea rcx, str.invalid_uri_authority:__.s
call fcn.18001825c
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x180081961
movsxd rax, ecx
mov r9d, edi
mov dl, byte [rax + rsi]
test dl, dl
je 0x180081756
mov r10, rdi
lea r13, [0x1800f27a0]
movsxd r15, ecx
cmp dl, 0x23
je 0x18008173e
inc ecx
cmp dl, 0x25
jne 0x1800816b9
movsxd rax, ecx
movzx ebx, byte [rax + rsi]
test byte [rbx + r13], 8
je 0x1800816b9
movzx r11d, byte [r15 + rsi + 2]
test byte [r11 + r13], 8
je 0x1800816b9
mov dl, bl
movsx eax, bl
sar eax, 6
and al, 1
movsx r8d, r11b
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, r11b
and edx, 0xf
shl edx, 4
sub al, cl
lea ecx, [r15 + 3]
and eax, 0xf
add edx, eax
jne 0x180081726
movsxd rax, ecx
lea rdx, [rax + rsi]
jmp 0x1800816b1
cmp al, 0x23
je 0x180081730
test r9d, r9d
jne 0x180081688
cmp al, 0x3f
je 0x180081730
cmp r9d, 1
jne 0x18008169e
cmp al, 0x3d
je 0x180081730
cmp al, 0x26
je 0x180081730
cmp r9d, 2
jne 0x1800816ac
cmp al, 0x26
je 0x180081730
inc ecx
inc rdx
mov al, byte [rdx]
test al, al
jne 0x180081673
jmp 0x180081730
cmp r9d, 1
jne 0x180081708
cmp dl, 0x26
je 0x1800816c9
cmp dl, 0x3d
jne 0x180081726
cmp byte [r10 + rbp - 1], dil
jne 0x1800816ef
movsxd rax, ecx
jmp 0x1800816e6
cmp dl, 0x23
je 0x180081730
cmp byte [rax + rsi - 1], 0x26
je 0x180081730
inc ecx
inc rax
mov dl, byte [rax + rsi]
test dl, dl
jne 0x1800816d5
jmp 0x180081730
cmp dl, 0x26
jne 0x180081700
inc r14d
mov byte [r10 + rbp], dil
inc r10
jmp 0x180081723
mov r9d, 2
jmp 0x180081723
test r9d, r9d
jne 0x180081712
cmp dl, 0x3f
je 0x18008171d
cmp r9d, 2
jne 0x180081726
cmp dl, 0x26
jne 0x180081726
mov r9d, 1
mov dl, dil
inc r14d
mov byte [r10 + rbp], dl
inc r10
movsxd rax, ecx
mov dl, byte [rax + rsi]
test dl, dl
jne 0x1800815f1
mov r13, qword [rsp + 0x90]
cmp r9d, 1
jne 0x180081756
movsxd rax, r14d
inc r14d
mov byte [rax + rbp], dil
movsxd rax, r14d
or r11, 0xffffffffffffffff
mov word [rax + rbp], di
mov rax, r11
inc rax
cmp byte [rax + rbp], dil
jne 0x180081764
mov r10d, 0x3fffffff
lea rdx, [rbp + 1]
and rax, r10
add rdx, rax
cmp byte [rdx], dil
je 0x18008191e
mov ebx, dword [0x180111fec]
mov r8, r11
inc r8
cmp byte [rdx + r8], dil
jne 0x18008178f
and r8d, r10d
lea r15d, [r8 + 1]
add r15, rdx
jne 0x1800817b0
mov r9d, edi
mov dword [rsp + 0x24], edi
mov r14, rdi
jmp 0x1800817ca
mov r14, r11
inc r14
cmp byte [r15 + r14], dil
jne 0x1800817b3
mov r9d, r14d
and r9d, r10d
mov dword [rsp + 0x24], r9d
and r14, r10
cmp r8d, 3
jne 0x1800817f0
cmp bx, word [rdx]
jne 0x1800817f0
mov al, byte [0x180111fee]
cmp al, byte [rdx + 2]
jne 0x1800817f0
mov r13, r15
mov qword [rsp + 0x90], r15
jmp 0x18008190e
mov qword [rsp + 0x30], rdi
mov r13, rdi
mov esi, edi
cmp r8d, 5
jne 0x18008182d
mov eax, dword [0x180111ff0]
cmp eax, dword [rdx]
jne 0x18008182d
mov al, byte [0x180111ff4]
cmp al, byte [rdx + 4]
jne 0x18008182d
lea rcx, [0x180111ff0]
mov esi, 0x60000
mov qword [rsp + 0x30], rcx
lea r13, str.shared
mov dword [rsp + 0x20], esi
cmp r8d, 4
jne 0x180081866
mov eax, dword [str.mode]
mov dword [rsp + 0x20], esi
cmp eax, dword [rdx]
jne 0x180081866
mov eax, r12d
lea r13, [0x18015c4f0]
mov esi, Ordinal_139
and eax, esi
mov dword [rsp + 0x20], eax
lea rax, str.access
mov qword [rsp + 0x30], rax
test r13, r13
je 0x180081906
mov rcx, qword [r13]
mov r12, rdi
test rcx, rcx
je 0x1800819ca
mov rax, r11
inc rax
cmp byte [rcx + rax], dil
jne 0x180081882
and eax, r10d
cmp r9d, eax
jne 0x1800818b4
mov rdx, rcx
mov r8d, r9d
mov rcx, r15
call fcn.1800e1c70
test eax, eax
je 0x1800818c4
mov r9d, dword [rsp + 0x24]
mov r10d, 0x3fffffff
or r11, 0xffffffffffffffff
inc r12
mov rax, r12
add rax, rax
mov rcx, qword [r13 + rax*8]
jmp 0x180081876
add r12, r12
mov ecx, dword [r13 + r12*8 + 8]
test ecx, ecx
je 0x1800819ca
mov eax, ecx
btr eax, 7
cmp eax, dword [rsp + 0x20]
jg 0x1800819a0
mov r12d, dword [rsp + 0x98]
not esi
and r12d, esi
mov r10d, 0x3fffffff
or r12d, ecx
mov dword [rsp + 0x98], r12d
or r11, 0xffffffffffffffff
mov r13, qword [rsp + 0x90]
lea rdx, [r14 + 1]
add rdx, r15
cmp byte [rdx], dil
jne 0x18008178c
mov r14d, edi
mov rcx, r13
call fcn.180016074
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
test rax, rax
jne 0x18008195c
mov rdx, r13
lea rcx, str.no_such_vfs:__s
call fcn.18001825c
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
test r14d, r14d
je 0x180081969
mov rcx, rbp
call fcn.180016470
mov rcx, qword [rsp + 0xa0]
test r14d, r14d
mov eax, dword [rsp + 0x98]
cmove rdi, rbp
mov dword [rcx], eax
mov eax, r14d
mov rcx, qword [rsp + 0xb0]
mov qword [rcx], rdi
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rdx, qword [rsp + 0x30]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r15
call fcn.18001825c
mov rcx, rax
mov r14d, 3
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x180081961
mov rdx, qword [rsp + 0x30]
lea rcx, str.no_such__s_mode:__s
mov r8, r15
call fcn.18001825c
jmp 0x1800815bd
lea ecx, [rbx + 2]
call fcn.1800163fc
mov rbp, rax
test rax, rax
jne 0x1800819fa
mov eax, 7
jmp 0x18008198f
test ebx, ebx
je 0x180081a0c
mov r8d, ebx
mov rdx, rsi
mov rcx, rbp
call fcn.1800c4cd0
mov eax, ebx
and r12d, 0xffffffbf
mov dword [rsp + 0x98], r12d
mov word [rax + rbp], di
jmp 0x180081921