Function at 0x1402a2007
Capabilities:
Validate payment card number using luhn algorithm

Disassembly:
push rax
pushf
mov eax, 0x65f20413
pushf
not eax
add eax, 0xcc821dcb
xor eax, 0xfbc40394
rol eax, 0xb
popf
pushf
not eax
add eax, 0xdcc8b096
xor eax, 0xebcdcdd4
rol eax, 0x37
popf
pushf
not eax
add eax, 0xca4f9500
xor eax, 0xe2e622ff
rol eax, 0x89
popf
pushf
not eax
add eax, 0xd9a89d14
xor eax, 0xd6fe3e42
rol eax, 0x89
popf
cmp eax, 4
jne 0x1401070e0
popf
pop rax
jmp 0x1401073e8
cmp eax, 0
jne 0x1401070ef
popf
pop rax
jmp 0x140107176
cmp eax, 3
jne 0x1401070fe
popf
pop rax
jmp 0x1401072c3
cmp eax, 1
jne 0x14010710d
popf
pop rax
jmp 0x140107223
cmp eax, 0xa
jne 0x14010711c
popf
pop rax
jmp 0x140107689
cmp eax, 7
jne 0x14010712b
popf
pop rax
jmp 0x14010754e
cmp eax, 6
jne 0x14010713a
popf
pop rax
jmp 0x140107485
cmp eax, 2
jne 0x140107149
popf
pop rax
jmp 0x14010727a
cmp eax, 9
jne 0x140107158
popf
pop rax
jmp 0x140107654
cmp eax, 8
jne 0x140107167
popf
pop rax
jmp 0x140107585
cmp eax, 5
jne 0x140107176
popf
pop rax
jmp 0x14010747c
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
xor r15d, r15d
mov ebp, r9d
mov rsi, r8
mov rbx, rdx
mov r10d, ecx
mov r11, rdx
mov edi, r15d
cmp byte [rsp + 0x60], r15b
je 0x1401071f0
push rax
pushf
mov eax, 0x770fef7e
pushf
not eax
add eax, 0xec720714
xor eax, 0xe13afd2a
rol eax, 0xc4
popf
pushf
not eax
add eax, 0xec461a13
xor eax, 0xe107510c
rol eax, 0x98
popf
pushf
not eax
add eax, 0xe2f549b4
xor eax, 0xc9ad9974
rol eax, 0xc6
popf
jmp 0x1401070d1
push rax
pushf
mov eax, 0x2660c6a6
pushf
not eax
add eax, 0xf7aa518b
xor eax, 0xb1210ac4
rol eax, 0x39
popf
pushf
not eax
add eax, 0xca34002f
xor eax, 0xa9732f2e
rol eax, 0x84
popf
jmp 0x1401070d1
lea eax, [r15 + 0x2d]
neg r10d
mov word [rdx], ax
lea edi, [rax - 0x2c]
lea r11, [rdx + 2]
push rax
pushf
mov eax, 0x981bf1b
pushf
not eax
add eax, 0xc9bed998
xor eax, 0xe2c2ff30
rol eax, 0xe6
popf
pushf
not eax
add eax, 0xc7b0a21a
xor eax, 0xd41aa114
rol eax, 0x61
popf
pushf
not eax
add eax, 0x9a8a4ebe
xor eax, 0xf32c72b2
rol eax, 0xb0
popf
jmp 0x1401070d1
mov r8, r11
push rax
pushf
mov eax, 0xc3c97372
pushf
not eax
add eax, 0xd52f9c30
xor eax, 0xaa7dd1eb
rol eax, 0xbd
popf
pushf
not eax
add eax, 0xac26bcd2
xor eax, 0xe7271735
rol eax, 0x4c
popf
pushf
not eax
add eax, 0xd6df6926
xor eax, 0x943645eb
rol eax, 0x3e
popf
jmp 0x1401070d1
xor edx, edx
mov eax, r10d
div ebp
mov eax, r10d
mov r9, r11
mov ecx, edx
xor edx, edx
div ebp
cmp ecx, 9
lea rdx, [r11 + 2]
mov r10d, eax
mov eax, 0x17489b6f
pushf
not eax
add eax, 0xd1d62c8d
xor eax, 0xc4f4ac43
rol eax, 0x5f
popf
pushf
not eax
add eax, 0x9ce0966a
xor eax, 0xe3843554
rol eax, 0xa
popf
pushf
not eax
add eax, 0xee7c90be
xor eax, 0xf1b697e7
rol eax, 0x17
popf
pushf
not eax
add eax, 0xc663b2a8
xor eax, 0xe2044f86
rol eax, 0x88
popf
lea r14d, [rax - 0x27]
cmovbe ax, r14w
inc rdi
add ax, cx
mov word [r11], ax
test r10d, r10d
je 0x14010738f
push rax
pushf
mov eax, 0x7c663301
pushf
not eax
add eax, 0xd7158ed0
xor eax, 0xebb1fcbc
rol eax, 0x59
popf
pushf
not eax
add eax, 0xaa6ca0fa
xor eax, 0xde339d4d
rol eax, 0x8a
popf
pushf
not eax
add eax, 0xc5b9c4e1
xor eax, 0xddba2c74
rol eax, 0xb0
popf
jmp 0x1401070d1
push rax
pushf
mov eax, 0xaf19183
pushf
not eax
add eax, 0x9b0afc2e
xor eax, 0xd4a504fb
rol eax, 0x5d
popf
pushf
not eax
add eax, 0xe3c1a1f2
xor eax, 0xb2d7ec9c
rol eax, 0x42
popf
pushf
not eax
add eax, 0xdb8e7a4f
xor eax, 0xa51d7d21
rol eax, 0x2b
popf
pushf
not eax
add eax, 0xfd96980f
xor eax, 0x9e4e7f5a
rol eax, 0x8f
popf
jmp 0x1401070d1
mov r11, rdx
cmp rdi, rsi
jb 0x140107423
push rax
pushf
mov eax, 0x1eebed42
pushf
not eax
add eax, 0x8e329a9e
xor eax, 0xe706a3b9
rol eax, 0x1d
popf
pushf
not eax
add eax, 0xd222e337
xor eax, 0x811ae01a
rol eax, 0x9a
popf
jmp 0x1401070d1
push rax
pushf
mov eax, 0x52230c05
pushf
not eax
add eax, 0xb8d3fe84
xor eax, 0xcfd17b47
rol eax, 0x74
popf
pushf
not eax
add eax, 0xfcdedcc0
xor eax, 0xa4196005
rol eax, 0x57
popf
pushf
not eax
add eax, 0xc2b4e877
xor eax, 0x93d0769d
rol eax, 0xac
popf
pushf
not eax
add eax, 0xa1dbaa0a
xor eax, 0xbce3bbf8
rol eax, 0x9d
popf
jmp 0x1401070d1
cmp rdi, rsi
jb 0x14010754e
mov word [rbx], r15w
call fcn.1401a2898
mov ebx, 0x850367a
pushf
not ebx
add ebx, 0xcba04f23
xor ebx, 0xc769a22a
rol ebx, 0x63
popf
pushf
not ebx
add ebx, 0xa4119dbd
xor ebx, 0xdfd8cf59
rol ebx, 0x5a
popf
pushf
not ebx
add ebx, 0xd36ad6ea
xor ebx, 0xbda38443
rol ebx, 0x94
popf
pushf
not ebx
add ebx, 0x9758e617
xor ebx, 0xae84e818
rol ebx, 0x3a
popf
mov dword [rax], ebx
call fcn.140214e54
mov eax, ebx
jmp 0x140107689
mov word [rdx], r15w
push rax
pushf
mov eax, 0x5e446f2e
pushf
not eax
add eax, 0xcdeedbec
xor eax, 0xd0eb59d5
rol eax, 0x1d
popf
pushf
not eax
add eax, 0xab47cdab
xor eax, 0x935fa6bd
rol eax, 0xdd
popf
jmp 0x1401070d1
movzx eax, word [r8]
movzx ecx, word [r9]
mov word [r9], ax
sub r9, 2
mov word [r8], cx
add r8, 2
cmp r8, r9
jb 0x1401075fb
push rax
pushf
mov eax, 0x695d15e7
pushf
not eax
add eax, 0x83ad0ed7
xor eax, 0xc9301cda
rol eax, 0x91
popf
pushf
not eax
add eax, 0xc586cf56
xor eax, 0xaaf44358
rol eax, 0x11
popf
pushf
not eax
add eax, 0x81e8d278
xor eax, 0xcc302733
rol eax, 0x32
popf
pushf
not eax
add eax, 0xaab00bfc
xor eax, 0x94066c43
rol eax, 0x5d
popf
jmp 0x1401070d1
push rax
pushf
mov eax, 0x5920bcae
pushf
not eax
add eax, 0xf1d8e503
xor eax, 0xb90e8642
rol eax, 0xe7
popf
pushf
not eax
add eax, 0xe91f4243
xor eax, 0x86a2beb3
rol eax, 0x3a
popf
pushf
not eax
add eax, 0xb61d1a4c
xor eax, 0xc8170dd0
rol eax, 7
popf
pushf
not eax
add eax, 0xcd09b012
xor eax, 0xd0ca955e
rol eax, 0xf6
popf
jmp 0x1401070d1
xor eax, eax
push rax
pushf
mov eax, 0x463ff1fd
pushf
not eax
add eax, 0xedfc504c
xor eax, 0xe7550e16
rol eax, 0xbd
popf
pushf
not eax
add eax, 0xccef16b2
xor eax, 0xced1eca6
rol eax, 0xe8
popf
jmp 0x1401070d1
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
push rax
pushf
mov eax, 0x15144da7
pushf
not eax
add eax, 0xc674a201
xor eax, 0xc587caae
rol eax, 0x73
popf
pushf
not eax
add eax, 0xe86a8bc0
xor eax, 0xf0aee483
rol eax, 0x24
popf
cmp eax, 4
jne 0x1402a2044
popf
pop rax
jmp 0x1402a22c6
cmp eax, 0
jne 0x1402a2053
popf
pop rax
jmp 0x1402a20ad
cmp eax, 3
jne 0x1402a2062
popf
pop rax
jmp 0x1402a220f
cmp eax, 1
jne 0x1402a2071
popf
pop rax
jmp 0x1402a2149
cmp eax, 5
jne 0x1402a2080
popf
pop rax
jmp 0x1402a2389
cmp eax, 7
jne 0x1402a208f
popf
pop rax
jmp 0x1402a2532
cmp eax, 6
jne 0x1402a209e
popf
pop rax
jmp 0x1402a2432
cmp eax, 2
jne 0x1402a20ad
popf
pop rax
jmp 0x1402a2200
push rbx
sub rsp, 0x30
xor eax, eax
mov r10d, ecx
test rdx, rdx
jne 0x1402a20f0
push rax
pushf
mov eax, 0x9b288d09
pushf
not eax
add eax, 0x8a387597
xor eax, 0xf92323d7
rol eax, 0x36
popf
pushf
not eax
add eax, 0xa63bf875
xor eax, 0xcfb66d02
rol eax, 0xda
popf
jmp 0x1402a2035
push rax
pushf
mov eax, 0xec56031b
pushf
not eax
add eax, 0xffce020f
xor eax, 0xadcc5516
rol eax, 0x86
popf
pushf
not eax
add eax, 0xc04afddc
xor eax, 0xb0423b24
rol eax, 0x7e
popf
pushf
not eax
add eax, 0xa1eb3941
xor eax, 0xec810765
rol eax, 0x40
popf
pushf
not eax
add eax, 0x8907d115
xor eax, 0xf3e423c9
rol eax, 0x9a
popf
jmp 0x1402a2035
call fcn.1401a2898
mov ebx, 0x977ea486
pushf
not ebx
add ebx, 0xe9f7bf75
xor ebx, 0xb7b53028
rol ebx, 0x45
popf
pushf
not ebx
add ebx, 0xcfcc84d2
xor ebx, 0xdd70e0d8
rol ebx, 0x45
popf
pushf
not ebx
add ebx, 0xdf32632d
xor ebx, 0xf7ea308c
rol ebx, 0x3f
popf
pushf
not ebx
add ebx, 0xa3d3a140
xor ebx, 0xdbe8fa40
rol ebx, 0xb3
popf
push rax
pushf
mov eax, 0x3630fe57
pushf
not eax
add eax, 0xe3dd182f
xor eax, 0x912331a5
rol eax, 0x27
popf
pushf
not eax
add eax, 0xfed07e7a
xor eax, 0xf8dbef0c
rol eax, 0x3b
popf
pushf
not eax
add eax, 0x8568ea41
xor eax, 0x924d4ecc
rol eax, 0x9c
popf
pushf
not eax
add eax, 0xddd7a48d
xor eax, 0xb84c566a
rol eax, 0xb1
popf
jmp 0x1402a2035
mov dword [rax], ebx
call fcn.140214e54
mov eax, ebx
add rsp, 0x30
pop rbx
ret
test r8, r8
je 0x1402a226d
push rax
pushf
mov eax, 0xa1b29c60
pushf
not eax
add eax, 0x95722394
xor eax, 0xe0ed0aae
rol eax, 0xdb
popf
pushf
not eax
add eax, 0xdd656a91
xor eax, 0xf74b9878
rol eax, 0xf0
popf
pushf
not eax
add eax, 0x9665c2d4
xor eax, 0xa6cedb77
rol eax, 0x64
popf
pushf
not eax
add eax, 0xdf101778
xor eax, 0xf299f519
rol eax, 0x15
popf
jmp 0x1402a2035
push rax
pushf
mov eax, 0x9dfea10a
pushf
not eax
add eax, 0xc7137b6f
xor eax, 0xb74cd9ba
rol eax, 0x17
popf
pushf
not eax
add eax, 0x80265102
xor eax, 0xc4ea0b1e
rol eax, 0x5e
popf
pushf
not eax
add eax, 0xdee8894d
xor eax, 0xcebf02c9
rol eax, 0xf4
popf
pushf
not eax
add eax, 0x8365edc7
xor eax, 0x929d7743
rol eax, 0x3b
popf
jmp 0x1402a2035
movzx ecx, byte [rsp + 0x60]
mov word [rdx], ax
lea rax, [rcx + 1]
cmp r8, rax
ja 0x1402a2330
push rax
pushf
mov eax, 0x2d0fae06
pushf
not eax
add eax, 0x8f3e5f8c
xor eax, 0xaab86e9a
rol eax, 0xcb
popf
pushf
not eax
add eax, 0xb4c4016b
xor eax, 0xf1d8de56
rol eax, 0x1d
popf
pushf
not eax
add eax, 0xc6acf587
xor eax, 0x9b1780cb
rol eax, 0xb2
popf
pushf
not eax
add eax, 0xb9e24a20
xor eax, 0xd594c528
rol eax, 0x96
popf
jmp 0x1402a2035
push rax
pushf
mov eax, 0x882d7f9d
pushf
not eax
add eax, 0x81d4a959
xor eax, 0x8bc35f83
rol eax, 0xe1
popf
pushf
not eax
add eax, 0xee0b26d5
xor eax, 0x8103d60d
rol eax, 0x66
popf
pushf
not eax
add eax, 0xe246b2fa
xor eax, 0xeeb1a366
rol eax, 0xd0
popf
pushf
not eax
add eax, 0xfb3b0223
xor eax, 0xbf45c2a8
rol eax, 0xef
popf
jmp 0x1402a2035
call fcn.1401a2898
mov ebx, 0x19d495ec
pushf
not ebx
add ebx, 0xc8aa5a97
xor ebx, 0xb78bc4b4
rol ebx, 0x84
popf
pushf
not ebx
add ebx, 0xea9434a9
xor ebx, 0xd2f24af6
rol ebx, 0xf8
popf
pushf
not ebx
add ebx, 0xecff4e83
xor ebx, 0x9dfe894e
rol ebx, 0x74
popf
pushf
not ebx
add ebx, 0xf9ffb9c0
xor ebx, 0xe5bd1547
rol ebx, 0x37
popf
jmp 0x1402a2200
lea eax, [r9 - 2]
mov ebx, 0x552b5c4d
pushf
not ebx
add ebx, 0xb3d6874f
xor ebx, 0xe467cc05
rol ebx, 0xc8
popf
pushf
not ebx
add ebx, 0xe210d56c
xor ebx, 0xbebd63eb
rol ebx, 0xa0
popf
pushf
not ebx
add ebx, 0xb50a4555
xor ebx, 0xed1f1476
rol ebx, 7
popf
pushf
not ebx
add ebx, 0xed192c00
xor ebx, 0xa7d6658c
rol ebx, 5
popf
cmp eax, ebx
ja 0x1402a24ec
push rax
pushf
mov eax, 0x9f07ac52
pushf
not eax
add eax, 0x92ad322e
xor eax, 0xb1cf0f67
rol eax, 0xca
popf
pushf
not eax
add eax, 0xf750ea03
xor eax, 0xfb07465d
rol eax, 0x2b
popf
pushf
not eax
add eax, 0xd21ffe0c
xor eax, 0x8228aa8a
rol eax, 0x18
popf
pushf
not eax
add eax, 0x9d29c9d8
xor eax, 0xccebc065
rol eax, 0xb8
popf
jmp 0x1402a2035
push rax
pushf
mov eax, 0x4521322
pushf
not eax
add eax, 0xf5b74376
xor eax, 0xd4d5d9c8
rol eax, 0x12
popf
pushf
not eax
add eax, 0x878c3e9c
xor eax, 0xeb419d98
rol eax, 0xe1
popf
pushf
not eax
add eax, 0xdb2cfbe9
xor eax, 0xc6708769
rol eax, 0x20
popf
jmp 0x1402a2035
mov byte [rsp + 0x60], cl
mov ecx, r10d
add rsp, 0x30
pop rbx
jmp 0x14010707d