Function at 0x1012e1c0
Capabilities:
Parse credit card information

Disassembly:
push ebx
mov ebx, eax
mov eax, dword [ebx + 4]
mov cl, byte [eax]
push edi
cmp cl, 0x2e
jne 0x1012e20a
mov edi, dword [ebx + 0x1c]
test edi, edi
jne 0x1012e1ea
push 6
mov edi, ebx
call fcn.1012a830
add esp, 4
inc dword [ebx + 4]
pop edi
mov dword [ebx + 0x1c], eax
pop ebx
ret
cmp dword [edi + 4], 3
jne 0x1012e204
mov eax, dword [ebx + 0xc]
push 0
push 0
push 0
push 6
push eax
call fcn.1012abc0
add esp, 0x14
inc dword [ebx + 4]
pop edi
pop ebx
ret
push esi
cmp cl, 0x5c
je 0x1012e227
mov esi, str.Escaped_sequence:_expecting__
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.1012a690
pop esi
pop edi
pop ebx
ret
lea edx, [eax + 1]
mov dword [ebx + 4], edx
movzx esi, byte [edx]
cmp esi, 0x70
jne 0x1012e264
lea eax, [edx + 1]
mov dword [ebx + 4], eax
cmp byte [eax], 0x7b
je 0x1012e257
mov esi, str.Expecting_
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.1012a690
pop esi
pop edi
pop ebx
ret
inc eax
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.1012de20
jmp 0x1012e2a0
cmp esi, 0x50
jne 0x1012e2c7
lea eax, [edx + 1]
mov dword [ebx + 4], eax
cmp byte [eax], 0x7b
je 0x1012e28b
mov esi, str.Expecting_
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.1012a690
pop esi
pop edi
pop ebx
ret
inc eax
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.1012de20
mov ecx, dword [ebx + 0x1c]
mov dword [ecx + 0x1c], 1
mov eax, dword [ebx + 4]
cmp byte [eax], 0x7d
je 0x1012e2bf
mov esi, 0x1018f34c
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.1012a690
pop esi
pop edi
pop ebx
ret
pop esi
inc eax
pop edi
mov dword [ebx + 4], eax
pop ebx
ret
cmp esi, 0x6e
je 0x1012e43f
cmp esi, 0x72
je 0x1012e43f
cmp esi, 0x74
je 0x1012e43f
cmp esi, 0x5c
je 0x1012e43f
cmp esi, 0x7c
je 0x1012e43f
cmp esi, 0x2e
je 0x1012e43f
cmp esi, 0x3f
je 0x1012e43f
cmp esi, 0x2a
je 0x1012e43f
cmp esi, 0x2b
je 0x1012e43f
cmp esi, 0x28
je 0x1012e43f
cmp esi, 0x29
je 0x1012e43f
cmp esi, 0x7b
je 0x1012e43f
cmp esi, 0x7d
je 0x1012e43f
cmp esi, 0x2d
je 0x1012e43f
cmp esi, 0x5b
je 0x1012e43f
cmp esi, 0x5d
je 0x1012e43f
cmp esi, 0x5e
je 0x1012e43f
cmp esi, 0x73
je 0x1012e3a9
cmp esi, 0x53
je 0x1012e3a9
cmp esi, 0x69
je 0x1012e3a9
cmp esi, 0x49
je 0x1012e3a9
cmp esi, 0x63
je 0x1012e3a9
cmp esi, 0x43
je 0x1012e3a9
cmp esi, 0x64
je 0x1012e3a9
cmp esi, 0x44
je 0x1012e3a9
cmp esi, 0x77
je 0x1012e3a9
cmp esi, 0x57
je 0x1012e3a9
mov esi, str.Wrong_escape_sequence__misuse_of_character_
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.1012a690
pop esi
pop edi
pop ebx
ret
lea ecx, [esi - 0x43]
mov eax, 7
cmp ecx, 0x34
ja case.0x1012e3bd.69
movzx ecx, byte [ecx + 0x1012e50c]
jmp dword [ecx*4 + 0x1012e4e0]
mov eax, 8
jmp case.0x1012e3bd.69
mov eax, 9
jmp case.0x1012e3bd.69
mov eax, 0xa
jmp case.0x1012e3bd.69
mov eax, 0xb
jmp case.0x1012e3bd.69
mov eax, 0xc
jmp case.0x1012e3bd.69
mov eax, 0xd
jmp case.0x1012e3bd.69
mov eax, 0xe
jmp case.0x1012e3bd.69
mov eax, 0xf
jmp case.0x1012e3bd.69
mov eax, 0x10
mov edi, dword [ebx + 0x1c]
inc edx
mov dword [ebx + 4], edx
test edi, edi
jne 0x1012e41e
push eax
mov edi, ebx
call fcn.1012a830
add esp, 4
pop esi
pop edi
mov dword [ebx + 0x1c], eax
pop ebx
ret
cmp dword [edi + 4], 3
jne 0x1012e4db
mov edx, dword [ebx + 0xc]
push 0
push 0
push 0
push eax
push edx
call fcn.1012abc0
add esp, 0x14
pop esi
pop edi
pop ebx
ret
mov edi, dword [ebx + 0x1c]
test edi, edi
jne 0x1012e49e
push 2
mov edi, ebx
call fcn.1012a830
add esp, 4
mov dword [ebx + 0x1c], eax
test eax, eax
je 0x1012e4d8
mov ecx, esi
sub ecx, 0x6e
je 0x1012e490
sub ecx, 4
je 0x1012e482
sub ecx, 2
je 0x1012e474
mov dword [eax + 0x20], esi
inc dword [ebx + 4]
pop esi
pop edi
pop ebx
ret
pop esi
mov dword [eax + 0x20], 9
inc dword [ebx + 4]
pop edi
pop ebx
ret
pop esi
mov dword [eax + 0x20], 0xd
inc dword [ebx + 4]
pop edi
pop ebx
ret
pop esi
mov dword [eax + 0x20], 0xa
inc dword [ebx + 4]
pop edi
pop ebx
ret
cmp dword [edi + 4], 3
jne 0x1012e4d8
mov eax, esi
sub eax, 0x6e
je 0x1012e4c1
sub eax, 4
je 0x1012e4ba
sub eax, 2
jne 0x1012e4c6
lea esi, [eax + 9]
jmp 0x1012e4c6
mov esi, 0xd
jmp 0x1012e4c6
mov esi, 0xa
mov eax, dword [ebx + 0xc]
push 0
push esi
push esi
push 2
push eax
call fcn.1012abc0
add esp, 0x14
inc dword [ebx + 4]
pop esi
pop edi
pop ebx
ret