Function at 0x486dcd
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
sub esp, 0x20
mov ebx, eax
mov eax, dword [eax + 4]
mov dl, byte [eax]
cmp dl, 0x2e
jne 0x486e2a
mov edx, dword [ebx + 0x1c]
test edx, edx
jne 0x486df9
mov dl, 6
mov eax, ebx
call fcn.00485866
mov dword [ebx + 0x1c], eax
jmp 0x486fb7
cmp dword [edx + 4], 3
jne 0x486fb7
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 6
jmp 0x486fb0
cmp dl, 0x5c
je 0x486e40
mov dword [ebx + 8], 0x5aa
mov edx, str.Escaped_sequence:_expecting__
jmp 0x48705a
lea edx, [eax + 1]
mov dword [ebx + 4], edx
mov cl, byte [eax + 1]
movzx esi, cl
cmp esi, 0x70
jne 0x486e6c
lea edx, [eax + 2]
mov dword [ebx + 4], edx
cmp byte [eax + 2], 0x7b
jne 0x486e7d
add eax, 3
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.00486962
jmp 0x486ea5
cmp esi, 0x50
jne 0x486ec7
lea edx, [eax + 2]
mov dword [ebx + 4], edx
cmp byte [eax + 2], 0x7b
je 0x486e8e
mov dword [ebx + 8], 0x5aa
mov edx, 0x68cd40
jmp 0x48705a
add eax, 3
mov dword [ebx + 4], eax
mov eax, ebx
call fcn.00486962
mov eax, dword [ebx + 0x1c]
mov dword [eax + 0x1c], 1
mov eax, dword [ebx + 4]
cmp byte [eax], 0x7d
je 0x486ebe
mov dword [ebx + 8], 0x5aa
mov edx, str.Expecting_
jmp 0x48705a
inc eax
mov dword [ebx + 4], eax
jmp 0x487067
cmp esi, 0x72
je 0x486f20
cmp esi, 0x6e
je 0x486f20
cmp esi, 0x5c
je 0x486f20
cmp esi, 0x74
je 0x486f20
cmp esi, 0x2e
je 0x486f20
cmp esi, 0x7c
je 0x486f20
cmp esi, 0x2a
je 0x486f20
cmp esi, 0x3f
je 0x486f20
cmp esi, 0x28
je 0x486f20
cmp esi, 0x2b
je 0x486f20
cmp esi, 0x7b
je 0x486f20
cmp esi, 0x29
je 0x486f20
cmp esi, 0x2d
je 0x486f20
cmp esi, 0x7d
je 0x486f20
cmp esi, 0x5d
je 0x486f20
cmp esi, 0x5b
je 0x486f20
cmp esi, 0x5e
jne 0x486fbf
mov edx, dword [ebx + 0x1c]
test edx, edx
jne 0x486f6c
mov dl, 2
mov eax, ebx
mov byte [ebp - 0xc], cl
call fcn.00485866
mov dword [ebx + 0x1c], eax
test eax, eax
mov cl, byte [ebp - 0xc]
je 0x486fb7
cmp cl, 0x72
je 0x486f55
cmp cl, 0x74
je 0x486f5e
cmp cl, 0x6e
jne 0x486f67
mov dword [eax + 0x20], 0xa
jmp 0x486fb7
mov dword [eax + 0x20], 0xd
jmp 0x486fb7
mov dword [eax + 0x20], 9
jmp 0x486fb7
mov dword [eax + 0x20], esi
jmp 0x486fb7
cmp dword [edx + 4], 3
jne 0x486fb7
cmp cl, 0x72
je 0x486f83
cmp cl, 0x74
je 0x486f8a
cmp cl, 0x6e
jne 0x486f96
jmp 0x486f91
mov esi, 0xd
jmp 0x486f96
mov esi, 9
jmp 0x486f96
mov esi, 0xa
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0xc], 0
mov dword [esp + 8], esi
mov dword [esp + 4], esi
mov dword [esp], 2
mov eax, ebx
call fcn.0048596d
inc dword [ebx + 4]
jmp 0x487067
cmp esi, 0x53
je 0x486ff1
cmp esi, 0x73
je 0x486ff1
cmp esi, 0x49
je 0x486ff1
cmp esi, 0x69
je 0x486ff1
cmp esi, 0x43
je 0x486ff1
cmp esi, 0x63
je 0x486ff1
cmp esi, 0x44
je 0x486ff1
cmp esi, 0x64
je 0x486ff1
cmp esi, 0x57
je 0x486ff1
cmp esi, 0x77
jne 0x48704e
sub ecx, 0x43
mov eax, 7
cmp cl, 0x34
ja 0x487008
movzx ecx, cl
mov eax, dword [ecx*4 + 0x68d370]
inc edx
mov dword [ebx + 4], edx
mov edx, dword [ebx + 0x1c]
test edx, edx
jne 0x487021
mov edx, eax
mov eax, ebx
call fcn.00485866
mov dword [ebx + 0x1c], eax
jmp 0x487067
cmp dword [edx + 4], 3
jne 0x487067
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
mov eax, ebx
call fcn.0048596d
jmp 0x487067
mov dword [ebx + 8], 0x5aa
mov edx, str.Wrong_escape_sequence__misuse_of_character_
mov eax, ebx
add esp, 0x20
pop ebx
pop esi
leave
jmp fcn.00484ec0
add esp, 0x20
pop ebx
pop esi
leave
ret