Function at 0x140039ce0
Capabilities:
Parse credit card information

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x2f]
sub rsp, 0x98
mov rax, qword [0x1400c4238]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rsi, rcx
mov r14, r9
mov rcx, qword [rdx + 0x18]
mov rdi, r8
mov rbx, rdx
cmp rcx, 0x10
jb 0x140039d1c
mov rdx, qword [rdx]
mov rax, qword [rbx + 0x10]
lea r15, [rbx + 0x10]
cmp rax, 1
jne 0x140039d37
cmp byte [rdx], 0x2b
jne 0x140039d37
mov r14d, eax
jmp 0x140039dce
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039d43
mov rdx, qword [rbx]
cmp rax, 1
jne 0x140039d54
cmp byte [rdx], 0x2d
jne 0x140039d54
lea r14d, [rax + 1]
jmp 0x140039dce
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039d60
mov rdx, qword [rbx]
cmp rax, 1
jne 0x140039d71
cmp byte [rdx], 0x2a
jne 0x140039d71
lea r14d, [rax + 2]
jmp 0x140039dce
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039d7d
mov rdx, qword [rbx]
cmp rax, 1
jne 0x140039d8e
cmp byte [rdx], 0x2f
jne 0x140039d8e
lea r14d, [rax + 3]
jmp 0x140039dce
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039d9a
mov rdx, qword [rbx]
cmp rax, 1
jne 0x140039dab
cmp byte [rdx], 0x25
jne 0x140039dab
lea r14d, [rax + 4]
jmp 0x140039dce
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039db7
mov rdx, qword [rbx]
cmp rax, 1
jne 0x140039f69
cmp byte [rdx], 0x40
jne 0x140039f69
lea r14d, [rax + 5]
xor eax, eax
lea rdx, [rbp - 0x31]
mov rcx, rsi
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], rax
call fcn.14003a7f0
test al, al
je 0x140039ee5
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.14003a7f0
test al, al
je 0x140039ee5
lea rdx, [0x140000000]
movsxd rax, r14d
mov ecx, dword [rdx + rax*4 + 0x3a448]
add rcx, rdx
jmp rcx
mov rcx, qword [rbp - 0x31]
lea rdx, [rbp - 0x39]
add qword [rbp - 0x39], rcx
mov rcx, rsi
call fcn.14003afd0
jmp 0x14003a410
mov rax, qword [rbp - 0x39]
sub rax, qword [rbp - 0x31]
mov qword [rbp - 0x39], rax
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.14003afd0
jmp 0x14003a410
mov rax, qword [rbp - 0x31]
imul rax, qword [rbp - 0x39]
jmp 0x140039e37
mov rax, qword [rbp - 0x39]
xor edx, edx
div qword [rbp - 0x31]
jmp 0x140039e37
mov rax, qword [rbp - 0x39]
xor edx, edx
div qword [rbp - 0x31]
mov rcx, rsi
mov qword [rbp - 0x39], rdx
lea rdx, [rbp - 0x39]
call fcn.14003afd0
jmp 0x14003a410
mov rax, qword [rbp - 0x31]
lea rdx, [rbp - 0x39]
dec rax
mov rcx, rsi
not rax
and qword [rbp - 0x39], rax
call fcn.14003afd0
jmp 0x14003a410
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0x88
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x39]
call fcn.140035740
lea rdx, str.Not_reached_
mov rcx, qword [rax]
call fcn.140008310
lea rcx, [rbp - 0x39]
call fcn.140035970
xor al, al
jmp 0x14003a412
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0x6a
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x39]
call fcn.140035740
lea rdx, str.Could_not_PopValues_to_get_two_values_for_binary_operation
mov rcx, qword [rax]
call fcn.140008310
cmp qword [rbx + 0x18], 0x10
jb 0x140039f23
mov rbx, qword [rbx]
mov r8, qword [r15]
mov rdx, rbx
mov rcx, rax
call fcn.140009940
lea rdx, [0x1400b9648]
mov rcx, rax
call fcn.140008310
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x140039f4d
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140009940
lea rcx, [rbp - 0x39]
call fcn.140035970
xor al, al
jmp 0x14003a412
mov rdx, rbx
cmp rcx, 0x10
jb 0x140039f75
mov rdx, qword [rbx]
cmp rax, 1
jne 0x14003a102
cmp byte [rdx], 0x5e
jne 0x14003a102
cmp qword [rsi + 8], 0
jne 0x140039fc0
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0x92
mov r8d, eax
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x39]
call fcn.140035740
lea rdx, str.Attempt_to_dereference_without_memory:
mov rcx, qword [rax]
jmp 0x140039f3b
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.14003a7f0
test al, al
jne 0x14003a004
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0x99
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x39]
call fcn.140035740
lea rdx, str.Could_not_PopValue_to_get_value_to_derefence:
mov rcx, qword [rax]
jmp 0x140039f3b
mov rcx, qword [rsi + 8]
lea r8, [rbp - 0x31]
mov rbx, qword [rbp - 0x39]
mov rdx, rbx
mov rax, qword [rcx]
call qword [rax + 0x18]
test al, al
jne 0x14003a0f1
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0xa0
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x39]
call fcn.140035740
lea rdx, str.Could_not_dereference_memory_at_address
mov rcx, qword [rax]
call fcn.140008310
mov rdx, rbx
lea rcx, [rbp - 0x29]
mov rsi, rax
call fcn.140035b50
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x14003a071
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
mov rcx, rsi
call fcn.140009940
lea rdx, [0x1400b9648]
mov rcx, rax
call fcn.140008310
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x14003a099
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140009940
lea rcx, [rbp - 0x39]
call fcn.140035970
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x140039f62
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3dc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a434
jmp 0x14003a3dc
lea rdx, [rbp - 0x31]
mov rcx, rsi
call fcn.14003afd0
jmp 0x14003a410
mov rdx, rbx
cmp rcx, 0x10
jb 0x14003a10e
mov rdx, qword [rbx]
cmp rax, 1
jne 0x14003a3e5
cmp byte [rdx], 0x3d
jne 0x14003a3e5
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.14003a7f0
test al, al
je 0x140039f62
xor eax, eax
mov qword [rbp - 0x11], 0xf
lea r8, [rbp - 0x29]
mov qword [rbp - 0x29], rax
xor edx, edx
mov qword [rbp - 0x19], rax
mov rcx, rsi
call fcn.14003aba0
cmp eax, 2
je 0x14003a22f
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0xb4
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x31]
call fcn.140035740
lea rdx, str.PopValueOrIdentifier_returned_a_value__but_an_identifier_is_needed_to_assign
mov rcx, qword [rax]
call fcn.140008310
mov rdx, qword [rbp - 0x39]
lea rcx, [rbp - 9]
mov rbx, rax
call fcn.140035b50
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x14003a1af
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
mov rcx, rbx
call fcn.140009940
lea rdx, [0x1400b9648]
mov rcx, rax
call fcn.140008310
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x14003a1d7
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140009940
lea rcx, [rbp - 0x31]
call fcn.140035970
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x14003a3a6
mov rcx, qword [rbp - 9]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3a1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a43a
jmp 0x14003a3a1
cmp qword [rbp - 0x19], 0
je 0x14003a2b4
cmp qword [rbp - 0x11], 0x10
lea rax, [rbp - 0x29]
cmovae rax, qword [rbp - 0x29]
cmp byte [rax], 0x24
jne 0x14003a2b4
mov rcx, qword [rsi]
lea rdx, [rbp - 0x29]
call fcn.1400386c0
mov rdx, qword [rbp - 0x39]
mov qword [rax], rdx
test r14, r14
je 0x14003a270
lea rdx, [rbp - 0x29]
mov rcx, r14
call fcn.1400387d0
mov byte [rax], 1
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x14003a410
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a2aa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a42e
call fcn.14005d750
jmp 0x14003a410
lea r9, str.G:opensource__google_breakpad_srcprocessorpostfix_evaluator_inl.h
mov dword [rsp + 0x20], 0xba
mov r8d, 1
lea rdx, [0x1400f9020]
lea rcx, [rbp - 0x31]
call fcn.140035740
lea rdx, str.Cant_assign
mov rcx, qword [rax]
call fcn.140008310
mov rdx, qword [rbp - 0x39]
lea rcx, [rbp - 9]
mov rbx, rax
call fcn.140035b50
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x14003a305
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
mov rcx, rbx
call fcn.140009940
lea rdx, str._to
mov rcx, rax
call fcn.140008310
cmp qword [rbp - 0x11], 0x10
lea rdx, [rbp - 0x29]
mov r8, qword [rbp - 0x19]
mov rcx, rax
cmovae rdx, qword [rbp - 0x29]
call fcn.140009940
lea rdx, [0x1400b9648]
mov rcx, rax
call fcn.140008310
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x14003a356
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140009940
lea rcx, [rbp - 0x31]
call fcn.140035970
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x14003a3a6
mov rcx, qword [rbp - 9]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3a1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a440
call fcn.14005d750
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x140039f62
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3dc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a42e
call fcn.14005d750
xor al, al
jmp 0x14003a412
mov rax, qword [rsi + 0x18]
cmp rax, qword [rsi + 0x20]
je 0x14003a401
mov rdx, rbx
mov rcx, rax
call fcn.1400050b0
add qword [rsi + 0x18], 0x20
jmp 0x14003a410
mov r8, rbx
lea rcx, [rsi + 0x10]
mov rdx, rax
call fcn.14000f0f0
mov al, 1
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.14005d730
add rsp, 0x98
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140069160
int3
call fcn.140069160
int3
call fcn.140069160
int3
call fcn.140069160
int3