Function at 0x140086adc
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rbp, qword [r8 + 0xc8]
xor ebx, ebx
mov r14, r8
mov r12, rdx
mov r13, rcx
lea esi, [rbx + 1]
cmp dword [r8 + 0x48], esi
jbe 0x140086b22
mov rax, qword [rcx]
cmp dword [rax + 0x228], ebx
ja 0x140087663
mov r15, qword [rcx]
mov r10d, 0x8e
mov dx, 0xd
mov r11b, byte [r15 + 0x1e3]
lea r9d, [r10 - 0x38]
lea edi, [r9 - 0x54]
lea r8d, [r10 - 2]
cmp r11b, dil
jne 0x140086cbd
cmp byte [rbp + 0x44], 0x14
jne 0x140086b63
cmp word [r14 + 0x10], 0x17
jne 0x140086b63
cmp byte [r15 + 0x59], bl
jne 0x140087663
cmp byte [r14 + 0x44], 0x59
je 0x140087464
cmp byte [rbp + 0x44], 0x59
je 0x140087464
cmp byte [r14 + 0x44], 0x5c
je 0x140087663
mov rax, qword [r14 + 0xd0]
test rax, rax
je 0x140086bdc
cmp byte [rax + 0x44], 0x14
jne 0x140086bdc
cmp word [r14 + 0x10], 7
je 0x140087663
cmp word [r14 + 0x10], 5
jne 0x140086bdc
movups xmm0, xmmword [r14 + 0x18]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movq rax, xmm0
cmp rax, rsi
jne 0x140086bdc
mov rax, qword [rsp + 0x20]
cmp byte [rax], 0x5f
jne 0x140086bd0
mov eax, ebx
jmp 0x140086bd4
sbb eax, eax
or eax, esi
test eax, eax
je 0x140087663
cmp byte [rbp + 0x44], 5
jne 0x140086c4f
cmp word [rbp + 0x10], 0x14
jne 0x140086c35
movzx ecx, word [r14 + 0x10]
cmp cx, r10w
je 0x140086c02
movzx eax, cx
sub ax, r8w
cmp ax, si
mov al, bl
ja 0x140086c05
mov al, sil
test al, al
jne 0x140087663
mov rax, qword [r13 + 8]
mov rdx, qword [rax + 0x1f8]
test rdx, rdx
je 0x140086c35
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140086c35
cmp cx, si
je 0x140086c35
cmp rdx, qword [r14 + 8]
je 0x140087663
cmp byte [r14 + 0x44], 5
jne 0x140086c4f
cmp word [rbp + 0x10], 0x14
jne 0x140086c4f
cmp word [r14 + 0x10], 0x13
je 0x140087663
lea rdx, [rbp + 0x10]
lea r10, [rbp + 0x44]
mov r8d, 0x3000
cmp byte [r15 + 0x1e1], bl
jne 0x140086c71
cmp dword [r12 + 0x20], esi
je 0x140087083
cmp word [rdx], 0x17
je 0x140086c90
cmp byte [r10], bl
je 0x140086c90
cmp r11b, 4
jne 0x140087021
cmp word [rdx], 0x15
jne 0x140087021
mov eax, dword [rbp + 0x40]
and eax, r8d
cmp eax, 0x1000
je 0x140087021
mov rax, qword [rbp + 0xc0]
test rax, rax
je 0x140087021
mov rax, qword [rax + 0xc8]
jmp 0x140087049
cmp r11b, 4
jne 0x140086f5e
cmp word [r14 + 0x10], dx
jne 0x140086ceb
cmp word [rbp + 0x10], 0x20
jne 0x140086ceb
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140086ceb
cmp word [rax + 0x10], dx
je 0x140087663
cmp byte [rbp + 0x44], 0x13
mov r8d, 0x85
jne 0x140086dc5
cmp word [rbp + 0x10], 0x17
jne 0x140086e90
cmp dword [r12 + 0x24], ebx
jne 0x140086dc5
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140086dc5
cmp word [rax + 0x10], 0x3f
jne 0x140086dc5
mov r9, qword [rcx + 8]
mov r10, qword [r12]
mov rdx, qword [r9 + 0xa8]
movzx ecx, word [r10 + 0x10]
cmp cx, 5
je 0x140086d6f
test rdx, rdx
je 0x140086d5f
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140086d65
cmp cx, si
je 0x140086dbf
cmp rdx, qword [r10 + 8]
je 0x140086d6f
cmp cx, r8w
je 0x140086d6f
mov eax, 0x50
cmp cx, ax
jne 0x140086dbf
mov rdx, qword [r9 + 0xf0]
mov r8, qword [r9 + 0xc0]
test rdx, rdx
je 0x140086d96
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140086d96
cmp cx, si
je 0x140086d96
cmp rdx, qword [r10 + 8]
je 0x140086dbf
test r8, r8
je 0x140087663
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140087663
cmp cx, si
je 0x140087663
cmp r8, qword [r10 + 8]
jne 0x140087663
mov r9d, 0x56
cmp word [rbp + 0x10], 0x17
jne 0x140086e90
cmp dword [r12 + 0x24], ebx
jne 0x140086e90
mov rdi, qword [r12]
test rdi, rdi
je 0x140086e8b
cmp word [rdi + 0x10], 4
jne 0x140086e0b
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x140086e0b
mov edx, r9d
call fcn.14006aa04
mov r9d, 0x56
jmp 0x140086e13
cmp word [rdi + 0x10], r9w
sete al
test al, al
jne 0x140087663
mov r8d, r9d
mov edx, 0x50
mov rcx, rdi
call fcn.14006aa2c
test al, al
jne 0x140087663
mov edx, 0x85
mov rcx, rdi
lea r8d, [rdx - 0x2f]
call fcn.14006aa2c
test al, al
jne 0x140087663
movzx eax, word [rdi + 0x10]
cmp ax, 4
jne 0x140086ef1
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x140086ef1
mov edx, 0x85
lea r9d, [rdx - 0x2f]
lea r8d, [rdx - 0x35]
call fcn.140082120
test al, al
jne 0x140087663
mov r11b, byte [r15 + 0x1e3]
mov edi, 2
cmp word [r14 + 0x10], 0x18
jne 0x140086c4f
cmp word [rbp + 0x10], 0x17
jne 0x140086c4f
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140086f2a
cmp byte [rax + 0x44], 0x14
jne 0x140086f2a
movzx ecx, byte [r15 + 0x2b]
test ecx, ecx
je 0x140087663
sub ecx, esi
je 0x140086f1c
cmp ecx, esi
jne 0x140087464
cmp dword [rbp + 0x78], ebx
jne 0x140087660
cmp dword [r12 + 0x24], ebx
jne 0x140087660
cmp dword [rbp + 0xe8], ebx
jmp 0x14008765e
mov ecx, 0x85
cmp ax, cx
jne 0x140086e84
cmp qword [rdi + 0xd0], rbx
je 0x140086e84
lea edx, [rcx - 0x35]
lea r8d, [rcx - 0x2f]
mov rcx, qword [rdi + 0xd0]
call fcn.14006aa2c
jmp 0x140086e7c
cmp dword [rbp + 0xe8], ebx
setne al
jmp 0x140087666
cmp dword [rbp + 0xe8], ebx
je 0x140086c4f
mov al, byte [r15 + 0x29]
test al, al
je 0x140086f54
cmp al, dil
je 0x140086f54
cmp dword [rbp + 0x78], ebx
jne 0x140086f57
cmp dword [r12 + 0x24], ebx
jne 0x140086f57
test sil, al
je 0x140086f57
mov bl, sil
mov al, bl
jmp 0x140087666
cmp r11b, 3
jne 0x140086f93
cmp word [r14 + 0x10], 0x20
jne 0x140086c4f
cmp word [rbp + 0x10], dx
jne 0x140086c4f
mov rax, qword [r14 + 0xd0]
test rax, rax
je 0x140086c4f
cmp word [rax + 0x10], dx
jmp 0x140086c49
cmp r11b, sil
je 0x140086fa0
lea eax, [r11 - 6]
cmp al, 3
ja 0x140086fd4
movzx ecx, word [rbp + 0x10]
movzx eax, cx
sub ax, dx
cmp ax, si
jbe 0x140086fb8
sub cx, 0x10
cmp cx, di
ja 0x140086fd4
cmp word [r14 + 0x10], 0xf
je 0x140086fd4
cmp word [r14 + 0x10], 0xc
jbe 0x140086fd4
cmp word [r14 + 0x10], 0x13
jb 0x140087663
cmp r11b, 5
jne 0x140086c4f
lea r10, [rbp + 0x44]
cmp byte [r10], 0x13
lea rdx, [rbp + 0x10]
jne 0x140087005
cmp word [rdx], 0x17
je 0x140087663
cmp word [rdx], 0x41
je 0x140087663
jmp 0x140086c57
cmp byte [r10], bl
jne 0x140086ff6
cmp word [rdx], 0x13
jne 0x140086ff6
cmp word [r14 + 0x10], 0x14
jne 0x140087663
jmp 0x140086c57
mov rax, qword [r14 + 0xc0]
test rax, rax
je 0x140087083
cmp word [rax + 0x10], 0x17
je 0x140087046
cmp byte [rax + 0x44], bl
je 0x140087046
cmp r11b, 4
jne 0x140087083
cmp word [rax + 0x10], 0x15
jne 0x140087083
mov rax, rbp
test rax, rax
je 0x140087083
cmp word [rax + 0x10], 0x41
je 0x140087663
cmp word [rax + 0x10], 4
jne 0x140087083
cmp byte [rax + 0x44], 0x30
je 0x140087663
mov rcx, qword [rax + 0xd0]
test rcx, rcx
je 0x140087663
cmp dword [rcx + 0x48], ebx
ja 0x140087663
movzx r9d, word [r14 + 0x10]
cmp r9w, 4
jne 0x1400870bd
mov eax, dword [rbp + 0x40]
and eax, r8d
cmp eax, 0x2000
je 0x140087660
cmp byte [r10], 0xf
je 0x140087660
cmp dword [r14 + 0x48], ebx
jbe 0x140087660
test byte [r14 + 0x40], sil
jmp 0x14008765e
movzx r8d, word [rdx]
cmp r8d, 4
jne 0x1400870ea
cmp byte [r10], 0x30
je 0x140087663
mov rax, qword [rbp + 0xd0]
test rax, rax
je 0x140087663
cmp dword [rax + 0x48], ebx
ja 0x140087663
mov cx, 0x10
test byte [rbp + 0x40], cl
jne 0x140087663
cmp r9w, 0x2f
jne 0x14008711b
mov rax, qword [r14 + 0xd0]
test rax, rax
je 0x14008711b
cmp r8d, 0xd
jne 0x14008711b
cmp word [rax + 0x10], r8w
je 0x140087663
test byte [rbp + 0x40], 0x40
je 0x140087152
mov rax, qword [rbp + 0xc0]
test rax, rax
je 0x140087152
cmp dword [rax + 0x78], ebx
jne 0x140087152
mov ecx, 0xa5
cmp r9w, cx
jne 0x140087146
mov al, byte [r15 + 0x67]
jmp 0x140087666
cmp byte [r15 + 0x30], dil
sete al
jmp 0x140087666
mov al, byte [r15 + 0xc3]
test al, al
jne 0x14008718d
cmp byte [r15 + 0x69], bl
jne 0x140087173
cmp byte [r10], cl
je 0x140087663
cmp byte [r14 + 0x44], 0xf
jmp 0x1400871a6
cmp byte [r15 + 0x69], dil
jne 0x140087192
cmp byte [r10], 0xf
je 0x140087663
cmp byte [r10], cl
jne 0x1400871ac
jmp 0x140087663
cmp al, dil
jae 0x1400871ac
cmp byte [r15 + 0x69], sil
jne 0x1400871ac
mov al, byte [r14 + 0x44]
cmp al, cl
je 0x140087663
cmp al, 0xf
je 0x140087663
mov cl, byte [r15 + 0xb0]
lea rdx, [r14 + 0x44]
cmp cl, sil
jne 0x1400871c1
cmp byte [rdx], 0x1e
jmp 0x1400871ca
cmp cl, 3
jne 0x1400871d0
cmp byte [r10], 0x1e
je 0x140087663
cmp r9w, 0xd
jne 0x140087211
cmp qword [r14 + 0x20], rdi
jb 0x140087211
mov rax, qword [r14 + 0x18]
cmp byte [rax], 0x52
jne 0x1400871f0
cmp byte [rax + 1], 0x22
jne 0x1400871f0
mov eax, ebx
jmp 0x1400871f4
sbb eax, eax
or eax, esi
test eax, eax
jne 0x140087211
test byte [r14 + 0x40], dil
je 0x140087660
cmp dword [r14 + 0x48], ebx
ja 0x140087663
jmp 0x140087660
mov di, 0x2e
cmp r8d, 0x17
je 0x140087234
cmp r8w, di
jne 0x140087244
mov rax, qword [rbp + 0xc8]
test rax, rax
je 0x140087244
cmp word [rax + 0x10], 0x3f
jne 0x140087244
cmp dword [r14 + 0x78], esi
jne 0x140087244
cmp r11b, 7
je 0x140087663
cmp byte [rdx], 0x1f
jne 0x140087255
mov al, byte [r14 + 0x40]
and al, sil
jmp 0x140087666
mov rcx, rbp
call fcn.1400859e0
test al, al
jne 0x14008746b
mov rcx, r14
call fcn.1400859e0
test al, al
jne 0x14008746b
cmp byte [r10], 0x39
jne 0x140087281
cmp byte [r15 + 0x27], bl
jmp 0x1400872c8
cmp byte [r10], 4
jne 0x14008728c
cmp byte [rdx], 0x3b
jmp 0x1400872c8
cmp byte [r10], 0x2d
jne 0x1400872ce
mov rcx, rbp
call fcn.14008258c
test al, al
je 0x1400872a9
cmp byte [r15 + 0x2b], 2
je 0x140087464
mov al, byte [r15 + 0x2b]
test al, al
je 0x140087663
cmp al, 2
je 0x140087663
cmp dword [rbp + 0xe8], ebx
je 0x1400872ce
cmp al, sil
je 0x140087663
cmp byte [r15 + 0x61], bl
je 0x1400872fb
cmp byte [rdx], 0x2d
jne 0x1400872fb
lea eax, [r8 - 0x1b]
mov ecx, 0xfffc
test cx, ax
jne 0x1400872f1
cmp r8d, 0x1d
jne 0x140087663
cmp byte [r10], 0x4d
je 0x140087663
lea eax, [r11 - 3]
cmp al, sil
ja 0x140087330
cmp byte [r10], 0x2f
jne 0x140087330
cmp byte [rdx], 0x2f
je 0x14008733d
cmp r9w, 0x15
je 0x140087330
mov rax, qword [r12 + 8]
cmp word [rax + 0x10], 0x17
je 0x140087663
cmp byte [r15 + 0x6a], bl
jne 0x140087663
mov eax, 0x50
cmp byte [rdx], al
je 0x140087663
lea eax, [r11 - 7]
test al, 0xfd
jne 0x1400873f7
cmp byte [rdx], 0x48
jne 0x1400873f7
cmp r9w, 0x14
je 0x1400873f7
mov rax, qword [r14 + 0xd0]
test rax, rax
je 0x1400873f7
cmp r8d, 0x48
je 0x140087464
cmp word [rax + 0x10], 0x3d
jne 0x1400873a9
mov rax, qword [rax + 0xd0]
test rax, rax
je 0x1400873dd
cmp word [rax + 0x10], 0x48
jne 0x1400873a9
mov rax, qword [rax + 0xd0]
test rax, rax
je 0x1400873dd
mov rax, qword [rax + 0xd0]
test rax, rax
je 0x1400873dd
cmp word [rax + 0x10], 0x17
jne 0x1400873c9
cmp byte [rax + 0x44], 0x13
je 0x1400873d4
mov rcx, qword [rax + 0xd0]
test rcx, rcx
je 0x1400873c9
cmp word [rcx + 0x10], 0x18
je 0x1400873d4
cmp byte [rax + 0x44], bl
je 0x1400873d4
cmp word [rax + 0x10], di
jne 0x1400873dd
cmp dword [rbp + 0x5c], ebx
je 0x140087663
cmp r8d, 0x33
ja 0x1400873f7
movabs rcx, 0x8000001100000
bt rcx, r8
jb 0x140087663
cmp r11b, sil
je 0x140087402
cmp r11b, 6
jne 0x140087464
cmp r8d, 0x15
jne 0x140087464
cmp dword [rbp + 0x60], ebx
jbe 0x140087464
cmp r9w, r8w
je 0x140087464
cmp byte [rdx], dil
je 0x140087464
cmp dword [rbp + 0x60], esi
ja 0x140087663
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x140087464
mov rax, qword [rcx]
call qword [rax + 0x28]
test rax, rax
je 0x140087464
jmp 0x14008743e
cmp word [rax + 0x10], 4
jne 0x14008744c
mov rax, qword [rax + 0xd0]
test rax, rax
jne 0x140087437
jmp 0x140087464
cmp byte [rax + 0x44], dil
je 0x140087464
cmp word [rax + 0x10], 0x17
je 0x140087464
cmp word [rax + 0x10], 0x37
jne 0x140087663
xor al, al
jmp 0x140087666
mov rcx, r12
call fcn.14008594c
mov rdi, rax
test rax, rax
je 0x1400874c6
mov rcx, qword [r13 + 8]
mov rdx, qword [rcx + 0x1f8]
lea rcx, [rax + 0x10]
test rdx, rdx
je 0x1400874a7
movzx eax, word [rcx]
sub ax, 7
cmp ax, 0xb
jbe 0x1400874a7
cmp word [rcx], si
je 0x1400874a7
cmp rdx, qword [rdi + 8]
je 0x1400874c1
movzx eax, word [rcx]
mov ecx, 0x8e
cmp ax, cx
je 0x1400874c1
mov ecx, 0x8c
sub ax, cx
cmp ax, si
ja 0x1400874c6
mov r14b, sil
jmp 0x1400874c9
mov r14b, bl
cmp byte [r15 + 0x58], bl
je 0x140087548
mov rbp, qword [r12]
test rbp, rbp
je 0x140087528
cmp word [rbp + 0x10], 4
jne 0x1400874fc
mov rcx, qword [rbp + 0xd0]
test rcx, rcx
je 0x1400874fc
mov edx, 0x56
call fcn.14006aa04
mov ecx, 0x56
jmp 0x140087508
mov ecx, 0x56
cmp word [rbp + 0x10], cx
sete al
test al, al
jne 0x140087663
mov r8d, ecx
mov edx, 0x6a
mov rcx, rbp
call fcn.14006aa2c
test al, al
jne 0x140087663
test r14b, r14b
je 0x140087548
mov rax, qword [rdi + 0xd0]
test rax, rax
je 0x140087548
mov ecx, 0x56
cmp word [rax + 0x10], cx
je 0x140087663
cmp byte [r15 + 0x56], bl
je 0x1400875e8
test r14b, r14b
je 0x140087591
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x140087591
mov rax, qword [r13 + 8]
mov rdx, qword [rax + 0x128]
test rdx, rdx
je 0x140087591
movzx eax, word [rcx + 0x10]
sub ax, 7
cmp ax, 0xb
jbe 0x140087591
cmp word [rcx + 0x10], si
je 0x140087591
cmp rdx, qword [rcx + 8]
je 0x140087663
mov rax, qword [r13 + 8]
mov r8, qword [r12]
mov rdx, qword [rax + 0x128]
test r8, r8
je 0x1400875e8
cmp word [r8 + 0x10], 4
jne 0x1400875c7
mov rcx, qword [r8 + 0xd0]
test rcx, rcx
je 0x1400875c7
call fcn.140081f7c
test al, al
je 0x1400875e8
jmp 0x140087663
test rdx, rdx
je 0x1400875e8
movzx eax, word [r8 + 0x10]
sub ax, 7
cmp ax, 0xb
jbe 0x1400875e8
cmp word [r8 + 0x10], si
je 0x1400875e8
cmp rdx, qword [r8 + 8]
je 0x140087663
mov rdi, qword [r12]
test rdi, rdi
je 0x140087660
cmp word [rdi + 0x10], 4
jne 0x140087610
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x140087610
mov edx, 0x80
call fcn.14006aa04
jmp 0x14008761c
mov eax, 0x80
cmp word [rdi + 0x10], ax
sete al
test al, al
je 0x14008762b
cmp byte [r15 + 0x56], bl
jne 0x140087663
test rdi, rdi
je 0x140087660
cmp word [rdi + 0x10], 4
jne 0x14008764a
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x14008764a
mov edx, 0x68
call fcn.14006aa04
jmp 0x140087656
mov eax, 0x68
cmp word [rdi + 0x10], ax
sete al
test al, al
je 0x140087660
cmp byte [r15 + 0x5c], bl
jne 0x140087663
mov sil, bl
mov al, sil
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret