Function at 0x140087f9c
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 ebx, ebx
mov rsi, rdx
mov r13, rcx
mov r14d, ebx
test rdx, rdx
jne 0x140087fd2
mov edi, ebx
jmp 0x140087fe3
mov rcx, rsi
call fcn.1401054a0
mov rdi, rax
and edi, 0x3fffffff
test r12b, 0x40
jne 0x140087ff5
cmp byte [0x1401aab76], bl
je 0x140088456
cmp edi, 5
jb 0x140088456
mov r8d, 5
lea rdx, str.file:
mov rcx, rsi
call fcn.1400cb580
test eax, eax
jne 0x140088456
or r12d, 0x40
mov r8d, edi
mov dword [rsp + 0x98], r12d
lea r12d, [rax + 1]
lea ecx, [rdi + 2]
mov r15d, ebx
test edi, edi
je 0x140088050
mov rdx, rbx
cmp byte [rdx + rsi], 0x26
mov rax, rbx
sete al
add rdx, r12
add rcx, rax
cmp rdx, r8
jl 0x14008803b
call fcn.14001a718
mov rbp, rax
test rax, rax
je 0x140088466
mov dl, 0x2f
mov edi, 5
cmp byte [rsi + 5], dl
jne 0x1400880de
cmp byte [rsi + 6], dl
jne 0x1400880de
lea r14, [rsi + 7]
mov edi, 7
mov al, byte [r14]
test al, al
je 0x1400880de
mov rcx, r14
cmp al, dl
je 0x140088095
add rcx, r12
add edi, r12d
mov al, byte [rcx]
test al, al
jne 0x140088085
cmp edi, 7
je 0x1400880de
cmp edi, 0x10
jne 0x1400880b6
lea r8d, [rdi - 7]
mov rdx, r14
lea rcx, str.localhost
call fcn.1400cb580
test eax, eax
je 0x1400880de
lea edx, [rdi - 7]
mov r8, r14
lea rcx, str.invalid_uri_authority:__.s
call fcn.14001c5d0
mov rcx, rax
mov r14d, r12d
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x1400884d9
movsxd rax, edi
mov r9d, ebx
mov cl, byte [rax + rsi]
test cl, cl
je 0x140088259
mov r10, rbx
lea r13, [0x14013a480]
movsxd r14, edi
cmp cl, 0x23
je 0x140088243
add edi, r12d
cmp cl, 0x25
jne 0x1400881c3
movsxd rax, edi
movzx edx, byte [rax + rsi]
test byte [rdx + r13], 8
je 0x1400881c3
movzx r11d, byte [r14 + rsi + 2]
test byte [r11 + r13], 8
je 0x1400881c3
movsx eax, dl
lea edi, [r14 + 3]
sar eax, 6
and al, r12b
movsx r8d, r11b
movzx eax, al
imul ecx, eax, 7
sar r8d, 6
and r8b, r12b
movzx eax, r8b
sub dl, cl
imul ecx, eax, 7
mov al, r11b
and edx, 0xf
shl edx, 4
sub al, cl
and eax, 0xf
lea ecx, [rdx + rax]
test ecx, ecx
jne 0x14008822b
movsxd rax, edi
lea rcx, [rax + rsi]
jmp 0x1400881bb
cmp al, 0x23
je 0x140088235
test r9d, r9d
jne 0x140088192
cmp al, 0x3f
je 0x140088235
cmp r9d, r12d
jne 0x1400881a7
cmp al, 0x3d
je 0x140088235
cmp al, 0x26
je 0x140088235
cmp r9d, 2
jne 0x1400881b5
cmp al, 0x26
je 0x140088235
add edi, r12d
add rcx, r12
mov al, byte [rcx]
test al, al
jne 0x14008817d
jmp 0x140088235
cmp r9d, r12d
jne 0x140088211
mov dl, 0x26
cmp cl, dl
je 0x1400881d3
cmp cl, 0x3d
jne 0x14008822b
cmp byte [r10 + rbp - 1], bl
jne 0x1400881f9
movsxd rax, edi
jmp 0x1400881f0
cmp cl, 0x23
je 0x140088235
cmp byte [rax + rsi - 1], dl
je 0x140088235
add edi, r12d
add rax, r12
mov cl, byte [rax + rsi]
test cl, cl
jne 0x1400881df
jmp 0x140088235
cmp cl, dl
jne 0x140088209
add r15d, r12d
mov byte [r10 + rbp], bl
add r10, r12
jmp 0x140088229
mov r9d, 2
jmp 0x140088229
test r9d, r9d
jne 0x14008821b
cmp cl, 0x3f
je 0x140088226
cmp r9d, 2
jne 0x14008822b
cmp cl, 0x26
jne 0x14008822b
mov r9d, r12d
mov cl, bl
add r15d, r12d
mov byte [r10 + rbp], cl
add r10, r12
movsxd rax, edi
mov cl, byte [rax + rsi]
test cl, cl
jne 0x1400880f9
mov r13, qword [rsp + 0x90]
cmp r9d, r12d
jne 0x140088259
movsxd rax, r15d
add r15d, r12d
mov byte [rax + rbp], bl
movsxd rax, r15d
mov rcx, rbp
mov word [rax + rbp], bx
call fcn.1401054a0
and eax, 0x3fffffff
lea rdi, [rbp + 1]
add rdi, rax
cmp byte [rdi], bl
je 0x140088496
mov rcx, rdi
lea r13, [0x14015b010]
call fcn.1401054a0
mov r14, rax
and r14d, 0x3fffffff
lea r15d, [r14 + 1]
add r15, rdi
jne 0x1400882a9
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x30], rbx
jmp 0x1400882c8
mov rcx, r15
call fcn.1401054a0
mov rcx, rax
and eax, 0x3fffffff
and ecx, 0x3fffffff
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x30], rcx
cmp r14d, 3
jne 0x1400882f4
mov r8d, r14d
lea rcx, [0x14015b00c]
mov rdx, rdi
call fcn.1400cb580
test eax, eax
jne 0x1400882f4
mov r13, r15
mov qword [rsp + 0x90], r15
jmp 0x1400883ec
mov qword [rsp + 0x28], rbx
mov r12, rbx
mov esi, ebx
cmp r14d, 5
jne 0x140088327
mov r8d, r14d
mov rdx, rdi
mov rcx, r13
call fcn.1400cb580
test eax, eax
jne 0x140088327
mov esi, 0x60000
mov qword [rsp + 0x28], r13
lea r12, str.shared
mov r13d, esi
cmp r14d, 4
jne 0x14008836b
mov r8d, r14d
lea rcx, str.mode
mov rdx, rdi
call fcn.1400cb580
test eax, eax
jne 0x14008836b
mov r13d, dword [rsp + 0x98]
lea r12, [0x1401b0460]
mov eax, Ordinal_139
mov esi, eax
and r13d, eax
lea rax, str.access
mov qword [rsp + 0x28], rax
test r12, r12
je 0x1400883e4
mov rdi, qword [r12]
mov r14, rbx
test rdi, rdi
je 0x140088429
mov rcx, rdi
call fcn.1401054a0
mov ecx, dword [rsp + 0x20]
and eax, 0x3fffffff
cmp ecx, eax
jne 0x1400883a7
mov r8d, ecx
mov rdx, rdi
mov rcx, r15
call fcn.1400cb580
test eax, eax
je 0x1400883b6
inc r14
mov rax, r14
add rax, rax
mov rdi, qword [r12 + rax*8]
jmp 0x140088377
add r14, r14
mov ecx, dword [r12 + r14*8 + 8]
test ecx, ecx
je 0x140088429
mov eax, ecx
btr eax, 7
cmp eax, r13d
jg 0x1400883fc
not esi
and esi, dword [rsp + 0x98]
mov r12d, esi
or r12d, ecx
mov dword [rsp + 0x98], r12d
mov r13, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x30]
inc rdi
add rdi, r15
jmp 0x140088274
mov rdx, qword [rsp + 0x28]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r15
call fcn.14001c5d0
mov rcx, rax
mov r14d, 3
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x1400884d9
mov rdx, qword [rsp + 0x28]
lea rcx, str.no_such__s_mode:__s
mov r8, r15
call fcn.14001c5d0
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x1400884d9
lea ecx, [rdi + 2]
call fcn.14001a718
mov rbp, rax
test rax, rax
jne 0x140088470
mov eax, 7
jmp 0x140088507
test edi, edi
je 0x140088482
mov r8d, edi
mov rdx, rsi
mov rcx, rbp
call fcn.1400cac20
mov eax, edi
and r12d, 0xffffffbf
mov dword [rsp + 0x98], r12d
mov word [rax + rbp], bx
jmp 0x140088499
mov r14d, ebx
mov rcx, r13
call fcn.14001a298
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
test rax, rax
jne 0x1400884d4
mov rdx, r13
lea rcx, str.no_such_vfs:__s
call fcn.14001c5d0
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
test r14d, r14d
je 0x1400884e1
mov rcx, rbp
call fcn.14001a7a8
mov rcx, qword [rsp + 0xa0]
test r14d, r14d
mov eax, dword [rsp + 0x98]
cmove rbx, rbp
mov dword [rcx], eax
mov eax, r14d
mov rcx, qword [rsp + 0xb0]
mov qword [rcx], rbx
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret