Function at 0x41af40
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4558c8
mov eax, dword fs:[0]
push eax
sub esp, 0x90
mov eax, dword [0x4645c8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x98], ecx
lea ecx, [ebp - 0x20]
call fcn.0041b370
mov dword [ebp - 4], 0
push 0
push 0
push 1
push 0
lea ecx, [ebp - 0x34]
call fcn.004169b0
push eax
mov ecx, dword [ebp - 0x98]
add ecx, 0xa8
call fcn.0041a2c0
test eax, eax
je 0x41b27d
mov eax, dword [ebp - 0x98]
cmp dword [eax + 0xac], 0
jne 0x41b0ae
push 0
push 0
push 1
push 0x7b
lea ecx, [ebp - 0x44]
call fcn.004169b0
push eax
mov ecx, dword [ebp - 0x98]
add ecx, 0xb8
call fcn.00417d60
test eax, eax
jne 0x41b052
push 0
push 0
push 1
push 0x3f
lea ecx, [ebp - 0x54]
call fcn.004169b0
push eax
mov ecx, dword [ebp - 0x98]
add ecx, 0xb8
call fcn.00417d60
test eax, eax
jne 0x41b052
push 0
push 0
push 1
push 0x2a
lea ecx, [ebp - 0x64]
call fcn.004169b0
push eax
mov ecx, dword [ebp - 0x98]
add ecx, 0xb8
call fcn.00417d60
test eax, eax
jne 0x41b052
push 0
push 0
push 1
push 0x2b
lea ecx, [ebp - 0x74]
call fcn.004169b0
push eax
mov ecx, dword [ebp - 0x98]
add ecx, 0xb8
call fcn.00417d60
test eax, eax
je 0x41b087
lea ecx, [ebp - 0x20]
call fcn.004165e0
test eax, eax
jne 0x41b080
push 1
mov ecx, dword [ebp - 0x98]
mov dl, byte [ecx + 0xa8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0041b3d0
mov ecx, dword [ebp - 0x98]
call fcn.004177a0
jmp 0x41b27d
push 1
mov eax, dword [ebp - 0x98]
mov cl, byte [eax + 0xa8]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0041b3d0
mov ecx, dword [ebp - 0x98]
call fcn.004177a0
jmp 0x41b278
mov edx, dword [ebp - 0x98]
cmp dword [edx + 0xac], 1
jne 0x41b278
mov eax, dword [ebp - 0x98]
mov cl, byte [eax + 0xa8]
mov byte [ebp - 0x21], cl
movsx edx, byte [ebp - 0x21]
cmp edx, 0x29
je 0x41b0e2
movsx eax, byte [ebp - 0x21]
cmp eax, 0x7c
jne 0x41b0e7
jmp 0x41b27d
lea ecx, [ebp - 0x20]
call fcn.004165e0
test eax, eax
jle 0x41b0f8
jmp 0x41b27d
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x28
jne 0x41b12a
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x98]
call fcn.0041c1c0
mov dword [ebp - 0x78], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x78]
jmp 0x41b35d
movsx eax, byte [ebp - 0x21]
cmp eax, 0x5b
je 0x41b172
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x2e
je 0x41b172
movsx edx, byte [ebp - 0x21]
cmp edx, 0x77
je 0x41b172
movsx eax, byte [ebp - 0x21]
cmp eax, 0x57
je 0x41b172
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x73
je 0x41b172
movsx edx, byte [ebp - 0x21]
cmp edx, 0x53
je 0x41b172
movsx eax, byte [ebp - 0x21]
cmp eax, 0x64
je 0x41b172
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x44
jne 0x41b19b
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x98]
call fcn.0041b820
mov dword [ebp - 0x7c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x7c]
jmp 0x41b35d
movsx eax, byte [ebp - 0x21]
cmp eax, 0x5e
je 0x41b1e3
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x24
je 0x41b1e3
movsx edx, byte [ebp - 0x21]
cmp edx, 0x41
je 0x41b1e3
movsx eax, byte [ebp - 0x21]
cmp eax, 0x5a
je 0x41b1e3
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x7a
je 0x41b1e3
movsx edx, byte [ebp - 0x21]
cmp edx, 0x62
je 0x41b1e3
movsx eax, byte [ebp - 0x21]
cmp eax, 0x42
je 0x41b1e3
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x47
jne 0x41b20c
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x98]
call fcn.0041d4f0
mov dword [ebp - 0x80], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x80]
jmp 0x41b35d
movsx eax, byte [ebp - 0x21]
cmp eax, 0x5c
je 0x41b227
movsx ecx, byte [ebp - 0x21]
cmp ecx, 0x6b
je 0x41b227
movsx edx, byte [ebp - 0x21]
cmp edx, 0x67
jne 0x41b256
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x98]
call fcn.0041d810
mov dword [ebp - 0x84], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x84]
jmp 0x41b35d
push 1
mov ecx, dword [ebp - 0x98]
mov dl, byte [ecx + 0xa8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0041b3d0
mov ecx, dword [ebp - 0x98]
call fcn.004177a0
jmp 0x41af7d
lea ecx, [ebp - 0x20]
call fcn.004165e0
test eax, eax
jle 0x41b324
push 0x20
call fcn.0042ab6d
add esp, 4
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
je 0x41b2dd
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
and ecx, 8
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
and eax, 0x10
push eax
lea ecx, [ebp - 0x20]
call fcn.004165e0
push eax
lea ecx, [ebp - 0x20]
call fcn.0041b3f0
push eax
mov ecx, dword [ebp - 0x90]
call fcn.0041dd30
mov dword [ebp - 0x9c], eax
jmp 0x41b2e7
mov dword [ebp - 0x9c], 0
mov ecx, dword [ebp - 0x9c]
mov dword [ebp - 0x8c], ecx
mov edx, dword [ebp - 0x8c]
push edx
mov ecx, dword [ebp - 0x98]
call fcn.0041a000
mov dword [ebp - 0x88], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x88]
jmp 0x41b35d
push 0
mov ecx, dword [ebp - 0x98]
call fcn.004195b0
mov dword [ebp - 0x94], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00416030
mov eax, dword [ebp - 0x94]
jmp 0x41b35d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 4