Function at 0x44a9f0
Capabilities:
Parse credit card information

Disassembly:
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x44ad84
push ebx
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x44ad83
cmp eax, 0x29
jne 0x44aa28
cmp dword [esi + 0x10], 0
jne 0x44ad83
test dword [esi + 0x50], 0x10000000
je 0x44ad88
cmp eax, 0x2e
jne 0x44aad4
push 0x14
call fcn.005550bb
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44aa65
mov dword [ecx], vtable.std::_Node_base.0
mov dword [ecx + 4], 5
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
jmp 0x44aa67
xor ecx, ecx
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x44aa83
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 0xc]
mov dword [eax + 0x10], ecx
mov eax, dword [esi + 0x28]
mov dword [eax + 0xc], ecx
mov dword [esi + 0x28], ecx
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44aac8
cmp byte [eax], 0x5c
jne 0x44aac6
inc eax
cmp eax, ecx
je 0x44aac6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44aab3
mov dl, byte [eax]
cmp dl, 0x28
je 0x44aac4
cmp dl, 0x29
je 0x44aac4
test cl, 0x10
jne 0x44aac6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44aac4
cmp cl, 0x7d
jne 0x44aac6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
jmp 0x44ad70
cmp eax, 0x5c
jne 0x44abf1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44ab19
cmp byte [eax], 0x5c
jne 0x44ab17
inc eax
cmp eax, ecx
je 0x44ab17
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44ab04
mov dl, byte [eax]
cmp dl, 0x28
je 0x44ab15
cmp dl, 0x29
je 0x44ab15
test cl, 0x10
jne 0x44ab17
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44ab15
cmp cl, 0x7d
jne 0x44ab17
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x44ab82
cmp byte [esi + 0x48], 0x62
jne 0x44ab82
push 4
lea ecx, [esi + 0x24]
call fcn.0044d270
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44ab76
cmp byte [eax], 0x5c
jne 0x44ab74
inc eax
cmp eax, ecx
je 0x44ab74
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x44ab61
mov cl, byte [eax]
cmp cl, 0x28
je 0x44ab72
cmp cl, 0x29
je 0x44ab72
test dl, 0x10
jne 0x44ab74
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44ab72
cmp cl, 0x7d
jne 0x44ab74
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
jmp 0x44ad77
test eax, eax
je 0x44abe5
cmp byte [esi + 0x48], 0x42
jne 0x44abe5
push 4
lea ecx, [esi + 0x24]
call fcn.0044d270
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44abd9
cmp byte [eax], 0x5c
jne 0x44abd7
inc eax
cmp eax, ecx
je 0x44abd7
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x44abc4
mov cl, byte [eax]
cmp cl, 0x28
je 0x44abd5
cmp cl, 0x29
je 0x44abd5
test dl, 0x10
jne 0x44abd7
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44abd5
cmp cl, 0x7d
jne 0x44abd7
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
jmp 0x44ad77
mov ecx, esi
call fcn.0044adb0
jmp 0x44ad70
cmp eax, 0x5b
jne 0x44ac96
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44ac36
cmp byte [eax], 0x5c
jne 0x44ac34
inc eax
cmp eax, ecx
je 0x44ac34
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44ac21
mov dl, byte [eax]
cmp dl, 0x28
je 0x44ac32
cmp dl, 0x29
je 0x44ac32
test cl, 0x10
jne 0x44ac34
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44ac32
cmp cl, 0x7d
jne 0x44ac34
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
mov ecx, esi
call fcn.0044b320
cmp dword [esi + 0x4c], 0x5d
jne 0x44ad8f
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44ac8a
cmp byte [eax], 0x5c
jne 0x44ac88
inc eax
cmp eax, ecx
je 0x44ac88
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44ac75
mov dl, byte [eax]
cmp dl, 0x28
je 0x44ac86
cmp dl, 0x29
je 0x44ac86
test cl, 0x10
jne 0x44ac88
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44ac86
cmp cl, 0x7d
jne 0x44ac88
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
jmp 0x44ad70
cmp eax, 0x28
jne 0x44acfc
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x44acd7
cmp byte [eax], 0x5c
jne 0x44acd5
inc eax
cmp eax, ecx
je 0x44acd5
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x44acc2
mov dl, byte [eax]
cmp dl, 0x28
je 0x44acd3
cmp dl, 0x29
je 0x44acd3
test cl, 0x10
jne 0x44acd5
mov cl, byte [eax]
cmp cl, 0x7b
je 0x44acd3
cmp cl, 0x7d
jne 0x44acd5
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0044d900
mov ecx, esi
call fcn.0044dab0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.0044c810
test bl, bl
je 0x44ad77
jmp 0x44ad70
cmp eax, 0x5e
jne 0x44ad14
push 2
lea ecx, [esi + 0x24]
call fcn.0044d270
mov ecx, esi
call fcn.0044d2e0
jmp 0x44ad77
cmp eax, 0x24
jne 0x44ad2c
push 3
lea ecx, [esi + 0x24]
call fcn.0044d270
mov ecx, esi
call fcn.0044d2e0
jmp 0x44ad77
cmp eax, 0x2a
je 0x44ad9d
cmp eax, 0x2b
je 0x44ad9d
cmp eax, 0x3f
je 0x44ad9d
cmp eax, 0x7b
je 0x44ad9d
cmp eax, 0x7d
jne 0x44ad4e
test dword [esi + 0x50], 0x10000000
je 0x44ad96
cmp eax, 0x5d
jne 0x44ad5c
test dword [esi + 0x50], 0x10000000
je 0x44ad8f
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0044a230
mov ecx, esi
call fcn.0044d2e0
mov ecx, esi
call fcn.0044d330
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x44aa00
pop ebx
mov al, cl
pop esi
ret
push 5
call fcn.00540373
push 4
call fcn.00540373
push 6
call fcn.00540373
push 0xa
call fcn.00540373
int3