Function at 0x1400cafc0
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov edi, r8d
mov rsi, rdx
mov r13, rcx
mov rax, qword [0x1402b3040]
xor rax, rsp
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [0x14026f080]
movups xmmword [rsp + 0x69], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
call fcn.1401b34e0
cmp rax, 0x7a1200
ja 0x1400cb17e
mov r14, rax
mov rax, qword [fcn.140136be0]
lea rcx, [r14*2 + 2]
call qword [0x1402a3e88]
mov qword [rsi + 0x50], rax
test rax, rax
je 0x1400cb170
mov r15, rax
mov dword [rsp + 0x2c], edi
mov rdi, rax
mov byte [r15 + r14 + 1], 0
mov al, byte [r13]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1400cb05d
cmp byte [r13 + 1], 0x3a
je 0x1400cb0c2
xor ebx, ebx
lea r12, str.______________
movabs rbp, 0x680000000000
jmp 0x1400cb0ab
mov ecx, 0x3a
cmp byte [r13 + rbx + 1], 0x2f
je 0x1400cb57c
mov edx, ecx
test byte [rdx + r12], 7
jne 0x1400cb099
cmp eax, 0x2e
ja 0x1400cb0c2
mov eax, eax
bt rbp, rax
jae 0x1400cb0c2
call fcn.14018fae8
mov byte [rsp + rbx + 0x50], al
inc rbx
cmp rbx, 0x29
je 0x1400cb0c2
movzx eax, byte [r13 + rbx]
cmp eax, 0x3a
je 0x1400cb072
test eax, eax
je 0x1400cb0c2
mov ecx, eax
test al, al
jns 0x1400cb083
jmp 0x1400cb08c
mov byte [rdi], 0
mov ebx, dword [rsp + 0x2c]
test ebx, 0x204
je 0x1400cb17e
xor ebp, ebp
test bl, 4
lea rax, str.https
cmovne rbp, rax
add r14, r15
inc r14
xor r15d, r15d
movabs rax, 0x8000800800000001
jmp 0x1400cb0fd
inc r15
movzx ecx, byte [r13 + r15]
cmp rcx, 0x3f
ja 0x1400cb0fa
bt rax, rcx
jae 0x1400cb0fa
test r15, r15
je 0x1400cb178
mov rcx, r14
mov rdx, r13
mov r8, r15
call fcn.1401cd6f0
mov byte [r14 + r15], 0
add r13, r15
mov rcx, r13
call fcn.1401b34e0
mov r15, rax
mov rcx, rdi
mov rdx, r13
mov r8, rax
call fcn.1401cd6f0
mov byte [rdi + r15], 0
test rbp, rbp
je 0x1400cb29b
mov rax, qword [fcn.1401aa580]
mov rcx, rbp
call qword [0x1402a3e88]
mov qword [rsi], rax
mov bpl, 1
test rax, rax
jne 0x1400cb29d
mov r12d, 7
jmp 0x1400cb184
bt ebx, 0xa
jb 0x1400cb127
mov r12d, 3
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 8]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x10]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x18]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x20]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x28]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x30]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x38]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x40]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x48]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x50]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x58]
call qword [0x1402a3e88]
xorps xmm0, xmm0
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x60], 0
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140191d80
mov eax, r12d
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r14d, r14d
xor ebp, ebp
test rdi, rdi
je 0x1400cb2c5
mov rcx, rdi
call fcn.1401b34e0
mov r15, rax
lea rdx, [0x140294480]
mov rcx, rdi
call fcn.1401b2ec0
cmp rax, r15
jne 0x1400cb17e
test bl, bl
jns 0x1400cb31f
cmp byte [rdi], 0
je 0x1400cb31f
mov r15, qword [fcn.140136be0]
mov rcx, rdi
call fcn.1401b34e0
lea rcx, [rax + rax*2]
mov rax, r15
call qword [0x1402a3e88]
test rax, rax
je 0x1400cb170
mov r15, rax
mov al, byte [rdi]
mov r12, r15
test al, al
je 0x1400cb30d
mov r13b, 1
mov r12, r15
mov rbx, rdi
jmp 0x1400cb527
mov byte [r12], 0
mov qword [rsi + 0x58], r15
mov r12b, 1
mov ebx, dword [rsp + 0x2c]
jmp 0x1400cb325
xor r12d, r12d
mov r15, rdi
mov rcx, r15
mov edx, 0x23
call fcn.14019054c
test rax, rax
je 0x1400cb363
mov byte [rax], 0
cmp byte [rax + 1], 0
je 0x1400cb363
inc rax
mov rdx, qword [fcn.1401aa580]
mov rcx, rax
mov rax, rdx
call qword [0x1402a3e88]
mov qword [rsi + 0x48], rax
test rax, rax
je 0x1400cb170
mov rcx, r15
mov edx, 0x3f
call fcn.14019054c
test rax, rax
je 0x1400cb398
mov rcx, rax
inc rcx
mov byte [rax], 0
mov rax, qword [fcn.1401aa580]
call qword [0x1402a3e88]
mov qword [rsi + 0x40], rax
test rax, rax
je 0x1400cb170
cmp byte [r15], 0
je 0x1400cb459
test bl, 0x10
jne 0x1400cb42c
mov rcx, r15
call fcn.1400f5350
test rax, rax
je 0x1400cb170
mov rbx, rax
mov rcx, rax
mov rdx, r15
call fcn.1401b2e50
test eax, eax
je 0x1400cb41c
test r12b, r12b
je 0x1400cb3e4
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x58]
call qword [0x1402a3e88]
mov qword [rsi + 0x38], rbx
jmp 0x1400cb451
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x50]
call qword [0x1402a3e88]
xor r12d, r12d
mov qword [rsi + 0x50], r12
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsi + 0x58]
call qword [0x1402a3e88]
mov qword [rsi + 0x58], r12
jmp 0x1400cb271
mov rax, qword [fcn.14018db50]
mov rcx, rbx
call qword [0x1402a3e88]
test r12b, r12b
jne 0x1400cb444
mov rax, qword [fcn.1401aa580]
mov rcx, r15
call qword [0x1402a3e88]
mov r15, rax
mov qword [rsi + 0x38], r15
test r15, r15
je 0x1400cb170
mov qword [rsi + 0x58], 0
test r14, r14
je 0x1400cb3ea
mov rcx, r14
call fcn.1401b34e0
mov rbx, rax
lea rdx, [0x140294480]
mov rcx, r14
call fcn.1401b2ec0
mov r12d, 3
cmp rax, rbx
jne 0x1400cb184
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x30], r13
mov rcx, r14
mov edx, 0x40
call fcn.14019054c
mov r15, rax
test rax, rax
je 0x1400cb4de
lea rbx, [r15 + 1]
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400cb7c9
call fcn.1400aa970
test rax, rax
je 0x1400cb7c9
test byte [rax + 0x81], 4
jne 0x1400cb7c2
jmp 0x1400cb7c9
xor r12d, r12d
jmp 0x1400cb7ff
mov byte [r12], Ordinal_46
inc r12
xor r13d, r13d
jmp 0x1400cb519
test r13b, 1
je 0x1400cb4e6
mov word [r12], 0x3225
mov byte [r12 + 2], 0x30
add r12, 3
mov r13b, 1
jmp 0x1400cb519
xor r13d, r13d
mov byte [r12], al
inc r12
mov al, byte [rbx + 1]
inc rbx
test al, al
je 0x1400cb30d
cmp rbx, rdi
jb 0x1400cb512
cmp al, 0x20
je 0x1400cb4f3
movzx r9d, al
cmp r9d, 0x3f
je 0x1400cb50f
test al, al
js 0x1400cb562
lea rcx, [r9 - 0x20]
cmp rcx, 0x5e
ja 0x1400cb512
lea rcx, str.______________
mov cl, byte [r9 + rcx]
and cl, 8
shr cl, 3
cmp al, 0x21
setae dl
or dl, cl
jne 0x1400cb512
mov edx, 4
mov rcx, r12
lea r8, str.___02x
call fcn.1400bc160
add r12, 3
jmp 0x1400cb519
mov byte [rsp + rbx + 0x50], 0
lea rbp, [rsp + 0x50]
mov rcx, rbp
call fcn.1401b34e0
mov r12, rax
lea rdx, str.file
mov rcx, rbp
call fcn.1400a9740
test eax, eax
je 0x1400cb65d
add r13, 5
mov rcx, rdi
mov rdx, r13
call fcn.1401b2d80
mov rax, qword [fcn.1401aa580]
lea rcx, str.file
call qword [0x1402a3e88]
mov qword [rsi], rax
test rax, rax
je 0x1400cb170
cmp byte [rdi], 0x2f
je 0x1400cb5ea
xor r14d, r14d
xor ebp, ebp
mov ebx, dword [rsp + 0x2c]
jmp 0x1400cb29d
cmp byte [rdi + 1], 0x2f
mov ebx, dword [rsp + 0x2c]
jne 0x1400cb606
lea r12, [r15 + 2]
mov al, byte [rdi + 2]
cmp al, 0x2f
jne 0x1400cb6fe
mov rdi, r12
mov al, byte [rdi + 1]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1400cb298
movzx eax, byte [rdi + 2]
cmp eax, 0x7c
je 0x1400cb627
cmp eax, 0x3a
jne 0x1400cb298
movzx eax, byte [rdi + 3]
test eax, eax
je 0x1400cb63d
cmp eax, 0x5c
je 0x1400cb63d
cmp eax, 0x2f
jne 0x1400cb298
lea r14, [rdi + 1]
mov rcx, r14
call fcn.1401b34e0
lea r8, [rax + 1]
mov rcx, rdi
mov rdx, r14
call fcn.1401cd6f0
jmp 0x1400cb298
mov byte [rdi], 0
lea rax, [r12 + r13]
inc rax
je 0x1400cb17e
not r12d
sub r12d, r13d
xor r13d, r13d
xor ecx, ecx
mov ebx, dword [rsp + 0x2c]
cmp byte [rax + rcx], 0x2f
jne 0x1400cb694
cmp ecx, 3
ja 0x1400cb694
inc rcx
mov rdx, rax
add rdx, rcx
jne 0x1400cb67c
jmp 0x1400cb69d
add rax, rcx
mov r12d, ecx
mov r13, rax
add r12d, 0xfffffffc
cmp r12d, 0xfffffffd
jb 0x1400cb17e
lea rbp, [rsp + 0x50]
mov rcx, rbp
call fcn.1400aa970
test rax, rax
sete al
test bl, 8
sete cl
mov r12d, 5
test cl, al
jne 0x1400cb184
mov rcx, rbp
call fcn.1401b34e0
mov r12, rax
lea rdx, [0x140294480]
mov rcx, rbp
call fcn.1401b2ec0
cmp rax, r12
mov ebx, dword [rsp + 0x2c]
jne 0x1400cb17e
jmp 0x1400cb0e5
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1400cb736
movzx eax, byte [rdi + 3]
cmp eax, 0x7c
je 0x1400cb714
cmp eax, 0x3a
jne 0x1400cb736
movzx eax, byte [rdi + 4]
xor r14d, r14d
mov ebp, 0
test eax, eax
je 0x1400cb72e
cmp eax, 0x2f
je 0x1400cb72e
cmp eax, 0x5c
jne 0x1400cb736
mov rdi, r12
jmp 0x1400cb29d
lea rcx, str.localhost_
mov r8d, 0xa
mov rdx, r12
call fcn.1400a9870
test eax, eax
je 0x1400cb76c
add r15, 0xb
cmp byte [rdi + 0xb], 0x2f
jne 0x1400cb761
mov rdi, r15
jmp 0x1400cb606
xor r14d, r14d
mov rdi, r15
jmp 0x1400cb29b
lea rcx, str.127.0.0.1_
mov r8d, 0xa
mov rdx, r12
call fcn.1400a9870
test eax, eax
jne 0x1400cb74f
jmp 0x1400cb17e
test r13, r13
je 0x1400cb7a0
mov r12d, 8
test byte [rsp + 0x2c], 0x20
jne 0x1400cb7fc
mov qword [rsi + 8], r13
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x1400cb7ae
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x1400cb83f
mov qword [rsi + 0x18], rax
jmp 0x1400cb83f
lea rax, [rsp + 0x30]
jmp 0x1400cb7cb
xor eax, eax
mov rdx, r14
not rdx
add rdx, rbx
mov qword [rsp + 0x20], rax
lea r13, [rsp + 0x38]
lea r9, [rsp + 0x48]
mov rcx, r14
mov r8, r13
call fcn.1400aabe0
mov r12d, 3
mov r13, qword [r13]
test eax, eax
je 0x1400cb78a
mov r14, rbx
mov rax, qword [fcn.14018db50]
mov rcx, r13
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsp + 0x48]
call qword [0x1402a3e88]
mov rax, qword [fcn.14018db50]
mov rcx, qword [rsp + 0x30]
call qword [0x1402a3e88]
mov rbx, r14
test r15, r15
jne 0x1400cb184
lea r8, [rsp + 0x47]
mov byte [r8], 0xaa
lea r9, [rsp + 0x30]
mov dword [r9], 0xaaaaaaaa
lea rdx, str.__45_0123456789abcdefABCDEF:.__c_n
mov rcx, rbx
call fcn.140031720
cmp eax, 1
jne 0x1400cb8de
movzx eax, byte [rsp + 0x47]
mov r12d, 3
cmp eax, 0x25
je 0x1400cb8a7
cmp eax, 0x5d
jne 0x1400cb184
mov edi, dword [rsp + 0x30]
movsxd r14, edi
add r14, rbx
je 0x1400cb98b
movzx eax, byte [r14]
test eax, eax
je 0x1400cb98b
cmp eax, 0x3a
je 0x1400cb8f7
jmp 0x1400cb184
lea r9, [rsp + 0x30]
movsxd rdi, dword [r9]
lea rcx, [rbx + rdi]
lea rdx, str._____c_n
lea r8, [rsp + 0x47]
call fcn.140031720
cmp eax, 1
jne 0x1400cb184
cmp byte [rsp + 0x47], 0x5d
jne 0x1400cb184
add edi, dword [rsp + 0x30]
jmp 0x1400cb885
mov rcx, rbx
mov edx, 0x3a
call fcn.14019054c
mov r14, rax
test rax, rax
je 0x1400cb98b
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x38], rax
mov eax, 0xaaaaaaaa
mov dword [rsp + 0x4b], eax
mov dword [rsp + 0x48], eax
movzx eax, byte [r14 + 1]
test rax, rax
je 0x1400cb987
test al, al
sets cl
add rax, 0xffffffffffffffc6
cmp rax, 0xfffffffffffffff6
setb al
or al, cl
jne 0x1400cb964
lea rcx, [r14 + 1]
lea rdx, [rsp + 0x38]
mov r8d, 0xa
call fcn.1401ab5a0
mov r15d, eax
lea eax, [r15 - 0x10000]
cmp eax, 0xffff0001
jb 0x1400cb964
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
je 0x1400cba4f
mov r12d, 4
jmp 0x1400cb184
mov rcx, rsi
mov rdx, rbx
call fcn.1400cbb10
mov r12d, eax
test eax, eax
jne 0x1400cb184
jmp 0x1400cb998
mov byte [r14], 0
bt dword [rsp + 0x2c], 0xa
jae 0x1400cb96f
cmp byte [rbx], 0
jne 0x1400cb96f
mov rax, qword [fcn.1401aa580]
mov rcx, rbx
call qword [0x1402a3e88]
mov qword [rsi + 0x20], rax
test rax, rax
je 0x1400cb170
bt dword [rsp + 0x2c], 9
setae al
or al, bpl
jne 0x1400cb3ea
lea rcx, str.ftp.
mov r8d, 4
mov rdx, rbx
call fcn.1400a9870
test eax, eax
je 0x1400cba0b
lea rcx, [0x140294441]
mov rax, qword [fcn.1401aa580]
call qword [0x1402a3e88]
mov qword [rsi], rax
mov r12d, 7
test rax, rax
jne 0x1400cb3ea
jmp 0x1400cb184
lea rcx, str.dict.
mov r8d, 5
mov rdx, rbx
call fcn.1400a9870
test eax, eax
je 0x1400cba2d
lea rcx, str.dict
jmp 0x1400cb9e7
lea rcx, str.ldap.
mov r8d, 5
mov rdx, rbx
call fcn.1400a9870
test eax, eax
je 0x1400cba98
lea rcx, str.ldap
jmp 0x1400cb9e7
xor ecx, ecx
mov byte [r14], cl
mov byte [rax], cl
lea r8, [0x14029069b]
lea r14, [rsp + 0x48]
mov edx, 7
mov rcx, r14
mov r9d, r15d
call fcn.1400bc160
mov dword [rsi + 0x60], r15d
mov rax, qword [fcn.1401aa580]
mov rcx, r14
call qword [0x1402a3e88]
mov qword [rsi + 0x30], rax
test rax, rax
jne 0x1400cb98b
jmp 0x1400cb170
lea rcx, str.imap.
mov r8d, 5
mov rdx, rbx
call fcn.1400a9870
test eax, eax
je 0x1400cbabd
lea rcx, str.imap
jmp 0x1400cb9e7
lea rcx, str.smtp.
mov r8d, 5
mov rdx, rbx
call fcn.1400a9870
test eax, eax
je 0x1400cbae2
lea rcx, str.smtp
jmp 0x1400cb9e7
lea rcx, str.pop3.
mov r8d, 5
mov rdx, rbx
call fcn.1400a9870
test eax, eax
lea rax, str.http
lea rcx, str.pop3
cmove rcx, rax
jmp 0x1400cb9e7