Function at 0x140155d30
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rdi
push r12
push r13
sub rsp, 0x68
mov r13d, dword [r8]
mov r12, rcx
mov rcx, qword [rsp + 0xb8]
mov rdi, rdx
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x20], 0
test rdx, rdx
jne 0x140155d70
xor ebx, ebx
jmp 0x140155d86
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], 0
jne 0x140155d77
and ebx, 0x3fffffff
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r15
test r13b, 0x40
jne 0x140155dad
cmp dword [0x14033a55c], 0
je 0x14015630d
cmp ebx, 5
jb 0x14015630d
mov eax, dword [rdx]
cmp eax, dword [str.file:]
jne 0x14015630d
movzx eax, byte [rdx + 4]
cmp al, byte [0x1402c2bb8]
jne 0x14015630d
or r13d, 0x40
mov r8d, ebx
xor esi, esi
mov dword [rsp + 0x98], r13d
xor r14d, r14d
lea ebp, [rbx + 2]
xor r15d, r15d
xor ecx, ecx
cmp r8, 2
jb 0x140155e22
lea rdx, [rbx - 1]
nop word [rax + rax]
xor eax, eax
cmp byte [rcx + rdi], 0x26
sete al
add rsi, rax
xor eax, eax
cmp byte [rcx + rdi + 1], 0x26
sete al
add rcx, 2
add r14, rax
cmp rcx, rdx
jl 0x140155e00
cmp rcx, r8
jge 0x140155e33
xor eax, eax
cmp byte [rcx + rdi], 0x26
sete al
add rbp, rax
call fcn.140178cc0
test eax, eax
jne 0x14015637f
lea rcx, [r14 + rsi]
add rcx, rbp
call fcn.140152ef0
mov qword [rsp + 0x30], rax
mov rbp, rax
test rax, rax
je 0x14015637f
cmp byte [rdi + 5], 0x2f
mov ecx, 5
jne 0x140155ed3
cmp byte [rdi + 6], 0x2f
jne 0x140155ed3
movzx edx, byte [rdi + 7]
lea r8, [rdi + 7]
mov ecx, 7
test dl, dl
je 0x140155ed3
mov rax, r8
cmp dl, 0x2f
je 0x140155e94
movzx edx, byte [rax + 1]
inc rax
inc ecx
test dl, dl
jne 0x140155e82
cmp ecx, 7
je 0x140155ed3
cmp ecx, 0x10
jne 0x140155eb7
mov rax, qword [str.localhost]
cmp rax, qword [r8]
jne 0x140155eb7
movzx eax, byte [reloc.WSOCK32.dll_WSACleanup]
cmp al, byte [r8 + 8]
je 0x140155ed3
lea edx, [rcx - 7]
mov dword [rsp + 0x20], 1
lea rcx, str.invalid_uri_authority:__.s
call fcn.1401081d0
jmp 0x14015628d
movsxd rax, ecx
xor r9d, r9d
movzx edx, byte [rax + rdi]
test dl, dl
je 0x14015605f
xor esi, esi
lea r14, [0x1402baf60]
nop
movsxd rbx, ecx
cmp dl, 0x23
je 0x14015604f
inc ecx
cmp dl, 0x25
jne 0x140155fc1
movsxd rax, ecx
movzx r11d, byte [rax + rdi]
test byte [r11 + r14], 8
je 0x140155fc1
movzx r10d, byte [rbx + rdi + 2]
test byte [r10 + r14], 8
je 0x140155fc1
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, [rbx + 3]
and eax, 0xf
add edx, eax
jne 0x140156037
movsxd rax, ecx
lea rdx, [rax + rdi]
movzx eax, byte [rax + rdi]
test al, al
je 0x140156040
cmp al, 0x23
je 0x140156040
test r9d, r9d
jne 0x140155f91
cmp al, 0x3f
jmp 0x140155fa9
cmp r9d, 1
jne 0x140155fa1
cmp al, 0x3d
je 0x140156040
jmp 0x140155fa7
cmp r9d, 2
jne 0x140155faf
cmp al, 0x26
je 0x140156040
movzx eax, byte [rdx + 1]
inc rdx
inc ecx
test al, al
jne 0x140155f80
jmp 0x140156040
cmp r9d, 1
jne 0x140156018
cmp dl, 0x26
je 0x140155fd1
cmp dl, 0x3d
jne 0x140156037
cmp byte [rsi + rbp - 1], 0
jne 0x140155fff
movsxd rax, ecx
movzx edx, byte [rax + rdi]
test dl, dl
je 0x140156040
cmp dl, 0x23
je 0x140156040
cmp byte [rax + rdi - 1], 0x26
je 0x140156040
movzx edx, byte [rax + rdi + 1]
inc rax
inc ecx
test dl, dl
jne 0x140155fe3
jmp 0x140156040
cmp dl, 0x26
jne 0x140156010
inc r15d
mov byte [rsi + rbp], 0
inc rsi
jmp 0x140156035
mov r9d, 2
jmp 0x140156035
test r9d, r9d
jne 0x140156024
cmp dl, 0x3f
je 0x14015602f
jmp 0x140156037
cmp r9d, 2
jne 0x140156037
cmp dl, 0x26
jne 0x140156037
mov r9d, 1
xor dl, dl
inc r15d
mov byte [rsi + rbp], dl
inc rsi
movsxd rax, ecx
movzx edx, byte [rax + rdi]
test dl, dl
jne 0x140155ef0
cmp r9d, 1
jne 0x14015605f
movsxd rax, r15d
inc r15d
mov byte [rax + rbp], 0
movsxd rax, r15d
mov word [rax + rbp], 0
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rax + rbp], 0
jne 0x140156070
and eax, 0x3fffffff
lea r8, [rbp + 1]
add r8, rax
cmp byte [r8], 0
je 0x14015625a
mov ebx, dword [0x1402c2bec]
nop word [rax + rax]
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1401560b0
and edx, 0x3fffffff
lea r15d, [rdx + 1]
add r15, r8
jne 0x1401560cf
xor ebp, ebp
xor esi, esi
jmp 0x1401560ee
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [r15 + rsi], 0
jne 0x1401560d6
mov ebp, esi
and ebp, 0x3fffffff
and esi, 0x3fffffff
cmp edx, 3
jne 0x140156116
cmp bx, word [r8]
jne 0x140156116
movzx eax, byte [reloc.WSOCK32.dll_WSAStartup]
cmp al, byte [r8 + 2]
jne 0x140156116
mov r12, r15
mov qword [rsp + 0x90], r15
jmp 0x140156244
xor eax, eax
xor r14d, r14d
xor r12d, r12d
mov qword [rsp + 0x28], rax
cmp edx, 5
jne 0x140156159
mov ecx, dword [str.cache]
cmp ecx, dword [r8]
jne 0x140156159
movzx ecx, byte [0x1402c2bf4]
cmp cl, byte [r8 + 4]
jne 0x140156159
lea rax, str.cache
mov r12d, 0x60000
mov qword [rsp + 0x28], rax
lea r14, str.shared
cmp edx, 4
jne 0x140156187
mov ecx, dword [str.mode]
cmp ecx, dword [r8]
jne 0x140156187
mov r12d, 0x87
lea rax, str.access
and r13d, r12d
mov qword [rsp + 0x28], rax
lea r14, [0x14033c440]
jmp 0x140156193
mov r13d, r12d
test r14, r14
je 0x140156234
mov rcx, qword [r14]
xor edi, edi
test rcx, rcx
je 0x1401561df
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401561a4
and eax, 0x3fffffff
cmp ebp, eax
jne 0x1401561c8
mov rdx, rcx
mov r8d, ebp
mov rcx, r15
call fcn.140249ce0
test eax, eax
je 0x1401561fe
inc rdi
mov rax, rdi
add rax, rax
mov rcx, qword [r14 + rax*8]
test rcx, rcx
jne 0x14015619d
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.1401081d0
jmp 0x14015628d
add rdi, rdi
mov ecx, dword [r14 + rdi*8 + 8]
test ecx, ecx
je 0x1401561da
mov eax, ecx
btr eax, 7
cmp eax, r13d
jg 0x1401562ef
mov r13d, dword [rsp + 0x98]
not r12d
and r13d, r12d
or r13d, ecx
mov dword [rsp + 0x98], r13d
jmp 0x14015623c
mov r13d, dword [rsp + 0x98]
mov r12, qword [rsp + 0x90]
lea r8, [r15 + 1]
add r8, rsi
cmp byte [r8], 0
jne 0x1401560a0
mov rbp, qword [rsp + 0x30]
mov rcx, r12
call fcn.14010e460
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
test rax, rax
jne 0x14015635d
mov rdx, r12
mov dword [rsp + 0x20], 1
lea rcx, str.no_such_vfs:__s
call fcn.1401081d0
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
cmp dword [0x14033a550], 0
je 0x140156350
mov rcx, qword [0x14037aac8]
test rcx, rcx
je 0x1401562b4
call qword [0x14033a5d8]
mov rcx, qword [rsp + 0x30]
call qword [0x14033a590]
dec qword [0x14037a818]
movsxd rcx, eax
sub qword [0x14037a7d0], rcx
mov rcx, qword [rsp + 0x30]
call qword [0x14033a580]
mov rcx, qword [0x14037aac8]
test rcx, rcx
je 0x14015635b
call qword [0x14033a5e8]
jmp 0x14015635b
mov rdx, qword [rsp + 0x28]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r15
mov dword [rsp + 0x20], 3
call fcn.1401081d0
jmp 0x14015628d
call fcn.140178cc0
test eax, eax
jne 0x14015637f
lea ecx, [rbx + 2]
call fcn.140152ef0
mov qword [rsp + 0x30], rax
mov rbp, rax
test rax, rax
je 0x14015637f
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call fcn.1402496a0
and r13d, 0xffffffbf
mov word [rbx + rbp], 0
mov dword [rsp + 0x98], r13d
jmp 0x14015625a
mov rcx, qword [rsp + 0x30]
call qword [0x14033a580]
xor ebp, ebp
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], rbp
jmp 0x140156384
mov eax, 7
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
add rsp, 0x68
pop r13
pop r12
pop rdi
pop rbx
ret