Function at 0x100262a0
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, ecx
xor cl, cl
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x10026746
push edi
lea edi, [esi + 8]
push ebx
cmp eax, 0x7c
je 0x10026744
cmp eax, 0x29
jne 0x100262e0
cmp dword [esi + 0x10], 0
jne 0x10026744
test dword [esi + 0x50], 0x10000000
je 0x10026753
jmp 0x100266d7
cmp eax, 0x2e
jne 0x1002633b
push 5
lea ecx, [esi + 0x24]
call fcn.1002a620
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10026725
cmp word [eax], 0x5c
jne 0x10026331
lea ecx, [eax + 2]
cmp ecx, edx
je 0x10026331
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1002631d
movzx edx, word [ecx]
cmp edx, 0x28
je 0x1002632f
cmp edx, 0x29
je 0x1002632f
test bl, 0x10
jne 0x10026331
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x1002632f
cmp edx, 0x7d
jne 0x10026331
mov eax, ecx
add eax, 2
mov dword [esi], eax
jmp 0x10026725
cmp eax, 0x5c
jne 0x1002646f
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10026387
cmp word [eax], 0x5c
jne 0x10026382
lea ecx, [eax + 2]
cmp ecx, edx
je 0x10026382
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x1002636e
movzx edx, word [ecx]
cmp edx, 0x28
je 0x10026380
cmp edx, 0x29
je 0x10026380
test bl, 0x10
jne 0x10026382
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x10026380
cmp edx, 0x7d
jne 0x10026382
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
test byte [esi + 0x50], 0x80
je 0x10026463
movzx eax, word [esi + 0x48]
mov ecx, eax
cmp eax, 0x62
jne 0x100263fc
push 4
lea ecx, [esi + 0x24]
call fcn.1002a620
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100263f0
cmp word [eax], 0x5c
jne 0x100263eb
lea ecx, [eax + 2]
cmp ecx, edx
je 0x100263eb
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x100263d7
movzx edx, word [ecx]
cmp edx, 0x28
je 0x100263e9
cmp edx, 0x29
je 0x100263e9
test bl, 0x10
jne 0x100263eb
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x100263e9
cmp edx, 0x7d
jne 0x100263eb
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
jmp 0x10026736
cmp ecx, 0x42
jne 0x10026463
push 4
lea ecx, [esi + 0x24]
call fcn.1002a620
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10026457
cmp word [eax], 0x5c
jne 0x10026452
lea ecx, [eax + 2]
cmp ecx, edx
je 0x10026452
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002643e
movzx eax, word [ecx]
cmp eax, 0x28
je 0x10026450
cmp eax, 0x29
je 0x10026450
mov eax, dword [esi]
test dl, 0x10
jne 0x10026452
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x10026450
cmp edx, 0x7d
jne 0x10026452
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
jmp 0x10026736
mov ecx, esi
call fcn.100268c0
jmp 0x1002672c
cmp eax, 0x5b
jne 0x1002655f
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100264bd
cmp word [eax], 0x5c
jne 0x100264b8
lea ecx, [eax + 2]
cmp ecx, edx
je 0x100264b8
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x100264a4
movzx eax, word [ecx]
cmp eax, 0x28
je 0x100264b6
cmp eax, 0x29
je 0x100264b6
mov eax, dword [esi]
test dl, 0x10
jne 0x100264b8
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x100264b6
cmp edx, 0x7d
jne 0x100264b8
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
lea ecx, [esi + 0x24]
call fcn.10024f80
mov eax, dword [esi + 0x4c]
cmp eax, 0x5e
jne 0x1002652a
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10026520
cmp word [eax], 0x5c
jne 0x1002651b
lea ecx, [eax + 2]
cmp ecx, edx
je 0x1002651b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x10026507
movzx eax, word [ecx]
cmp eax, 0x28
je 0x10026519
cmp eax, 0x29
je 0x10026519
mov eax, dword [esi]
test dl, 0x10
jne 0x1002651b
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x10026519
cmp edx, 0x7d
jne 0x1002651b
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
mov eax, dword [esi + 0x4c]
test dword [esi + 0x50], 0x20000000
je 0x10026548
cmp eax, 0x5d
jne 0x10026548
push eax
lea ecx, [esi + 0x24]
call fcn.10024e70
mov ecx, esi
call fcn.1002a6f0
mov ecx, esi
call fcn.10027810
push 4
push 0x5d
mov ecx, esi
call fcn.10029640
jmp 0x1002672c
cmp eax, 0x28
jne 0x100265d1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x100265a9
cmp word [eax], 0x5c
jne 0x100265a4
lea ecx, [eax + 2]
cmp ecx, edx
je 0x100265a4
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x10026590
movzx eax, word [ecx]
cmp eax, 0x28
je 0x100265a2
cmp eax, 0x29
je 0x100265a2
mov eax, dword [esi]
test dl, 0x10
jne 0x100265a4
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x100265a2
cmp edx, 0x7d
jne 0x100265a4
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
mov ecx, esi
call fcn.1002afc0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.10029640
test bl, bl
je 0x10026736
jmp 0x1002672c
cmp eax, 0x5e
jne 0x10026631
push 2
lea ecx, [esi + 0x24]
call fcn.1002a620
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x10026625
cmp word [eax], 0x5c
jne 0x10026620
lea ecx, [eax + 2]
cmp ecx, edx
je 0x10026620
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x1002660c
movzx eax, word [ecx]
cmp eax, 0x28
je 0x1002661e
cmp eax, 0x29
je 0x1002661e
mov eax, dword [esi]
test dl, 0x10
jne 0x10026620
movzx edx, word [ecx]
cmp edx, 0x7b
je 0x1002661e
cmp edx, 0x7d
jne 0x10026620
mov eax, ecx
add eax, 2
mov dword [esi], eax
mov ecx, esi
call fcn.1002ac80
jmp 0x10026736
cmp eax, 0x24
jne 0x1002668d
push 3
lea ecx, [esi + 0x24]
call fcn.1002a620
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x10026681
cmp word [eax], 0x5c
jne 0x1002667e
add eax, 2
cmp eax, ecx
je 0x1002667e
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002666a
movzx edx, word [eax]
cmp edx, 0x28
je 0x1002667c
cmp edx, 0x29
je 0x1002667c
test cl, 0x10
jne 0x1002667e
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x1002667c
cmp ecx, 0x7d
jne 0x1002667e
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002ac80
jmp 0x10026736
cmp eax, 0x2a
je 0x1002674a
cmp eax, 0x2b
je 0x1002674a
cmp eax, 0x3f
je 0x1002674a
cmp eax, 0x7b
je 0x1002674a
cmp eax, 0x7d
jne 0x100266c5
test dword [esi + 0x50], 0x10000000
je 0x1002675c
jmp 0x100266d7
cmp eax, 0x5d
jne 0x100266d7
test dword [esi + 0x50], 0x10000000
je 0x10026765
movzx eax, word [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.10024b90
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x10026725
cmp word [eax], 0x5c
jne 0x10026722
add eax, 2
cmp eax, ecx
je 0x10026722
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x1002670e
movzx edx, word [eax]
cmp edx, 0x28
je 0x10026720
cmp edx, 0x29
je 0x10026720
test cl, 0x10
jne 0x10026722
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x10026720
cmp ecx, 0x7d
jne 0x10026722
mov dword [esi], eax
add dword [esi], 2
mov ecx, esi
call fcn.1002ac80
mov ecx, esi
call fcn.1002a880
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x100262b6
pop ebx
pop edi
mov al, cl
pop esi
ret
push 0xa
mov ecx, esi
call fcn.10029630
push 5
mov ecx, esi
call fcn.10029630
push 6
mov ecx, esi
call fcn.10029630
push 4
mov ecx, esi
call fcn.10029630
int3