Function at 0x448fe0
Capabilities:
Parse credit card information

Disassembly:
push ebx
push esi
mov esi, ecx
xor cl, cl
push edi
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x449447
lea edi, [esi + 8]
cmp eax, 0x7c
je 0x449447
cmp eax, 0x29
jne 0x449020
cmp dword [esi + 0x10], 0
jne 0x449447
test dword [esi + 0x50], 0x10000000
je 0x449454
jmp 0x4493e0
cmp eax, 0x2e
jne 0x449073
push 5
lea ecx, [esi + 0x24]
call fcn.00449470
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x449428
cmp byte [eax], 0x5c
jne 0x44922f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x44922f
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x44906b
mov dl, byte [ecx]
cmp dl, 0x28
je 0x44922d
cmp dl, 0x29
je 0x44922d
test bl, 0x10
jmp 0x44921f
cmp eax, 0x5c
jne 0x449191
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4490ba
cmp byte [eax], 0x5c
jne 0x4490b7
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4490b7
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x4490a4
mov dl, byte [ecx]
cmp dl, 0x28
je 0x4490b5
cmp dl, 0x29
je 0x4490b5
test bl, 0x10
jne 0x4490b7
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4490b5
cmp dl, 0x7d
jne 0x4490b7
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
test byte [esi + 0x50], 0x80
je 0x449185
mov al, byte [esi + 0x48]
cmp al, 0x62
jne 0x449126
push 4
lea ecx, [esi + 0x24]
call fcn.00449470
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x44911a
cmp byte [eax], 0x5c
jne 0x449117
lea ecx, [eax + 1]
cmp ecx, edx
je 0x449117
mov ebx, dword [esi + 0x50]
test bl, 8
jne 0x449104
mov dl, byte [ecx]
cmp dl, 0x28
je 0x449115
cmp dl, 0x29
je 0x449115
test bl, 0x10
jne 0x449117
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x449115
cmp dl, 0x7d
jne 0x449117
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
jmp 0x449439
cmp al, 0x42
jne 0x449185
push 4
lea ecx, [esi + 0x24]
call fcn.00449470
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x449179
cmp byte [eax], 0x5c
jne 0x449176
lea ecx, [eax + 1]
cmp ecx, edx
je 0x449176
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x449163
mov al, byte [ecx]
cmp al, 0x28
je 0x449174
cmp al, 0x29
je 0x449174
mov eax, dword [esi]
test dl, 0x10
jne 0x449176
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x449174
cmp dl, 0x7d
jne 0x449176
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
jmp 0x449439
mov ecx, esi
call fcn.00449fb0
jmp 0x44942f
cmp eax, 0x5b
jne 0x449237
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4491d8
cmp byte [eax], 0x5c
jne 0x4491d5
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4491d5
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4491c2
mov al, byte [ecx]
cmp al, 0x28
je 0x4491d3
cmp al, 0x29
je 0x4491d3
mov eax, dword [esi]
test dl, 0x10
jne 0x4491d5
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4491d3
cmp dl, 0x7d
jne 0x4491d5
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
mov ecx, esi
call fcn.00449e80
cmp dword [esi + 0x4c], 0x5d
jne 0x449462
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x449428
cmp byte [eax], 0x5c
jne 0x44922f
lea ecx, [eax + 1]
cmp ecx, edx
je 0x44922f
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x44921c
mov al, byte [ecx]
cmp al, 0x28
je 0x44922d
cmp al, 0x29
je 0x44922d
mov eax, dword [esi]
test dl, 0x10
jne 0x44922f
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x44922d
cmp dl, 0x7d
jne 0x44922f
mov eax, ecx
inc eax
mov dword [esi], eax
jmp 0x449428
cmp eax, 0x28
jne 0x4492ea
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x44927e
cmp byte [eax], 0x5c
jne 0x44927b
lea ecx, [eax + 1]
cmp ecx, edx
je 0x44927b
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x449268
mov al, byte [ecx]
cmp al, 0x28
je 0x449279
cmp al, 0x29
je 0x449279
mov eax, dword [esi]
test dl, 0x10
jne 0x44927b
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x449279
cmp dl, 0x7d
jne 0x44927b
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
mov ecx, esi
call fcn.0044a100
cmp dword [esi + 0x4c], 0x29
mov bl, al
jne 0x449454
mov eax, dword [esi]
mov edx, dword [edi]
cmp eax, edx
je 0x4492d6
cmp byte [eax], 0x5c
jne 0x4492d3
lea ecx, [eax + 1]
cmp ecx, edx
je 0x4492d3
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x4492c0
mov al, byte [ecx]
cmp al, 0x28
je 0x4492d1
cmp al, 0x29
je 0x4492d1
mov eax, dword [esi]
test dl, 0x10
jne 0x4492d3
mov dl, byte [ecx]
cmp dl, 0x7b
je 0x4492d1
cmp dl, 0x7d
jne 0x4492d3
mov eax, ecx
inc eax
mov dword [esi], eax
mov ecx, esi
call fcn.00447bd0
test bl, bl
je 0x449439
jmp 0x44942f
cmp eax, 0x5e
jne 0x449340
push 2
lea ecx, [esi + 0x24]
call fcn.00449470
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x449334
cmp byte [eax], 0x5c
jne 0x449332
inc eax
cmp eax, ecx
je 0x449332
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44931f
mov dl, byte [eax]
cmp dl, 0x28
je 0x449330
cmp dl, 0x29
je 0x449330
test cl, 0x10
jne 0x449332
mov cl, byte [eax]
cmp cl, 0x7b
je 0x449330
cmp cl, 0x7d
jne 0x449332
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00447bd0
jmp 0x449439
cmp eax, 0x24
jne 0x449396
push 3
lea ecx, [esi + 0x24]
call fcn.00449470
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x44938a
cmp byte [eax], 0x5c
jne 0x449388
inc eax
cmp eax, ecx
je 0x449388
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x449375
mov dl, byte [eax]
cmp dl, 0x28
je 0x449386
cmp dl, 0x29
je 0x449386
test cl, 0x10
jne 0x449388
mov cl, byte [eax]
cmp cl, 0x7b
je 0x449386
cmp cl, 0x7d
jne 0x449388
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00447bd0
jmp 0x449439
cmp eax, 0x2a
je 0x44944d
cmp eax, 0x2b
je 0x44944d
cmp eax, 0x3f
je 0x44944d
cmp eax, 0x7b
je 0x44944d
cmp eax, 0x7d
jne 0x4493ce
test dword [esi + 0x50], 0x10000000
je 0x44945b
jmp 0x4493e0
cmp eax, 0x5d
jne 0x4493e0
test dword [esi + 0x50], 0x10000000
je 0x449462
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0044a490
mov eax, dword [esi]
mov ecx, dword [edi]
cmp eax, ecx
je 0x449428
cmp byte [eax], 0x5c
jne 0x449426
inc eax
cmp eax, ecx
je 0x449426
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x449413
mov dl, byte [eax]
cmp dl, 0x28
je 0x449424
cmp dl, 0x29
je 0x449424
test cl, 0x10
jne 0x449426
mov cl, byte [eax]
cmp cl, 0x7b
je 0x449424
cmp cl, 0x7d
jne 0x449426
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.00447bd0
mov ecx, esi
call fcn.0044a260
lea edi, [esi + 8]
mov eax, dword [esi + 0x4c]
mov cl, 1
cmp eax, 0xffffffff
jne 0x448ff6
pop edi
pop esi
mov al, cl
pop ebx
ret
push 0xa
call fcn.00447bc0
push 5
call fcn.00447bc0
push 6
call fcn.00447bc0
push 4
call fcn.00447bc0
int3