Function at 0x14014ee00
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x200]
sub rsp, 0x300
mov rax, qword [0x140651840]
xor rax, rsp
mov qword [rbp + 0x1f8], rax
mov rsi, rcx
xor r13d, r13d
mov dword [rsp + 0x48], r13d
mov eax, dword [rcx + 0x10]
mov dword [rbp + 0x180], eax
mov eax, dword [rcx + 0x14]
mov dword [rbp + 0x184], eax
lea rdx, [rcx + 0x18]
lea rcx, [rbp + 0x188]
call fcn.14013af60
movups xmm0, xmmword [rsi + 0x38]
movups xmmword [rbp + 0x1a8], xmm0
mov rcx, rsi
call fcn.14018d250
cmp dword [rsi + 0x10], r13d
je 0x14014ee8f
lea r8, str.pragma_name_expected
xor edx, edx
mov rcx, rsi
call fcn.14018c7b0
lea rdi, [rsi + 0x18]
mov rdx, rdi
lea rcx, [rbp + 0x120]
call fcn.14013af60
nop
mov rcx, rsi
call fcn.14018d250
mov rbx, qword [rbp + 0x130]
lea rcx, [rbp + 0x120]
mov r14, qword [rbp + 0x120]
mov r15, qword [rbp + 0x138]
cmp r15, 0xf
cmova rcx, r14
mov r8, rbx
mov eax, 7
cmp rbx, rax
cmova r8, rax
lea rdx, str.version
call sub.VCRUNTIME140.dll_memcmp
mov r12d, reloc.WS2_32.dll_inet_addr
test eax, eax
jne 0x14014eefa
cmp rbx, 7
je 0x14014ef30
lea rcx, [rbp + 0x120]
cmp r15, 0xf
cmova rcx, r14
mov r8, rbx
cmp rbx, r12
cmova r8, r12
lea rdx, str.not_version
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14014fb0a
cmp rbx, r12
jne 0x14014fb0a
lea rcx, [rbp + 0x120]
cmp r15, 0xf
cmova rcx, r14
mov r8, rbx
cmp rbx, r12
cmova r8, r12
lea rdx, str.not_version
call sub.VCRUNTIME140.dll_memcmp
mov r12d, eax
mov dword [rsp + 0x4c], eax
mov r14, 0xffffffffffffffff
test eax, eax
jne 0x14014ef83
cmp rbx, 0xb
jae 0x14014ef77
mov r12d, r14d
mov dword [rsp + 0x4c], r14d
jmp 0x14014ef83
mov r12d, r13d
seta r12b
mov dword [rsp + 0x4c], r12d
mov r15b, 0x3d
mov byte [rsp + 0x32], r15b
mov byte [rsp + 0x30], 0
mov qword [rbp + 0x1dc], r13
mov byte [rsp + 0x31], 1
mov qword [rsp + 0x38], rsi
mov eax, dword [rsi + 0x10]
cmp eax, 1
jne 0x14014f014
mov rax, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x14014efb6
mov rax, qword [rdi]
mov qword [rbp + 0x140], rax
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x148], rax
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x100], xmm0
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0x140]
call fcn.140141de0
nop
cmp qword [rbp + 0x140], 0
jne 0x14014fe1e
mov eax, dword [0x14064db8c]
mov eax, dword [rbp + 0x148]
mov dword [rbp + 0x1d8], eax
mov ebx, dword [rsp + 0x48]
jmp 0x14014f236
test eax, eax
jne 0x14014ff56
mov rdx, rdi
lea rcx, [rbp + 0x160]
call fcn.14013af60
nop
lea rax, [rbp + 0x160]
mov r9, qword [rbp + 0x160]
mov r10, qword [rbp + 0x178]
cmp r10, 0xf
cmova rax, r9
movzx r15d, byte [rax]
mov byte [rsp + 0x32], r15b
lea eax, [r15 - 0x3c]
cmp al, 2
jbe 0x14014f064
cmp r15b, 0x5e
jne 0x14014fe48
mov rcx, qword [rbp + 0x170]
cmp rcx, 2
jb 0x14014fe72
lea rax, [rbp + 0x160]
cmp r10, 0xf
cmova rax, r9
cmp byte [rax + 1], 0x3d
jne 0x14014f146
mov byte [rsp + 0x30], 1
cmp rcx, 3
jb 0x14014fe9c
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
lea rax, [rcx - 2]
mov r8, r14
cmp rax, r14
cmovb r8, rax
lea rdx, [rbp + 0x160]
cmp r10, 0xf
cmova rdx, r9
add rdx, 2
lea rcx, [rbp + 0xa0]
call fcn.1401385e0
mov ebx, 0x100
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x38]
call fcn.140143d40
mov dword [rbp + 0x1d8], eax
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x14014f1f2
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014f1ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014f1ec
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
cmp rcx, 1
jb 0x14014fec6
lea rax, [rcx - 1]
mov r8, r14
cmp rax, r14
cmovb r8, rax
lea rdx, [rbp + 0x160]
cmp r10, 0xf
cmova rdx, r9
inc rdx
lea rcx, [rbp + 0xa0]
call fcn.1401385e0
mov ebx, 0x40
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x38]
call fcn.140143d40
mov dword [rbp + 0x1d8], eax
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x14014f1f2
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014f1ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014f1ec
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
nop
mov rdx, qword [rbp + 0x178]
cmp rdx, 0xf
jbe 0x14014f236
inc rdx
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014f231
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014f231
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
mov rcx, rsi
call fcn.14018d250
mov eax, dword [rsi + 0x10]
cmp eax, 0x3b
je 0x14014f31f
test eax, eax
jne 0x14014fed8
mov rcx, qword [rdi + 0x18]
cmp rcx, 0xf
jbe 0x14014f25f
mov rdi, qword [rdi]
cmp byte [rdi], 0x2e
jne 0x14014fed8
lea rdx, [rsi + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
mov rax, qword [rdx + 0x10]
cmp rax, 1
jb 0x14014fecc
dec rax
mov r8, r14
cmp rax, r14
cmovb r8, rax
cmp rcx, 0xf
jbe 0x14014f2a5
mov rdx, qword [rdx]
inc rdx
lea rcx, [rbp + 0xa0]
call fcn.1401385e0
or ebx, 0x20
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x38]
call fcn.140143d40
mov dword [rbp + 0x1dc], eax
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x14014f312
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014f30d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014f30d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
mov byte [rsp + 0x31], 2
mov rcx, rsi
call fcn.14018d250
mov eax, dword [rsi + 0x10]
cmp eax, 0x3b
je 0x14014f406
test eax, eax
jne 0x14014ff02
lea rax, [rsi + 0x18]
mov rcx, qword [rax + 0x18]
cmp rcx, 0xf
jbe 0x14014f344
mov rax, qword [rax]
cmp byte [rax], 0x2e
jne 0x14014ff02
lea rdx, [rsi + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
mov rax, qword [rdx + 0x10]
cmp rax, 1
jb 0x14014fed2
dec rax
cmp rax, 0xffffffffffffffff
cmovb r14, rax
cmp rcx, 0xf
jbe 0x14014f388
mov rdx, qword [rdx]
inc rdx
mov r8, r14
lea rcx, [rbp + 0xa0]
call fcn.1401385e0
bts ebx, 7
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x38]
call fcn.140143d40
mov dword [rbp + 0x1e0], eax
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x14014f3f9
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014f3f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014f3f4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
mov byte [rsp + 0x31], 3
mov rcx, rsi
call fcn.14018d250
mov qword [rbp + 0x1e8], r13
mov dword [rbp + 0x1f0], r13d
lea rax, [0x14036b630]
mov qword [rsp + 0x60], rax
lea rcx, [rbp - 0x10]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
or ebx, 0x10
mov dword [rsp + 0x48], ebx
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x60]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x60], rax
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rsp + rcx + 0x5c], edx
mov r8d, 1
lea rdx, [0x140659b98]
lea rcx, [rsp + 0x70]
call fcn.14013cd40
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], r13
mov qword [rbp + reloc.WS2_32.dll_ntohs8], 0xf
mov byte [rbp + 0xe0], 0
mov rbx, r13
nop
mov r8b, 0x2e
lea rdx, [rbp + 0xe0]
lea rcx, [rsp + 0x60]
call fcn.140141b10
lea rax, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x108], rax
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0xa0], xmm0
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0x140]
call fcn.140141de0
nop
cmp qword [rbp + 0x140], 0
jne 0x14014ff2c
mov eax, dword [0x14064db8c]
mov r13d, dword [rsp + 0x48]
test r13b, 4
je 0x14014f544
and r13d, 0xfffffffb
mov dword [rsp + 0x48], r13d
lea rcx, [rbp + 0x50]
call fcn.1401ea490
mov edi, dword [rbp + 0x148]
mov rcx, qword [rbp + 0x140]
test rcx, rcx
je 0x14014f56c
movsd xmm0, qword [rcx]
movsd qword [rsp + 0x38], xmm0
test byte [rsp + 0x38], 1
jne 0x14014f56c
call fcn.14034961c
mov dword [rbp + rbx*4 + 0x1e8], edi
inc rbx
cmp rbx, 3
jl 0x14014f4b0
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xor ecx, ecx
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xc0], cl
test r12d, r12d
jne 0x14014f5be
mov ecx, 1
mov qword [rbp + 0xd0], rcx
mov word [rbp + 0xc0], 0x21
cmp rcx, 0xf
jae 0x14014f5e1
lea rax, [rcx + 1]
mov qword [rbp + 0xd0], rax
mov byte [rbp + rcx + 0xc0], r15b
mov byte [rbp + rcx + 0xc1], 0
jmp 0x14014f5f8
movzx r9d, r15b
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0xc0]
call fcn.140138bd0
cmp byte [rsp + 0x30], 0
je 0x14014f64e
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
cmp rcx, rdx
jae 0x14014f638
lea rax, [rcx + 1]
mov qword [rbp + 0xd0], rax
lea rax, [rbp + 0xc0]
cmp rdx, 0xf
cmova rax, qword [rbp + 0xc0]
mov word [rax + rcx], 0x3d
jmp 0x14014f64e
mov r9b, 0x3d
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0xc0]
call fcn.140138bd0
xor r12d, r12d
mov r8d, dword [rbp + r12*4 + 0x1d8]
lea r10, [rbp + 0xb5]
test r8d, r8d
jns 0x14014f6b0
neg r8d
nop dword [rax + rax]
dec r10
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8d, edx
test edx, edx
jne 0x14014f670
dec r10
mov byte [r10], 0x2d
jmp 0x14014f6da
dec r10
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8d, edx
test edx, edx
jne 0x14014f6b0
lea r9, [rsp + 0x50]
lea r8, [rbp + 0xb5]
mov rdx, r10
lea rcx, [rbp + 0x100]
call fcn.14013fd30
or r13d, 3
lea r9, [rbp + 0x100]
mov rdi, qword [rbp + 0x100]
mov r14, qword [rbp + 0x118]
cmp r14, 0xf
cmova r9, rdi
mov rcx, qword [rbp + 0xd0]
mov qword [rsp + 0x38], rcx
mov rdx, qword [rbp + 0xd8]
mov rax, rdx
sub rax, rcx
mov r15, qword [rbp + 0x110]
cmp r15, rax
ja 0x14014f776
lea rax, [r15 + rcx]
mov qword [rbp + 0xd0], rax
lea rbx, [rbp + 0xc0]
cmp rdx, 0xf
cmova rbx, qword [rbp + 0xc0]
add rcx, rbx
mov r8, r15
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [r15 + rbx]
mov rcx, qword [rsp + 0x38]
mov byte [rax + rcx], 0
jmp 0x14014f79b
mov qword [rsp + 0x20], r15
xor r8d, r8d
mov rdx, r15
lea rcx, [rbp + 0xc0]
call fcn.140141390
mov r14, qword [rbp + 0x118]
mov rdi, qword [rbp + 0x100]
cmp r14, 0xf
jbe 0x14014f7d2
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14014f7ca
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14014f8f2
mov rcx, rdi
call fcn.14034961c
cmp r12, 2
jge 0x14014f827
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
cmp rcx, rdx
jae 0x14014f811
lea rax, [rcx + 1]
mov qword [rbp + 0xd0], rax
lea rax, [rbp + 0xc0]
cmp rdx, 0xf
cmova rax, qword [rbp + 0xc0]
mov word [rax + rcx], gethostbyaddr
jmp 0x14014f827
mov r9b, 0x2e
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0xc0]
call fcn.140138bd0
inc r12
cmp r12, 3
jl 0x14014f651
movsx ecx, byte [rsp + 0x32]
sub ecx, 0x3c
je 0x14014f9d2
sub ecx, 1
je 0x14014f9a2
sub ecx, 1
je 0x14014f93f
cmp ecx, 0x20
jne 0x14014f89c
movzx eax, byte [rsp + 0x31]
cmp al, 3
jne 0x14014f8f9
mov eax, dword [rbp + 0x1d8]
cmp dword [rbp + 0x1e8], eax
jne 0x14014fa24
mov eax, dword [rbp + 0x1dc]
cmp dword [rbp + 0x1ec], eax
jne 0x14014fa24
mov eax, dword [rbp + 0x1e0]
cmp dword [rbp + 0x1f0], eax
jl 0x14014fa24
cmp dword [rsp + 0x4c], 0
je 0x14014fd5e
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0xf
jbe 0x14014fa39
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014fa34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014fa34
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp al, 2
jne 0x14014f920
mov eax, dword [rbp + 0x1d8]
cmp dword [rbp + 0x1e8], eax
jne 0x14014fa24
mov eax, dword [rbp + 0x1dc]
cmp dword [rbp + 0x1ec], eax
jmp 0x14014f896
cmp al, 1
jne 0x14014f89c
mov eax, dword [rbp + 0x1d8]
cmp dword [rbp + 0x1e8], eax
jge 0x14014f89c
jmp 0x14014fa24
mov edx, dword [rbp + 0x1e8]
mov r8d, dword [rbp + 0x1d8]
cmp edx, r8d
jne 0x14014f997
mov r9d, dword [rbp + 0x1e0]
mov r10d, dword [rbp + 0x1f0]
mov eax, dword [rbp + 0x1ec]
mov ecx, dword [rbp + 0x1dc]
cmp eax, ecx
jne 0x14014f98e
cmp r10d, r9d
jne 0x14014f97f
cmp byte [rsp + 0x30], 0
je 0x14014fa24
cmp eax, ecx
jne 0x14014f98e
cmp r10d, r9d
jl 0x14014fa24
cmp eax, ecx
jl 0x14014fa24
cmp edx, r8d
jge 0x14014f89c
jmp 0x14014fa24
mov eax, dword [rbp + 0x1d8]
cmp dword [rbp + 0x1e8], eax
jne 0x14014fa24
mov eax, dword [rbp + 0x1dc]
cmp dword [rbp + 0x1ec], eax
jne 0x14014fa24
mov eax, dword [rbp + 0x1e0]
cmp dword [rbp + 0x1f0], eax
je 0x14014f89c
jmp 0x14014fa24
mov edx, dword [rbp + 0x1e8]
mov r8d, dword [rbp + 0x1d8]
cmp edx, r8d
jne 0x14014fa1e
mov r9d, dword [rbp + 0x1e0]
mov r10d, dword [rbp + 0x1f0]
mov eax, dword [rbp + 0x1ec]
mov ecx, dword [rbp + 0x1dc]
cmp eax, ecx
jne 0x14014fa19
cmp r10d, r9d
jne 0x14014fa0e
cmp byte [rsp + 0x30], 0
je 0x14014fa24
cmp eax, ecx
jne 0x14014fa19
cmp r10d, r9d
jg 0x14014fa24
cmp eax, ecx
jg 0x14014fa24
cmp edx, r8d
jle 0x14014f89c
cmp dword [rsp + 0x4c], 0
jne 0x14014fd5e
jmp 0x14014f8a7
call fcn.14034961c
xor ebx, ebx
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xd8], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xc0], bl
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x14014fa97
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014fa92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014fa92
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
mov qword [rbp + 0xf0], rbx
mov qword [rbp + reloc.WS2_32.dll_ntohs8], 0xf
mov byte [rbp + 0xe0], 0
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x60], rax
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x70]
call fcn.14013d220
lea rcx, [rsp + 0x78]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp - 0x10]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov r15, qword [rbp + 0x138]
mov r14, qword [rbp + 0x120]
jmp 0x14014fc75
lea rcx, [rbp + 0x120]
cmp r15, 0xf
cmova rcx, r14
mov r8, rbx
mov eax, reloc.WS2_32.dll_recv
cmp rbx, rax
cmova r8, rax
lea rdx, str.test_version_set
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14014fb7a
cmp rbx, 0x10
jne 0x14014fb7a
cmp dword [rsi + 0x10], 3
jne 0x14014fd34
lea rax, [0x140659b98]
cmp rax, rdi
je 0x14014fb6d
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x14014fb62
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, rax
call fcn.140139a50
mov rcx, rsi
call fcn.14018d250
jmp 0x14014fc75
lea rdx, [0x140659f20]
cmp qword [0x140659f38], 0xf
cmova rdx, qword [0x140659f20]
lea rcx, [rbp + 0x120]
cmp r15, 0xf
cmova rcx, r14
cmp rbx, qword [0x140659f30]
jne 0x14014fbf0
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14014fbf0
movups xmm0, xmmword [rsi + 0x38]
movaps xmmword [rbp + 0xa0], xmm0
mov byte [0x140659f40], 1
mov rdx, qword [0x140659f50]
cmp rdx, qword [0x140659f58]
je 0x14014fbe7
movups xmmword [rdx], xmm0
add qword [0x140659f50], 0x10
jmp 0x14014fc75
lea rcx, [0x140659f48]
jmp 0x14014fc69
lea rdx, [0x140659fa0]
cmp qword [0x140659fb8], 0xf
cmova rdx, qword [0x140659fa0]
lea rcx, [rbp + 0x120]
cmp r15, 0xf
cmova rcx, r14
cmp rbx, qword [0x140659fb0]
jne 0x14014fdc6
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14014fdc6
movups xmm0, xmmword [rsi + 0x38]
movaps xmmword [rbp + 0xa0], xmm0
mov byte [0x140659fc0], 1
mov rdx, qword [0x140659fd0]
cmp rdx, qword [0x140659fd8]
je 0x14014fc62
movups xmmword [rdx], xmm0
add qword [0x140659fd0], 0x10
jmp 0x14014fc75
lea rcx, [0x140659fc8]
lea r8, [rbp + 0xa0]
call fcn.140140c90
xor r8d, r8d
lea edx, [r8 + 0x3b]
mov rcx, rsi
call fcn.14018c7b0
nop
cmp r15, 0xf
jbe 0x14014fcc0
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14014fcb7
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014fcb7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.14034961c
nop
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 0xf
jbe 0x14014fd04
inc rdx
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014fcff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14014fcff
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14034961c
mov rcx, qword [rbp + 0x1f8]
xor rcx, rsp
call fcn.140349970
lea r11, [rsp + 0x300]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rdx, str.version_string_expected
lea rcx, [rbp + 0xe0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
nop
lea rdx, str.FunC_version
lea rcx, [rbp + 0x100]
call fcn.1401390b0
nop
lea r8, [0x140659b98]
mov rdx, rax
lea rcx, [rbp + 0x140]
call fcn.14013ffc0
nop
lea r8, str._does_not_satisfy_condition
mov rdx, rax
lea rcx, [rbp + 0x1b8]
call fcn.140140030
nop
lea r8, [rbp + 0xc0]
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.14013ffc0
mov rdx, rax
lea rcx, [rbp + 0x180]
call fcn.140145fe0
nop
mov rcx, rsi
call fcn.140145ea0
mov rbx, rax
lea rdx, str.unknown_pragma__
lea rcx, [rbp + 0x1b8]
call fcn.1401390b0
nop
lea r8, [rbp + 0x120]
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.14013ffc0
nop
lea r8, [0x14036a86c]
mov rdx, rax
lea rcx, [rbp + 0xe0]
call fcn.140140030
mov rdx, rax
mov rcx, rbx
call fcn.140145fe0
nop
lea rdx, str.invalid_semver_format
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
nop
lea rdx, str.unexpected_comparator_operation
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
int3
lea rdx, str.expected_number_after_comparator
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
int3
lea rdx, str.expected_number_after_comparator
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
int3
call fcn.140139a30
nop
call fcn.140139a30
int3
call fcn.140139a30
int3
lea rdx, str.invalid_semver_format
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
int3
lea rdx, str.invalid_semver_format
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
nop
lea rdx, str.invalid_semver_format
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
nop
lea rdx, str.expected_semver_with_optional_comparator
lea rcx, [rbp + 0xa0]
call fcn.1401390b0
mov rbx, rax
mov rcx, rsi
call fcn.140145ea0
mov rcx, rax
mov rdx, rbx
call fcn.140145fe0
int3