Function at 0x767e40
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
mov esi, ecx
xor cl, cl
push edi
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x7682a7
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x7682a7
cmp eax, 0x29
jne 0x767e80
cmp dword [esi + 0x10], 0
jne 0x7682a7
test dword [esi + 0x50], 0x10000000
je 0x7682b4
jmp 0x768240
cmp eax, 0x2e
jne 0x767ed3
push 5
lea ecx, [esi + 0x24]
call fcn.007682d0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x768288
cmp byte [eax], 0x5c
jne 0x76808f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x76808f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x767ecb
mov dl, byte [ecx]
cmp dl, 0x28
je 0x76808d
cmp dl, 0x29
je 0x76808d
test bl, 0x10
jmp 0x76807f
cmp eax, 0x5c
jne 0x767ff1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x767f1a
cmp byte [eax], 0x5c
jne 0x767f17
lea ecx, [eax + 1]
cmp ecx, edx
je 0x767f17
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x767f04
mov dl, byte [ecx]
cmp dl, 0x28
je 0x767f15
cmp dl, 0x29
je 0x767f15
test bl, 0x10
jne 0x767f17
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x767f15
cmp dl, 0x7d
jne 0x767f17
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
test byte [esi + 0x50], 0x80
je 0x767fe5
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x767f86
push 4
lea ecx, [esi + 0x24]
call fcn.007682d0
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x767f7a
cmp byte [eax], 0x5c
jne 0x767f77
lea ecx, [eax + 1]
cmp ecx, edx
je 0x767f77
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x767f64
mov dl, byte [ecx]
cmp dl, 0x28
je 0x767f75
cmp dl, 0x29
je 0x767f75
test bl, 0x10
jne 0x767f77
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x767f75
cmp dl, 0x7d
jne 0x767f77
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
jmp 0x768299
cmp al, 0x42
jne 0x767fe5
push 4
lea ecx, [esi + 0x24]
call fcn.007682d0
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x767fd9
cmp byte [eax], 0x5c
jne 0x767fd6
lea ecx, [eax + 1]
cmp ecx, edx
je 0x767fd6
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x767fc3
mov al, byte [ecx]
cmp al, 0x28
je 0x767fd4
cmp al, 0x29
je 0x767fd4
mov eax, dword [esi]
test dl, 0x10
jne 0x767fd6
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x767fd4
cmp dl, 0x7d
jne 0x767fd6
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
jmp 0x768299
mov ecx, esi
call fcn.007697f0
jmp 0x76828f
cmp eax, 0x5b
jne 0x768097
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x768038
cmp byte [eax], 0x5c
jne 0x768035
lea ecx, [eax + 1]
cmp ecx, edx
je 0x768035
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x768022
mov al, byte [ecx]
cmp al, 0x28
je 0x768033
cmp al, 0x29
je 0x768033
mov eax, dword [esi]
test dl, 0x10
jne 0x768035
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x768033
cmp dl, 0x7d
jne 0x768035
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
mov ecx, esi
call fcn.007696c0
cmp dword [esi + 0x4c], 0x5d
jne 0x7682c2
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x768288
cmp byte [eax], 0x5c
jne 0x76808f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x76808f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x76807c
mov al, byte [ecx]
cmp al, 0x28
je 0x76808d
cmp al, 0x29
je 0x76808d
mov eax, dword [esi]
test dl, 0x10
jne 0x76808f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x76808d
cmp dl, 0x7d
jne 0x76808f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x768288
cmp eax, 0x28
jne 0x76814a
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x7680de
cmp byte [eax], 0x5c
jne 0x7680db
lea ecx, [eax + 1]
cmp ecx, edx
je 0x7680db
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x7680c8
mov al, byte [ecx]
cmp al, 0x28
je 0x7680d9
cmp al, 0x29
je 0x7680d9
mov eax, dword [esi]
test dl, 0x10
jne 0x7680db
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x7680d9
cmp dl, 0x7d
jne 0x7680db
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
mov ecx, esi
call fcn.00769940
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x7682b4
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x768136
cmp byte [eax], 0x5c
jne 0x768133
lea ecx, [eax + 1]
cmp ecx, edx
je 0x768133
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x768120
mov al, byte [ecx]
cmp al, 0x28
je 0x768131
cmp al, 0x29
je 0x768131
mov eax, dword [esi]
test dl, 0x10
jne 0x768133
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x768131
cmp dl, 0x7d
jne 0x768133
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00764cb0
test bl, bl
je 0x768299
jmp 0x76828f
cmp eax, 0x5e
jne 0x7681a0
push 2
lea ecx, [esi + 0x24]
call fcn.007682d0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x768194
cmp byte [eax], 0x5c
jne 0x768192
inc eax
cmp eax, ecx
je 0x768192
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x76817f
mov dl, byte [eax]
cmp dl, 0x28
je 0x768190
cmp dl, 0x29
je 0x768190
test cl, 0x10
jne 0x768192
mov cl, byte [eax]
cmp cl, 0x7b
je 0x768190
cmp cl, 0x7d
jne 0x768192
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00764cb0
jmp 0x768299
cmp eax, 0x24
jne 0x7681f6
push 3
lea ecx, [esi + 0x24]
call fcn.007682d0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x7681ea
cmp byte [eax], 0x5c
jne 0x7681e8
inc eax
cmp eax, ecx
je 0x7681e8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x7681d5
mov dl, byte [eax]
cmp dl, 0x28
je 0x7681e6
cmp dl, 0x29
je 0x7681e6
test cl, 0x10
jne 0x7681e8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x7681e6
cmp cl, 0x7d
jne 0x7681e8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00764cb0
jmp 0x768299
cmp eax, 0x2a
je 0x7682ad
cmp eax, 0x2b
je 0x7682ad
cmp eax, 0x3f
je 0x7682ad
cmp eax, 0x7b
je 0x7682ad
cmp eax, 0x7d
jne 0x76822e
test dword [esi + 0x50], 0x10000000
je 0x7682bb
jmp 0x768240
cmp eax, 0x5d
jne 0x768240
test dword [esi + 0x50], 0x10000000
je 0x7682c2
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.00769dd0
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x768288
cmp byte [eax], 0x5c
jne 0x768286
inc eax
cmp eax, ecx
je 0x768286
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x768273
mov dl, byte [eax]
cmp dl, 0x28
je 0x768284
cmp dl, 0x29
je 0x768284
test cl, 0x10
jne 0x768286
mov cl, byte [eax]
cmp cl, 0x7b
je 0x768284
cmp cl, 0x7d
jne 0x768286
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00764cb0
mov ecx, esi
call fcn.00769ba0
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x767e56
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00764ca0
push 5
call fcn.00764ca0
push 6
call fcn.00764ca0
push 4
call fcn.00764ca0
int3