Function at 0x140222140
Capabilities:
Parse credit card information

Disassembly:
pand mm5, mm4
pcmpgtd xmm14, xmm6
pxor xmm6, xmm13
movdqu xmm12, xmmword [r12 + 0x50]
cmp r14, 0x60
je 0x1400100c0
pxor xmm3, xmm11
movdqu xmm13, xmmword [r12 + 0x60]
pxor xmm4, xmm12
movdqa xmmword [rsp + 0x70], xmm6
lea r12, [r12 + 0x70]
pxor xmm5, xmm13
lea rax, [rsp + 0x80]
mov r10d, edx
call fcn.14000df00
pxor xmm15, xmmword [rsp]
pxor xmm0, xmmword [rsp + 0x10]
movdqu xmmword [r13], xmm15
pxor xmm5, xmmword [rsp + 0x20]
movdqu xmmword [r13 + 0x10], xmm0
pxor xmm3, xmmword [rsp + 0x30]
movdqu xmmword [r13 + 0x20], xmm5
pxor xmm1, xmmword [rsp + 0x40]
movdqu xmmword [r13 + 0x30], xmm3
pxor xmm6, xmmword [rsp + 0x50]
movdqu xmmword [r13 + 0x40], xmm1
pxor xmm2, xmmword [rsp + 0x60]
movdqu xmmword [r13 + 0x50], xmm6
movdqu xmmword [r13 + 0x60], xmm2
lea r13, [r13 + 0x70]
movdqa xmm6, xmmword [rsp + 0x70]
jmp 0x1400102f5
pxor xmm3, xmm11
lea r12, [r12 + 0x60]
pxor xmm4, xmm12
lea rax, [rsp + 0x80]
mov r10d, edx
call fcn.14000df00
pxor xmm15, xmmword [rsp]
pxor xmm0, xmmword [rsp + 0x10]
movdqu xmmword [r13], xmm15
pxor xmm5, xmmword [rsp + 0x20]
movdqu xmmword [r13 + 0x10], xmm0
pxor xmm3, xmmword [rsp + 0x30]
pop rsp
and al, 0x30
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x40
mov r9, qword [rcx]
mov rdi, rcx
mov rsi, rdx
movzx ecx, byte [r9]
lea eax, [rcx - 0x22]
cmp eax, 0x58
ja case.0x14022218b.35
lea r14, [0x140000000]
cdqe
movzx eax, byte [r14 + rax + 0x222518]
mov r8d, dword [r14 + rax*4 + 0x2224fc]
add r8, r14
jmp r8
xor ebx, ebx
mov qword [rsp + 0x50], rbp
mov ebp, ebx
cmp cl, 0x22
je 0x1402221b5
mov r8d, 0x17c
lea rdx, str.C:dev_vcpkg_buildtrees_nghttp2_src_v1.58.0_703032154d.cleanlib_sfparse.c
lea rcx, [0x1403ea0d8]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov r10, qword [rdi]
mov r9, qword [rdi + 8]
inc r10
mov qword [rdi], r10
cmp r10, r9
je case.default.0x1402221f1
mov rdx, r10
mov r8d, 1
movzx eax, byte [rdx]
add eax, 0xffffffe0
cmp eax, 0x5e
ja case.default.0x1402221f1
cdqe
movzx eax, byte [r14 + rax + 0x222580]
mov ecx, dword [r14 + rax*4 + 0x222574]
add rcx, r14
jmp rcx
lea rax, [rdx + 1]
mov qword [rdi], rax
cmp rax, r9
je case.default.0x1402221f1
movzx ecx, byte [rax]
cmp cl, 0x22
je 0x14022220c
cmp cl, 0x5c
jne case.default.0x1402221f1
mov ebp, r8d
mov rdx, qword [rdi]
inc rdx
mov qword [rdi], rdx
cmp rdx, r9
jne 0x1402221d0
mov rbp, qword [rsp + 0x50]
mov ebx, 0xffffffff
mov eax, ebx
jmp 0x1402224e6
test rsi, rsi
je 0x14022224e
mov dword [rsi], 3
mov dword [rsi + 4], ebp
mov rax, qword [rdi]
sub rax, r10
mov qword [rsi + 0x10], rax
cmove r10, rbx
mov qword [rsi + 8], r10
inc qword [rdi]
mov eax, ebx
mov rbp, qword [rsp + 0x50]
jmp 0x1402224e6
mov rcx, rdi
call fcn.1402228e0
jmp 0x1402224e6
cmp cl, 0x40
je 0x140222288
mov r8d, 0x15e
lea rdx, str.C:dev_vcpkg_buildtrees_nghttp2_src_v1.58.0_703032154d.cleanlib_sfparse.c
lea rcx, [0x1403ea0b0]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov rax, qword [rdi]
inc rax
mov qword [rdi], rax
cmp rax, qword [rdi + 8]
jne 0x1402222a3
mov ebx, 0xffffffff
mov eax, ebx
jmp 0x1402224e6
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1402228e0
test eax, eax
je 0x1402222bb
mov ebx, eax
jmp 0x1402224e6
cmp dword [rsp + 0x20], 1
jne 0x140222297
test rsi, rsi
je 0x1402222e0
movups xmm0, xmmword [rsp + 0x20]
movsd xmm1, qword [rsp + 0x30]
movups xmmword [rsi], xmm0
movsd qword [rsi + 0x10], xmm1
mov dword [rsi], 7
xor ebx, ebx
mov eax, ebx
jmp 0x1402224e6
cmp cl, 0x3a
je 0x140222307
mov r8d, 0x1d9
lea rdx, str.C:dev_vcpkg_buildtrees_nghttp2_src_v1.58.0_703032154d.cleanlib_sfparse.c
lea rcx, str.:__sfp__pos
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
inc r8
mov qword [rdi], r8
cmp r8, r9
je case.0x140222399.49
mov rdx, r8
nop dword [rax]
movzx eax, byte [rdx]
add eax, 0xffffffd5
cmp eax, 0x4f
ja case.0x140222399.49
cdqe
movzx eax, byte [r14 + rax + 0x2225f0]
mov ecx, dword [r14 + rax*4 + 0x2225e0]
add rcx, r14
jmp rcx
inc rdx
mov qword [rdi], rdx
cmp rdx, r9
jne 0x140222320
mov ebx, 0xffffffff
mov eax, ebx
jmp 0x1402224e6
mov rax, rdx
sub rax, r8
and eax, 3
je case.0x140222399.49
sub rax, 1
je case.0x140222399.49
sub rax, 1
je 0x14022239b
cmp rax, 1
jne case.0x140222399.48
movzx eax, byte [rdx - 1]
add eax, 0xffffffd0
cmp eax, 0x47
ja case.0x140222399.49
cdqe
movzx eax, byte [r14 + rax + 0x222648]
mov ecx, dword [r14 + rax*4 + 0x222640]
add rcx, r14
jmp rcx
movzx eax, byte [rdx - 1]
sub al, 0x41
cmp al, 0x36
ja case.0x140222399.49
movabs rcx, 0x40004000010001
bt rcx, rax
jae case.0x140222399.49
inc rdx
mov qword [rdi], rdx
cmp rdx, r9
je case.0x140222399.49
cmp byte [rdx], 0x3d
jne case.0x140222399.49
mov rax, qword [rdi]
inc rax
mov qword [rdi], rax
cmp rax, r9
je case.0x140222399.49
cmp byte [rax], 0x3a
je 0x1402223f4
mov ebx, 0xffffffff
mov eax, ebx
jmp 0x1402224e6
sub dl, r8b
test dl, 3
jne case.0x140222399.49
xor ebx, ebx
test rsi, rsi
je 0x140222414
mov qword [rsi], 5
mov rax, qword [rdi]
sub rax, r8
mov qword [rsi + 0x10], rax
cmove r8, rbx
mov qword [rsi + 8], r8
inc qword [rdi]
mov eax, ebx
jmp 0x1402224e6
cmp cl, 0x3f
je 0x14022243c
mov r8d, 0x23a
lea rdx, str.C:dev_vcpkg_buildtrees_nghttp2_src_v1.58.0_703032154d.cleanlib_sfparse.c
lea rcx, str.___sfp__pos
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
mov rcx, qword [rdi]
inc rcx
mov qword [rdi], rcx
cmp rcx, qword [rdi + 8]
jne 0x140222457
mov ebx, 0xffffffff
mov eax, ebx
jmp 0x1402224e6
movzx edx, byte [rcx]
xor ebx, ebx
sub edx, 0x30
je 0x14022246b
cmp edx, 1
jne 0x14022244b
mov r8d, edx
jmp 0x14022246e
mov r8d, ebx
lea rax, [rcx + 1]
mov qword [rdi], rax
test rsi, rsi
je 0x140222481
mov qword [rsi], rbx
mov dword [rsi + 8], r8d
mov eax, ebx
jmp 0x1402224e6
mov r8, qword [rdi + 8]
lea rdx, [r9 + 1]
mov qword [rdi], rdx
cmp rdx, r8
je case.0x1402224b6.34
movzx eax, byte [rdx]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x1402224b6.34
cdqe
movzx eax, byte [r14 + rax + 0x222698]
mov ecx, dword [r14 + rax*4 + 0x222690]
add rcx, r14
jmp rcx
inc rdx
mov qword [rdi], rdx
cmp rdx, r8
jne 0x140222495
test rsi, rsi
je 0x1402224dd
mov qword [rsi], 4
mov qword [rsi + 8], r9
mov rax, qword [rdi]
sub rax, r9
mov qword [rsi + 0x10], rax
xor eax, eax
jmp 0x1402224e6
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret