Function at 0x6e7fa090
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x1c
mov eax, dword [0x6e86702c]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 0x98]
cmp dword [ecx + 0x94], eax
je 0x6e7fa100
mov eax, dword [ecx + 0x7c]
test eax, eax
je 0x6e7fa0d0
cmp eax, 2
je 0x6e7fa0e8
cmp eax, 1
je 0x6e7fa110
mov eax, dword [esp + 0xc]
sub eax, dword [0x6e86702c]
jne 0x6e7fa124
add esp, 0x1c
ret
mov eax, dword [esp + 0xc]
sub eax, dword [0x6e86702c]
jne 0x6e7fa124
add esp, 0x1c
jmp 0x6e7fa200
mov eax, dword [esp + 0xc]
sub eax, dword [0x6e86702c]
jne 0x6e7fa124
add esp, 0x1c
jmp 0x6e7fabe0
mov dword [ecx + 0x84], 0x1b
jmp 0x6e7fa0bb
mov eax, dword [esp + 0xc]
sub eax, dword [0x6e86702c]
jne 0x6e7fa124
add esp, 0x1c
jmp fcn.6e7fa5d0
call fcn.6e741590
nop
nop
nop
nop
nop
nop
nop
push ebp
mov ebp, ecx
push edi
push esi
push ebx
lea ebx, [ecx + 0xa0]
mov ecx, ebx
sub esp, 0x2c
mov eax, dword [0x6e86702c]
mov dword [esp + 0x1c], eax
xor eax, eax
mov edi, dword [esp + 0x40]
call fcn.6e7e0940
mov eax, dword [ebp + 0x94]
mov edx, dword [ebp + 0x98]
mov esi, edi
cmp edx, eax
jne 0x6e7fa199
jmp 0x6e7fa1e0
lea edx, [eax + 1]
mov ecx, ebx
mov dword [ebp + 0x94], edx
movsx eax, byte [eax]
mov dword [esp], eax
call fcn.6e7e3ab0
mov eax, dword [ebp + 0x94]
mov edx, dword [ebp + 0x98]
sub esp, 4
cmp eax, edx
je 0x6e7fa1e0
mov ecx, esi
cmp byte [eax], cl
jne 0x6e7fa170
cmp eax, edx
je 0x6e7fa1e0
lea ecx, [eax + 1]
mov ebx, edi
mov dword [ebp + 0x94], ecx
cmp byte [eax], bl
jne 0x6e7fa1e0
cmp ecx, edx
je 0x6e7fa1e0
lea edx, [eax + 2]
mov dword [ebp + 0x94], edx
cmp byte [eax + 1], 0x5d
jne 0x6e7fa1e0
mov eax, dword [esp + 0x1c]
sub eax, dword [0x6e86702c]
jne 0x6e7fa1f2
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov eax, edi
cmp al, 0x3a
sete al
movzx eax, al
mov dword [esp], eax
call fcn.6e815e10
call fcn.6e741590
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x20
mov eax, dword [0x6e86702c]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x94]
lea edx, [eax + 1]
mov dword [ecx + 0x94], edx
movzx esi, byte [eax]
mov ecx, dword [ecx + 0x9c]
mov dword [esp + 4], 0x20
mov eax, esi
movsx edi, al
mov dword [esp], edi
call fcn.6e7666a0
sub esp, 8
movsx eax, al
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x8c]
mov dword [esp], eax
call sub.msvcrt.dll_strchr
test eax, eax
je 0x6e7fa490
mov eax, esi
cmp al, 0x5c
je 0x6e7fa330
mov eax, esi
cmp al, 0x28
je 0x6e7fa2e0
cmp al, 0x29
je 0x6e7fa450
cmp al, 0x5b
je 0x6e7fa460
cmp al, 0x7b
je 0x6e7fa400
test al, al
je 0x6e7fa530
movsx edx, al
and eax, 0xffffffdf
cmp al, 0x5d
je 0x6e7fa4c0
mov ecx, dword [ebx + 0x9c]
mov dword [esp], edx
mov esi, ebx
call fcn.6e766710
movzx edx, byte [ebx]
sub esp, 4
test dl, dl
jne 0x6e7fa2cb
jmp 0x6e7fa316
movzx edx, byte [esi + 8]
add esi, 8
test dl, dl
je 0x6e7fa316
cmp dl, al
jne 0x6e7fa2c0
mov eax, dword [esi + 4]
mov dword [ebx + 0x84], eax
jmp 0x6e7fa316
mov esi, dword [ebx + 0x80]
mov eax, esi
call fcn.6e798bd0
test al, al
jne 0x6e7fa380
mov dword [esp + 4], 2
mov dword [esp], esi
call fcn.6e7cf600
cmp eax, 1
mov eax, 5
sbb eax, 0xffffffff
mov dword [ebx + 0x84], eax
mov eax, dword [esp + 0x1c]
sub eax, dword [0x6e86702c]
jne 0x6e7fa5a0
add esp, 0x20
pop ebx
pop esi
pop edi
ret
mov esi, dword [ebx + 0x94]
cmp esi, dword [ebx + 0x98]
je 0x6e7fa5bd
mov eax, dword [ebx + 0x80]
call fcn.6e798c10
test al, al
je 0x6e7fa420
movzx eax, byte [esi]
lea edx, [eax - 0x28]
cmp dl, 1
jbe 0x6e7fa368
cmp al, 0x7b
jne 0x6e7fa420
lea eax, [esi + 1]
mov dword [ebx + 0x94], eax
movzx esi, byte [esi]
jmp 0x6e7fa268
mov eax, dword [ebx + 0x94]
cmp byte [eax], 0x3f
jne 0x6e7fa2f5
lea edx, [eax + 1]
mov dword [ebx + 0x94], edx
cmp edx, dword [ebx + 0x98]
je 0x6e7fa5b1
movzx edx, byte [eax + 1]
cmp dl, 0x3a
je 0x6e7fa510
cmp dl, 0x3d
je 0x6e7fa56b
cmp dl, 0x21
jne 0x6e7fa5bd
add eax, 2
lea ecx, [ebx + 0xa0]
mov dword [ebx + 0x84], 7
mov dword [ebx + 0x94], eax
mov dword [esp + 4], 0x6e
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fa316
mov dword [ebx + 0x7c], 1
mov dword [ebx + 0x84], 0xc
jmp 0x6e7fa316
mov ecx, dword [ebx + 0xbc]
mov eax, dword [ebx + 0xb8]
add ecx, ebx
test al, 1
je 0x6e7fa438
mov edx, dword [ecx]
mov eax, dword [edx + eax - 1]
mov edx, dword [esp + 0x1c]
sub edx, dword [0x6e86702c]
jne 0x6e7fa5a0
add esp, 0x20
pop ebx
pop esi
pop edi
jmp eax
mov dword [ebx + 0x84], 8
jmp 0x6e7fa316
mov dword [ebx + 0x7c], 2
mov eax, dword [ebx + 0x94]
mov byte [ebx + 0x90], 1
cmp eax, dword [ebx + 0x98]
je 0x6e7fa481
cmp byte [eax], 0x5e
je 0x6e7fa4f0
mov dword [ebx + 0x84], 9
jmp 0x6e7fa316
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], edi
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fa316
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], edx
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fa316
mov dword [ebx + 0x84], 0xa
add eax, 1
mov dword [ebx + 0x94], eax
jmp 0x6e7fa316
mov dword [ebx + 0x84], 6
add eax, 2
mov dword [ebx + 0x94], eax
jmp 0x6e7fa316
mov eax, dword [ebx + 0x80]
call fcn.6e798bd0
test al, al
je 0x6e7fa5a5
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fa316
add eax, 2
lea ecx, [ebx + 0xa0]
mov dword [ebx + 0x84], 7
mov dword [ebx + 0x94], eax
mov dword [esp + 4], 0x70
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fa316
call fcn.6e741590
mov dword [esp], 0xd
call fcn.6e815e10
mov dword [esp], 5
call fcn.6e815e10
call fcn.6e8144b0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push esi
push ebx
mov ebx, ecx
sub esp, 0x34
mov eax, dword [0x6e86702c]
mov dword [esp + 0x2c], eax
mov eax, dword [ecx + 0x94]
mov ecx, dword [ecx + 0x98]
cmp eax, ecx
je 0x6e7fadb1
lea esi, [eax + 1]
mov dword [ebx + 0x94], esi
movsx edx, byte [eax]
cmp dl, 0x2d
je 0x6e7facf0
cmp dl, 0x5b
je 0x6e7faca0
cmp dl, 0x5d
je 0x6e7fad20
cmp dl, 0x5c
jne 0x6e7fac5d
mov esi, dword [ebx + 0x80]
mov byte [esp + 0x1f], dl
mov eax, esi
call fcn.6e798bd0
test al, al
jne 0x6e7fad00
mov eax, esi
call fcn.6e798c50
movsx edx, byte [esp + 0x1f]
test al, al
jne 0x6e7fad00
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], edx
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
mov byte [ebx + 0x90], 0
mov eax, dword [esp + 0x2c]
sub eax, dword [0x6e86702c]
jne 0x6e7fadac
add esp, 0x34
pop ebx
pop esi
ret
cmp ecx, esi
je 0x6e7fadbd
movzx edx, byte [eax + 1]
cmp dl, 0x2e
je 0x6e7fad60
cmp dl, 0x3a
je 0x6e7fada0
cmp dl, 0x3d
je 0x6e7fad90
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], 0x5b
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fac80
mov dword [ebx + 0x84], 0x1c
jmp 0x6e7fac80
mov ecx, dword [ebx + 0xbc]
mov eax, dword [ebx + 0xb8]
add ecx, ebx
test al, 1
je 0x6e7fad18
mov edx, dword [ecx]
mov eax, dword [edx + eax - 1]
call eax
jmp 0x6e7fac80
mov eax, dword [ebx + 0x80]
mov byte [esp + 0x1f], dl
call fcn.6e798bd0
test al, al
jne 0x6e7fad45
cmp byte [ebx + 0x90], 0
movsx edx, byte [esp + 0x1f]
jne 0x6e7fac5d
mov dword [ebx + 0x84], 0xb
mov dword [ebx + 0x7c], 0
jmp 0x6e7fac80
mov dword [ebx + 0x84], 0x10
lea edx, [eax + 2]
mov ecx, ebx
mov dword [ebx + 0x94], edx
movsx eax, byte [eax + 1]
mov dword [esp], eax
call 0x6e7fa130
sub esp, 4
jmp 0x6e7fac80
mov dword [ebx + 0x84], 0x11
jmp 0x6e7fad6a
mov dword [ebx + 0x84], 0xf
jmp 0x6e7fad6a
call fcn.6e741590
mov dword [esp], 4
call fcn.6e815e10
call fcn.6e8144b0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov eax, dword [0x6e86702c]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x94]
cmp eax, dword [ecx + 0x98]
je 0x6e7faf07
movzx edi, byte [eax]
mov ebx, ecx
mov ecx, dword [ecx + 0x9c]
mov eax, edi
movsx esi, al
mov dword [esp], esi
call fcn.6e766710
sub esp, 4
movsx eax, al
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x8c]
mov dword [esp], eax
call sub.msvcrt.dll_strchr
test eax, eax
je 0x6e7fae2f
cmp byte [eax], 0
jne 0x6e7faeb0
mov ebp, dword [ebx + 0x80]
mov eax, ebp
call fcn.6e798c50
test al, al
jne 0x6e7faee8
mov eax, ebp
lea ebp, [ebx + 0xa0]
call fcn.6e798c10
test al, al
je 0x6e7fae70
mov eax, dword [ebx + 0x9c]
mov edx, esi
mov eax, dword [eax + 0x18]
call fcn.6e766480
mov edx, edi
cmp dl, 0x30
je 0x6e7fae70
test al, al
jne 0x6e7faed8
mov dword [ebx + 0x84], 1
mov dword [esp + 4], esi
mov ecx, ebp
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
add dword [ebx + 0x94], 1
mov eax, dword [esp + 0x1c]
sub eax, dword [0x6e86702c]
jne 0x6e7faf02
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebx + 0x84], 1
lea ecx, [ebx + 0xa0]
mov dword [esp + 4], esi
mov dword [esp], 1
call fcn.6e7e1150
sub esp, 8
jmp 0x6e7fae8f
mov dword [ebx + 0x84], 4
jmp 0x6e7fae7a
mov eax, dword [esp + 0x1c]
sub eax, dword [0x6e86702c]
jne 0x6e7faf02
add esp, 0x2c
mov ecx, ebx
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.6e7fa770
call fcn.6e741590
mov dword [esp], 2
call fcn.6e815e10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop