Function at 0x1400aa010
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 r14
sub rsp, 0x58
mov r12d, dword [r8]
mov r14, rdx
mov dword [rsp + 0x20], 0
mov rdi, rcx
test rdx, rdx
jne 0x1400aa043
xor ebx, ebx
jmp 0x1400aa05f
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x1400aa050
and ebx, 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 0x1400aa086
cmp dword [0x140124d5c], 0
je 0x1400aa56c
cmp ebx, 5
jb 0x1400aa56c
cmp dword [rdx], 0x656c6966
jne 0x1400aa56c
cmp byte [rdx + 4], 0x3a
jne 0x1400aa56c
or r12d, 0x40
mov r8d, ebx
xor edi, edi
mov dword [rsp + 0x88], r12d
xor esi, esi
lea ebp, [rbx + 2]
xor r15d, r15d
xor ecx, ecx
cmp r8, 2
jb 0x1400aa0f4
lea rdx, [rbx - 1]
nop word [rax + rax]
xor eax, eax
cmp byte [rcx + r14], 0x26
sete al
add rdi, rax
xor eax, eax
cmp byte [rcx + r14 + 1], 0x26
sete al
add rcx, 2
add rsi, rax
cmp rcx, rdx
jl 0x1400aa0d0
cmp rcx, r8
jge 0x1400aa106
xor eax, eax
cmp byte [rcx + r14], 0x26
sete al
add rbp, rax
call fcn.1400a6710
test eax, eax
jne 0x1400aa676
lea rcx, [rsi + rdi]
add rcx, rbp
call fcn.1400064d0
mov r13, rax
test rax, rax
je 0x1400aa676
cmp byte [r14 + 5], 0x2f
mov r9d, 5
mov rdi, rax
jne 0x1400aa1ad
cmp byte [r14 + 6], 0x2f
jne 0x1400aa1ad
movzx eax, byte [r14 + 7]
lea r8, [r14 + 7]
mov r9d, 7
test al, al
je 0x1400aa1ad
mov rcx, r8
cmp al, 0x2f
je 0x1400aa16a
movzx eax, byte [rcx + 1]
inc rcx
inc r9d
test al, al
jne 0x1400aa158
cmp r9d, 7
je 0x1400aa1ad
cmp r9d, 0x10
jne 0x1400aa190
movabs rax, 0x736f686c61636f6c
cmp rax, qword [r8]
jne 0x1400aa190
mov eax, 0x74
cmp al, byte [r8 + 8]
je 0x1400aa1ad
lea edx, [r9 - 7]
mov dword [rsp + 0x20], 1
lea rcx, str.invalid_uri_authority:__.s
call fcn.140008ce0
jmp 0x1400aa5eb
movsxd rax, r9d
xor r10d, r10d
movzx ecx, byte [rax + r14]
test cl, cl
je 0x1400aa343
mov rbx, rdi
lea rsi, [0x14010a2d0]
nop word [rax + rax]
movsxd r8, r9d
cmp cl, 0x23
je 0x1400aa333
inc r9d
cmp cl, 0x25
jne 0x1400aa2a2
movsxd rax, r9d
movzx edx, byte [rax + r14]
test byte [rdx + rsi], 8
je 0x1400aa2a2
movsxd rax, r9d
movzx r11d, byte [rax + r14 + 1]
test byte [r11 + rsi], 8
je 0x1400aa2a2
movsx eax, dl
add r9d, 2
sar eax, 6
and al, 1
movsx r8d, r11b
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, r11b
and edx, 0xf
add edx, edx
sub al, cl
and eax, 0xf
lea ecx, [rax + rdx*8]
test ecx, ecx
jne 0x1400aa31b
movsxd rcx, r9d
add rcx, r14
movzx eax, byte [rcx]
test al, al
je 0x1400aa323
nop
cmp al, 0x23
je 0x1400aa323
test r10d, r10d
jne 0x1400aa271
cmp al, 0x3f
jmp 0x1400aa289
cmp r10d, 1
jne 0x1400aa281
cmp al, 0x3d
je 0x1400aa323
jmp 0x1400aa287
cmp r10d, 2
jne 0x1400aa28f
cmp al, 0x26
je 0x1400aa323
movzx eax, byte [rcx + 1]
inc rcx
inc r9d
test al, al
jne 0x1400aa260
jmp 0x1400aa323
cmp r10d, 1
jne 0x1400aa2fc
cmp cl, 0x26
je 0x1400aa2b2
cmp cl, 0x3d
jne 0x1400aa31b
cmp byte [rbx - 1], 0
jne 0x1400aa2e4
lea rcx, [r14 + 1]
add rcx, r8
movzx edx, byte [rcx]
test dl, dl
je 0x1400aa323
cmp dl, 0x23
je 0x1400aa323
cmp byte [rcx - 1], 0x26
je 0x1400aa323
movzx eax, byte [rcx + 1]
inc rcx
inc r9d
movzx edx, al
test al, al
jne 0x1400aa2c6
jmp 0x1400aa323
cmp cl, 0x26
jne 0x1400aa2f4
inc r15d
mov byte [rbx], 0
inc rbx
jmp 0x1400aa319
mov r10d, 2
jmp 0x1400aa319
test r10d, r10d
jne 0x1400aa308
cmp cl, 0x3f
je 0x1400aa313
jmp 0x1400aa31b
cmp r10d, 2
jne 0x1400aa31b
cmp cl, 0x26
jne 0x1400aa31b
mov r10d, 1
xor cl, cl
inc r15d
mov byte [rbx], cl
inc rbx
movsxd rax, r9d
movzx ecx, byte [rax + r14]
test cl, cl
jne 0x1400aa1d0
cmp r10d, 1
jne 0x1400aa343
movsxd rax, r15d
inc r15d
mov byte [rax + rdi], 0
movsxd rax, r15d
mov word [rax + rdi], 0
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], 0
jne 0x1400aa353
and eax, 0x3fffffff
lea rcx, [rax + 1]
add rcx, rdi
cmp byte [rcx], 0
je 0x1400aa5b0
mov r9d, 0x6676
lea rsi, str.cache
mov r8d, reloc.WS2_32.dll_WSAStartup
mov r11d, 0x68636163
mov r10d, 0x65
mov edi, 0x65646f6d
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400aa3a0
mov edx, eax
and eax, 0x3fffffff
and edx, 0x3fffffff
lea r14, [rax + 1]
add r14, rcx
jne 0x1400aa3c5
xor ebp, ebp
xor ebx, ebx
jmp 0x1400aa3e8
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [r14 + rbx], 0
jne 0x1400aa3d0
mov ebp, ebx
and ebp, 0x3fffffff
and ebx, 0x3fffffff
cmp edx, 3
jne 0x1400aa411
cmp r9w, word [rcx]
jne 0x1400aa510
cmp r8b, byte [rcx + 2]
jne 0x1400aa510
mov rdi, r14
mov qword [rsp + 0x80], r14
jmp 0x1400aa518
cmp edx, 5
jne 0x1400aa442
cmp r11d, dword [rcx]
jne 0x1400aa510
cmp r10b, byte [rcx + 4]
jne 0x1400aa510
mov r12d, 0x60000
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x24], r12d
lea r15, str.shared
jmp 0x1400aa47a
cmp edx, 4
jne 0x1400aa510
cmp edi, dword [rcx]
jne 0x1400aa510
mov eax, dword [rsp + 0x88]
lea r15, [0x1401258f0]
mov r12d, 0x87
and eax, r12d
mov dword [rsp + 0x24], eax
lea rax, str.access
mov qword [rsp + 0x28], rax
mov rcx, qword [r15]
xor esi, esi
test rcx, rcx
je 0x1400aa54e
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x1400aa490
and eax, 0x3fffffff
cmp ebp, eax
jne 0x1400aa4b4
mov rdx, rcx
mov r8d, ebp
mov rcx, r14
call fcn.1400f42c0
test eax, eax
je 0x1400aa4c3
inc rsi
mov rax, rsi
add rax, rax
mov rcx, qword [r15 + rax*8]
jmp 0x1400aa47f
add rsi, rsi
mov ecx, dword [r15 + rsi*8 + 8]
test ecx, ecx
je 0x1400aa54e
mov eax, ecx
btr eax, 7
cmp eax, dword [rsp + 0x24]
jg 0x1400aa52d
not r12d
lea rsi, str.cache
and r12d, dword [rsp + 0x88]
mov r8d, reloc.WS2_32.dll_WSAStartup
or r12d, ecx
mov r9d, 0x6676
mov dword [rsp + 0x88], r12d
mov r10d, 0x65
mov r11d, 0x68636163
mov rdi, qword [rsp + 0x80]
lea rcx, [r14 + 1]
add rcx, rbx
cmp byte [rcx], 0
je 0x1400aa5b8
jmp 0x1400aa390
mov rdx, qword [rsp + 0x28]
lea rcx, str._s_mode_not_allowed:__s
mov r8, r14
mov dword [rsp + 0x20], 3
call fcn.140008ce0
jmp 0x1400aa5eb
mov rdx, qword [rsp + 0x28]
lea rcx, str.no_such__s_mode:__s
mov r8, r14
mov dword [rsp + 0x20], 1
call fcn.140008ce0
jmp 0x1400aa5eb
call fcn.1400a6710
test eax, eax
jne 0x1400aa676
lea ecx, [rbx + 2]
call fcn.1400064d0
mov r13, rax
test rax, rax
je 0x1400aa676
mov r8, rbx
mov rdx, r14
mov rcx, rax
call fcn.1400f3c40
and r12d, 0xffffffbf
mov word [rbx + r13], 0
mov dword [rsp + 0x88], r12d
jmp 0x1400aa5b8
mov rdi, qword [rsp + 0x80]
mov rcx, rdi
call fcn.140005c30
mov rcx, qword [rsp + 0x98]
mov qword [rcx], rax
test rax, rax
jne 0x1400aa654
mov rdx, rdi
mov dword [rsp + 0x20], 1
lea rcx, str.no_such_vfs:__s
call fcn.140008ce0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
cmp dword [0x140124d50], 0
je 0x1400aa648
mov rcx, qword [0x140128b48]
test rcx, rcx
je 0x1400aa611
call qword [0x140124dd8]
mov rcx, r13
call qword [0x140124d90]
dec qword [0x1401288f8]
mov rcx, r13
movsxd rdx, eax
sub qword [0x1401288b0], rdx
call qword [0x140124d80]
mov rcx, qword [0x140128b48]
test rcx, rcx
je 0x1400aa651
call qword [0x140124de8]
jmp 0x1400aa651
mov rcx, r13
call qword [0x140124d80]
xor r13d, r13d
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0x88]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0x20]
mov qword [rcx], r13
jmp 0x1400aa67b
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