Function at 0x6adc94fa
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3c
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x24]
mov eax, dword [eax + 0x10]
cmp byte [eax], 0x25
jne 0x6adc97b7
mov dword [esp], ebx
call fcn.6adf23af
mov dword [esp], ebx
call fcn.6adc5606
mov edi, eax
test eax, eax
jne 0x6adc9548
mov dword [esp + 8], str.PEReference:_no_name_n
mov dword [esp + 4], 0x18
mov dword [esp], ebx
call fcn.6adc1725
jmp 0x6adc97b7
cmp dword [0x6ae67364], 0
je 0x6adc956b
mov dword [esp + 8], eax
mov eax, dword [0x6ae67338]
mov dword [esp + 4], str.PEReference:__s_n
mov dword [esp], eax
call dword [0x6ae0f050]
mov eax, dword [ebx + 0x24]
mov eax, dword [eax + 0x10]
cmp byte [eax], 0x3b
je 0x6adc958b
add esp, 0x3c
mov eax, ebx
xor ecx, ecx
mov edx, 0x19
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.6adc144d
mov dword [esp], ebx
call fcn.6adf23af
mov esi, dword [ebx]
inc dword [ebx + 0x1b8]
test esi, esi
je 0x6adc95b6
mov eax, dword [esi + 0x60]
xor esi, esi
test eax, eax
je 0x6adc95b6
mov dword [esp + 4], edi
mov edx, dword [ebx + 4]
mov dword [esp], edx
call eax
mov esi, eax
cmp dword [ebx + 0xac], 0xffffffff
je 0x6adc97b7
test esi, esi
jne 0x6adc966f
cmp dword [ebx + 0x1c], 1
je 0x6adc95dd
cmp dword [ebx + 0x58], 0
jne 0x6adc95fb
cmp dword [ebx + 0x5c], 0
jne 0x6adc95fb
mov dword [esp + 0xc], edi
mov dword [esp + 8], str.PEReference:____s__not_found_n
mov dword [esp + 4], 0x1a
mov dword [esp], ebx
call fcn.6adc1659
jmp 0x6adc9658
cmp dword [ebx + 0x68], 0
je 0x6adc962d
cmp dword [ebx + 0x70], 0
je 0x6adc962d
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], str.PEReference:____s__not_found_n
mov dword [esp + 4], 0x1b
mov dword [esp], ebx
call fcn.6adc18bc
jmp 0x6adc9651
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], str.PEReference:____s__not_found_n
mov dword [esp + 4], 0x1b
mov dword [esp], ebx
call fcn.6adc28c5
mov dword [ebx + 0x64], 0
mov dword [esp], 0
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.6adc42db
jmp 0x6adc97b0
mov eax, dword [esi + 0x30]
lea edx, [eax - 4]
cmp edx, 1
jbe 0x6adc96a3
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], str.Internal:____s__is_not_a_parameter_entity_n
mov dword [esp + 4], 0x1b
mov dword [esp], ebx
call fcn.6adc28c5
jmp 0x6adc97b0
cmp eax, 5
jne 0x6adc96c1
test byte [ebx + 0x168], 0x1e
jne 0x6adc96c1
cmp dword [ebx + 0x10], 0
jne 0x6adc96c1
cmp dword [ebx + 0x68], 0
je 0x6adc97b7
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.6adf3129
mov dword [esp], ebx
mov dword [esp + 4], eax
mov edi, eax
call fcn.6adc3eb6
test eax, eax
jns 0x6adc96ee
mov dword [ebp + 8], edi
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.6adf2fb9
cmp dword [esi + 0x30], 5
jne 0x6adc97b0
cmp dword [ebx + 0x124], 0
jne 0x6adc9718
mov edx, dword [ebx + 0x24]
mov eax, dword [edx + 0x14]
sub eax, dword [edx + 0x10]
cmp eax, 0xf9
jg 0x6adc9718
mov eax, ebx
call fcn.6adc352b
cmp dword [ebx + 0xac], 0xffffffff
je 0x6adc97b7
mov edx, dword [ebx + 0x24]
mov eax, dword [edx + 0x10]
mov edx, dword [edx + 0x14]
sub edx, eax
cmp edx, 3
jle 0x6adc976f
mov dl, byte [eax]
mov byte [ebp - 0x1c], dl
mov dl, byte [eax + 1]
mov byte [ebp - 0x1b], dl
mov dl, byte [eax + 2]
mov byte [ebp - 0x1a], dl
mov al, byte [eax + 3]
mov dword [esp + 4], 4
mov byte [ebp - 0x19], al
lea eax, [ebp - 0x1c]
mov dword [esp], eax
call fcn.6adeede2
test eax, eax
je 0x6adc976f
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6adf2d38
mov eax, dword [ebx + 0x24]
mov eax, dword [eax + 0x10]
cmp byte [eax], 0x3c
jne 0x6adc97b0
cmp byte [eax + 1], 0x3f
jne 0x6adc97b0
cmp byte [eax + 2], 0x78
jne 0x6adc97b0
cmp byte [eax + 3], 0x6d
jne 0x6adc97b0
cmp byte [eax + 4], 0x6c
jne 0x6adc97b0
mov cl, byte [eax + 5]
sub ecx, 9
cmp cl, 0x17
ja 0x6adc97b0
mov eax, 0x800013
shr eax, cl
test al, 1
je 0x6adc97b0
mov dword [esp], ebx
call fcn.6adc9348
mov dword [ebx + 0x5c], 1
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret