Function at 0x4253a0
Capabilities:
Parse credit card information

Disassembly:
push case.0x445d77.7
push 0
push 0x49e6a0
jmp 0x425de1
mov eax, dword [ebp - 0x10]
mov edi, dword [esi + 8]
lea ecx, [ebp + eax*4 - 0x3040]
mov eax, dword [ebp + edx*4 - 0x844]
mov dword [ebp - 0x18], ecx
mov ecx, dword [eax + 8]
mov dword [ebp - 0xc], ecx
cmp edi, 7
jge 0x425400
cmp edi, 6
jne 0x4253e4
cmp dword [esi + 4], 0
jne 0x4253e4
mov eax, dword [esi]
mov bl, byte [eax + 0x17]
test bl, bl
jne 0x4253a2
mov edi, dword [eax + 0xc]
mov bl, byte [edi + 0x17]
jmp 0x4253a5
mov edx, dword [ebp - 4]
cmp bl, 1
je 0x4253bc
mov bl, byte [eax + 0x17]
test bl, bl
jne 0x4253b7
mov eax, dword [eax + 0xc]
mov bl, byte [eax + 0x17]
cmp bl, 2
jne 0x4253e4
mov eax, dword [esi + 0x18]
cmp eax, 0x1d
jg 0x4253c9
cmp eax, 0x12
jge 0x4253dd
cmp eax, 8
je 0x4253dd
cmp eax, 9
je 0x4253dd
cmp ecx, 0x3b
je 0x4253dd
cmp ecx, 0x3c
jne 0x4253e4
mov dword [esi + 8], 3
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 8]
mov dword [eax], esi
mov ecx, dword [eax]
add esi, 0x10
inc dword [ebp - 0x10]
mov dword [ecx + 0xc], 0
jmp 0x425360
lea eax, [edi - 0xa]
cmp eax, 0x36
ja 0x425881
movzx eax, byte [eax + 0x4252d8]
jmp dword [eax*4 + 0x4252b4]
movzx eax, byte [edi + 0x4be910]
mov ebx, eax
and ebx, 0x80000001
jns 0x425897
dec ebx
or ebx, 0xfffffffe
inc ebx
add ebx, eax
movzx eax, byte [ecx + 0x4be910]
cmp eax, ebx
jl 0x425b72
lea eax, [edi - 0x12]
cmp eax, 0xb
ja 0x4258b9
cmp ecx, 0x39
jne 0x425b72
cmp ecx, 0x3a
jne 0x4258d5
cmp edi, 0x35
jl 0x4258cc
cmp edi, 0x39
jle 0x425b72
cmp edi, 0x22
je 0x425b72
mov edx, dword [ebp - 4]
mov ebx, dword [ebp + edx*4 - 0x844]
mov ecx, dword [ebp - 0x18]
dec edx
mov dword [ebx + 0xc], 0
mov edi, dword [ebx + 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], ebx
mov dword [ecx], ebx
cmp edi, 0x3d
jne 0x425aa0
mov ebx, dword [ebx]
mov ecx, dword [ebx + 4]
mov eax, dword [esi + 8]
cmp ecx, 0x4be604
je 0x42591a
cmp ecx, 0x4be66c
jne 0x425b67
lea ecx, [eax - 0x12]
cmp ecx, 0xb
ja 0x425a1b
cmp eax, 0x12
je 0x4259f7
movzx edi, byte [ebx + 9]
cmp edi, 2
je 0x425968
mov eax, 0x10
call fcn.00494280
mov edx, dword [ebp - 0x18]
mov ecx, esp
mov ebx, 1
add dword [ebp - 0x10], ebx
mov eax, edi
mov dword [edx], ecx
cdq
mov dword [ecx + 8], ebx
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], 0
mov dword [ebp - 0x1c], ebx
jmp 0x42596f
mov dword [ebp - 0x1c], 0
mov ebx, dword [ebp - 0x10]
mov eax, 0x10
lea ebx, [ebp + ebx*4 - 0x3040]
call fcn.00494280
cmp dword [0x4c30bc], 0
mov edi, esp
mov dword [ebx], edi
mov dword [edi + 8], 0x3d
jne 0x4259a5
call fcn.00469280
mov dword [0x4c30bc], eax
test eax, eax
je 0x4259d5
mov ecx, dword [0x4c30c0]
cmp dword [ecx + 8], 0xc
jae 0x4259c3
call fcn.00469280
mov ecx, dword [0x4c30c0]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x4259d5
mov eax, dword [ecx + 4]
add dword [ecx + 8], 0xfffffff4
lea edx, [eax + 0xc]
mov dword [0x4c30c4], eax
mov dword [ecx + 4], edx
mov dword [edi], eax
test eax, eax
je 0x424db1
mov dl, byte [ebp - 0x1c]
mov dword [eax + 4], 0x4be6a0
mov ecx, dword [edi]
mov byte [ecx + 9], dl
mov dword [edi + 0xc], 0
jmp 0x4259fa
dec dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov ebx, dword [ebp - 8]
mov dword [esi], eax
mov dword [eax + 4], 0x4be638
mov eax, dword [esi]
inc byte [eax + 9]
inc dword [ebp - 0x10]
jmp 0x425360
cmp eax, 7
jl 0x425b67
cmp eax, 8
je 0x425a74
cmp eax, 9
je 0x425a8a
mov ecx, dword [ebp + edx*4 - 0x844]
mov eax, dword [ecx + 8]
cmp eax, 0x3b
je 0x425a5d
cmp eax, 0x3c
jne 0x425b67
mov eax, 0x4be73c
dec edx
inc dword [ebp - 0x10]
mov dword [ebx + 4], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 4], edx
jmp 0x425360
mov eax, 0x4be708
dec edx
inc dword [ebp - 0x10]
mov dword [ebx + 4], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 4], edx
jmp 0x425360
mov eax, 0x4be770
mov dword [ebx + 4], eax
mov ebx, dword [ebp - 8]
add esi, 0x10
inc dword [ebp - 0x10]
jmp 0x425360
mov eax, 0x4be7a4
mov dword [ebx + 4], eax
mov ebx, dword [ebp - 8]
add esi, 0x10
inc dword [ebp - 0x10]
jmp 0x425360
lea eax, [edi - 0x12]
cmp eax, 0xb
ja 0x425b56
cmp dword [ebx], 0
je 0x425b67
cmp edi, 0x12
je 0x425b60
lea eax, [edi - 0x13]
cmp eax, 0xa
ja 0x425b18
jmp dword [eax*4 + 0x425310]
mov eax, 0x10
call fcn.00494280
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 4]
mov eax, esp
mov dword [eax + 8], edi
mov dword [ecx], eax
mov dword [eax + 0xc], 0
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3040], ebx
mov dword [ebx + 8], 0x3d
mov ebx, dword [ebp - 8]
jmp 0x425360
cmp edi, 0x3e
je 0x425b60
cmp edi, 0x3f
jne 0x425b67
mov dword [ebx + 8], 0x3d
inc dword [ebp - 0x10]
mov ebx, dword [ebp - 8]
jmp 0x425360
add edi, 0xffffffe1
cmp edi, 2
ja 0x425b89
cmp dword [ebp - 0x10], 0
je 0x425b89
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax - 4]
mov dword [ecx + 0xc], esi
mov ebx, dword [ebp - 8]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x425360
mov ecx, dword [ebp + 8]
call fcn.0042e060
lea esp, [ebp - 0x3050]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8