Function at 0x140013e30
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x268]
sub rsp, 0x368
mov r9, rdx
mov r8, rcx
xor r11d, r11d
mov ebx, r11d
mov edi, r11d
mov qword [rsp + 0x20], r11
mov r12d, 0xffffffff
mov r15d, r12d
mov esi, r11d
mov dword [rbp + 0x2c0], r11d
mov edx, r11d
mov qword [rsp + 0x28], rdx
mov eax, dword [rcx + 8]
mov dword [r9 + 4], eax
mov dword [r9 + 0xc], r11d
movsxd r10, dword [rcx + 8]
mov qword [rsp + 0x30], r10
mov rax, qword [rcx + 0x10]
lea r13, [rax + r10*2]
movzx eax, word [r13]
test ax, ax
jne 0x140013eba
mov dword [r9 + 8], r11d
mov dword [r9], r11d
lea eax, [r11 - 2]
jmp 0x1400147b9
mov r14d, eax
lea rcx, [0x140045f90]
test edx, edx
je 0x140013fe4
movzx edx, r14w
lea rcx, str.__t_n_r__
call fcn.140018b4c
mov rdx, qword [rsp + 0x28]
test rax, rax
je 0x140014319
mov r8, qword [rbp + 0x2b0]
mov rcx, qword [r8 + 0x10]
mov rax, r13
sub rax, rcx
sar rax, 1
mov r12d, eax
sub r12d, edx
test r15d, r15d
jne 0x140013f1a
mov dword [r8], edx
dec eax
mov dword [r8 + 4], eax
xor r11d, r11d
jmp 0x140013fc3
movsxd rax, r12d
add rax, rax
mov qword [rbp + 0x2c8], rax
mov rsi, qword [rbp + 0x2b8]
movsxd rax, edx
lea rdi, [rcx + rax*2]
mov r9b, 1
xor r8d, r8d
mov edx, r12d
lea rcx, [rsi + 0x10]
call fcn.140003940
mov rcx, rax
mov r8, qword [rbp + 0x2c8]
mov rdx, rdi
call fcn.140019170
mov rdx, qword [rsi + 0x10]
cmp r12d, 0xffffffff
jne 0x140013f8c
test rdx, rdx
jne 0x140013f70
xor r11d, r11d
mov ecx, r11d
jmp 0x140013f9e
mov rcx, rdx
movzx eax, word [rcx]
add rcx, 2
test ax, ax
jne 0x140013f73
sub rcx, rdx
sar rcx, 1
dec ecx
xor r11d, r11d
jmp 0x140013f9e
mov rax, qword [rbp + 0x2c8]
xor r11d, r11d
mov word [rdx + rax], r11w
mov ecx, r12d
mov dword [rdx - 0x10], ecx
mov eax, dword [rdx - 8]
mov rdi, qword [rsp + 0x20]
mov esi, dword [rbp + 0x2c0]
cmp eax, 0xffffffff
jne 0x140013fbc
mov eax, 1
xchg dword [rdx - 8], eax
mov r8, qword [rbp + 0x2b0]
mov edx, r11d
mov qword [rsp + 0x28], rdx
mov r12d, 0xffffffff
mov r10, qword [rsp + 0x30]
mov r9, qword [rbp + 0x2b8]
lea rcx, [0x140045f90]
test rdi, rdi
je 0x1400140e8
cmp r14d, 0x3e
jne 0x140014092
test bl, 0xc0
jne 0x1400140ac
mov r10, r13
sub r10, qword [r8 + 0x10]
sar r10, 1
mov qword [rsp + 0x30], r10
cmp esi, 1
jne 0x140014030
mov qword [rsp + 0x20], r11
cmp r15d, esi
jne 0x140014078
cmp word [r13 - 2], 0x2f
jne 0x140014078
or dword [r9 + 0xc], 0x10000
jmp 0x140014078
cmp r10d, esi
jle 0x14001431e
movsxd rcx, esi
add rcx, rcx
mov rdx, r13
sub rdx, rcx
add rdx, 2
mov r8d, esi
mov r9, rdi
sub r9, rdx
sub r8d, 1
je 0x140014073
movzx ecx, word [rdx]
movzx eax, word [r9 + rdx]
add rdx, 2
cmp cx, ax
je 0x140014052
mov rdx, qword [rsp + 0x28]
jmp 0x14001431e
mov qword [rsp + 0x20], r11
mov eax, ebx
and eax, 0x20
je 0x140014798
mov rdi, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
jmp 0x14001431e
cmp r14d, 0x3c
jne 0x1400140ac
cmp r15d, 2
je 0x14001482a
cmp r15d, 0xffffffff
je 0x14001482a
cmp r15d, 1
jne 0x14001431e
cmp r14d, 0x22
jne 0x1400140ce
test bl, 0x40
jne 0x14001431e
btc ebx, 7
jmp 0x14001431e
cmp r14d, 0x27
jne 0x14001431e
test bl, bl
js 0x14001431e
xor ebx, 0x40
jmp 0x14001431e
test ebx, ebx
je 0x1400147cd
test bl, 0x10
je 0x140014141
cmp r14d, 0x3c
je 0x14001483a
movzx edx, r14w
lea rcx, str.__t_n_r
call fcn.140018b4c
test rax, rax
jne 0x14001412f
lea rdi, [0x1400440e0]
mov qword [rsp + 0x20], rdi
mov esi, 1
mov dword [rbp + 0x2c0], esi
lea r15d, [rax + 2]
mov ecx, ebx
xor ecx, 0x10
test rax, rax
cmovne ecx, ebx
mov ebx, ecx
jmp 0x140014314
test bl, 1
je 0x140014349
xor ebx, 1
cmp r14d, 0x39
jbe 0x14001419a
lea eax, [r14 - 0x3b]
cmp eax, 0x25
ja 0x14001416c
movabs rcx, 0x2f0000003f
bt rcx, rax
jb 0x14001419a
lea rdi, [0x1400440dc]
mov esi, 1
mov r15d, esi
mov rdx, r13
sub rdx, qword [r8 + 0x10]
sar rdx, 1
mov qword [rsp + 0x20], rdi
mov dword [rbp + 0x2c0], esi
mov qword [rsp + 0x28], rdx
jmp 0x14001431e
cmp r14d, 0x2f
jne 0x1400141cf
lea rdi, [0x1400440dc]
lea esi, [r14 - 0x2e]
mov r15d, r11d
mov rdx, r13
sub rdx, qword [r8 + 0x10]
sar rdx, 1
inc edx
mov qword [rsp + 0x20], rdi
mov dword [rbp + 0x2c0], esi
mov qword [rsp + 0x28], rdx
jmp 0x14001431e
cmp r14d, 0x21
jne 0x1400141dd
or ebx, 2
jmp 0x14001431e
cmp r14d, 0x3f
jne 0x1400141f4
lea rdi, [0x140045da4]
lea esi, [r14 - 0x3d]
lea r15d, [r14 - 0x2f]
jmp 0x1400141ae
lea rdi, [0x1400440dc]
mov qword [rsp + 0x20], rdi
mov esi, 1
mov dword [rbp + 0x2c0], esi
mov dword [rbp + 0x180], r11d
movaps xmm0, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x240], xmm0
mov dword [rbp + 0x190], r11d
movaps xmm1, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x230], xmm1
mov dword [rsp + 0x70], 4
movsxd rax, r10d
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x220], xmm0
mov dword [rbp - 0x80], 2
lea rax, str.tag_name_character
mov qword [rbp - 0x78], rax
movaps xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rbp + 0x210], xmm0
lea rax, [rbp + 0x210]
mov qword [rbp + 0x30], rax
lea rax, [rbp + 0x220]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x230]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x240]
mov qword [rbp + 0x48], rax
call fcn.1400019a0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x38]
lea r8d, [rsi + 3]
lea rdx, [rbp + 0x30]
lea rcx, str.Incorrect__s_at_offset__d
call fcn.140010a50
mov rcx, qword [rbp + 0x2b8]
add rcx, 0x10
lea rdx, [rsp + 0x38]
call fcn.140003760
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140014311
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140014307
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, esi
jg 0x140014311
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov r15d, r12d
mov rdx, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
mov eax, r15d
add r13, 2
movzx r14d, word [r13]
test r14d, r14d
je 0x140014850
mov r8, qword [rbp + 0x2b0]
mov r9, qword [rbp + 0x2b8]
xor r11d, r11d
jmp 0x140013ebd
test bl, 2
je 0x1400144bb
xor ebx, 2
cmp r14d, 0x2d
jne 0x140014360
or ebx, 4
jmp 0x14001431e
mov eax, ebx
and eax, 0x20
cmp r14d, 0x5b
jne 0x140014374
test eax, eax
jne 0x140014383
or ebx, 8
jmp 0x14001431e
cmp r14d, 0x44
jne 0x140014383
test eax, eax
jne 0x140014383
or ebx, 0x20
jmp 0x14001431e
movzx edx, r14w
lea rcx, [0x1400460f0]
call fcn.140018b4c
lea rdi, [0x1400440dc]
mov esi, 1
mov qword [rsp + 0x20], rdi
mov dword [rbp + 0x2c0], esi
test rax, rax
jne 0x140014311
mov dword [rbp + 0xb0], eax
movaps xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0x100], xmm0
mov dword [rbp + 0xc0], eax
movaps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xf0], xmm1
mov dword [rbp - 0x70], 4
movsxd rax, dword [rsp + 0x30]
mov qword [rbp - 0x68], rax
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp + 0xe0], xmm0
mov dword [rbp - 0x60], 2
lea rax, str.__tag
mov qword [rbp - 0x58], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0xd0], xmm0
lea rax, [rbp + 0xd0]
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0xe0]
mov qword [rbp + 0x58], rax
lea rax, [rbp + 0xf0]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x100]
mov qword [rbp + 0x68], rax
call fcn.1400019a0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x40], rax
lea r9, [rsp + 0x40]
lea r8d, [rsi + 3]
lea rdx, [rbp + 0x50]
lea rcx, str.Incorrect__s_at_offset__d
call fcn.140010a50
mov rcx, qword [rbp + 0x2b8]
add rcx, 0x10
lea rdx, [rsp + 0x40]
call fcn.140003760
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400144b6
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400144ac
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, esi
jg 0x1400144b6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
jmp 0x140014311
test bl, 4
je 0x140014612
xor ebx, 4
cmp r14d, 0x2d
jne 0x1400144ed
lea rdi, [0x140046108]
mov qword [rsp + 0x20], rdi
mov esi, 3
mov dword [rbp + 0x2c0], esi
lea r15d, [r14 - 0xd]
jmp 0x14001431e
lea rdi, [0x1400440dc]
mov qword [rsp + 0x20], rdi
mov esi, 1
mov dword [rbp + 0x2c0], esi
mov dword [rbp + 0x110], r11d
movaps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x160], xmm0
mov dword [rbp + 0x120], r11d
movaps xmm1, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x150], xmm1
mov dword [rbp - 0x50], 4
movsxd rax, r10d
mov qword [rbp - 0x48], rax
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x140], xmm0
mov dword [rbp - 0x40], 2
lea rax, str.comment_tag
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp + 0x130], xmm0
lea rax, [rbp + 0x130]
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x140]
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x150]
mov qword [rbp + 0x80], rax
lea rax, [rbp + 0x160]
mov qword [rbp + 0x88], rax
call fcn.1400019a0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x48], rax
lea r9, [rsp + 0x48]
lea r8d, [rsi + 3]
lea rdx, [rbp + 0x70]
lea rcx, str.Incorrect__s_at_offset__d
call fcn.140010a50
mov rcx, qword [rbp + 0x2b8]
add rcx, 0x10
lea rdx, [rsp + 0x48]
call fcn.140003760
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14001460d
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140014603
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, esi
jg 0x14001460d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
jmp 0x140014311
test bl, 8
je 0x140014767
xor ebx, 8
cmp r14d, 0x43
jne 0x140014644
lea rdi, [0x140046128]
mov qword [rsp + 0x20], rdi
mov esi, 3
mov dword [rbp + 0x2c0], esi
lea r15d, [r14 - 0x3b]
jmp 0x14001431e
lea rdi, [0x1400440dc]
mov qword [rsp + 0x20], rdi
mov esi, 1
mov dword [rbp + 0x2c0], esi
mov dword [rbp + 0x170], r11d
movaps xmm0, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0x1c0], xmm0
mov dword [rsp + 0x60], r11d
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x1b0], xmm1
mov dword [rbp - 0x30], 4
movsxd rax, r10d
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp + 0x1a0], xmm0
mov dword [rbp - 0x20], 2
mov qword [rbp - 0x18], rcx
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0x1f0], xmm0
lea rax, [rbp + 0x1f0]
mov qword [rbp + 0x90], rax
lea rax, [rbp + 0x1a0]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 0x1b0]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 0x1c0]
mov qword [rbp + 0xa8], rax
call fcn.1400019a0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x50], rax
lea r9, [rsp + 0x50]
lea r8d, [rsi + 3]
lea rdx, [rbp + 0x90]
lea rcx, str.Incorrect__s_at_offset__d
call fcn.140010a50
mov rcx, qword [rbp + 0x2b8]
add rcx, 0x10
lea rdx, [rsp + 0x50]
call fcn.140003760
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140014762
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140014758
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, esi
jg 0x140014762
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
jmp 0x140014311
mov eax, ebx
and eax, 0x20
je 0x14001431e
cmp r14d, 0x3c
jne 0x140014780
or ebx, 1
jmp 0x14001431e
cmp r14d, 0x3e
jne 0x14001431e
sub r13, qword [r8 + 0x10]
sar r13, 1
mov r10d, r13d
lea r15d, [r14 + 2]
mov rdi, qword [rbp + 0x2b0]
lea ecx, [r10 + 1]
mov dword [rdi + 8], ecx
mov rax, qword [rbp + 0x2b8]
sub ecx, dword [rax + 4]
mov dword [rax + 8], ecx
mov dword [rax], r15d
mov eax, r15d
add rsp, 0x368
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
cmp r14d, 0x3c
jne 0x1400147dc
lea ebx, [r14 - 0x3b]
jmp 0x14001431e
mov r15d, 4
movzx edx, r14w
lea rcx, str.__t_n_r
call fcn.140018b4c
mov rdx, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
test rax, rax
je 0x14001480a
lea ebx, [r15 + 0xc]
jmp 0x14001431e
lea rdi, [0x1400440e0]
mov qword [rsp + 0x20], rdi
mov esi, 1
mov dword [rbp + 0x2c0], esi
lea r15d, [rsi + 1]
jmp 0x14001431e
sub r13, qword [r8 + 0x10]
sar r13, 1
lea r10d, [r13 - 1]
jmp 0x140014798
sub r13, qword [r8 + 0x10]
sar r13, 1
lea r10d, [r13 - 1]
mov r15d, 4
jmp 0x140014798
mov rdi, qword [rbp + 0x2b0]
sub r13, qword [rdi + 0x10]
sar r13, 1
lea r10d, [r13 - 1]
mov qword [rsp + 0x30], r10
cmp eax, 4
je 0x14001479f
cmp eax, 2
je 0x14001479f
bt ebx, 5
jb 0x1400148c9
cmp eax, 0x40
je 0x1400148c9
cmp eax, 1
jne 0x140014892
lea rcx, str.Element_tag
jmp 0x1400148d9
test eax, eax
jne 0x14001489f
lea rcx, str.Element_end_tag
jmp 0x1400148d9
cmp eax, 8
jne 0x1400148ad
lea rcx, str.CDATA_Section
jmp 0x1400148d9
cmp eax, 0x10
jne 0x1400148bb
lea rcx, str.Processing_instruction
jmp 0x1400148d9
cmp eax, 0x20
jne 0x1400148d2
lea rcx, str.Comment
jmp 0x1400148d9
lea rcx, str.Doctype
jmp 0x1400148d9
lea rcx, [0x140045f90]
mov r15d, r12d
xor eax, eax
mov dword [rsp + 0x60], eax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x200], xmm0
mov dword [rsp + 0x60], eax
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x250], xmm1
mov dword [rbp - 0x10], 4
mov rbx, qword [rbp + 0x2b8]
movsxd rax, dword [rbx + 4]
mov qword [rbp - 8], rax
movaps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp + 0x1e0], xmm0
mov dword [rbp], 2
mov qword [rbp + 8], rcx
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x1d0], xmm0
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x1e0]
mov qword [rbp + 0x18], rax
lea rax, [rbp + 0x250]
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x200]
mov qword [rbp + 0x28], rax
call fcn.1400019a0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rbp + 0x2b0], rax
lea r9, [rbp + 0x2b0]
mov r8d, 4
lea rdx, [rbp + 0x10]
lea rcx, str._s_at_offset__d_unterminated
call fcn.140010a50
lea rcx, [rbx + 0x10]
lea rdx, [rbp + 0x2b0]
call fcn.140003760
nop
mov rdx, qword [rbp + 0x2b0]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400149dc
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400149d1
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x1400149dc
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
nop
mov r10, qword [rsp + 0x30]
jmp 0x14001479f