Function at 0x402230
Capabilities:
Parse credit card information

Disassembly:
mov eax, 0x201c
call fcn.0044c570
mov eax, dword [esp + 0x2020]
push esi
xor esi, esi
cmp eax, 2
jne 0x402296
lea eax, [esp + 0x10]
push eax
push 2
call fcn.00401ce0
lea ecx, [esp + 0x14]
push ecx
push 3
call fcn.00401ce0
lea edx, [esp + 0x2c]
push edx
push 4
call fcn.00401ce0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x2044]
push ecx
push edx
push eax
call fcn.00410c10
add esp, 0x28
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 7
jne 0x4022d7
lea ecx, [esp + 0xc]
push ecx
push 2
call fcn.00401ce0
lea edx, [esp + 0x18]
push edx
push 3
call fcn.00401ce0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x2038]
push eax
push ecx
push edx
call fcn.00410c70
add esp, 0x1c
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0xc
jne 0x402307
lea eax, [esp + 0x20]
push eax
push 2
call fcn.00401d70
mov edx, dword [esp + 0x2030]
lea ecx, [esp + 0x28]
push ecx
push edx
call fcn.004136d0
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0xf
jne 0x402337
lea eax, [esp + 0x20]
push eax
push 2
call fcn.00401d70
mov edx, dword [esp + 0x2030]
lea ecx, [esp + 0x28]
push ecx
push edx
call fcn.00412e90
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x16
jne 0x402367
lea eax, [esp + 0x20]
push eax
push 2
call fcn.00401d70
mov edx, dword [esp + 0x2030]
lea ecx, [esp + 0x28]
push ecx
push edx
call fcn.00410d70
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x18
jne 0x4023a8
lea eax, [esp + 0xc]
push eax
push 2
call fcn.00401ce0
lea ecx, [esp + 0x18]
push ecx
push 3
call fcn.00401ce0
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2038]
push edx
push eax
push ecx
call fcn.00410f80
add esp, 0x1c
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x1a
jne 0x4023fa
lea edx, [esp + 0xc]
push edx
push 2
call fcn.00401ce0
lea eax, [esp + 0x28]
push eax
push 3
call fcn.00401d70
lea ecx, [esp + 0x20]
push ecx
push 4
call fcn.00401ce0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x2044]
lea eax, [esp + 0x3c]
push eax
push ecx
push edx
call fcn.00413f60
add esp, 0x28
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x1c
jne 0x4024a8
lea eax, [esp + 4]
push eax
push 2
call fcn.00401ce0
lea ecx, [esp + 0x10]
push ecx
push 3
call fcn.00401ce0
lea edx, [esp + 0x28]
push edx
push 4
call fcn.00401ce0
lea eax, [esp + 0x2c]
push eax
push 5
call fcn.00401ce0
lea ecx, [esp + 0x3c]
push ecx
push 6
call fcn.00401ce0
lea edx, [esp + 0x34]
push edx
push 7
call fcn.00401ce0
lea eax, [esp + 0x40]
push eax
push 8
call fcn.00401ce0
lea ecx, [esp + 0x58]
push ecx
push 9
call fcn.00401d70
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
add esp, 0x40
lea edx, [esp + 0x20]
push edx
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x2040]
push edx
push eax
push ecx
call fcn.00412770
add esp, 0x24
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x1e
jne 0x4024d8
lea edx, [esp + 0x20]
push edx
push 2
call fcn.00401d70
mov ecx, dword [esp + 0x2030]
lea eax, [esp + 0x28]
push eax
push ecx
call fcn.00411000
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x1f
jne 0x402519
lea edx, [esp + 4]
push edx
push 2
call fcn.00401ce0
lea eax, [esp + 0x28]
push eax
push 3
call fcn.00401d70
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x2038]
lea ecx, [esp + 0x30]
push ecx
push edx
push eax
call fcn.004110c0
add esp, 0x1c
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x24
jne 0x40256b
lea ecx, [esp + 8]
push ecx
push 2
call fcn.00401ce0
lea edx, [esp + 0x28]
push edx
push 3
call fcn.00401d70
lea eax, [esp + 0x14]
push eax
push 4
call fcn.00401ce0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x2044]
lea edx, [esp + 0x3c]
push edx
push eax
push ecx
call fcn.00413af0
add esp, 0x28
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x25
je 0x4027b5
cmp eax, 0x2b
jne 0x4025a4
lea edx, [esp + 0x20]
push edx
push 2
call fcn.00401d70
mov ecx, dword [esp + 0x2030]
lea eax, [esp + 0x28]
push eax
push ecx
call fcn.00412860
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x2e
jne 0x4025d4
lea edx, [esp + 0x20]
push edx
push 2
call fcn.00401d70
mov ecx, dword [esp + 0x2030]
lea eax, [esp + 0x28]
push eax
push ecx
call fcn.004125e0
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x31
jne 0x402604
lea edx, [esp + 4]
push edx
push 2
call fcn.00401ce0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x2030]
push eax
push ecx
call fcn.00412380
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x35
jne 0x402645
lea edx, [esp + 8]
push edx
push 2
call fcn.00401ce0
lea eax, [esp + 0xc]
push eax
push 3
call fcn.00401ce0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x2038]
push ecx
push edx
push eax
call fcn.004123f0
add esp, 0x1c
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x37
jne 0x402686
lea ecx, [esp + 8]
push ecx
push 2
call fcn.00401ce0
lea edx, [esp + 0xc]
push edx
push 3
call fcn.00401ce0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x2038]
push eax
push ecx
push edx
call fcn.00412450
add esp, 0x1c
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x3f
jne 0x4026b6
lea eax, [esp + 4]
push eax
push 2
call fcn.00401ce0
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x2030]
push ecx
push edx
call fcn.00412470
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x42
jne 0x40272a
lea eax, [esp + 0x14]
push eax
push 2
call fcn.00401ce0
lea ecx, [esp + 0x20]
push ecx
push 3
call fcn.00401ce0
lea edx, [esp + 0x18]
push edx
push 4
call fcn.00401ce0
lea eax, [esp + 0x1c]
push eax
push 5
call fcn.00401ce0
lea ecx, [esp + 0x40]
push ecx
push 6
call fcn.00401d70
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x48]
push edx
mov edx, dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x205c]
push edx
push eax
push ecx
call fcn.00413360
add esp, 0x40
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x4e
jne 0x40274c
mov eax, dword [0x4a141c]
test eax, eax
jne 0x4027b5
push 0
call fcn.00404320
add esp, 4
mov eax, esi
pop esi
add esp, 0x201c
ret
cmp eax, 0x5c
jne 0x40277c
lea edx, [esp + 0x20]
push edx
push 2
call fcn.00401d70
mov ecx, dword [esp + 0x2030]
lea eax, [esp + 0x28]
push eax
push ecx
call fcn.00412480
add esp, 0x10
mov esi, eax
pop esi
add esp, 0x201c
ret
cmp eax, 0x73
jne 0x4027b5
lea edx, [esp + 8]
push edx
push 2
call fcn.00401ce0
lea eax, [esp + 0xc]
push eax
push 3
call fcn.00401ce0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x2038]
push ecx
push edx
push eax
call fcn.004124c0
add esp, 0x1c
mov esi, eax
mov eax, esi
pop esi
add esp, 0x201c
ret