Function at 0x40c760
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [0x43e2c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0xc], 0
xor eax, eax
mov word [ebp - 4], ax
mov byte [ebp - 0x18], 0
xor ecx, ecx
mov dword [ebp - 0x17], ecx
mov word [ebp - 0x13], cx
mov byte [ebp - 0x11], cl
mov edx, dword [ebp + 0x10]
mov dword [edx], 0
mov dword [ebp - 0x20], 0xfffffff5
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 0x27
je 0x40c7d4
mov dword [ebp - 0x20], 0xffffffff
jmp 0x40d863
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 8]
cmp edx, 0x2d
jne 0x40c804
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0xe]
cmp ecx, 0x2d
jne 0x40c804
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x14]
cmp eax, 0x2d
jne 0x40c804
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x1a]
cmp edx, 0x2d
je 0x40c810
mov dword [ebp - 0x20], 0xfffffffe
jmp 0x40d863
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0x17]
cmp ecx, 0x31
jl 0x40c828
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x17]
cmp eax, 0x39
jle 0x40c840
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x17]
cmp edx, 0x41
jl 0x40c842
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0x17]
cmp ecx, 0x46
jg 0x40c842
jmp 0x40c84e
mov dword [ebp - 0x20], 0xfffffffd
jmp 0x40d863
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x17]
cmp eax, 0x41
jl 0x40c875
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x17]
cmp edx, 0x46
jg 0x40c875
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0x17]
sub ecx, 0x37
mov dword [ebp - 0x1c], ecx
jmp 0x40c882
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x17]
sub eax, 0x30
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0xd]
cmp edx, 0x30
jl 0x40c89c
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0xd]
cmp ecx, 0x35
jg 0x40c89c
jmp 0x40c8a8
mov dword [ebp - 0x20], 0xfffffffc
jmp 0x40d863
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0xd]
sub eax, 0x30
mov dword [ebp - 8], eax
cmp dword [ebp - 0x1c], 0xb
jge 0x40c8e3
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x13]
cmp edx, 0x41
jl 0x40c8d5
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 0x13]
cmp ecx, 0x4c
jg 0x40c8d5
jmp 0x40c8e1
mov dword [ebp - 0x20], 0xfffffffb
jmp 0x40d863
jmp 0x40c909
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x13]
cmp eax, 0x30
jl 0x40c8fd
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x13]
cmp edx, 0x35
jg 0x40c8fd
jmp 0x40c909
mov dword [ebp - 0x20], 0xfffffffa
jmp 0x40d863
push 2
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0xc]
lea edx, [ecx + eax + 0x1b]
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.00403750
add esp, 0xc
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x2c], ecx
xor edx, edx
mov word [ebp - 4], dx
mov dword [ebp - 0x28], 0
jmp 0x40c940
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x40c9ef
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x28]
movzx edx, byte [ecx]
cmp edx, 0x30
jl 0x40c980
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x28]
movzx ecx, byte [eax]
cmp ecx, 0x39
jg 0x40c980
movzx edx, word [ebp - 4]
shl edx, 4
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x28]
movzx ecx, byte [eax]
lea edx, [edx + ecx - 0x30]
mov word [ebp - 4], dx
jmp 0x40c9ea
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x28]
movzx ecx, byte [eax]
cmp ecx, 0x41
jl 0x40c9b6
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x28]
movzx eax, byte [edx]
cmp eax, 0x46
jg 0x40c9b6
movzx ecx, word [ebp - 4]
shl ecx, 4
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x28]
movzx eax, byte [edx]
lea ecx, [ecx + eax - 0x37]
mov word [ebp - 4], cx
jmp 0x40c9ea
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x28]
movzx eax, byte [edx]
cmp eax, 0x61
jl 0x40c9ea
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x28]
movzx edx, byte [ecx]
cmp edx, 0x66
jg 0x40c9ea
movzx eax, word [ebp - 4]
shl eax, 4
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x28]
movzx edx, byte [ecx]
lea eax, [eax + edx - 0x57]
mov word [ebp - 4], ax
jmp 0x40c937
movzx ecx, word [ebp - 4]
cmp ecx, 0x3b
jle 0x40ca04
mov dword [ebp - 0x20], 0xfffffff9
jmp 0x40d863
mov edx, dword [ebp + 0xc]
add edx, dword [ebp - 8]
mov al, byte [edx + 0x1e]
mov byte [ebp - 0x18], al
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 8]
mov dl, byte [ecx + 0x20]
mov byte [ebp - 0x17], dl
mov eax, dword [ebp + 0xc]
mov cl, byte [eax + 0x26]
mov byte [ebp - 0x16], cl
movsx edx, byte [ebp - 0x18]
cmp edx, 0x41
jl 0x40ca39
movsx eax, byte [ebp - 0x18]
cmp eax, 0x58
jg 0x40ca39
jmp 0x40ca45
mov dword [ebp - 0x20], 0xfffffff8
jmp 0x40d863
movsx ecx, byte [ebp - 0x18]
cmp ecx, 0x47
jg 0x40ca57
mov dword [ebp - 0xc], 0
jmp 0x40ca82
movsx edx, byte [ebp - 0x18]
cmp edx, 0x4d
jg 0x40ca69
mov dword [ebp - 0xc], 1
jmp 0x40ca82
movsx eax, byte [ebp - 0x18]
cmp eax, 0x53
jg 0x40ca7b
mov dword [ebp - 0xc], 2
jmp 0x40ca82
mov dword [ebp - 0xc], 3
movsx ecx, byte [ebp - 0x17]
cmp ecx, 0x30
jl 0x40ca96
movsx edx, byte [ebp - 0x17]
cmp edx, 0x33
jg 0x40ca96
jmp 0x40caa2
mov dword [ebp - 0x20], 0xfffffff7
jmp 0x40d863
movsx eax, byte [ebp - 0x16]
cmp eax, 0x44
jl 0x40cab6
movsx ecx, byte [ebp - 0x17]
cmp ecx, 0x57
jg 0x40cab6
jmp 0x40cac2
mov dword [ebp - 0x20], 0xfffffff6
jmp 0x40d863
cmp dword [ebp - 0xc], 0
jne 0x40ce29
cmp dword [ebp - 0x1c], 1
jne 0x40caea
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x41
jne 0x40caea
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 2
jne 0x40cb08
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x43
jne 0x40cb08
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 3
jne 0x40cb26
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x45
jne 0x40cb26
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 4
jne 0x40cb44
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x47
jne 0x40cb44
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 5
jne 0x40cb62
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x49
jne 0x40cb62
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 6
jne 0x40cb80
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x4b
jne 0x40cb80
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 7
jne 0x40cb9e
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x4d
jne 0x40cb9e
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 8
jne 0x40cbbc
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x4f
jne 0x40cbbc
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 9
jne 0x40cbda
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x51
jne 0x40cbda
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xa
jne 0x40cbf8
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x53
jne 0x40cbf8
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xb
jne 0x40cc13
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x31
jne 0x40cc13
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xc
jne 0x40cc2e
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x33
jne 0x40cc2e
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xd
jne 0x40cc49
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x35
jne 0x40cc49
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xe
jne 0x40cc64
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x37
jne 0x40cc64
mov dword [ebp - 0x20], 0
jmp 0x40cc7d
cmp dword [ebp - 0x1c], 0xf
jne 0x40cc7d
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x39
jne 0x40cc7d
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x1c], 1
jne 0x40cc9a
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x35
jne 0x40cc9a
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 2
jne 0x40ccb7
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x33
jne 0x40ccb7
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 3
jne 0x40ccd4
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x40ccd4
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 4
jne 0x40ccf1
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x39
jne 0x40ccf1
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 5
jne 0x40cd0e
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x37
jne 0x40cd0e
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 6
jne 0x40cd2b
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x44
jne 0x40cd2b
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 7
jne 0x40cd48
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x46
jne 0x40cd48
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 8
jne 0x40cd65
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x48
jne 0x40cd65
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 9
jne 0x40cd82
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x4a
jne 0x40cd82
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xa
jne 0x40cd9f
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x4c
jne 0x40cd9f
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xb
jne 0x40cdb9
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x4e
jne 0x40cdb9
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xc
jne 0x40cdd3
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x50
jne 0x40cdd3
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xd
jne 0x40cded
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x52
jne 0x40cded
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xe
jne 0x40ce07
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x54
jne 0x40ce07
mov dword [ebp - 0x20], 1
jmp 0x40ce1f
cmp dword [ebp - 0x1c], 0xf
jne 0x40ce1f
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x56
jne 0x40ce1f
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0xc], 1
jne 0x40d190
cmp dword [ebp - 0x1c], 1
jne 0x40ce51
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x41
jne 0x40ce51
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 2
jne 0x40ce6f
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x43
jne 0x40ce6f
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 3
jne 0x40ce8d
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x45
jne 0x40ce8d
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 4
jne 0x40ceab
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x47
jne 0x40ceab
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 5
jne 0x40cec9
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x49
jne 0x40cec9
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 6
jne 0x40cee7
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x4b
jne 0x40cee7
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 7
jne 0x40cf05
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x4d
jne 0x40cf05
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 8
jne 0x40cf23
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x4f
jne 0x40cf23
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 9
jne 0x40cf41
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x51
jne 0x40cf41
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xa
jne 0x40cf5f
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x53
jne 0x40cf5f
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xb
jne 0x40cf7a
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x31
jne 0x40cf7a
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xc
jne 0x40cf95
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x33
jne 0x40cf95
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xd
jne 0x40cfb0
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x35
jne 0x40cfb0
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xe
jne 0x40cfcb
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x37
jne 0x40cfcb
mov dword [ebp - 0x20], 0
jmp 0x40cfe4
cmp dword [ebp - 0x1c], 0xf
jne 0x40cfe4
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x39
jne 0x40cfe4
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x1c], 1
jne 0x40d001
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x53
jne 0x40d001
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 2
jne 0x40d01e
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x55
jne 0x40d01e
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 3
jne 0x40d03b
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x35
jne 0x40d03b
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 4
jne 0x40d058
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x37
jne 0x40d058
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 5
jne 0x40d075
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x39
jne 0x40d075
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 6
jne 0x40d092
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x40d092
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 7
jne 0x40d0af
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x33
jne 0x40d0af
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 8
jne 0x40d0cc
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x43
jne 0x40d0cc
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 9
jne 0x40d0e9
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x45
jne 0x40d0e9
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xa
jne 0x40d106
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x47
jne 0x40d106
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xb
jne 0x40d120
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x49
jne 0x40d120
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xc
jne 0x40d13a
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x4b
jne 0x40d13a
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xd
jne 0x40d154
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x4d
jne 0x40d154
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xe
jne 0x40d16e
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x4f
jne 0x40d16e
mov dword [ebp - 0x20], 1
jmp 0x40d186
cmp dword [ebp - 0x1c], 0xf
jne 0x40d186
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x51
jne 0x40d186
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0xc], 2
jne 0x40d4f7
cmp dword [ebp - 0x1c], 1
jne 0x40d1b8
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x41
jne 0x40d1b8
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 2
jne 0x40d1d6
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x43
jne 0x40d1d6
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 3
jne 0x40d1f4
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x45
jne 0x40d1f4
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 4
jne 0x40d212
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x47
jne 0x40d212
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 5
jne 0x40d230
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x49
jne 0x40d230
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 6
jne 0x40d24e
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x4b
jne 0x40d24e
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 7
jne 0x40d26c
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x4d
jne 0x40d26c
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 8
jne 0x40d28a
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x4f
jne 0x40d28a
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 9
jne 0x40d2a8
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x51
jne 0x40d2a8
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xa
jne 0x40d2c6
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x53
jne 0x40d2c6
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xb
jne 0x40d2e1
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x31
jne 0x40d2e1
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xc
jne 0x40d2fc
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x33
jne 0x40d2fc
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xd
jne 0x40d317
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x35
jne 0x40d317
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xe
jne 0x40d332
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x37
jne 0x40d332
mov dword [ebp - 0x20], 0
jmp 0x40d34b
cmp dword [ebp - 0x1c], 0xf
jne 0x40d34b
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x39
jne 0x40d34b
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x1c], 1
jne 0x40d368
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x4d
jne 0x40d368
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 2
jne 0x40d385
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x4f
jne 0x40d385
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 3
jne 0x40d3a2
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x51
jne 0x40d3a2
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 4
jne 0x40d3bf
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x53
jne 0x40d3bf
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 5
jne 0x40d3dc
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x31
jne 0x40d3dc
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 6
jne 0x40d3f9
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x33
jne 0x40d3f9
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 7
jne 0x40d416
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x35
jne 0x40d416
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 8
jne 0x40d433
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x37
jne 0x40d433
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 9
jne 0x40d450
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x39
jne 0x40d450
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xa
jne 0x40d46d
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x41
jne 0x40d46d
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xb
jne 0x40d487
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x43
jne 0x40d487
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xc
jne 0x40d4a1
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x45
jne 0x40d4a1
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xd
jne 0x40d4bb
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x47
jne 0x40d4bb
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xe
jne 0x40d4d5
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x49
jne 0x40d4d5
mov dword [ebp - 0x20], 1
jmp 0x40d4ed
cmp dword [ebp - 0x1c], 0xf
jne 0x40d4ed
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x4b
jne 0x40d4ed
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0xc], 3
jne 0x40d854
cmp dword [ebp - 0x1c], 1
jne 0x40d51f
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x41
jne 0x40d51f
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 2
jne 0x40d53d
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x43
jne 0x40d53d
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 3
jne 0x40d55b
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x45
jne 0x40d55b
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 4
jne 0x40d579
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x47
jne 0x40d579
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 5
jne 0x40d597
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x49
jne 0x40d597
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 6
jne 0x40d5b5
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x4b
jne 0x40d5b5
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 7
jne 0x40d5d3
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x4d
jne 0x40d5d3
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 8
jne 0x40d5f1
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x4f
jne 0x40d5f1
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 9
jne 0x40d60f
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x51
jne 0x40d60f
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xa
jne 0x40d62d
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x53
jne 0x40d62d
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xb
jne 0x40d648
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x31
jne 0x40d648
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xc
jne 0x40d663
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x33
jne 0x40d663
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xd
jne 0x40d67e
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 2]
cmp eax, 0x35
jne 0x40d67e
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xe
jne 0x40d699
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 2]
cmp edx, 0x37
jne 0x40d699
mov dword [ebp - 0x20], 0
jmp 0x40d6b2
cmp dword [ebp - 0x1c], 0xf
jne 0x40d6b2
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax + 2]
cmp ecx, 0x39
jne 0x40d6b2
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x1c], 1
jne 0x40d6cf
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x54
jne 0x40d6cf
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 2
jne 0x40d6ec
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x39
jne 0x40d6ec
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 3
jne 0x40d709
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x37
jne 0x40d709
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 4
jne 0x40d726
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x35
jne 0x40d726
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 5
jne 0x40d743
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x33
jne 0x40d743
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 6
jne 0x40d760
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x40d760
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 7
jne 0x40d77d
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x42
jne 0x40d77d
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 8
jne 0x40d79a
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x44
jne 0x40d79a
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 9
jne 0x40d7b7
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x46
jne 0x40d7b7
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xa
jne 0x40d7d4
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x48
jne 0x40d7d4
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xb
jne 0x40d7ee
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x4a
jne 0x40d7ee
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xc
jne 0x40d808
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x4c
jne 0x40d808
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xd
jne 0x40d822
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx]
cmp eax, 0x4e
jne 0x40d822
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xe
jne 0x40d83c
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx]
cmp edx, 0x50
jne 0x40d83c
mov dword [ebp - 0x20], 1
jmp 0x40d854
cmp dword [ebp - 0x1c], 0xf
jne 0x40d854
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
cmp ecx, 0x52
jne 0x40d854
mov dword [ebp - 0x20], 1
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x1c]
mov dword [edx], eax
jmp 0x40d863
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00401ef4
mov esp, ebp
pop ebp
ret 0xc