Function at 0x14008bab0
Capabilities:
Parse credit card information

Disassembly:
push rbx
push rbp
push rdi
mov eax, reloc.WS2_32.dll_WSASetLastError
call fcn.1401ef830
sub rsp, rax
mov rax, qword [rcx]
mov r10, qword [rax + 0x8af8]
mov rbx, qword [rax + 0x1f8]
mov rbp, r10
mov qword [rsp + 0xa0], rbx
movzx ecx, byte [r10]
call fcn.14008b8b0
test al, al
je 0x14008bb3f
nop word [rax + rax]
movzx ecx, byte [rbp + 1]
inc rbp
call fcn.14008b8b0
test al, al
jne 0x14008baf0
cmp rbp, r10
je 0x14008bb3f
mov r8, rbp
jbe 0x14008bb16
cmp byte [rbp - 1], 0x2f
lea rax, [rbp - 1]
cmove r8, rax
lea r9, [rbx + 8]
mov byte [rsp + 0x28], 1
sub r8, r10
mov qword [rsp + 0x20], 0
mov rdx, r10
call fcn.140076010
test eax, eax
je 0x14008bb47
add rsp, 0x70
pop rdi
pop rbp
pop rbx
ret
mov qword [rbx + 8], 0
cmp byte [rbp], 0x3b
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r15
jne 0x14008bf95
nop word [rax + rax]
movzx eax, byte [rbp + 1]
inc rbp
mov rbx, rbp
test al, al
je 0x14008c05f
cmp al, 0x3d
je 0x14008bb9b
movzx eax, byte [rbp + 1]
inc rbp
test al, al
jne 0x14008bb82
mov eax, 3
jmp 0x14008bfff
cmp byte [rbp], 0
je 0x14008c05f
mov rax, rbp
sub rax, rbx
jne 0x14008bbba
or rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x14008bbb1
lea rdi, [rax + 1]
mov rcx, rdi
call qword [fcn.14021a348]
xor r14d, r14d
mov r13, rax
test rax, rax
je 0x14008c078
sub rdi, 1
je 0x14008bc6a
movzx esi, byte [rbx]
cmp sil, 0x25
jne 0x14008bc4c
cmp rdi, 2
jbe 0x14008bc56
movzx ecx, byte [rbx + 1]
call fcn.14021b410
test eax, eax
je 0x14008bc56
movzx ecx, byte [rbx + 2]
call fcn.14021b410
test eax, eax
je 0x14008bc56
movzx eax, byte [rbx + 1]
lea rdx, [rsp + 0xa8]
mov byte [rsp + 0x90], al
lea rcx, [rsp + 0x90]
movzx eax, byte [rbx + 2]
mov r8d, reloc.WS2_32.dll_recv
mov byte [rsp + 0x91], al
mov byte [rsp + 0x92], 0
call fcn.1402194ac
add rbx, 2
mov esi, eax
sub rdi, 2
cmp sil, 0x20
jb 0x14008c020
mov byte [r14 + r13], sil
inc rbx
inc r14
sub rdi, 1
jne 0x14008bbe0
inc rbp
mov byte [r14 + r13], 0
mov rbx, rbp
movzx ecx, byte [rbp]
call fcn.14008b8b0
test al, al
je 0x14008bc92
movzx ecx, byte [rbp + 1]
inc rbp
call fcn.14008b8b0
test al, al
jne 0x14008bc82
mov rax, rbp
sub rax, rbx
jne 0x14008bca9
or rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rbx + rax], 0
jne 0x14008bca0
lea rdi, [rax + 1]
mov rcx, rdi
call qword [fcn.14021a348]
xor r15d, r15d
mov r12, rax
test rax, rax
je 0x14008c066
sub rdi, 1
je 0x14008bd57
nop
movzx esi, byte [rbx]
cmp sil, 0x25
jne 0x14008bd39
cmp rdi, 2
jbe 0x14008bd43
movzx ecx, byte [rbx + 1]
call fcn.14021b410
test eax, eax
je 0x14008bd43
movzx ecx, byte [rbx + 2]
call fcn.14021b410
test eax, eax
je 0x14008bd43
movzx eax, byte [rbx + 1]
lea rdx, [rsp + 0x30]
mov byte [rsp + 0x98], al
lea rcx, [rsp + 0x98]
movzx eax, byte [rbx + 2]
mov r8d, reloc.WS2_32.dll_recv
mov byte [rsp + 0x99], al
mov byte [rsp + 0x9a], 0
call fcn.1402194ac
add rbx, 2
mov esi, eax
sub rdi, 2
cmp sil, 0x20
jb 0x14008c032
mov byte [r15 + r12], sil
inc rbx
inc r15
sub rdi, 1
jne 0x14008bcd0
mov byte [r15 + r12], 0
lea r9, str.UIDVALIDITY
movzx r10d, byte [r13]
mov r8, r13
test r10b, r10b
je 0x14008bda0
movzx ecx, byte [r9]
test cl, cl
je 0x14008bda0
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008bd86
sub dl, 0x20
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bd90
sub cl, 0x20
cmp dl, cl
jne 0x14008bda0
inc r8
inc r9
cmp byte [r8], 0
jne 0x14008bd70
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008bdae
sub dl, 0x20
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bdbc
sub cl, 0x20
mov rbx, qword [rsp + 0xa0]
cmp dl, cl
jne 0x14008bdeb
cmp qword [rbx + 0x10], 0
jne 0x14008bdeb
test r15, r15
je 0x14008bde2
cmp byte [r15 + r12 - 1], 0x2f
jne 0x14008bde2
mov byte [r15 + r12 - 1], 0
mov qword [rbx + 0x10], r12
jmp 0x14008bf7a
lea r9, [0x1402d5db0]
mov r8, r13
test r10b, r10b
je 0x14008be30
nop word [rax + rax]
movzx ecx, byte [r9]
test cl, cl
je 0x14008be30
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008be16
sub dl, 0x20
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008be20
sub cl, 0x20
cmp dl, cl
jne 0x14008be30
inc r8
inc r9
cmp byte [r8], 0
jne 0x14008be00
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008be3e
sub dl, 0x20
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008be4c
sub cl, 0x20
cmp dl, cl
jne 0x14008be73
cmp qword [rbx + 0x18], 0
jne 0x14008be73
test r15, r15
je 0x14008be6a
cmp byte [r15 + r12 - 1], 0x2f
jne 0x14008be6a
mov byte [r15 + r12 - 1], 0
mov qword [rbx + 0x18], r12
jmp 0x14008bf7a
lea r9, str.SECTION
mov r8, r13
test r10b, r10b
je 0x14008beb2
movzx ecx, byte [r9]
test cl, cl
je 0x14008beb2
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008be98
sub dl, 0x20
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bea2
sub cl, 0x20
cmp dl, cl
jne 0x14008beb2
inc r8
inc r9
cmp byte [r8], 0
jne 0x14008be82
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008bec0
sub dl, 0x20
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bece
sub cl, 0x20
cmp dl, cl
jne 0x14008bef5
cmp qword [rbx + 0x20], 0
jne 0x14008bef5
test r15, r15
je 0x14008beec
cmp byte [r15 + r12 - 1], 0x2f
jne 0x14008beec
mov byte [r15 + r12 - 1], 0
mov qword [rbx + 0x20], r12
jmp 0x14008bf7a
lea r9, str.PARTIAL
mov r8, r13
test r10b, r10b
je 0x14008bf34
movzx ecx, byte [r9]
test cl, cl
je 0x14008bf34
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008bf1a
sub dl, 0x20
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bf24
sub cl, 0x20
cmp dl, cl
jne 0x14008bf34
inc r8
inc r9
cmp byte [r8], 0
jne 0x14008bf04
movzx edx, byte [r8]
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x14008bf42
sub dl, 0x20
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x14008bf50
sub cl, 0x20
cmp dl, cl
jne 0x14008c04d
cmp qword [rbx + 0x28], 0
jne 0x14008c04d
test r15, r15
je 0x14008bf76
cmp byte [r15 + r12 - 1], 0x2f
jne 0x14008bf76
mov byte [r15 + r12 - 1], 0
mov qword [rbx + 0x28], r12
mov rcx, r13
call qword [fcn.1402196e8]
xor ecx, ecx
call qword [fcn.1402196e8]
cmp byte [rbp], 0x3b
je 0x14008bb70
cmp qword [rbx + 8], 0
je 0x14008bff4
cmp qword [rbx + 0x18], 0
jne 0x14008bff4
cmp byte [rbp], 0x3f
jne 0x14008bff4
movzx ecx, byte [rbp + 1]
inc rbp
mov r10, rbp
call fcn.14008b8b0
test al, al
je 0x14008bfd0
nop dword [rax]
movzx ecx, byte [rbp + 1]
inc rbp
call fcn.14008b8b0
test al, al
jne 0x14008bfc0
mov r8, rbp
mov byte [rsp + 0x28], 1
sub r8, r10
mov qword [rsp + 0x20], 0
lea r9, [rbx + 0x30]
mov rdx, r10
call fcn.140076010
test eax, eax
jne 0x14008bfff
movzx eax, byte [rbp]
neg al
sbb eax, eax
and eax, 3
mov r14, qword [rsp + 0x50]
mov r13, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
add rsp, 0x70
pop rdi
pop rbp
pop rbx
ret
mov rcx, r13
call qword [fcn.1402196e8]
mov ebx, 3
mov eax, ebx
jmp 0x14008bfff
mov rcx, r12
call qword [fcn.1402196e8]
mov rcx, r13
mov ebx, 3
call qword [fcn.1402196e8]
mov eax, ebx
jmp 0x14008bfff
mov rcx, r13
call qword [fcn.1402196e8]
mov rcx, r12
call qword [fcn.1402196e8]
mov eax, 3
jmp 0x14008bfff
mov rcx, r13
mov ebx, reloc.WLDAP32.dll_Ordinal_27
call qword [fcn.1402196e8]
mov eax, ebx
jmp 0x14008bfff
mov ebx, reloc.WLDAP32.dll_Ordinal_27
mov eax, ebx
jmp 0x14008bfff