Function at 0x1401e92c0
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 rdi
push r13
sub rsp, 0x68
mov r13d, dword [r8]
mov rbp, rcx
mov rcx, qword [rsp + 0xb8]
mov rbx, rdx
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x20], 0
test rdx, rdx
jne 0x1401e92ff
xor edi, edi
jmp 0x1401e9315
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rdx + rdi], 0
jne 0x1401e9306
and edi, 0x3fffffff
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r15
test r13b, 0x40
jne 0x1401e933c
cmp byte [0x1402b04d6], 0
je 0x1401e9815
cmp edi, 5
jb 0x1401e9815
mov eax, dword [rdx]
cmp eax, dword [str.file:]
jne 0x1401e9815
movzx eax, byte [rdx + 4]
cmp al, byte [0x14022b898]
jne 0x1401e9815
or r13d, 0x40
mov r8d, edi
xor esi, esi
mov dword [rsp + 0x98], r13d
xor r14d, r14d
lea ebp, [rdi + 8]
xor r15d, r15d
xor ecx, ecx
cmp r8, 2
jb 0x1401e93b2
lea rdx, [rdi - 1]
nop dword [rax]
xor eax, eax
cmp byte [rbx + rcx], 0x26
sete al
add rsi, rax
xor eax, eax
cmp byte [rbx + rcx + 1], 0x26
sete al
add rcx, 2
add r14, rax
cmp rcx, rdx
jl 0x1401e9390
cmp rcx, r8
jge 0x1401e93c3
xor eax, eax
cmp byte [rcx + rbx], 0x26
sete al
add rbp, rax
call fcn.1401e6ea0
test eax, eax
jne 0x1401e9904
lea rcx, [r14 + rsi]
add rcx, rbp
call fcn.14014e380
mov r12, rax
test rax, rax
je 0x1401e9904
xor eax, eax
mov dword [r12], eax
add r12, 4
cmp byte [rbx + 5], 0x2f
lea ecx, [rax + 5]
jne 0x1401e9463
cmp byte [rbx + 6], 0x2f
jne 0x1401e9463
lea r8, [rbx + 7]
lea ecx, [rax + 7]
movzx eax, byte [r8]
test al, al
je 0x1401e9463
mov rdx, r8
cmp al, 0x2f
je 0x1401e9424
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
test al, al
jne 0x1401e9413
cmp ecx, 7
je 0x1401e9463
cmp ecx, 0x10
jne 0x1401e9447
mov rax, qword [str.localhost]
cmp rax, qword [r8]
jne 0x1401e9447
movzx eax, byte [0x140247140]
cmp al, byte [r8 + 8]
je 0x1401e9463
lea edx, [rcx - 7]
mov dword [rsp + 0x20], 1
lea rcx, str.invalid_uri_authority:__.s
call fcn.140150d70
jmp 0x1401e989d
movsxd rax, ecx
xor r9d, r9d
movzx edx, byte [rax + rbx]
test dl, dl
je 0x1401e95f3
xor esi, esi
lea rbp, [0x1402121b0]
nop
movsxd rdi, ecx
cmp dl, 0x23
je 0x1401e95e2
inc ecx
cmp dl, 0x25
jne 0x1401e9551
movsxd rax, ecx
movzx r11d, byte [rax + rbx]
test byte [r11 + rbp], 8
je 0x1401e9551
movzx r10d, byte [rdi + rbx + 2]
test byte [r10 + rbp], 8
je 0x1401e9551
movzx edx, 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
movzx eax, r10b
and edx, 0xf
shl edx, 4
sub al, cl
lea ecx, [rdi + 3]
and eax, 0xf
add edx, eax
jne 0x1401e95c9
movsxd rax, ecx
lea rdx, [rax + rbx]
movzx eax, byte [rax + rbx]
test al, al
je 0x1401e95d3
cmp al, 0x23
je 0x1401e95d3
test r9d, r9d
jne 0x1401e9521
cmp al, 0x3f
jmp 0x1401e9539
cmp r9d, 1
jne 0x1401e9531
cmp al, 0x3d
je 0x1401e95d3
jmp 0x1401e9537
cmp r9d, 2
jne 0x1401e953f
cmp al, 0x26
je 0x1401e95d3
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
test al, al
jne 0x1401e9510
jmp 0x1401e95d3
cmp r9d, 1
jne 0x1401e95aa
cmp dl, 0x26
je 0x1401e9561
cmp dl, 0x3d
jne 0x1401e95c9
cmp byte [rsi + r12 - 1], 0
jne 0x1401e9590
movsxd rax, ecx
movzx edx, byte [rax + rbx]
test dl, dl
je 0x1401e95d3
cmp dl, 0x23
je 0x1401e95d3
cmp byte [rax + rbx - 1], 0x26
je 0x1401e95d3
movzx edx, byte [rax + rbx + 1]
inc rax
inc ecx
test dl, dl
jne 0x1401e9574
jmp 0x1401e95d3
cmp dl, 0x26
jne 0x1401e95a2
inc r15d
mov byte [rsi + r12], 0
inc rsi
jmp 0x1401e95c7
mov r9d, 2
jmp 0x1401e95c7
test r9d, r9d
jne 0x1401e95b6
cmp dl, 0x3f
je 0x1401e95c1
jmp 0x1401e95c9
cmp r9d, 2
jne 0x1401e95c9
cmp dl, 0x26
jne 0x1401e95c9
mov r9d, 1
xor dl, dl
inc r15d
mov byte [rsi + r12], dl
inc rsi
movsxd rax, ecx
movzx edx, byte [rax + rbx]
test dl, dl
jne 0x1401e9480
cmp r9d, 1
jne 0x1401e95f3
movsxd rax, r15d
inc r15d
mov byte [rax + r12], 0
xor ecx, ecx
movsxd rax, r15d
mov dword [rax + r12], ecx
test r12, r12
jne 0x1401e9605
xor eax, eax
jmp 0x1401e961e
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [r12 + rax], cl
jne 0x1401e9610
and eax, 0x3fffffff
lea r8, [r12 + 1]
add r8, rax
cmp byte [r8], cl
je 0x1401e9866
mov ebx, dword [0x140247128]
nop word [rax + rax]
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1401e9650
and edx, 0x3fffffff
lea r15d, [rdx + 1]
add r15, r8
jne 0x1401e966f
xor ebp, ebp
xor esi, esi
jmp 0x1401e968e
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [r15 + rsi], 0
jne 0x1401e9676
mov ebp, esi
and ebp, 0x3fffffff
and esi, 0x3fffffff
cmp edx, 3
jne 0x1401e96b6
cmp bx, word [r8]
jne 0x1401e96b6
movzx eax, byte [0x14024712a]
cmp al, byte [r8 + 2]
jne 0x1401e96b6
mov rbp, r15
mov qword [rsp + 0x90], r15
jmp 0x1401e97e1
xor eax, eax
xor r14d, r14d
xor r13d, r13d
mov qword [rsp + 0x28], rax
cmp edx, 5
jne 0x1401e96f9
mov ecx, dword [str.cache]
cmp ecx, dword [r8]
jne 0x1401e96f9
movzx ecx, byte [0x140247130]
cmp cl, byte [r8 + 4]
jne 0x1401e96f9
lea rax, str.cache
mov r13d, 0x60000
mov qword [rsp + 0x28], rax
lea r14, str.shared
cmp edx, 4
jne 0x1401e9732
mov ecx, dword [str.mode]
cmp ecx, dword [r8]
jne 0x1401e9732
mov eax, dword [rsp + 0x98]
lea r14, [0x1402c49b0]
mov r13d, 0x87
and eax, r13d
mov dword [rsp + 0x24], eax
lea rax, str.access
mov qword [rsp + 0x28], rax
jmp 0x1401e9740
mov dword [rsp + 0x24], r13d
test r14, r14
je 0x1401e97d9
mov rcx, qword [r14]
xor edi, edi
test rcx, rcx
je 0x1401e978c
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401e9751
and eax, 0x3fffffff
cmp ebp, eax
jne 0x1401e9775
mov rdx, rcx
mov r8d, ebp
mov rcx, r15
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401e97ab
inc rdi
mov rax, rdi
add rax, rax
mov rcx, qword [r14 + rax*8]
test rcx, rcx
jne 0x1401e974a
mov rax, qword [rsp + 0x28]
mov r8, r15
mov dword [rsp + 0x20], 1
mov rdx, rax
lea rcx, str.no_such__s_mode:__s
call fcn.140150d70
jmp 0x1401e989d
add rdi, rdi
mov ecx, dword [r14 + rdi*8 + 8]
test ecx, ecx
je 0x1401e9787
mov eax, ecx
btr eax, 7
cmp eax, dword [rsp + 0x24]
jg 0x1401e97f4
not r13d
and r13d, dword [rsp + 0x98]
or r13d, ecx
mov dword [rsp + 0x98], r13d
mov rbp, qword [rsp + 0x90]
lea r8, [r15 + 1]
add r8, rsi
cmp byte [r8], 0
jne 0x1401e9640
jmp 0x1401e986e
mov rdx, qword [rsp + 0x28]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r15
mov dword [rsp + 0x20], 3
call fcn.140150d70
jmp 0x1401e989d
call fcn.1401e6ea0
test eax, eax
jne 0x1401e9904
lea ecx, [rdi + 8]
call fcn.14014e380
mov r12, rax
test rax, rax
je 0x1401e9904
xor eax, eax
mov dword [r12], eax
add r12, 4
test edi, edi
je 0x1401e9852
mov r8d, edi
mov rdx, rbx
mov rcx, r12
call sub.VCRUNTIME140.dll_memcpy
xor ecx, ecx
and r13d, 0xffffffbf
mov dword [rdi + r12], ecx
mov dword [rsp + 0x98], r13d
jmp 0x1401e986e
mov rbp, qword [rsp + 0x90]
mov rcx, rbp
call fcn.14014ddb0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
test rax, rax
jne 0x1401e98e2
mov rdx, rbp
mov dword [rsp + 0x20], 1
lea rcx, str.no_such_vfs:__s
call fcn.140150d70
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
test r12, r12
je 0x1401e98df
nop word [rax + rax]
cmp byte [r12 - 1], 0
jne 0x1401e98d0
cmp byte [r12 - 2], 0
jne 0x1401e98d0
cmp byte [r12 - 3], 0
jne 0x1401e98d0
cmp byte [r12 - 4], 0
je 0x1401e98d5
dec r12
jmp 0x1401e98b0
lea rcx, [r12 - 4]
call fcn.14014e560
xor r12d, r12d
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x98]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rsp + 0x20]
mov qword [rcx], r12
jmp 0x1401e9909
mov eax, 7
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x68
pop r13
pop rdi
pop rbp
pop rbx
ret