Function at 0x1401de730
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r14, r9
mov rsi, r8
mov r15, rdx
mov rbx, rcx
mov r13d, dword [r8]
test rdx, rdx
je 0x1401deb1d
mov rcx, r15
call fcn.1402b7c90
mov r12d, eax
and r12d, 0x3fffffff
test r13b, 0x40
jne 0x1401de889
mov cl, byte [0x14050f20e]
test cl, cl
setne cl
cmp r12d, 5
setae dl
test cl, dl
jne 0x1401de893
lea ecx, [r12 + 8]
call fcn.14025dca0
test rax, rax
je 0x1401deb0b
mov rdi, rax
mov dword [rax], 0
add rdi, 4
test r12d, r12d
je 0x1401deb15
mov r12d, r12d
mov rcx, rdi
mov rdx, r15
mov r8, r12
call fcn.1402d2020
mov dword [rdi + r12], 0
and r13d, 0xffffffbf
mov bpl, 1
cmp byte [0x14050f20c], 0
je 0x1401deb03
mov rax, qword [0x14050f278]
mov ecx, 2
call qword [case.0x1403053b8.0]
test rax, rax
je 0x1401deb03
mov r15, rax
mov rax, qword [0x14050f288]
mov rcx, r15
call qword [case.0x1403053b8.0]
xor ebp, ebp
mov r12, qword [0x1405217c0]
test rbx, rbx
je 0x1401de836
test r12, r12
je 0x1401de836
mov rdx, qword [r12 + 0x18]
mov rcx, rbx
call fcn.1402b7600
test eax, eax
jne 0x1401de87a
test bpl, bpl
jne 0x1401de84b
mov rax, qword [0x14050f298]
mov rcx, r15
call qword [case.0x1403053b8.0]
mov qword [r14], r12
xor ebp, ebp
test r12, r12
je 0x1401dec8c
mov rax, qword [rsp + 0xb0]
mov dword [rsi], r13d
mov qword [rax], rdi
mov eax, ebp
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r12, qword [r12 + 0x10]
test r12, r12
jne 0x1401de825
xor r12d, r12d
jmp 0x1401de836
cmp r12d, 5
jb 0x1401de78e
mov ecx, dword [r15]
xor ecx, dword [str.file:]
mov dl, byte [r15 + 4]
xor dl, byte [0x14047c02e]
movzx edx, dl
or edx, ecx
jne 0x1401de78e
add r12d, 8
or r13d, 0x40
and eax, 0x3fffffff
xor ecx, ecx
xor edx, edx
cmp byte [r15 + rcx], 0x26
sete dl
add r12, rdx
inc rcx
cmp rax, rcx
jne 0x1401de8c0
mov rcx, r12
call fcn.14025dca0
test rax, rax
je 0x1401deb0b
mov rdi, rax
mov dword [rax], 0
add rdi, 4
mov r8d, 5
cmp byte [r15 + 5], 0x2f
je 0x1401decc8
xor edx, edx
xor ecx, ecx
lea rbp, [0x1404dce40]
jmp 0x1401de94e
cmp byte [rdi + rax - 1], 0
je 0x1401deb35
cmp r10b, 0x26
je 0x1401ded3d
mov edx, 2
jmp 0x1401de932
mov edx, 1
xor r10d, r10d
jmp 0x1401de948
mov edx, 1
cmp r10d, 0x3d
je 0x1401de911
cmp r10d, 0x26
je 0x1401de911
inc ecx
mov byte [rdi + rax], r10b
movsxd rax, ecx
mov r9d, r8d
movsxd r11, r9d
movzx r10d, byte [r15 + r11]
test r10d, r10d
je 0x1401de991
cmp r10d, 0x23
je 0x1401de991
lea r8d, [r9 + 1]
cmp r10b, 0x25
je 0x1401dea4c
cmp edx, 1
je 0x1401de937
test edx, edx
jne 0x1401de984
cmp r10b, 0x3f
je 0x1401de92d
cmp edx, 2
jne 0x1401de948
cmp r10b, 0x26
jne 0x1401de948
jmp 0x1401de92d
cmp edx, 1
je 0x1401ded4c
mov dword [rdi + rax], 0
mov rcx, rdi
call fcn.1402b7c90
and eax, 0x3fffffff
cmp byte [rdi + rax + 1], 0
je 0x1401de7d4
lea rbp, [rdi + rax]
inc rbp
mov r12d, 0
test rbp, rbp
je 0x1401de9dd
mov rcx, rbp
call fcn.1402b7c90
mov r12, rax
and r12d, 0x3fffffff
mov r15d, r12d
add r15, rbp
inc r15
mov eax, 0
je 0x1401de9fa
mov rcx, r15
call fcn.1402b7c90
and eax, 0x3fffffff
mov edx, eax
cmp r12d, 5
je 0x1401deba8
cmp r12d, 4
je 0x1401deb6a
cmp r12d, 3
je 0x1401ded5b
lea rbp, [r15 + rdx]
inc rbp
cmp byte [rbp], 0
je 0x1401de7d4
jmp 0x1401de9c0
dec rdi
cmp byte [rdi + 3], 0
jne 0x1401dea2d
cmp byte [rdi + 2], 0
jne 0x1401dea2d
cmp byte [rdi + 1], 0
jne 0x1401dea2d
cmp byte [rdi], 0
jne 0x1401dea2d
jmp 0x1401decb9
movsxd r12, r8d
movzx r12d, byte [r15 + r12]
test byte [r12 + rbp], 8
je 0x1401de975
movzx r11d, byte [r15 + r11 + 2]
test byte [r11 + rbp], 8
je 0x1401de975
lea r8d, [r12 + r12]
sar r8b, 7
and r8b, 9
add r8b, r12b
shl r8b, 4
add r9d, 3
lea r10d, [r11 + r11]
sar r10b, 7
and r10b, 9
add r10b, r11b
and r10b, 0xf
or r10b, r8b
jne 0x1401deafb
movsxd r8, r9d
add r8, r15
jmp 0x1401deac1
cmp r10d, 0x26
je 0x1401de954
cmp r10d, 0x3d
je 0x1401de954
inc r9d
inc r8
movzx r10d, byte [r8]
test r10d, r10d
je 0x1401de954
cmp r10d, 0x23
je 0x1401de954
test edx, edx
jne 0x1401deae6
cmp r10b, 0x3f
je 0x1401de954
cmp edx, 1
je 0x1401deaa7
cmp edx, 2
jne 0x1401deabb
cmp r10b, 0x26
jne 0x1401deabb
jmp 0x1401de954
mov r8d, r9d
jmp 0x1401de948
xor r15d, r15d
jmp 0x1401de814
mov ebp, 7
jmp 0x1401de867
xor r12d, r12d
jmp 0x1401de7c8
xor r12d, r12d
test r13b, 0x40
jne 0x1401de78e
mov al, byte [0x14050f20e]
jmp 0x1401de78e
movsxd r9, r8d
add r9, r15
movzx r10d, byte [r9]
mov edx, 1
test r10d, r10d
je 0x1401de951
cmp r10d, 0x23
je 0x1401de951
cmp byte [r9 - 1], 0x26
je 0x1401de951
inc r8d
inc r9
jmp 0x1401deb3b
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], rdx
mov eax, dword [str.mode]
cmp eax, dword [rbp]
jne 0x1401debc5
mov eax, r13d
and eax, 0x87
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x30], 0xffffff78
lea rax, str.access
mov qword [rsp + 0x38], rax
lea rbp, [0x1404e4240]
jmp 0x1401debf2
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], rdx
mov eax, 0x68636163
xor eax, dword [rbp]
movzx ecx, byte [rbp + 4]
xor ecx, 0x65
or ecx, eax
je 0x1401debcf
mov rdx, qword [rsp + 0x28]
jmp 0x1401dea1a
mov dword [rsp + 0x34], 0x60000
mov dword [rsp + 0x30], 0xfff9ffff
lea rax, str.cache
mov qword [rsp + 0x38], rax
lea rbp, str.shared
mov r12, qword [rbp]
test r12, r12
je 0x1401dec76
add rbp, 0x10
jmp 0x1401dec0e
mov r12, qword [rbp]
add rbp, 0x10
test r12, r12
je 0x1401dec76
mov rcx, r12
call fcn.1402b7c90
and eax, 0x3fffffff
cmp dword [rsp + 0x40], eax
jne 0x1401dec01
mov rcx, r15
mov rdx, r12
mov r8, qword [rsp + 0x28]
call fcn.1402d1f20
test eax, eax
jne 0x1401dec01
mov eax, dword [rbp - 8]
test eax, eax
je 0x1401dec76
mov ecx, eax
and ecx, 0xffffff7f
cmp ecx, dword [rsp + 0x34]
jg 0x1401dec5b
mov ecx, dword [rsp + 0x30]
and ecx, r13d
or eax, ecx
mov r13d, eax
jmp 0x1401debc5
lea rcx, str._s_mode_not_allowed:__s
mov rdx, qword [rsp + 0x38]
mov r8, r15
call fcn.140194560
mov ebp, 3
jmp 0x1401deca0
lea rcx, str.no_such__s_mode:__s
mov rdx, qword [rsp + 0x38]
mov r8, r15
call fcn.140194560
jmp 0x1401dec9b
lea rcx, str.no_such_vfs:__s
mov rdx, rbx
call fcn.140194560
mov ebp, 1
mov rcx, qword [rsp + 0xb8]
mov qword [rcx], rax
test rdi, rdi
je 0x1401decc1
add rdi, 0xfffffffffffffffc
jmp 0x1401dea30
mov rcx, rdi
call fcn.140193e40
xor edi, edi
jmp 0x1401de859
cmp byte [r15 + 6], 0x2f
jne 0x1401de904
xor edx, edx
jmp 0x1401decda
inc rdx
movzx eax, byte [r15 + rdx + 7]
test eax, eax
je 0x1401dece9
cmp eax, 0x2f
jne 0x1401decd7
lea r8d, [rdx + 7]
cmp r8d, 7
je 0x1401de904
cmp r8d, 0x10
jne 0x1401ded1a
mov rax, qword [str.localhost]
xor rax, qword [r15 + 7]
mov cl, byte [0x14047ef48]
xor cl, byte [r15 + 0xf]
movzx ecx, cl
or rcx, rax
je 0x1401ded32
add r15, 7
lea rcx, str.invalid_uri_authority:__.s
mov r8, r15
call fcn.140194560
jmp 0x1401dec9b
mov r8d, 0x10
jmp 0x1401de904
lea ecx, [rax + 1]
mov byte [rdi + rax], 0
movsxd rax, ecx
jmp 0x1401de932
lea ecx, [rax + 1]
mov byte [rdi + rax], 0
movsxd rax, ecx
jmp 0x1401de99a
movzx eax, word [rbp]
xor eax, 0x6676
movzx ecx, byte [rbp + 2]
xor ecx, 0x73
or cx, ax
jne 0x1401dea1a
mov rbx, r15
jmp 0x1401dea1a