Function at 0x4bcd50
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
push ebx
push esi
mov esi, ecx
push edi
mov eax, dword [esi + 0x8a]
mov dword [esp + 0x1c], eax
mov eax, dword [0x57ca98]
cmp eax, 1
mov eax, dword [ebp + 0xc]
mov ecx, eax
jne 0x4bcf5b
shl ecx, 4
mov ebx, dword [ebp + 8]
lea eax, [ecx + eax + 0x5700d9]
mov dword [esp + 0xc], eax
cmp byte [eax], 0x91
jne 0x4bcdb8
lea edx, [esp + 0x10]
push 1
push edx
push 0
push 0
push 0x40220000
push 0
push 1
push 2
push ebx
mov ecx, esi
call fcn.004be270
mov edi, eax
mov eax, 1
jmp 0x4bcdc0
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov cl, byte [ecx]
cmp cl, 0x20
jne 0x4bcde7
lea edx, [esp + 0x10]
push 1
push edx
push 0x3ff00000
push 0
push 0x40200000
push 0
push 1
jmp 0x4bcee3
cmp cl, 0x3c
je 0x4bcecf
cmp cl, 0x3f
je 0x4bcecf
cmp cl, 0x41
je 0x4bcecf
cmp cl, 0x29
je 0x4bcecf
cmp cl, 0x3d
je 0x4bcf0f
cmp cl, 0x40
je 0x4bcf0f
cmp cl, 0x39
je 0x4bcf0f
cmp cl, 0x37
je 0x4bcef9
cmp cl, 0x28
je 0x4bcef9
cmp cl, 0x95
jne 0x4bce92
lea eax, [esp + 0x10]
push 2
push eax
push 0x4072b800
push 0
push 0x40a770cc
push 0xcccccccd
push 4
push 3
push ebx
mov ecx, esi
call fcn.004be270
mov edi, eax
test edi, edi
jne 0x4bce88
fld qword [esp + 0x10]
fadd qword [0x5267e0]
call fcn.004dcf98
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x526800]
fstp qword [esp + 0x10]
mov eax, 2
jmp 0x4bd05d
cmp cl, 0x22
je 0x4bcecf
cmp cl, 0xe8
je 0x4bcecf
cmp cl, 0xd4
jne 0x4bd05d
lea ecx, [esp + 0x10]
push 1
push ecx
push 0
push 0
push 0x4072c000
push 0
push 3
push 3
push ebx
mov ecx, esi
call fcn.004be270
mov edi, eax
mov eax, 2
jmp 0x4bd05d
lea edx, [esp + 0x10]
push 1
push edx
push 0
push 0
push 0x406fe000
push 0
push 3
push 2
push ebx
mov ecx, esi
call fcn.004be270
mov edi, eax
mov eax, 1
jmp 0x4bd05d
lea eax, [esp + 0x10]
push 1
push eax
push 0
push 0
push 0x40bb5800
push 0
push 4
jmp 0x4bceb9
lea ecx, [esp + 0x10]
push 1
push ecx
push 0
push 0
push 0x40a3f400
push 0
push 4
push 2
push ebx
mov ecx, esi
call fcn.004be270
mov edi, eax
test edi, edi
jne 0x4bcf51
fld qword [esp + 0x10]
call fcn.004dcf98
add eax, 5
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x5267f8]
fstp qword [esp + 0x10]
mov eax, 1
jmp 0x4bd05d
shl ecx, 4
lea eax, [ecx + eax + 0x5700d9]
mov dword [esp + 0xc], eax
mov al, byte [eax]
cmp al, 0x22
je 0x4bd028
cmp al, 0x21
je 0x4bd028
cmp al, 0x20
je 0x4bd028
cmp al, 0x72
je 0x4bcfd8
cmp al, 0x68
je 0x4bcfd8
cmp al, 0x67
je 0x4bcfd8
cmp al, 0x66
je 0x4bcfd8
cmp al, 0x79
je 0x4bcfd8
cmp al, 0x78
je 0x4bcfd8
cmp al, 0x25
je 0x4bcfab
cmp al, 0x24
je 0x4bcfab
cmp al, 0x23
jne 0x4bd055
mov eax, dword [ebp + 8]
lea edx, [esp + 0x10]
push 1
push edx
push 0
push 0
push 0x406fe000
push 0
push 3
push 2
push eax
mov ecx, esi
call fcn.004be270
mov edi, eax
mov eax, 1
jmp 0x4bd05d
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x10]
push 1
push ecx
push 0
push 0
push 0x40a3f400
push 0
push 4
push 2
push edx
mov ecx, esi
call fcn.004be270
mov edi, eax
test edi, edi
jne 0x4bceef
fld qword [esp + 0x10]
call fcn.004dcf98
add eax, 5
mov dword [esp + 0x10], eax
mov eax, 1
fild dword [esp + 0x10]
fmul qword [0x5267f8]
fstp qword [esp + 0x10]
jmp 0x4bd05d
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x10]
push 1
push eax
push 0x3ff00000
push 0
push 0x40200000
push 0
push 1
push 2
push ecx
mov ecx, esi
call fcn.004be270
mov edi, eax
mov eax, 1
jmp 0x4bd05d
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
test edi, edi
jne 0x4bd0ef
cmp eax, 1
jne 0x4bd07d
movsx edx, byte [esi + 0x92]
mov eax, dword [esp + 0xc]
mov cl, byte [eax]
mov byte [edx + esi + 0x49], cl
jmp 0x4bd0af
movsx eax, byte [esi + 0x92]
mov ecx, dword [esp + 0xc]
mov dl, byte [ecx]
mov byte [eax + esi + 0x49], dl
mov bl, byte [esi + 0x92]
fld qword [esp + 0x10]
inc bl
mov byte [esi + 0x92], bl
call fcn.004dcf98
movsx ecx, bl
sar eax, 8
mov byte [ecx + esi + 0x49], al
mov cl, byte [esi + 0x92]
fld qword [esp + 0x10]
inc cl
mov byte [esi + 0x92], cl
mov bl, cl
call fcn.004dcf98
movsx edx, bl
mov byte [edx + esi + 0x49], al
mov al, byte [esi + 0x92]
inc al
mov byte [esi + 0x92], al
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov eax, dword [esp + 0x1c]
push ecx
push edx
push eax
push edi
mov ecx, esi
call fcn.004be570
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10