Function at 0x4f26f0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a56ed
mov eax, dword fs:[0]
push eax
mov eax, 0x1f90
call fcn.0059f510
mov eax, dword [0x5f300c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x18]
push 8
mov dword [ebp - 0x1f9c], eax
mov dword [ebp - method.Scintilla::PropSetSimple.virtual_0], vtable.Scintilla::PropSetSimple.0
call fcn.0059df75
mov esi, eax
add esp, 4
mov dword [ebp - 0x1f90], esi
mov dword [ebp - 4], 0
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.00474320
mov dword [esi], eax
mov dword [ebp - 0x1f94], esi
push edi
lea ecx, [ebp - 0x1f80]
mov dword [ebp - 4], 1
call fcn.00472850
mov ecx, dword [ebp - 0x1f80]
lea eax, [ebp - 0x1f98]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x10]
add eax, edi
mov dword [ebp - 0x1f84], edi
mov dword [ebp - 0x1f88], eax
mov eax, dword [ecx]
push edi
push ecx
call dword [eax + 0x2c]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], edi
cmp esi, 1
je 0x4f2898
cmp esi, 3
je 0x4f2898
cmp esi, 2
je 0x4f286b
cmp esi, 4
je 0x4f286b
cmp esi, 0xd
jne 0x4f27de
push 0
jmp 0x4f27e5
cmp esi, 0x15
jne 0x4f280b
push 1
mov esi, dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
push esi
lea ecx, [ebp - 0x1f80]
call fcn.004f2230
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f28e7
cmp esi, 0xe
jne 0x4f2821
mov ecx, dword [ebp - 0x1f80]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
push 0
jmp 0x4f2839
cmp esi, 0x16
jne 0x4f28e1
mov ecx, dword [ebp - 0x1f80]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
push 1
mov edx, dword [ebp - 0x1f80]
dec eax
push eax
push edx
mov ecx, dword [edx]
call dword [ecx + 0x24]
mov esi, dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
push eax
push esi
lea ecx, [ebp - 0x1f80]
call fcn.004f2500
mov edi, dword [ebp - 0x1f84]
add esp, 0xc
jmp 0x4f28e7
xor eax, eax
lea edx, [ebp - 0x1f84]
cmp esi, 4
lea ecx, [ebp - 0x1f80]
mov esi, dword [ebp - 0x1f88]
setne al
inc eax
push eax
push esi
call fcn.004f20c0
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f28e7
mov ecx, dword [ebp - 0x1f80]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [ebp - 0x1f80]
dec eax
push eax
push edx
mov ecx, dword [edx]
call dword [ecx + 0x24]
push eax
xor eax, eax
lea edx, [ebp - 0x1f84]
cmp esi, 3
lea ecx, [ebp - 0x1f80]
mov esi, dword [ebp - 0x1f88]
setne al
inc eax
push eax
push esi
call fcn.004f1ec0
mov edi, dword [ebp - 0x1f84]
add esp, 0xc
jmp 0x4f28e7
mov esi, dword [ebp - 0x1f88]
cmp edi, esi
jge 0x4f2ea6
nop
cmp edi, dword [ebp - 0xfd8]
jl 0x4f2900
cmp edi, dword [ebp - 0xfd4]
jl 0x4f291c
push edi
lea ecx, [ebp - 0x1f80]
call fcn.004727c0
cmp edi, dword [ebp - 0xfd8]
jl 0x4f292d
cmp edi, dword [ebp - 0xfd4]
jge 0x4f292d
lea eax, [ebp - 0x1f7c]
sub eax, dword [ebp - 0xfd8]
mov al, byte [eax + edi]
jmp 0x4f292f
xor al, al
lea ebx, [edi + 1]
movsx esi, al
mov dword [ebp - 0x1f8c], ebx
cmp ebx, dword [ebp - 0xfd8]
jl 0x4f294b
cmp ebx, dword [ebp - 0xfd4]
jl 0x4f2967
push ebx
lea ecx, [ebp - 0x1f80]
call fcn.004727c0
cmp ebx, dword [ebp - 0xfd8]
jl 0x4f2978
cmp ebx, dword [ebp - 0xfd4]
jge 0x4f2978
mov eax, ebx
sub eax, dword [ebp - 0xfd8]
mov bl, byte [ebp + eax - 0x1f7c]
jmp 0x4f297a
xor bl, bl
lea ecx, [edi + 2]
mov dword [ebp - 0x1f90], ecx
cmp ecx, dword [ebp - 0xfd8]
jl 0x4f2993
cmp ecx, dword [ebp - 0xfd4]
jl 0x4f29b5
push ecx
lea ecx, [ebp - 0x1f80]
call fcn.004727c0
mov ecx, dword [ebp - 0x1f90]
cmp ecx, dword [ebp - 0xfd8]
jl 0x4f29c6
cmp ecx, dword [ebp - 0xfd4]
jge 0x4f29c6
mov eax, ecx
sub eax, dword [ebp - 0xfd8]
mov bh, byte [ebp + eax - 0x1f7c]
jmp 0x4f29c8
xor bh, bh
test edi, edi
jne 0x4f2a0c
cmp esi, 0x23
jne 0x4f2a0c
cmp bl, 0x21
jne 0x4f2a20
cmp bh, 0x5b
je 0x4f2a20
push 2
push dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
mov dword [ebp - 0x1f84], 2
lea ecx, [ebp - 0x1f80]
call fcn.004f20c0
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f2e9a
cmp esi, 0x20
je 0x4f2a24
cmp esi, 9
je 0x4f2a24
cmp esi, 0xd
je 0x4f2a24
cmp esi, 0xa
je 0x4f2a24
xor al, al
jmp 0x4f2a26
mov al, 1
test al, al
je 0x4f2adb
mov edi, edi
cmp edi, dword [ebp - 0xfd8]
jl 0x4f2a40
cmp edi, dword [ebp - 0xfd4]
jl 0x4f2a5c
push edi
lea ecx, [ebp - 0x1f80]
call fcn.004727c0
cmp edi, dword [ebp - 0xfd8]
jl 0x4f2a6d
cmp edi, dword [ebp - 0xfd4]
jge 0x4f2a6d
lea eax, [ebp - 0x1f7c]
sub eax, dword [ebp - 0xfd8]
mov al, byte [eax + edi]
jmp 0x4f2a6f
xor al, al
cmp al, 0x20
je 0x4f2a83
cmp al, 9
je 0x4f2a83
cmp al, 0xd
je 0x4f2a83
cmp al, 0xa
je 0x4f2a83
xor al, al
jmp 0x4f2a85
mov al, 1
test al, al
je 0x4f2ad1
cmp edi, dword [ebp - 0x1f88]
jge 0x4f2ad1
mov ecx, dword [ebp - 0x1f80]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [ebp - 0x1f80]
push eax
push edx
mov ecx, dword [edx]
call dword [ecx + 0x54]
cmp edi, eax
jne 0x4f2acb
mov ecx, dword [ebp - 0x1f80]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x1f80]
push 0
push eax
push ecx
mov edx, dword [ecx]
call dword [edx + 0x28]
inc edi
jmp 0x4f2a30
push 0
lea eax, [edi - 1]
jmp 0x4f2e88
cmp esi, 0x2f
jne 0x4f2b9c
cmp bl, 0x2f
je 0x4f2af2
cmp bl, 0x2a
jne 0x4f2c50
mov esi, dword [ebp - 0x1f8c]
cmp esi, dword [ebp - 0xfd8]
jl 0x4f2b08
cmp esi, dword [ebp - 0xfd4]
jl 0x4f2b24
push esi
lea ecx, [ebp - 0x1f80]
call fcn.004727c0
cmp esi, dword [ebp - 0xfd8]
jl 0x4f2b35
cmp esi, dword [ebp - 0xfd4]
jge 0x4f2b35
lea eax, [ebp - 0x1f7c]
sub eax, dword [ebp - 0xfd8]
mov al, byte [eax + esi]
jmp 0x4f2b37
xor al, al
lea edi, [esi + 1]
mov dword [ebp - 0x1f84], edi
cmp al, 0x2f
jne 0x4f2b6b
push 0
push dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f20c0
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f2e9a
cmp al, 0x2a
jne 0x4f2e9a
push 1
push 0
push dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f1ec0
mov edi, dword [ebp - 0x1f84]
add esp, 0xc
jmp 0x4f2e9a
cmp esi, 0x72
jne 0x4f2bb3
cmp bl, 0x23
je 0x4f2baf
cmp bl, 0x22
jne 0x4f2c50
push 0
jmp 0x4f2bdd
cmp esi, 0x62
jne 0x4f2c4c
cmp bl, 0x72
jne 0x4f2c02
cmp bh, 0x23
je 0x4f2bcf
cmp bh, 0x22
jne 0x4f2c50
mov esi, dword [ebp - 0x1f8c]
mov dword [ebp - 0x1f84], esi
push 1
push dword [ebp - 0x1f88]
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f2630
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f2e9a
cmp bl, 0x22
jne 0x4f2c34
push 1
push dword [ebp - 0x1f88]
mov dword [ebp - 0x1f84], ecx
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f2230
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f2e9a
cmp bl, 0x27
jne 0x4f2c50
mov esi, dword [ebp - 0x1f8c]
mov dword [ebp - 0x1f84], esi
push 1
jmp 0x4f2e2a
test esi, esi
js 0x4f2c63
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
add esp, 4
test eax, eax
jne 0x4f2c6c
cmp esi, 0x5f
je 0x4f2c6c
cmp esi, 0x7f
ja 0x4f2c6c
xor al, al
jmp 0x4f2c6e
mov al, 1
test al, al
je 0x4f2c9b
mov eax, dword [ebp - 0x1f9c]
lea edx, [ebp - 0x1f84]
add eax, 0x14
lea ecx, [ebp - 0x1f80]
push eax
call fcn.004f1460
mov edi, dword [ebp - 0x1f84]
add esp, 4
jmp 0x4f2e9a
lea eax, [esi - 0x30]
cmp eax, 9
ja 0x4f2cbf
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f1700
mov edi, dword [ebp - 0x1f84]
jmp 0x4f2e9a
cmp esi, 0x3c
jne 0x4f2ce1
cmp bl, 0x3c
jne 0x4f2cce
cmp bh, 0x3d
je 0x4f2cf0
xor al, al
test al, al
je 0x4f2cf4
add edi, 3
push 0x10
lea eax, [edi - 1]
jmp 0x4f2e88
cmp esi, 0x3e
jne 0x4f2cce
cmp bl, 0x3e
jne 0x4f2cce
cmp bh, 0x3d
jne 0x4f2cce
mov al, 1
jmp 0x4f2cd0
cmp esi, 0x2e
jne 0x4f2cfe
cmp bl, 0x2e
jmp 0x4f2d1a
cmp esi, 0x3a
jne 0x4f2d08
cmp bl, 0x3a
jmp 0x4f2d1a
cmp esi, 0x21
je 0x4f2d17
cmp esi, 0x3c
jne 0x4f2d32
cmp bl, 0x3c
je 0x4f2d82
cmp bl, 0x3d
je 0x4f2d82
xor al, al
test al, al
je 0x4f2d86
mov eax, dword [ebp - 0x1f90]
mov edi, eax
push 0x10
dec eax
jmp 0x4f2e88
cmp esi, 0x3e
jne 0x4f2d3c
cmp bl, 0x3e
jmp 0x4f2d15
cmp esi, 0x3d
jne 0x4f2d4b
cmp bl, 0x3d
je 0x4f2d82
cmp bl, 0x3e
jmp 0x4f2d1a
cmp esi, 0x2d
je 0x4f2d37
cmp esi, 0x26
jne 0x4f2d5a
cmp bl, 0x26
jmp 0x4f2d15
cmp esi, 0x7c
jne 0x4f2d64
cmp bl, 0x7c
jmp 0x4f2d15
cmp esi, 0x2b
je 0x4f2d17
cmp esi, 0x2a
je 0x4f2d17
cmp esi, 0x2f
je 0x4f2d17
cmp esi, 0x5e
je 0x4f2d17
cmp esi, 0x25
jne 0x4f2d1c
cmp bl, 0x3d
jne 0x4f2d1c
mov al, 1
jmp 0x4f2d1e
cmp esi, 0x3b
je 0x4f2e19
cmp esi, 0x2c
je 0x4f2e19
cmp esi, 0x28
je 0x4f2e19
cmp esi, 0x29
je 0x4f2e19
cmp esi, 0x7b
je 0x4f2e19
cmp esi, 0x7d
je 0x4f2e19
cmp esi, 0x5b
je 0x4f2e19
cmp esi, 0x5d
je 0x4f2e19
cmp esi, 0x40
je 0x4f2e19
cmp esi, 0x23
je 0x4f2e19
cmp esi, 0x7e
je 0x4f2e19
cmp esi, 0x2b
je 0x4f2e19
cmp esi, 0x2a
je 0x4f2e19
cmp esi, 0x2f
je 0x4f2e19
cmp esi, 0x5e
je 0x4f2e19
cmp esi, 0x25
je 0x4f2e19
cmp esi, 0x2e
je 0x4f2e19
cmp esi, 0x3a
je 0x4f2e19
cmp esi, 0x21
je 0x4f2e19
cmp esi, 0x3c
je 0x4f2e19
cmp esi, 0x3e
je 0x4f2e19
cmp esi, 0x3d
je 0x4f2e19
cmp esi, 0x2d
je 0x4f2e19
cmp esi, 0x26
je 0x4f2e19
cmp esi, 0x7c
je 0x4f2e19
cmp esi, 0x24
je 0x4f2e19
cmp esi, 0x3f
je 0x4f2e19
xor al, al
jmp 0x4f2e1b
mov al, 1
test al, al
je 0x4f2e23
push 0x10
jmp 0x4f2e7d
cmp esi, 0x27
jne 0x4f2e46
push 0
lea edx, [ebp - 0x1f84]
lea ecx, [ebp - 0x1f80]
call fcn.004f1ab0
mov edi, dword [ebp - 0x1f84]
add esp, 4
jmp 0x4f2e9a
cmp esi, 0x22
jne 0x4f2e7b
mov esi, dword [ebp - 0x1f8c]
lea edx, [ebp - 0x1f84]
push 0
push dword [ebp - 0x1f88]
lea ecx, [ebp - 0x1f80]
mov dword [ebp - 0x1f84], esi
call fcn.004f2230
mov edi, dword [ebp - 0x1f84]
add esp, 8
jmp 0x4f2e9a
push 0x14
mov esi, dword [ebp - 0x1f8c]
mov edi, esi
lea eax, [esi - 1]
push eax
lea ecx, [ebp - 0x1f80]
mov dword [ebp - 0x1f84], edi
call fcn.00475ef0
cmp edi, dword [ebp - 0x1f88]
jl 0x4f28f0
push 0
lea eax, [edi - 1]
push eax
lea ecx, [ebp - 0x1f80]
call fcn.00475ef0
mov edx, dword [ebp - 0x24]
test edx, edx
jle 0x4f2edf
mov ecx, dword [ebp - 0x1f80]
lea esi, [ebp - 0xfc4]
push esi
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x34]
mov eax, dword [ebp - 0x24]
add dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x1f94]
mov dword [ebp - method.Scintilla::PropSetSimple.virtual_0], vtable.Scintilla::PropSetSimple.0
test edi, edi
je 0x4f2f36
mov esi, dword [edi]
mov dword [ebp - 4], 2
mov ecx, edi
push dword [esi + 4]
call fcn.00474340
mov eax, dword [edi]
push 0x40
mov dword [eax + 4], esi
mov eax, dword [edi]
mov dword [eax], esi
mov eax, dword [edi]
mov dword [eax + 8], esi
mov dword [edi + 4], 0
push dword [edi]
call fcn.0059e222
push 8
push edi
call fcn.0059e222
add esp, 0x10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0059df64
mov esp, ebp
pop ebp
ret 0x14