Function at 0x495c06
Capabilities:
Parse credit card information
Parse pe header

Disassembly:
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
movzx edx, byte [edi]
xor ebx, ebx
inc ebx
push 4
pop ecx
cmp edx, 0x2e
jg 0x495d9e
je 0x495d8a
cmp edx, 0x26
jg 0x495d0b
je 0x495d03
cmp edx, 0x22
jg 0x495cb2
je 0x495ff5
cmp edx, 9
jl 0x495dd5
cmp edx, 0xa
jle 0x495c88
cmp edx, 0xb
jle 0x495dd5
cmp edx, 0xd
jle 0x495c88
cmp edx, 0x20
je 0x495c88
cmp edx, 0x21
jne 0x495dd5
cmp byte [edi + 1], 0x3d
push 2
pop eax
je 0x495c7d
mov dword [esi], 0x94
jmp 0x496168
mov dword [esi], 0x4b
jmp 0x496168
movzx eax, byte [edi + 1]
xor edx, edx
inc edx
test byte [eax + 0x4f1298], dl
je 0x495ca5
inc edx
movzx ecx, byte [edx + edi]
test byte [ecx + 0x4f1298], 1
jne 0x495c97
mov dword [esi], 0x95
mov eax, edx
jmp 0x496168
mov eax, edx
sub eax, 0x23
je 0x495cd2
dec eax
je 0x4960f8
dec eax
jne 0x495dd5
mov dword [esi], 0x5a
jmp 0x495d5a
movzx eax, byte [edi + 1]
mov edx, ebx
test byte [eax + 0x4f1298], 4
je 0x4960f8
inc edx
movzx ecx, byte [edx + edi]
test byte [ecx + 0x4f1298], 4
jne 0x495ce5
cmp edx, ebx
jle 0x4960f8
mov dword [esi], 0x84
jmp 0x495cab
mov dword [esi], 0x52
jmp 0x495d5a
mov eax, edx
sub eax, 0x27
je 0x495ff5
dec eax
je 0x495d82
dec eax
je 0x495d7a
dec eax
je 0x495d72
dec eax
je 0x495d6a
dec eax
je 0x495d62
dec eax
jne 0x495dd5
cmp byte [edi + 1], 0x2d
jne 0x495d54
movzx ecx, byte [edi + 2]
push 2
pop eax
jmp 0x495d45
cmp ecx, 0xa
je 0x495d49
inc eax
movzx ecx, byte [eax + edi]
test ecx, ecx
jne 0x495d3b
mov dword [esi], 0x95
jmp 0x496168
mov dword [esi], 0x57
xor eax, eax
inc eax
jmp 0x496168
mov dword [esi], 0x19
jmp 0x495d5a
mov dword [esi], 0x56
jmp 0x495d5a
mov dword [esi], 0x58
jmp 0x495d5a
mov dword [esi], 0x17
jmp 0x495d5a
mov dword [esi], 0x16
jmp 0x495d5a
movzx eax, byte [edi + 1]
test byte [eax + 0x4f1298], cl
jne 0x495ded
mov dword [esi], 0x76
jmp 0x495d5a
cmp edx, 0x3f
jg 0x495f96
je 0x495f69
cmp edx, 0x3b
jg 0x495ede
je 0x495ed4
cmp edx, 0x2f
je 0x495e96
jle 0x495dd5
cmp edx, 0x39
jle 0x495ded
cmp edx, 0x3a
je 0x4960f8
test byte [edx + 0x4f1298], 0x46
jne 0x4960cd
mov dword [esi], 0x94
jmp 0x495d5a
xor ebx, ebx
mov dword [esi], 0x81
test byte [edx + 0x4f1298], cl
je 0x495e0a
inc ebx
movzx eax, byte [ebx + edi]
test byte [eax + 0x4f1298], cl
jne 0x495dfd
cmp byte [ebx + edi], 0x2e
jne 0x495e23
inc ebx
movzx eax, byte [ebx + edi]
test byte [eax + 0x4f1298], cl
jne 0x495e10
mov dword [esi], 0x82
mov al, byte [ebx + edi]
cmp al, 0x65
je 0x495e2e
cmp al, 0x45
jne 0x495e6c
mov dl, byte [ebx + edi + 1]
movzx eax, dl
test byte [eax + 0x4f1298], cl
jne 0x495e54
cmp dl, 0x2b
je 0x495e47
cmp dl, 0x2d
jne 0x495e6c
movzx eax, byte [ebx + edi + 2]
test byte [eax + 0x4f1298], cl
je 0x495e6c
add ebx, 2
jmp 0x495e5a
inc ebx
movzx eax, byte [ebx + edi]
test byte [eax + 0x4f1298], cl
jne 0x495e59
mov dword [esi], 0x82
movzx eax, byte [ebx + edi]
test byte [eax + 0x4f1298], 0x46
je 0x496166
inc ebx
mov dword [esi], 0x94
movzx ecx, byte [ebx + edi]
test byte [ecx + 0x4f1298], 0x46
jne 0x495e7d
jmp 0x496166
cmp byte [edi + 1], 0x2a
jne 0x495ec9
mov cl, byte [edi + 2]
test cl, cl
je 0x495ec9
push 3
pop eax
movzx ecx, cl
cmp ecx, 0x2a
jne 0x495eb4
cmp byte [eax + edi], 0x2f
je 0x495ec3
movzx ecx, byte [eax + edi]
test ecx, ecx
je 0x495d49
inc eax
jmp 0x495ea9
inc eax
jmp 0x495d49
mov dword [esi], 0x59
jmp 0x495d5a
xor ebx, ebx
inc ebx
mov dword [esi], ebx
jmp 0x496166
mov eax, edx
sub eax, 0x3c
je 0x495f2d
dec eax
je 0x495f18
dec eax
jne 0x495dd5
movzx eax, byte [edi + 1]
cmp eax, 0x3d
jne 0x495f00
mov dword [esi], 0x50
jmp 0x495f3c
cmp eax, 0x3e
jne 0x495f0d
mov dword [esi], 0x55
jmp 0x495f3c
mov dword [esi], 0x4d
jmp 0x495d5a
xor eax, eax
cmp byte [edi + 1], 0x3d
mov dword [esi], 0x4c
sete al
inc eax
jmp 0x496168
movzx eax, byte [edi + 1]
cmp eax, 0x3d
jne 0x495f44
mov dword [esi], 0x4e
push 2
pop eax
jmp 0x496168
cmp eax, 0x3e
jne 0x495f51
mov dword [esi], 0x4b
jmp 0x495f3c
cmp eax, 0x3c
jne 0x495f5e
mov dword [esi], 0x54
jmp 0x495f3c
mov dword [esi], 0x4f
jmp 0x495d5a
movzx eax, byte [edi + 1]
xor edx, edx
inc edx
test byte [eax + 0x4f1298], 4
mov dword [esi], 0x85
je 0x495cab
inc edx
movzx ecx, byte [edx + edi]
test byte [ecx + 0x4f1298], 4
jne 0x495f83
jmp 0x495cab
mov eax, edx
sub eax, 0x40
je 0x4960f8
sub eax, 0x18
je 0x496069
sub eax, 3
je 0x496041
sub eax, 5
je 0x495ff5
sub eax, 0x18
je 0x496069
sub eax, 4
je 0x495fd9
dec eax
dec eax
jne 0x495dd5
mov dword [esi], 0x5d
jmp 0x495d5a
cmp byte [edi + 1], 0x7c
je 0x495fea
mov dword [esi], 0x53
jmp 0x495d5a
mov dword [esi], 0x5b
jmp 0x495f3c
movzx ebx, byte [edi + 1]
xor ecx, ecx
inc ecx
jmp 0x496011
cmp ebx, edx
jne 0x49600c
movzx eax, byte [edi + ecx + 1]
cmp eax, edx
jne 0x496015
inc ecx
inc ecx
movzx ebx, byte [ecx + edi]
test ebx, ebx
jne 0x495ffe
cmp ebx, 0x27
jne 0x496028
mov dword [esi], 0x5e
lea eax, [ecx + 1]
jmp 0x496168
test ebx, ebx
je 0x496034
mov dword [esi], 0x1a
jmp 0x496020
mov dword [esi], 0x94
mov eax, ecx
jmp 0x496168
xor eax, eax
inc eax
jmp 0x49604f
movzx edx, byte [eax + edi]
test edx, edx
je 0x496054
inc eax
cmp edx, 0x5d
jne 0x496046
push 0x1a
mov ecx, 0x94
pop edi
cmp edx, 0x5d
cmove ecx, edi
mov dword [esi], ecx
jmp 0x496168
cmp byte [edi + 1], 0x27
jne 0x495dd5
movzx eax, byte [edi + 2]
push 2
mov dword [esi], 0x83
pop ecx
jmp 0x496087
inc ecx
movzx eax, byte [ecx + edi]
test byte [eax + 0x4f1298], 8
jne 0x496082
mov dl, byte [ecx + edi]
cmp dl, 0x27
jne 0x4960a8
mov eax, ecx
and eax, 0x80000001
jns 0x4960a6
dec eax
or eax, 0xfffffffe
inc eax
je 0x4960bd
mov dword [esi], 0x94
jmp 0x4960b9
cmp dl, 0x27
je 0x4960bd
inc ecx
mov dl, byte [ecx + edi]
test dl, dl
jne 0x4960b0
cmp byte [ecx + edi], 0
je 0x49603a
inc ecx
jmp 0x49603a
movzx eax, byte [edi + 1]
xor ebx, ebx
inc ebx
test byte [eax + 0x4f1298], 0x46
je 0x4960eb
inc ebx
movzx ecx, byte [ebx + edi]
test byte [ecx + 0x4f1298], 0x46
jne 0x4960dd
mov edx, ebx
mov ecx, edi
call fcn.00495b85
mov dword [esi], eax
jmp 0x496166
movzx ecx, byte [edi + 1]
xor edx, edx
mov dword [esi], 0x85
test ecx, ecx
je 0x496160
movzx eax, cl
test byte [eax + 0x4f1298], 0x46
je 0x496117
inc edx
jmp 0x49612c
cmp ecx, 0x28
jne 0x496120
test edx, edx
jg 0x496137
cmp ecx, 0x3a
jne 0x49615c
cmp byte [edi + ebx + 1], cl
jne 0x49615c
inc ebx
inc ebx
movzx ecx, byte [ebx + edi]
test ecx, ecx
jne 0x496108
jmp 0x49615c
inc ebx
movzx ecx, byte [ebx + edi]
test ecx, ecx
je 0x49614e
test byte [ecx + 0x4f1298], 1
jne 0x49614e
cmp ecx, 0x29
jne 0x496137
cmp ecx, 0x29
jne 0x496156
inc ebx
jmp 0x49615c
mov dword [esi], 0x94
test edx, edx
jne 0x496166
mov dword [esi], 0x94
mov eax, ebx
pop edi
pop esi
pop ebx
ret