Function at 0x1401b03b0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rdi
push r12
push r14
sub rsp, 0x58
mov r12d, dword [r8]
mov rbx, rdx
mov qword [rsp + 0x20], rcx
mov r14, rcx
mov dword [rsp + 0x88], 0
test rdx, rdx
jne 0x1401b03e6
xor edi, edi
jmp 0x1401b03ff
or rdi, 0xffffffffffffffff
nop word [rax + rax]
inc rdi
cmp byte [rdx + rdi], 0
jne 0x1401b03f0
and edi, 0x3fffffff
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r15
test r12b, 0x40
jne 0x1401b0426
cmp byte [0x1403dd126], 0
je 0x1401b08df
cmp edi, 5
jb 0x1401b08df
mov eax, dword [rdx]
cmp eax, dword [str.file:]
jne 0x1401b08df
movzx eax, byte [rdx + 4]
cmp al, byte [0x140300d58]
jne 0x1401b08df
or r12d, 0x40
mov r8d, edi
xor esi, esi
mov dword [rsp + 0x80], r12d
xor r14d, r14d
lea ebp, [rdi + 2]
xor r15d, r15d
xor ecx, ecx
cmp r8, 2
jb 0x1401b04a2
lea rdx, [rdi - 1]
nop dword [rax]
nop word [rax + 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 0x1401b0480
cmp rcx, r8
jge 0x1401b04b3
xor eax, eax
cmp byte [rcx + rbx], 0x26
sete al
add rbp, rax
call fcn.1401d9ce0
test eax, eax
jne 0x1401b09fe
lea rcx, [r14 + rsi]
add rcx, rbp
call fcn.1401ad670
mov qword [rsp + 0x28], rax
mov rsi, rax
test rax, rax
je 0x1401b09fe
cmp byte [rbx + 5], 0x2f
mov r9d, 5
jne 0x1401b055f
cmp byte [rbx + 6], 0x2f
jne 0x1401b055f
movzx ecx, byte [rbx + 7]
lea r8, [rbx + 7]
mov r9d, 7
test cl, cl
je 0x1401b055f
mov rax, r8
cmp cl, 0x2f
je 0x1401b0517
movzx ecx, byte [rax + 1]
inc rax
inc r9d
test cl, cl
jne 0x1401b0504
cmp r9d, 7
je 0x1401b055f
cmp r9d, 0x10
jne 0x1401b053c
mov rax, qword [str.localhost]
cmp rax, qword [r8]
jne 0x1401b053c
movzx eax, byte [reloc.WS2_32.dll_WSACleanup]
cmp al, byte [r8 + 8]
je 0x1401b055f
lea edx, [r9 - 7]
lea rcx, str.invalid_uri_authority:__.s
call fcn.140156fc0
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x1401b096b
movsxd rax, r9d
xor edi, edi
movzx edx, byte [rax + rbx]
test dl, dl
je 0x1401b06f0
xor r11d, r11d
lea rbp, [0x1402f6160]
nop word [rax + rax]
cmp dl, 0x23
je 0x1401b06e1
inc r9d
cmp dl, 0x25
jne 0x1401b0654
movsxd rax, r9d
movzx r10d, byte [rax + rbx]
test byte [r10 + rbp], 8
je 0x1401b0654
lea r8d, [r9 + 1]
movsxd rax, r8d
movzx ecx, byte [rax + rbx]
test byte [rcx + rbp], 8
je 0x1401b0654
movsx edx, r10b
mov eax, edx
movsxd r9, r8d
sar eax, 6
and al, 1
movzx eax, al
movsx r8d, byte [r9 + rbx]
inc r9d
imul ecx, eax, 7
mov eax, r8d
sar eax, 6
and al, 1
movzx eax, al
sub dl, cl
imul ecx, eax, 7
movzx eax, r8b
and edx, 0xf
shl edx, 4
sub al, cl
and eax, 0xf
add edx, eax
jne 0x1401b06c8
movsxd rax, r9d
lea rcx, [rax + rbx]
movzx eax, byte [rax + rbx]
test al, al
je 0x1401b06d2
movsxd rdx, edi
cmp al, 0x23
je 0x1401b06d2
test edi, edi
jne 0x1401b0626
cmp al, 0x3f
jmp 0x1401b063e
cmp rdx, 1
jne 0x1401b0636
cmp al, 0x3d
je 0x1401b06d2
jmp 0x1401b063c
cmp rdx, 2
jne 0x1401b0644
cmp al, 0x26
je 0x1401b06d2
movzx eax, byte [rcx + 1]
inc rcx
inc r9d
test al, al
jne 0x1401b0616
jmp 0x1401b06d2
cmp edi, 1
jne 0x1401b06ac
cmp dl, 0x26
je 0x1401b0663
cmp dl, 0x3d
jne 0x1401b06c8
cmp byte [r11 + rsi - 1], 0
jne 0x1401b0693
movsxd rax, r9d
movzx ecx, byte [rax + rbx]
test cl, cl
je 0x1401b06d2
cmp cl, 0x23
je 0x1401b06d2
cmp byte [rax + rbx - 1], 0x26
je 0x1401b06d2
movzx ecx, byte [rax + rbx + 1]
inc rax
inc r9d
test cl, cl
jne 0x1401b0676
jmp 0x1401b06d2
cmp dl, 0x26
jne 0x1401b06a5
inc r15d
mov byte [r11 + rsi], 0
inc r11
jmp 0x1401b06c6
mov edi, 2
jmp 0x1401b06c6
test edi, edi
jne 0x1401b06b7
cmp dl, 0x3f
je 0x1401b06c1
jmp 0x1401b06c8
cmp edi, 2
jne 0x1401b06c8
cmp dl, 0x26
jne 0x1401b06c8
mov edi, 1
xor dl, dl
inc r15d
mov byte [r11 + rsi], dl
inc r11
movsxd rax, r9d
movzx edx, byte [rax + rbx]
test dl, dl
jne 0x1401b0580
cmp edi, 1
jne 0x1401b06f0
movsxd rax, r15d
inc r15d
mov byte [rax + rsi], 0
movsxd rax, r15d
mov byte [rax + rsi], 0
lea eax, [r15 + 1]
movsxd rcx, eax
or rax, 0xffffffffffffffff
mov byte [rcx + rsi], 0
inc rax
cmp byte [rsi + rax], 0
jne 0x1401b0706
and eax, 0x3fffffff
lea edx, [rax + 1]
add rdx, rsi
cmp byte [rdx], 0
je 0x1401b0930
movzx r13d, byte [reloc.WS2_32.dll_WSAStartup]
nop dword [rax + rax]
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x1401b0734
and ecx, 0x3fffffff
lea ebp, [rcx + 1]
add rbp, rdx
jne 0x1401b074f
xor ebx, ebx
jmp 0x1401b0762
or rbx, 0xffffffffffffffff
inc rbx
cmp byte [rbx + rbp], 0
jne 0x1401b0753
and ebx, 0x3fffffff
cmp ecx, 3
jne 0x1401b0786
movzx eax, word [0x140300d8c]
cmp ax, word [rdx]
jne 0x1401b0786
cmp r13b, byte [rdx + 2]
jne 0x1401b0786
mov r14, rbp
mov qword [rsp + 0x20], rbp
jmp 0x1401b0896
xor esi, esi
xor r12d, r12d
xor r14d, r14d
cmp ecx, 5
jne 0x1401b07bd
mov eax, dword [str.cache]
cmp eax, dword [rdx]
jne 0x1401b07bd
movzx eax, byte [0x140300d94]
cmp al, byte [rdx + 4]
jne 0x1401b07bd
mov r14d, 0x60000
lea rsi, str.shared
lea r12, str.cache
mov r15d, r14d
cmp ecx, 4
jne 0x1401b07f0
mov eax, dword [str.mode]
cmp eax, dword [rdx]
jne 0x1401b07f0
mov r15d, dword [rsp + 0x80]
lea rsi, [0x1403db2c0]
mov r14d, 0x87
lea r12, str.access
and r15d, r14d
jmp 0x1401b07f9
test rsi, rsi
je 0x1401b0891
mov rcx, qword [rsi]
xor edi, edi
test rcx, rcx
je 0x1401b083d
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401b0807
and eax, 0x3fffffff
cmp ebx, eax
jne 0x1401b082b
mov rdx, rcx
mov r8d, ebx
mov rcx, rbp
call fcn.14028ed90
test eax, eax
je 0x1401b0862
inc rdi
mov rax, rdi
add rax, rax
mov rcx, qword [rsi + rax*8]
test rcx, rcx
jne 0x1401b0803
mov r8, rbp
lea rcx, str.no_such__s_mode:__s
mov rdx, r12
call fcn.140156fc0
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x1401b096b
add rdi, rdi
mov ecx, dword [rsi + rdi*8 + 8]
test ecx, ecx
je 0x1401b083d
mov eax, ecx
btr eax, 7
cmp eax, r15d
jg 0x1401b08af
not r14d
and r14d, dword [rsp + 0x80]
mov r12d, r14d
or r12d, ecx
mov dword [rsp + 0x80], r12d
mov r14, qword [rsp + 0x20]
lea edx, [rbx + 1]
add rdx, rbp
cmp byte [rdx], 0
jne 0x1401b0730
mov rsi, qword [rsp + 0x28]
jmp 0x1401b0935
mov r8, rbp
lea rcx, str._s_mode_not_allowed:__s
mov rdx, r12
call fcn.140156fc0
mov rcx, rax
mov dword [rsp + 0x88], 3
mov rax, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x1401b0976
call fcn.1401d9ce0
test eax, eax
jne 0x1401b09fe
lea ecx, [rdi + 2]
call fcn.1401ad670
mov qword [rsp + 0x28], rax
mov rsi, rax
test rax, rax
je 0x1401b09fe
test edi, edi
je 0x1401b0917
mov r8d, edi
mov rdx, rbx
mov rcx, rax
call fcn.14028db80
lea eax, [rdi + 1]
mov byte [rdi + rsi], 0
and r12d, 0xffffffbf
mov byte [rax + rsi], 0
mov dword [rsp + 0x80], r12d
jmp 0x1401b0935
mov r14, qword [rsp + 0x20]
mov rcx, r14
call fcn.1401594a0
mov rcx, qword [rsp + 0x98]
mov qword [rcx], rax
test rax, rax
jne 0x1401b09d9
mov rdx, r14
lea rcx, str.no_such_vfs:__s
call fcn.140156fc0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
mov dword [rsp + 0x88], 1
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x1401b09cc
mov rcx, qword [0x1403efcd8]
test rcx, rcx
je 0x1401b0991
call qword [0x1403dd1a0]
mov rcx, qword [rsp + 0x28]
call qword [0x1403dd158]
dec qword [0x1403efe48]
movsxd rcx, eax
sub qword [0x1403efe00], rcx
mov rcx, qword [rsp + 0x28]
call qword [0x1403dd148]
mov rcx, qword [0x1403efcd8]
test rcx, rcx
je 0x1401b09d7
call qword [0x1403dd1b0]
jmp 0x1401b09d7
mov rcx, qword [rsp + 0x28]
call qword [0x1403dd148]
xor esi, esi
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x80]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x88]
mov qword [rcx], rsi
jmp 0x1401b0a03
mov eax, 7
mov r15, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
pop r14
pop r12
pop rdi
pop rbx
ret