Function at 0x40258d
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2aa4
push edi
lea edi, [ebp - 0x2aa4]
push 1
call dword [ebx + 0x44]
mov dword [edi], 0
mov ecx, dword [ebx + 0x15c]
add ecx, dword [ebx + 0x74]
lea eax, [ecx + 0x108]
mov ecx, dword [ecx]
cmp ecx, 3
jne 0x40271f
push eax
push edi
call fcn.00402d09
cmp eax, 1
jne 0x4025d6
mov dword [edi], 0x40310a
jmp 0x402607
push 0
push 0xa0d2452
push 0x45545041
push 0x44415f45
push 0x5a494c41
push 0x4954494e
push 0x495f4f54
push 0x5f44454c
push 0x49414624
push esp
call dword [ebx + 0x30]
add esp, 0x24
cmp dword [edi], 0
je 0x40271d
push 0xa
push 0xd732520
push 0x5d24454d
push 0x414e5f52
push 0x45545041
push 0x4441245b
mov ecx, dword [ebx + 0x15c]
add ecx, dword [ebx + 0x74]
lea edx, [ecx + 4]
push edx
lea edx, [esp + 4]
push edx
lea edx, [ebp - 0x29e8]
push edx
call dword [sym.imp.USER32.DLL_wsprintfA]
add esp, 0xc
lea edx, [ebp - 0x29e8]
push edx
call dword [ebx + 0x30]
add esp, 0x18
lea edx, [edi + 0x38]
push edx
push 0
call dword [edi + 4]
cmp eax, 0
jne 0x40271d
lea edx, [ebp - 0x2844]
push edx
lea edx, [ebp - 0x2894]
push edx
lea edx, [ebp - 0x28e4]
push edx
push dword [edi + 0x38]
call dword [edi + 0x30]
cmp eax, 0
jne 0x40271d
push 0xa
push 0xd732520
push 0x5d244552
push 0x41574d52
push 0x49465f52
push 0x45545041
push 0x4441245b
lea edx, [ebp - 0x28e4]
push edx
lea edx, [esp + 4]
push edx
lea edx, [ebp - 0x29e8]
push edx
call dword [sym.imp.USER32.DLL_wsprintfA]
add esp, 0xc
lea edx, [ebp - 0x29e8]
push edx
call dword [ebx + 0x30]
add esp, 0x1c
push 0
push 0xa0d7325
push 0x205d244c
push 0x4c445f52
push 0x45545041
push 0x4441245b
lea edx, [ebp - 0x2894]
push edx
lea edx, [esp + 4]
push edx
lea edx, [ebp - 0x29e8]
push edx
call dword [sym.imp.USER32.DLL_wsprintfA]
add esp, 0xc
lea edx, [ebp - 0x29e8]
push edx
call dword [ebx + 0x30]
add esp, 0x18
jmp 0x40275f
push 0
push 0xa0d2452
push 0x45545041
push 0x44415f45
push 0x48545f59
push 0x425f4445
push 0x54524f50
push 0x5055535f
push 0x544f4e5f
push 0x53495f4c
push 0x4f434f54
push 0x4f525024
push esp
call dword [ebx + 0x30]
add esp, 0x30
cmp dword [edi], 0
je 0x402c5e
mov dword [ebp - 0x25f8], 0
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 1]
lea edx, [ecx + 2]
push edx
push eax
lea edx, [ebp - 0x27f4]
push edx
call dword [sym.imp.NTDLL.DLL_memcpy]
add esp, 0xc
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
cmp eax, 0xe
jne 0x4027ab
push 0x7e8
push 0x7e0
call dword [ebx + 0x54]
jmp 0x402c56
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
cmp eax, 0x1a
jne 0x4027cf
push 0x7e8
push 0x7e0
call dword [ebx + 0x64]
push esi
push ebx
call fcn.00401504
jmp 0x402c56
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
cmp eax, 0xa
jne 0x4027fe
mov dword [ebx + 0xe94], 0xffffffff
push 0x7e8
push 0x7e0
call dword [ebx + 0x54]
cmp dword [ebx + 0xe94], 0xffffffff
jne 0x402c56
lea eax, [ebp - 0x26fa]
movzx ecx, byte [ebp - 0x27f3]
lea ecx, [ecx + 2]
lea edx, [ebp - 0x27f4]
push 0xfa
push eax
push ecx
push edx
call dword [ebx + 0x40]
mov dword [ebp - 0x2600], eax
mov dword [ebp - 0x25fc], 0
cmp dword [ebp - 0x25f8], 0xffffffff
je 0x402c56
mov eax, dword [ebp - 0x25fc]
cmp eax, dword [ebp - 0x2600]
jae 0x402c51
push 0xc
mov dword [ebp - 0x24f0], esp
push 2
push dword [ebp - 0x24f0]
lea edx, [ebp - 0x27f4]
push edx
call dword [sym.imp.NTDLL.DLL_memcpy]
add esp, 0xc
add esp, 4
mov eax, dword [ebp - 0x25fc]
cmp byte [ebp + eax - 0x26fa], 1
jne 0x40289a
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 1
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 2
jne 0x4028bd
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 2
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 3
jne 0x4028da
push 0
push 0
push 3
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 4
jne 0x4028fd
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 4
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 5
jne 0x402920
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 5
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 6
jne 0x402943
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 6
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 7
jne 0x402966
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 7
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 8
jne 0x402989
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 8
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 9
jne 0x4029ac
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 9
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xa
jne 0x4029cf
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xa
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xb
jne 0x4029f2
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xb
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xc
jne 0x402a15
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xc
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xd
jne 0x402a48
lea edx, [ebp - 0x27f2]
push edx
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xd
call dword [edi]
mov dword [ebp - 0x25f8], eax
cmp eax, 0xffffffff
je 0x402a43
mov byte [ebp - 0x27f3], al
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xe
jne 0x402a6b
push 0
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xe
call dword [edi]
mov dword [ebp - 0x25f8], eax
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0xf
jne 0x402a9e
lea edx, [ebp - 0x27f2]
push edx
lea edx, [ebp + eax - 0x26f8]
push edx
push 0xf
call dword [edi]
mov dword [ebp - 0x25f8], eax
cmp eax, 0xffffffff
je 0x402a99
mov byte [ebp - 0x27f3], al
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x10
jne 0x402ab7
mov dword [ebp - 0x25f8], 0xffffffff
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x11
jne 0x402ad5
movzx eax, word [ebp + eax - 0x26f8]
push eax
call dword [sym.imp.KERNEL32.DLL_Sleep]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x12
jne 0x402b20
push eax
push 0x202445
push 0x4d495424
push esp
lea edx, [ebp - 0x25f4]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
add esp, 8
pop eax
lea edx, [ebp + eax - 0x26f8]
push edx
lea edx, [ebp - 0x25f4]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea edx, [ebp - 0x25f4]
push edx
call dword [ebx + 0x30]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x13
jne 0x402b4e
movzx eax, word [ebp + eax - 0x26f8]
shl eax, 0x10
push eax
push 0
push 0x401
push dword [ebx + 0x8ec]
call dword [sym.imp.USER32.DLL_SendMessageA]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x14
jne 0x402b79
movzx eax, word [ebp + eax - 0x26f8]
push 0
push eax
push 0x402
push dword [ebx + 0x8ec]
call dword [sym.imp.USER32.DLL_SendMessageA]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x15
jne 0x402ba4
movzx eax, word [ebp + eax - 0x26f8]
push 0
push eax
push 0x404
push dword [ebx + 0x8ec]
call dword [sym.imp.USER32.DLL_SendMessageA]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x16
jne 0x402bc5
push 0
push 0
push 0x405
push dword [ebx + 0x8ec]
call dword [sym.imp.USER32.DLL_SendMessageA]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x17
jne 0x402be3
lea edx, [ebp + eax - 0x26f8]
push edx
lea edx, [esi + 0x6c]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x45
jne 0x402bef
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x44
jne 0x402bfb
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x43
jne 0x402c07
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x42
jne 0x402c13
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x41
jne 0x402c1f
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x40
jne 0x402c2b
jmp 0x402c35
cmp byte [ebp + eax - 0x26fa], 0x3f
jne 0x402c35
mov eax, dword [ebp - 0x25fc]
movzx eax, byte [ebp + eax - 0x26f9]
add eax, 2
add dword [ebp - 0x25fc], eax
jmp 0x40282f
jmp 0x4027fe
push 0
push 0
push 3
call dword [edi]
push 0
push esp
push 0x1000001
push 0x40b
push dword [ebx + 0x8e8]
call dword [sym.imp.USER32.DLL_SendMessageW]
add esp, 4
push 0
call dword [ebx + 0x44]
pop edi
leave
ret 8