Function at 0x41d1d0
Capabilities:
Parse credit card information

Disassembly:
push ecx
push ebx
push esi
mov esi, ecx
xor cl, cl
cmp dword [esi + 0x4c], 0xffffffff
je 0x41d564
mov eax, dword [esi + 0x4c]
cmp eax, 0x7c
je 0x41d564
cmp eax, 0x29
jne 0x41d209
cmp dword [esi + 0x10], 0
jne 0x41d564
test dword [esi + 0x50], 0x10000000
je 0x41d56a
cmp eax, 0x2e
jne 0x41d2b5
push 0x14
call fcn.004a7933
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41d246
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 0x41d248
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 0x41d264
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 0x41d2a9
cmp byte [eax], 0x5c
jne 0x41d2a7
inc eax
cmp eax, ecx
je 0x41d2a7
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d294
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d2a5
cmp dl, 0x29
je 0x41d2a5
test cl, 0x10
jne 0x41d2a7
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d2a5
cmp cl, 0x7d
jne 0x41d2a7
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
jmp 0x41d551
cmp eax, 0x5c
jne 0x41d3d2
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d2fa
cmp byte [eax], 0x5c
jne 0x41d2f8
inc eax
cmp eax, ecx
je 0x41d2f8
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d2e5
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d2f6
cmp dl, 0x29
je 0x41d2f6
test cl, 0x10
jne 0x41d2f8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d2f6
cmp cl, 0x7d
jne 0x41d2f8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
mov eax, dword [esi + 0x50]
and eax, 0x80
je 0x41d363
cmp byte [esi + 0x48], 0x62
jne 0x41d363
push 4
lea ecx, [esi + 0x24]
call fcn.0041d730
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d357
cmp byte [eax], 0x5c
jne 0x41d355
inc eax
cmp eax, ecx
je 0x41d355
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d342
mov cl, byte [eax]
cmp cl, 0x28
je 0x41d353
cmp cl, 0x29
je 0x41d353
test dl, 0x10
jne 0x41d355
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d353
cmp cl, 0x7d
jne 0x41d355
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
jmp 0x41d558
test eax, eax
je 0x41d3c6
cmp byte [esi + 0x48], 0x42
jne 0x41d3c6
push 4
lea ecx, [esi + 0x24]
call fcn.0041d730
mov eax, dword [esi + 0x28]
xor dword [eax + 8], 1
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d3ba
cmp byte [eax], 0x5c
jne 0x41d3b8
inc eax
cmp eax, ecx
je 0x41d3b8
mov edx, dword [esi + 0x50]
test dl, 8
jne 0x41d3a5
mov cl, byte [eax]
cmp cl, 0x28
je 0x41d3b6
cmp cl, 0x29
je 0x41d3b6
test dl, 0x10
jne 0x41d3b8
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d3b6
cmp cl, 0x7d
jne 0x41d3b8
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
jmp 0x41d558
mov ecx, esi
call fcn.0041e630
jmp 0x41d551
cmp eax, 0x5b
jne 0x41d477
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d417
cmp byte [eax], 0x5c
jne 0x41d415
inc eax
cmp eax, ecx
je 0x41d415
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d402
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d413
cmp dl, 0x29
je 0x41d413
test cl, 0x10
jne 0x41d415
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d413
cmp cl, 0x7d
jne 0x41d415
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
mov ecx, esi
call fcn.0041e580
cmp dword [esi + 0x4c], 0x5d
jne 0x41d571
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d46b
cmp byte [eax], 0x5c
jne 0x41d469
inc eax
cmp eax, ecx
je 0x41d469
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d456
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d467
cmp dl, 0x29
je 0x41d467
test cl, 0x10
jne 0x41d469
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d467
cmp cl, 0x7d
jne 0x41d469
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
jmp 0x41d551
cmp eax, 0x28
jne 0x41d4dd
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
je 0x41d4b8
cmp byte [eax], 0x5c
jne 0x41d4b6
inc eax
cmp eax, ecx
je 0x41d4b6
mov ecx, dword [esi + 0x50]
test cl, 8
jne 0x41d4a3
mov dl, byte [eax]
cmp dl, 0x28
je 0x41d4b4
cmp dl, 0x29
je 0x41d4b4
test cl, 0x10
jne 0x41d4b6
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41d4b4
cmp cl, 0x7d
jne 0x41d4b6
mov dword [esi], eax
inc dword [esi]
mov ecx, esi
call fcn.0041b320
mov ecx, esi
call fcn.0041e6f0
push 5
push 0x29
mov ecx, esi
mov bl, al
call fcn.0041e520
test bl, bl
je 0x41d558
jmp 0x41d551
cmp eax, 0x5e
jne 0x41d4f5
push 2
lea ecx, [esi + 0x24]
call fcn.0041d730
mov ecx, esi
call fcn.0041d180
jmp 0x41d558
cmp eax, 0x24
jne 0x41d50d
push 3
lea ecx, [esi + 0x24]
call fcn.0041d730
mov ecx, esi
call fcn.0041d180
jmp 0x41d558
cmp eax, 0x2a
je 0x41d57f
cmp eax, 0x2b
je 0x41d57f
cmp eax, 0x3f
je 0x41d57f
cmp eax, 0x7b
je 0x41d57f
cmp eax, 0x7d
jne 0x41d52f
test dword [esi + 0x50], 0x10000000
je 0x41d578
cmp eax, 0x5d
jne 0x41d53d
test dword [esi + 0x50], 0x10000000
je 0x41d571
movzx eax, byte [esi + 0x48]
lea ecx, [esi + 0x24]
push eax
call fcn.0041e8e0
mov ecx, esi
call fcn.0041d180
mov ecx, esi
call fcn.0041e7b0
cmp dword [esi + 0x4c], 0xffffffff
mov cl, 1
jne 0x41d1e1
pop esi
mov al, cl
pop ebx
pop ecx
ret
push 5
call fcn.004a5df7
push 4
call fcn.004a5df7
push 6
call fcn.004a5df7
push 0xa
call fcn.004a5df7
int3