Function at 0x47cb10
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 0x47cb5a
mov edi, dword [ebx + 0x1c]
test edi, edi
jne 0x47cb3a
push 6
mov edi, ebx
call fcn.00478240
add esp, 4
inc dword [ebx + 4]
pop edi
mov dword [ebx + 0x1c], eax
pop ebx
ret
cmp dword [edi + 4], 3
jne 0x47cb54
mov eax, dword [ebx + 0xc]
push 0
push 0
push 0
push 6
push eax
call fcn.00478e40
add esp, 0x14
inc dword [ebx + 4]
pop edi
pop ebx
ret
push esi
cmp cl, 0x5c
je 0x47cb77
mov esi, str.Escaped_sequence:_expecting__
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.00477a50
pop esi
pop edi
pop ebx
ret
lea edx, [eax + 1]
mov dword [ebx + 4], edx
movzx esi, byte [edx]
cmp esi, 0x70
jne 0x47cbb4
lea eax, [edx + 1]
mov dword [ebx + 4], eax
cmp byte [eax], 0x7b
je 0x47cba7
mov esi, 0x5e6328
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.00477a50
pop esi
pop edi
pop ebx
ret
inc eax
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.0047c770
jmp 0x47cbf0
cmp esi, 0x50
jne 0x47cc17
lea eax, [edx + 1]
mov dword [ebx + 4], eax
cmp byte [eax], 0x7b
je 0x47cbdb
mov esi, 0x5e6328
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.00477a50
pop esi
pop edi
pop ebx
ret
inc eax
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.0047c770
mov ecx, dword [ebx + 0x1c]
mov dword [ecx + 0x1c], 1
mov eax, dword [ebx + 4]
cmp byte [eax], 0x7d
je 0x47cc0f
mov esi, str.Expecting_
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.00477a50
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 0x47cd8f
cmp esi, 0x72
je 0x47cd8f
cmp esi, 0x74
je 0x47cd8f
cmp esi, 0x5c
je 0x47cd8f
cmp esi, 0x7c
je 0x47cd8f
cmp esi, 0x2e
je 0x47cd8f
cmp esi, 0x3f
je 0x47cd8f
cmp esi, 0x2a
je 0x47cd8f
cmp esi, 0x2b
je 0x47cd8f
cmp esi, 0x28
je 0x47cd8f
cmp esi, 0x29
je 0x47cd8f
cmp esi, 0x7b
je 0x47cd8f
cmp esi, 0x7d
je 0x47cd8f
cmp esi, 0x2d
je 0x47cd8f
cmp esi, 0x5b
je 0x47cd8f
cmp esi, 0x5d
je 0x47cd8f
cmp esi, 0x5e
je 0x47cd8f
cmp esi, 0x73
je 0x47ccf9
cmp esi, 0x53
je 0x47ccf9
cmp esi, 0x69
je 0x47ccf9
cmp esi, 0x49
je 0x47ccf9
cmp esi, 0x63
je 0x47ccf9
cmp esi, 0x43
je 0x47ccf9
cmp esi, 0x64
je 0x47ccf9
cmp esi, 0x44
je 0x47ccf9
cmp esi, 0x77
je 0x47ccf9
cmp esi, 0x57
je 0x47ccf9
mov esi, str.Wrong_escape_sequence__misuse_of_character_
mov edx, ebx
mov dword [ebx + 8], 0x5aa
call fcn.00477a50
pop esi
pop edi
pop ebx
ret
lea ecx, [esi - 0x43]
mov eax, 7
cmp ecx, 0x34
ja case.0x47cd0d.69
movzx ecx, byte [ecx + 0x47ce3c]
jmp dword [ecx*4 + 0x47ce10]
mov eax, 8
jmp case.0x47cd0d.69
mov eax, 9
jmp case.0x47cd0d.69
mov eax, 0xa
jmp case.0x47cd0d.69
mov eax, 0xb
jmp case.0x47cd0d.69
mov eax, 0xc
jmp case.0x47cd0d.69
mov eax, 0xd
jmp case.0x47cd0d.69
mov eax, 0xe
jmp case.0x47cd0d.69
mov eax, 0xf
jmp case.0x47cd0d.69
mov eax, 0x10
mov edi, dword [ebx + 0x1c]
inc edx
mov dword [ebx + 4], edx
test edi, edi
jne 0x47cd6e
push eax
mov edi, ebx
call fcn.00478240
add esp, 4
pop esi
pop edi
mov dword [ebx + 0x1c], eax
pop ebx
ret
cmp dword [edi + 4], 3
jne 0x47ce09
mov edx, dword [ebx + 0xc]
push 0
push 0
push 0
push eax
push edx
call fcn.00478e40
add esp, 0x14
pop esi
pop edi
pop ebx
ret
mov edi, dword [ebx + 0x1c]
test edi, edi
jne 0x47cdee
push 2
mov edi, ebx
call fcn.00478240
add esp, 4
mov dword [ebx + 0x1c], eax
test eax, eax
je 0x47ce06
mov ecx, esi
sub ecx, 0x6e
je 0x47cde0
sub ecx, 4
je 0x47cdd2
sub ecx, 2
je 0x47cdc4
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 0x47ce06
mov eax, dword [ebx + 0xc]
push 0
push esi
push esi
push 2
push eax
call fcn.00478e40
add esp, 0x14
inc dword [ebx + 4]
pop esi
pop edi
pop ebx
ret