Function at 0x1400f6f70
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r15d, dword [r8]
mov r12, rcx
mov rcx, qword [rsp + 0x98]
mov rdi, rdx
mov qword [rsp + 0x28], rcx
mov rcx, rdx
mov dword [rsp + 0x20], 0
call fcn.14017ce10
movsxd rbx, eax
test r15b, 0x40
jne 0x1400f6fcf
cmp byte [0x1401eb6d6], 0
je 0x1400f73f2
cmp ebx, 5
jl 0x1400f73f2
cmp dword [rdx], 0x656c6966
jne 0x1400f73f2
cmp byte [rdx + 4], 0x3a
jne 0x1400f73f2
or r15d, 0x40
lea eax, [rbx + 8]
xor edx, edx
movsxd r11, eax
xor r8d, r8d
mov dword [rsp + 0x24], r15d
xor esi, esi
xor ecx, ecx
cmp rbx, 2
jl 0x1400f7032
lea r9, [rbx - 1]
xor eax, eax
cmp byte [rcx + rdi], 0x26
sete al
add rdx, rax
xor eax, eax
cmp byte [rcx + rdi + 1], 0x26
sete al
add rcx, 2
add r8, rax
cmp rcx, r9
jl 0x1400f7010
cmp rcx, rbx
jge 0x1400f7043
xor eax, eax
cmp byte [rcx + rdi], 0x26
sete al
add r11, rax
lea rcx, [r8 + rdx]
add rcx, r11
call fcn.140180630
mov r13, rax
test rax, rax
je 0x1400f7405
xor eax, eax
mov dword [r13], eax
add r13, 4
cmp byte [rdi + 5], 0x2f
lea ecx, [rax + 5]
jne 0x1400f70d7
cmp byte [rdi + 6], 0x2f
jne 0x1400f70d7
lea r8, [rdi + 7]
lea ecx, [rax + 7]
movzx eax, byte [r8]
test al, al
je 0x1400f70d7
mov rdx, r8
cmp al, 0x2f
je 0x1400f7097
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
test al, al
jne 0x1400f7086
cmp ecx, 7
je 0x1400f70d7
cmp ecx, 0x10
jne 0x1400f70bb
movabs rax, 0x736f686c61636f6c
cmp rax, qword [r8]
jne 0x1400f70bb
mov eax, reloc.WS2_32.dll_WSACleanup
cmp al, byte [r8 + 8]
je 0x1400f70d7
lea edx, [rcx - 7]
mov dword [rsp + 0x20], 1
lea rcx, str.invalid_uri_authority:__.s
call fcn.14017e070
jmp 0x1400f7469
movsxd rax, ecx
xor r10d, r10d
movzx edx, byte [rax + rdi]
test dl, dl
je 0x1400f724b
mov rbx, r13
lea rbp, [0x1401b7110]
movsxd r11, ecx
cmp dl, 0x23
je 0x1400f723b
inc ecx
cmp dl, 0x25
jne 0x1400f71a9
movsxd rax, ecx
movzx r9d, byte [rax + rdi]
test byte [r9 + rbp], 8
je 0x1400f71a9
movzx r8d, byte [r11 + rdi + 2]
test byte [r8 + rbp], 8
je 0x1400f71a9
movsx ecx, r9b
movsx r8d, r8b
call fcn.14017ad30
movzx r9d, al
mov ecx, r8d
shl r9d, 4
call fcn.14017ad30
movzx edx, al
lea ecx, [r11 + 3]
add edx, r9d
jne 0x1400f7225
movsxd rdx, ecx
add rdx, rdi
movzx eax, byte [rdx]
test al, al
je 0x1400f722c
cmp al, 0x23
je 0x1400f722c
test r10d, r10d
jne 0x1400f7179
cmp al, 0x3f
jmp 0x1400f7191
cmp r10d, 1
jne 0x1400f7189
cmp al, 0x3d
je 0x1400f722c
jmp 0x1400f718f
cmp r10d, 2
jne 0x1400f7197
cmp al, 0x26
je 0x1400f722c
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
test al, al
jne 0x1400f7168
jmp 0x1400f722c
cmp r10d, 1
jne 0x1400f7206
cmp dl, 0x26
je 0x1400f71b9
cmp dl, 0x3d
jne 0x1400f7225
cmp byte [rbx - 1], 0
jne 0x1400f71ef
movsxd rdx, ecx
add rdx, rdi
movzx r8d, byte [rdx]
test r8b, r8b
je 0x1400f722c
nop
cmp r8b, 0x23
je 0x1400f722c
cmp byte [rdx - 1], 0x26
je 0x1400f722c
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
movzx r8d, al
test al, al
jne 0x1400f71d0
jmp 0x1400f722c
cmp dl, 0x26
jne 0x1400f71fe
inc esi
mov byte [rbx], 0
inc rbx
jmp 0x1400f7223
mov r10d, 2
jmp 0x1400f7223
test r10d, r10d
jne 0x1400f7212
cmp dl, 0x3f
je 0x1400f721d
jmp 0x1400f7225
cmp r10d, 2
jne 0x1400f7225
cmp dl, 0x26
jne 0x1400f7225
mov r10d, 1
xor dl, dl
inc esi
mov byte [rbx], dl
inc rbx
movsxd rax, ecx
movzx edx, byte [rax + rdi]
test dl, dl
jne 0x1400f70f3
cmp r10d, 1
jne 0x1400f724b
movsxd rax, esi
inc esi
mov byte [rax + r13], 0
movsxd rax, esi
xor ecx, ecx
mov dword [rax + r13], ecx
mov rcx, r13
call fcn.14017ce10
inc eax
movsxd rdx, eax
add rdx, r13
cmp byte [rdx], 0
je 0x1400f743a
mov r9d, reloc.WS2_32.dll_WSAStartup
mov ebx, 0x68636163
mov edi, 0x65646f6d
mov r10d, 0x6676
lea r11d, [r9 - 0xe]
mov rcx, rdx
call fcn.14017ce10
mov r8d, eax
inc eax
movsxd rbp, eax
add rbp, rdx
mov rcx, rbp
call fcn.14017ce10
movsxd r14, eax
cmp r8d, 3
jne 0x1400f72cc
cmp r10w, word [rdx]
jne 0x1400f73bf
cmp r9b, byte [rdx + 2]
jne 0x1400f73bf
mov r12, rbp
mov qword [rsp + 0x70], rbp
jmp 0x1400f73c4
cmp r8d, 5
jne 0x1400f72fc
cmp ebx, dword [rdx]
jne 0x1400f73bf
cmp r11b, byte [rdx + 4]
jne 0x1400f73bf
mov esi, 0x60000
lea rdi, str.shared
mov r15d, esi
lea r12, str.cache
jmp 0x1400f7324
cmp r8d, 4
jne 0x1400f73bf
cmp edi, dword [rdx]
jne 0x1400f73bf
mov esi, 0x87
lea rdi, [0x1401ee300]
and r15d, esi
lea r12, str.access
mov rcx, qword [rdi]
xor ebx, ebx
test rcx, rcx
je 0x1400f735e
nop
call fcn.14017ce10
cmp r14d, eax
jne 0x1400f734c
mov rdx, rcx
mov r8, r14
mov rcx, rbp
call fcn.1400b7c10
test eax, eax
je 0x1400f737d
inc rbx
mov rax, rbx
add rax, rax
mov rcx, qword [rdi + rax*8]
test rcx, rcx
jne 0x1400f7330
mov r8, rbp
mov dword [rsp + 0x20], 1
mov rdx, r12
lea rcx, str.no_such__s_mode:__s
call fcn.14017e070
jmp 0x1400f7469
add rbx, rbx
mov ecx, dword [rdi + rbx*8 + 8]
test ecx, ecx
je 0x1400f735e
mov eax, ecx
btr eax, 7
cmp eax, r15d
jg 0x1400f73d6
mov r15d, dword [rsp + 0x24]
not esi
mov r9d, reloc.WS2_32.dll_WSAStartup
and r15d, esi
or r15d, ecx
mov ebx, 0x68636163
mov dword [rsp + 0x24], r15d
mov edi, 0x65646f6d
mov r10d, 0x6676
lea r11d, [r9 - 0xe]
mov r12, qword [rsp + 0x70]
lea rdx, [r14 + 1]
add rdx, rbp
cmp byte [rdx], 0
jne 0x1400f7287
jmp 0x1400f743a
mov r8, rbp
mov dword [rsp + 0x20], 3
mov rdx, r12
lea rcx, str._s_mode_not_allowed:__s
call fcn.14017e070
jmp 0x1400f7469
lea eax, [rbx + 8]
movsxd rcx, eax
call fcn.140180630
mov r13, rax
test rax, rax
jne 0x1400f740f
mov eax, 7
jmp 0x1400f7499
xor eax, eax
mov dword [r13], eax
add r13, 4
test ebx, ebx
je 0x1400f742b
mov r8, rbx
mov rdx, rdi
mov rcx, r13
call fcn.1400b7d10
xor ecx, ecx
and r15d, 0xffffffbf
mov dword [rbx + r13], ecx
mov dword [rsp + 0x24], r15d
mov rcx, r12
call fcn.1401811a0
mov rcx, qword [rsp + 0x88]
mov qword [rcx], rax
test rax, rax
jne 0x1400f747c
mov rdx, r12
mov dword [rsp + 0x20], 1
lea rcx, str.no_such_vfs:__s
call fcn.14017e070
mov rcx, qword [rsp + 0x28]
mov qword [rcx], rax
mov rcx, r13
call fcn.1400f59f0
xor r13d, r13d
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], r13
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret