Function at 0x5349d0
Capabilities:
Parse credit card information

Disassembly:
mov eax, 0x20d0
call fcn.005d9990
push esi
mov esi, dword [esp + 0x20d8]
test esi, esi
je 0x534ace
mov al, byte [esi + 1]
test al, al
jne 0x534ace
mov al, byte [esi]
cmp al, 0x2a
jne 0x534a08
mov eax, 1
pop esi
add esp, 0x20d0
ret
cmp al, 0x40
jne 0x534a2b
mov eax, dword [esp + 0x20dc]
test eax, eax
je 0x534a8c
mov dl, byte [eax]
xor ecx, ecx
cmp dl, 0x40
sete cl
pop esi
mov eax, ecx
add esp, 0x20d0
ret
cmp al, 0x23
jne 0x534a5f
mov eax, dword [esp + 0x20dc]
test eax, eax
je 0x534a8c
mov edx, dword [esp + 0x20e0]
mov ecx, dword [edx + 0x71dc]
push ecx
push eax
call fcn.005295b0
add esp, 8
neg al
pop esi
sbb eax, eax
neg eax
add esp, 0x20d0
ret
cmp al, 0x3f
jne 0x534a7d
mov eax, dword [esp + 0x20dc]
test eax, eax
je 0x534a8c
cmp byte [eax], 0x40
jne 0x534aaa
xor eax, eax
pop esi
add esp, 0x20d0
ret
cmp al, 0x3d
jne 0x534a96
mov eax, dword [esp + 0x20dc]
test eax, eax
jne 0x534aa5
xor eax, eax
pop esi
add esp, 0x20d0
ret
cmp al, 0x21
jne 0x534ace
mov eax, dword [esp + 0x20dc]
test eax, eax
je 0x534a8c
cmp byte [eax], 0x40
je 0x534a8c
mov edx, dword [esp + 0x20e0]
mov ecx, dword [edx + 0x71dc]
push ecx
push eax
call fcn.005295b0
add esp, 8
neg al
pop esi
sbb eax, eax
inc eax
add esp, 0x20d0
ret
test esi, esi
push ebx
push ebp
push edi
je 0x534c62
mov al, byte [esi]
test al, al
je 0x534c62
cmp al, 0x24
mov ebx, dword [esp + 0x20ec]
jne 0x534b07
cmp byte [esi + 1], 0x28
jne 0x534b07
push ebx
push 0
lea edx, [esp + 0x18]
push edx
push esi
call fcn.00534860
add esp, 0x10
jmp 0x534b29
cmp al, 0x25
jne 0x534b35
push 0x2c
push esi
call fcn.005d9b20
add esp, 8
test eax, eax
jne 0x534b35
push eax
lea eax, [esp + 0x14]
push eax
push esi
call fcn.0058a050
add esp, 0xc
test eax, eax
je 0x534c62
lea esi, [esp + 0x10]
mov al, byte [esi]
test al, al
je 0x534c62
mov ebp, dword [esp + 0x20e8]
cmp al, 0x20
jne 0x534b58
lea ebx, [ebx]
mov al, byte [esi + 1]
inc esi
cmp al, 0x20
je 0x534b50
cmp byte [esi], 0
je 0x534c62
push 0x2c
push esi
call fcn.005d9b20
mov edi, eax
add esp, 8
test edi, edi
je 0x534b75
mov byte [edi], 0
push 0x20
push esi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x534b87
mov byte [eax], 0
mov al, byte [esi]
cmp al, 0x24
jne 0x534ba9
cmp byte [esi + 1], 0x28
jne 0x534ba9
push ebx
push 0
lea ecx, [esp + 0x1080]
push ecx
push esi
call fcn.00534860
add esp, 0x10
jmp 0x534bc0
cmp al, 0x25
jne 0x534bcf
push 0
lea edx, [esp + 0x107c]
push edx
push esi
call fcn.0058a050
add esp, 0xc
test eax, eax
je 0x534c50
lea esi, [esp + 0x1078]
mov al, byte [esi]
test al, al
je 0x534c50
mov cl, byte [esi + 1]
test cl, cl
jne 0x534c3d
cmp al, 0x2a
je 0x534c6f
cmp al, 0x23
jne 0x534bfc
mov eax, dword [ebx + 0x71dc]
push eax
push ebp
call fcn.005295b0
add esp, 8
test al, al
jne 0x534c6f
cmp byte [esi], 0x3f
jne 0x534c15
mov ecx, dword [ebx + 0x71dc]
push ecx
push ebp
call fcn.005295b0
add esp, 8
test al, al
je 0x534c6f
cmp byte [esi], 0x3d
jne 0x534c2e
mov edx, dword [ebx + 0x71dc]
push edx
push ebp
call fcn.005295b0
add esp, 8
test al, al
je 0x534c6f
cmp byte [esi], 0x40
jne 0x534c3d
test ebp, ebp
je 0x534c50
cmp byte [ebp], 0x40
je 0x534c6f
test ebp, ebp
je 0x534c50
push ebx
push ebp
push esi
call fcn.00534940
add esp, 0xc
test eax, eax
jne 0x534c6f
test edi, edi
je 0x534c62
mov al, byte [edi + 1]
test al, al
lea esi, [edi + 1]
jne 0x534b46
pop edi
pop ebp
pop ebx
xor eax, eax
pop esi
add esp, 0x20d0
ret
pop edi
pop ebp
pop ebx
mov eax, 1
pop esi
add esp, 0x20d0
ret