Function at 0x1004c8c0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
mov edi, dword [ebp + 0x1c]
test edi, edi
jne 0x1004c8eb
mov eax, dword [ebp + 0x14]
and eax, 0x1000000
or eax, 0
jne 0x1004c91e
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp edi, 1
jne 0x1004c8fa
mov eax, dword [ebp + 0x14]
and eax, 0x2000000
jmp 0x1004c8db
cmp edi, 2
jne 0x1004c909
mov eax, dword [ebp + 0x14]
and eax, 0x800000
jmp 0x1004c8db
cmp edi, 0xb
jne 0x1004ccab
mov ecx, dword [ebp + 0x18]
xor eax, eax
and ecx, 2
or eax, ecx
je case.0x1004c9bc.97
mov ebx, dword [ebp + 0xc]
lea eax, [ebx - 1]
cmp eax, 0x98
ja case.0x1004c9bc.97
mov eax, dword [ebp + 8]
add eax, 8
push ebx
push eax
mov dword [ebp - 8], eax
call fcn.1004c680
test al, al
je case.0x1004c9bc.97
lea eax, [esi - 1]
cmp eax, 0x98
ja case.0x1004c9bc.97
push esi
push dword [ebp - 8]
call fcn.1004c680
test al, al
je case.0x1004c9bc.97
push esi
call fcn.1004c7e0
cmp edi, 1
je 0x1004c970
test al, al
je 0x1004c978
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x18
test al, al
je case.0x1004c9bc.97
push ebx
call fcn.10020be0
push esi
mov dword [ebp - 8], eax
call fcn.10020be0
cmp dword [ebp - 8], 0
mov dword [ebp - 4], eax
je 0x1004ccbf
test eax, eax
je 0x1004ccd3
cmp esi, 0x25
je case.0x1004c9bc.98
lea eax, [esi - 1]
cmp eax, 0x2c
jbe case.0x1004c9bc.97
lea eax, [esi - 0x61]
cmp eax, 0x37
ja case.0x1004c9bc.98
movzx eax, byte [eax + 0x1004ccf0]
jmp dword [eax*4 + 0x1004cce8]
cmp ebx, 0x25
jne 0x1004ca97
mov edx, dword [ebp + 8]
cmp byte [edx + 5], 0
je 0x1004ca77
cmp edi, 0xb
je 0x1004c9e3
cmp edi, 2
jne 0x1004ca23
cmp esi, 0x25
jne 0x1004ca03
mov ecx, dword [ebp + 0x18]
xor eax, eax
and ecx, 0x20
or eax, ecx
je case.0x1004c9bc.97
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp esi, 0x4b
jne 0x1004ca23
mov ecx, dword [ebp + 0x18]
xor eax, eax
and ecx, 0x10
or eax, ecx
je case.0x1004c9bc.97
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [ebp + 0x18]
xor eax, eax
and ecx, 0x20
or eax, ecx
jne case.0x1004c9bc.97
cmp edi, 0xb
jne 0x1004ca77
cmp esi, 0x8d
je case.0x1004c9bc.97
cmp esi, 0x8e
je case.0x1004c9bc.97
cmp esi, 0x91
je case.0x1004c9bc.97
cmp esi, 0x34
je case.0x1004c9bc.97
cmp esi, 0x33
je case.0x1004c9bc.97
cmp esi, 0x32
je case.0x1004c9bc.97
push esi
lea eax, [edx + 0xb0]
push eax
call fcn.1004c680
test al, al
je case.0x1004c9bc.97
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp esi, 0x25
je case.0x1004c9bc.97
cmp ebx, 0x2c
jne 0x1004caee
mov eax, dword [ebp + 8]
cmp byte [eax + 6], 0
je case.0x1004c9bc.97
test edi, edi
je 0x1004cabf
cmp edi, 2
jne case.0x1004c9bc.97
cmp esi, 0x5d
je 0x1004cca0
cmp esi, 0x5e
je 0x1004cca0
cmp esi, 0x54
je 0x1004cca0
cmp esi, 0x55
je 0x1004cca0
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp ebx, 0x2b
jne 0x1004cb2f
mov eax, dword [ebp + 8]
cmp byte [eax + 6], 0
je case.0x1004c9bc.97
cmp edi, 2
jne case.0x1004c9bc.97
cmp esi, 0x63
je 0x1004cca0
cmp esi, 0x44
je 0x1004cca0
cmp esi, 0x46
je 0x1004cca0
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp esi, 0x2c
je case.0x1004c9bc.97
cmp esi, 0x2b
je case.0x1004c9bc.97
push esi
call fcn.10026c30
test al, al
jne case.0x1004c9bc.97
mov eax, dword [ebp + 8]
cmp byte [eax + 5], 0
je 0x1004cc3e
cmp edi, 0xb
mov edi, dword [ebp - 4]
jne 0x1004cc41
mov eax, dword [edi + 4]
and eax, 0x371020
cmp eax, 0x40000
jne case.0x1004c9bc.97
push ebx
call fcn.10026c30
test al, al
jne 0x1004cb8d
cmp ebx, esi
jne case.0x1004c9bc.97
cmp esi, 0x91
je case.0x1004c9bc.97
cmp esi, 0x8c
je case.0x1004c9bc.97
cmp esi, 0x8b
je case.0x1004c9bc.97
cmp esi, 0x8d
je case.0x1004c9bc.97
cmp esi, 0x8e
je case.0x1004c9bc.97
cmp esi, 0x71
je case.0x1004c9bc.97
cmp esi, 0x51
je case.0x1004c9bc.97
cmp esi, 0x52
je case.0x1004c9bc.97
cmp esi, 0x3f
je case.0x1004c9bc.97
cmp esi, 0x3e
je case.0x1004c9bc.97
cmp esi, 0x32
je case.0x1004c9bc.97
cmp esi, 0x34
je case.0x1004c9bc.97
cmp esi, 0x33
je case.0x1004c9bc.97
cmp esi, 0x4d
je 0x1004cc23
cmp esi, 0x4e
je 0x1004cc23
cmp esi, 0x83
jne 0x1004cc41
cmp ebx, 0x40
je 0x1004cca0
cmp ebx, 0x43
je 0x1004cca0
cmp ebx, 0x48
je 0x1004cca0
cmp ebx, 0x72
je 0x1004cca0
cmp ebx, 0x74
je 0x1004cca0
jmp 0x1004cc41
mov edi, dword [ebp - 4]
mov ebx, dword [ebp + 8]
push edi
cmp byte [ebx + 7], 0
mov ebx, dword [ebp - 8]
push ebx
je 0x1004cc56
call fcn.10020a20
jmp 0x1004cc5b
call fcn.10020920
mov cl, al
test cl, cl
je 0x1004cc6e
mov eax, dword [edi + 4]
xor eax, dword [ebx + 4]
test eax, 0xffeaffff
je 0x1004cca0
mov eax, dword [ebx + 4]
test eax, 0x1000
je case.0x1004c9bc.97
test cl, cl
je case.0x1004c9bc.97
mov ecx, dword [edi + 4]
xor eax, ecx
test eax, 0x7f000000
jne case.0x1004c9bc.97
test ecx, 0xe00000
jne case.0x1004c9bc.97
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x18
push 0x194
push str.d:_buildob_bora_18379147_bora_vmsoft_build_release_svgawddm_srclib_svga_svgausecaps.c
push str.ASSERT__s:_d_n
call fcn.1002ba30
popal
push es
adc byte [eax - 0x48], ch
adc dword [0xed71e810], eax
std
jmp [eax - 0x57]
push 0x1a9
push str.d:_buildob_bora_18379147_bora_vmsoft_build_release_svgawddm_srclib_svga_svgausecaps.c
push str.ASSERT__s:_d_n
call fcn.1002ba30
push 0x1aa
push str.d:_buildob_bora_18379147_bora_vmsoft_build_release_svgawddm_srclib_svga_svgausecaps.c
push str.ASSERT__s:_d_n
call fcn.1002ba30
nop
loopne 0x1004ccb2
add al, 0x10
ret