Function at 0x1400707ac
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 0x1400707e2
mov edi, ebx
jmp 0x1400707f4
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
mov rdi, rax
and edi, 0x3fffffff
test r12b, 0x40
jne 0x140070806
cmp dword [0x14010060c], ebx
je 0x140070c80
cmp edi, 5
jb 0x140070c80
mov r8d, 5
lea rdx, str.file:
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
jne 0x140070c80
or r12d, 0x40
mov ecx, edi
mov dword [rsp + 0x98], r12d
lea r12d, [rax + 1]
lea ebp, [rdi + 2]
mov r15d, ebx
test edi, edi
je 0x140070861
mov rdx, rbx
cmp byte [rdx + rsi], 0x26
mov rax, rbx
sete al
add rdx, r12
add rbp, rax
cmp rdx, rcx
jl 0x14007084c
call fcn.14006e018
test eax, eax
jne 0x140070d3b
mov rcx, rbp
call fcn.140008f24
mov rbp, rax
test rax, rax
je 0x140070d3b
mov dl, 0x2f
mov edi, 5
cmp byte [rsi + 5], dl
jne 0x140070900
cmp byte [rsi + 6], dl
jne 0x140070900
lea r14, [rsi + 7]
mov edi, 7
mov al, byte [r14]
test al, al
je 0x140070900
mov rcx, r14
cmp al, dl
je 0x1400708b6
add rcx, r12
add edi, r12d
mov al, byte [rcx]
test al, al
jne 0x1400708a6
cmp edi, 7
je 0x140070900
cmp edi, 0x10
jne 0x1400708d8
lea r8d, [rdi - 7]
mov rdx, r14
lea rcx, str.localhost
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
je 0x140070900
lea edx, [rdi - 7]
mov r8, r14
lea rcx, str.invalid_uri_authority:__.s
call fcn.14000aa80
mov rcx, rax
mov r14d, r12d
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x140070d0b
movsxd rax, edi
mov r9d, ebx
mov cl, byte [rax + rsi]
test cl, cl
je 0x140070a7b
mov r10, rbx
lea r13, [0x1400dd1f0]
movsxd r14, edi
cmp cl, 0x23
je 0x140070a65
add edi, r12d
cmp cl, 0x25
jne 0x1400709e5
movsxd rax, edi
movzx edx, byte [rax + rsi]
test byte [rdx + r13], 8
je 0x1400709e5
movzx r11d, byte [r14 + rsi + 2]
test byte [r11 + r13], 8
je 0x1400709e5
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 0x140070a4d
movsxd rax, edi
lea rcx, [rax + rsi]
jmp 0x1400709dd
cmp al, 0x23
je 0x140070a57
test r9d, r9d
jne 0x1400709b4
cmp al, 0x3f
je 0x140070a57
cmp r9d, r12d
jne 0x1400709c9
cmp al, 0x3d
je 0x140070a57
cmp al, 0x26
je 0x140070a57
cmp r9d, 2
jne 0x1400709d7
cmp al, 0x26
je 0x140070a57
add edi, r12d
add rcx, r12
mov al, byte [rcx]
test al, al
jne 0x14007099f
jmp 0x140070a57
cmp r9d, r12d
jne 0x140070a33
mov dl, 0x26
cmp cl, dl
je 0x1400709f5
cmp cl, 0x3d
jne 0x140070a4d
cmp byte [r10 + rbp - 1], bl
jne 0x140070a1b
movsxd rax, edi
jmp 0x140070a12
cmp cl, 0x23
je 0x140070a57
cmp byte [rax + rsi - 1], dl
je 0x140070a57
add edi, r12d
add rax, r12
mov cl, byte [rax + rsi]
test cl, cl
jne 0x140070a01
jmp 0x140070a57
cmp cl, dl
jne 0x140070a2b
add r15d, r12d
mov byte [r10 + rbp], bl
add r10, r12
jmp 0x140070a4b
mov r9d, 2
jmp 0x140070a4b
test r9d, r9d
jne 0x140070a3d
cmp cl, 0x3f
je 0x140070a48
cmp r9d, 2
jne 0x140070a4d
cmp cl, 0x26
jne 0x140070a4d
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 0x14007091b
mov r13, qword [rsp + 0x90]
cmp r9d, r12d
jne 0x140070a7b
movsxd rax, r15d
add r15d, r12d
mov byte [rax + rbp], bl
movsxd rax, r15d
mov rcx, rbp
mov word [rax + rbp], bx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
and eax, 0x3fffffff
lea rdi, [rbp + 1]
add rdi, rax
cmp byte [rdi], bl
je 0x140070cc8
mov rcx, rdi
lea r13, str.cache
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
mov r14, rax
and r14d, 0x3fffffff
lea r15d, [r14 + 1]
add r15, rdi
jne 0x140070acd
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x30], rbx
jmp 0x140070aed
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
mov rcx, rax
and eax, 0x3fffffff
and ecx, 0x3fffffff
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x30], rcx
cmp r14d, 3
jne 0x140070b1a
mov r8d, r14d
lea rcx, [0x1400dbd2c]
mov rdx, rdi
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
jne 0x140070b1a
mov r13, r15
mov qword [rsp + 0x90], r15
jmp 0x140070c16
mov qword [rsp + 0x28], rbx
mov r12, rbx
mov esi, ebx
cmp r14d, 5
jne 0x140070b4e
mov r8d, r14d
mov rdx, rdi
mov rcx, r13
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
jne 0x140070b4e
mov esi, 0x60000
mov qword [rsp + 0x28], r13
lea r12, str.shared
mov r13d, esi
cmp r14d, 4
jne 0x140070b93
mov r8d, r14d
lea rcx, str.mode
mov rdx, rdi
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
jne 0x140070b93
mov r13d, dword [rsp + 0x98]
lea r12, [0x1401020a0]
mov eax, 0x87
mov esi, eax
and r13d, eax
lea rax, str.access
mov qword [rsp + 0x28], rax
test r12, r12
je 0x140070c0e
mov rdi, qword [r12]
mov r14, rbx
test rdi, rdi
je 0x140070c53
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
mov ecx, dword [rsp + 0x20]
and eax, 0x3fffffff
cmp ecx, eax
jne 0x140070bd1
mov r8d, ecx
mov rdx, rdi
mov rcx, r15
call qword [sym.imp.VCRUNTIME140.dll_memcmp]
test eax, eax
je 0x140070be0
inc r14
mov rax, r14
add rax, rax
mov rdi, qword [r12 + rax*8]
jmp 0x140070b9f
add r14, r14
mov ecx, dword [r12 + r14*8 + 8]
test ecx, ecx
je 0x140070c53
mov eax, ecx
btr eax, 7
cmp eax, r13d
jg 0x140070c26
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 0x140070a97
mov rdx, qword [rsp + 0x28]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r15
call fcn.14000aa80
mov rcx, rax
mov r14d, 3
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x140070d0b
mov rdx, qword [rsp + 0x28]
lea rcx, str.no_such__s_mode:__s
mov r8, r15
call fcn.14000aa80
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
jmp 0x140070d0b
call fcn.14006e018
test eax, eax
jne 0x140070d3b
lea ecx, [rdi + 2]
call fcn.140008f24
mov rbp, rax
test rax, rax
je 0x140070d3b
test edi, edi
je 0x140070cb4
mov r8d, edi
mov rdx, rsi
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov eax, edi
and r12d, 0xffffffbf
mov dword [rsp + 0x98], r12d
mov word [rax + rbp], bx
jmp 0x140070ccb
mov r14d, ebx
mov rcx, r13
call fcn.1400085c0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
test rax, rax
jne 0x140070d06
mov rdx, r13
lea rcx, str.no_such_vfs:__s
call fcn.14000aa80
mov rcx, rax
mov r14d, 1
mov rax, qword [rsp + 0xb8]
mov qword [rax], rcx
test r14d, r14d
je 0x140070d13
mov rcx, rbp
call fcn.140009070
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
jmp 0x140070d40
mov eax, 7
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret