Function at 0x52bfbc
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x2f
push 0
push 0
dec ecx
jne 0x52bfc4
push ebx
push esi
mov dword [ebp - 4], edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 4]
call fcn.00405ac8
xor eax, eax
push ebp
push 0x52c8b1
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x3c]
mov eax, dword [ebp - 4]
call fcn.0048ff68
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 4]
call fcn.004056d0
push 0
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 0x44], 0x2f
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.0048d080
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 4]
call fcn.004056d0
push 0
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 0x44], 0x2f
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0048d080
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 4]
call fcn.004056d0
push 0
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 0x44], 0x2f
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
call fcn.0048d080
mov edx, dword [ebp - 0x4c]
lea eax, [ebp - 4]
call fcn.004056d0
push 0
lea eax, [ebp - 0x50]
push eax
mov byte [ebp - 0x44], 0x2f
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 4]
call fcn.0048d080
mov edx, dword [ebp - 0x50]
lea eax, [ebp - 4]
call fcn.004056d0
cmp dword [ebp - 0xc], 0
je 0x52c848
cmp dword [ebp - 0x10], 0
je 0x52c848
mov eax, dword [0x5447fc]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
call fcn.00494b7c
test al, al
je 0x52c822
mov eax, dword [0x5447fc]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.00494b7c
test al, al
jne 0x52c7fc
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x10]
call fcn.004056d0
mov esi, 1
mov ebx, dword [ebp - 8]
mov eax, ebx
test eax, eax
je 0x52c0eb
sub eax, 4
mov eax, dword [eax]
cmp eax, 3
jge 0x52c0f5
mov esi, 2
mov eax, dword [ebp - 8]
call fcn.004932b4
test al, al
jne 0x52c106
mov esi, 2
mov eax, dword [ebp - 8]
call fcn.00493650
test al, al
jne 0x52c117
mov esi, 2
mov eax, dword [ebp - 8]
call fcn.0049334c
test al, al
je 0x52c128
mov esi, 2
mov eax, ebx
test eax, eax
je 0x52c133
sub eax, 4
mov eax, dword [eax]
cmp eax, 1
jl 0x52c154
mov edx, dword [ebp - 8]
movzx edx, byte [edx + eax - 1]
add dl, 0xe0
sub dl, 0xe0
jb 0x52c14f
mov esi, 2
jmp 0x52c154
dec eax
test eax, eax
jne 0x52c138
mov eax, dword [0x5446a4]
cmp byte [eax], 0
jne 0x52c255
cmp esi, 1
jne 0x52c255
mov eax, dword [ebp - 8]
test eax, eax
je 0x52c177
sub eax, 4
mov eax, dword [eax]
mov ecx, eax
test ecx, ecx
jle 0x52c255
mov eax, 1
mov edx, dword [ebp - 8]
movzx edx, byte [edx + eax - 1]
cmp dl, 0x20
je 0x52c246
cmp dl, 0x2f
je 0x52c246
cmp dl, 0x40
je 0x52c246
cmp dl, 0x3f
je 0x52c246
cmp dl, 0x27
je 0x52c246
cmp dl, 0x22
je 0x52c246
cmp dl, 0x5c
je 0x52c246
cmp dl, 0x2e
je 0x52c246
cmp dl, 0x2c
je 0x52c246
cmp dl, 0x3a
je 0x52c246
cmp dl, 0x3b
je 0x52c246
cmp dl, 0x60
je 0x52c246
cmp dl, 0x7e
je 0x52c246
cmp dl, 0x21
je 0x52c246
cmp dl, 0x23
je 0x52c246
cmp dl, 0x24
je 0x52c246
cmp dl, 0x25
je 0x52c246
cmp dl, 0x5e
je 0x52c246
cmp dl, 0x26
je 0x52c246
cmp dl, 0x2a
je 0x52c246
cmp dl, 0x28
je 0x52c246
cmp dl, 0x29
je 0x52c246
cmp dl, 0x2d
je 0x52c246
cmp dl, 0x5f
je 0x52c246
cmp dl, 0x2b
je 0x52c246
cmp dl, 0x3d
je 0x52c246
cmp dl, 0x7c
je 0x52c246
cmp dl, 0x5b
je 0x52c246
cmp dl, 0x7b
je 0x52c246
cmp dl, 0x5d
je 0x52c246
cmp dl, 0x5d
je 0x52c246
cmp dl, 0x7d
jne 0x52c24d
mov esi, 2
jmp 0x52c255
inc eax
dec ecx
jne 0x52c186
cmp esi, 1
jne 0x52c298
mov eax, dword [ebp - 8]
test eax, eax
je 0x52c266
sub eax, 4
mov eax, dword [eax]
mov ecx, eax
test ecx, ecx
jle 0x52c298
mov eax, 1
mov edx, dword [ebp - 8]
movzx edx, byte [edx + eax - 1]
cmp dl, 0x40
je 0x52c28d
cmp dl, 0x24
je 0x52c28d
cmp dl, 0x5c
je 0x52c28d
cmp dl, 0x2f
jne 0x52c294
mov esi, 2
jmp 0x52c298
inc eax
dec ecx
jne 0x52c271
cmp esi, 1
jne 0x52c2b8
mov eax, dword [0x5440d0]
cmp byte [eax], 0
je 0x52c2b8
mov eax, dword [ebp - 8]
call fcn.00493504
test al, al
je 0x52c2b8
mov esi, 2
cmp esi, 1
jne 0x52c2d8
mov eax, dword [0x54430c]
cmp byte [eax], 0
je 0x52c2d8
mov eax, dword [ebp - 8]
call fcn.004935a0
test al, al
je 0x52c2d8
mov esi, 2
dec esi
jne 0x52c5e8
xor eax, eax
push ebp
push 0x52c32c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x5447fc]
mov eax, dword [eax]
call fcn.00493e78
test al, al
je 0x52c312
mov eax, dword [0x5447fc]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
call fcn.004942bc
mov byte [ebp - 0x25], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x52c333
mov eax, dword [0x5447fc]
mov eax, dword [eax]
call fcn.00494074
ret
movzx ebx, byte [ebp - 0x25]
and bl, byte [ebp - 0x26]
test bl, bl
je 0x52c7b9
mov eax, dword [0x5440d4]
cmp byte [eax], 0
je 0x52c7b9
lea edx, [ebp - 0x15c]
mov eax, dword [ebp - 0xc]
call fcn.0040c380
mov edx, dword [ebp - 0x15c]
mov eax, dword [0x5442e0]
mov eax, dword [eax]
call fcn.00480e98
mov esi, eax
test esi, esi
je 0x52c690
lea eax, [ebp - 0x154]
mov edx, dword [ebp - 0x10]
mov ecx, 0xff
call fcn.004058e4
lea edx, [ebp - 0x154]
lea eax, [esi + 4]
mov cl, 0x1e
call fcn.00403c98
lea edx, [ebp - 0x160]
mov eax, dword [ebp - 0xc]
call fcn.0040c380
mov edx, dword [ebp - 0x160]
mov eax, dword [0x5442e0]
mov eax, dword [eax]
call fcn.00480ff8
lea edx, [ebp - 0x164]
mov eax, dword [ebp - 0x10]
call fcn.0040c380
mov edx, dword [ebp - 0x164]
mov eax, dword [0x5442e0]
mov eax, dword [eax]
mov ecx, esi
call fcn.00481080
lea edx, [ebp - 0x168]
mov eax, dword [ebp - 0xc]
call fcn.0040c380
mov edx, dword [ebp - 0x168]
mov eax, dword [0x544574]
mov eax, dword [eax]
call fcn.00480e98
mov esi, eax
test esi, esi
je 0x52c71b
lea eax, [ebp - 0x154]
mov edx, dword [ebp - 0x10]
mov ecx, 0xff
call fcn.004058e4
lea edx, [ebp - 0x154]
lea eax, [esi + 4]
mov cl, 0x1e
call fcn.00403c98
lea edx, [ebp - 0x16c]
mov eax, dword [ebp - 0xc]
call fcn.0040c380
mov edx, dword [ebp - 0x16c]
mov eax, dword [0x544574]
mov eax, dword [eax]
call fcn.00480ff8
lea edx, [ebp - 0x170]
mov eax, dword [ebp - 0x10]
call fcn.0040c380
mov edx, dword [ebp - 0x170]
mov eax, dword [0x544574]
mov eax, dword [eax]
mov ecx, esi
call fcn.00481080
cmp dword [ebp - 0x1c], 0
je 0x52c76a
lea edx, [ebp - 0x174]
mov eax, dword [ebp - 0x1c]
call fcn.0040c380
mov edx, dword [ebp - 0x174]
mov eax, dword [0x544404]
mov eax, dword [eax]
call fcn.00480e98
mov esi, eax
test esi, esi
je 0x52c76a
lea eax, [ebp - 0x154]
mov edx, dword [ebp - 0x10]
mov ecx, 0xff
call fcn.004058e4
lea edx, [ebp - 0x154]
lea eax, [esi + 4]
mov cl, 0x1e
call fcn.00403c98
cmp dword [ebp - 0x20], 0
je 0x52c7b9
lea edx, [ebp - 0x178]
mov eax, dword [ebp - 0x20]
call fcn.0040c380
mov edx, dword [ebp - 0x178]
mov eax, dword [0x544404]
mov eax, dword [eax]
call fcn.00480e98
mov esi, eax
test esi, esi
je 0x52c7b9
lea eax, [ebp - 0x154]
mov edx, dword [ebp - 0x10]
mov ecx, 0xff
call fcn.004058e4
lea edx, [ebp - 0x154]
lea eax, [esi + 4]
mov cl, 0x1e
call fcn.00403c98
test bl, bl
je 0x52c7d6
push 0
push 1
push 0
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x2b06
call fcn.0048fd20
jmp 0x52c7ed
push 0
push 6
push 0
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x2b06
call fcn.0048fd20
lea edx, [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
call fcn.00525ba8
jmp 0x52c86c
push 0
push 3
push 0
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x2b06
call fcn.0048fd20
lea edx, [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
call fcn.00525ba8
jmp 0x52c86c
push 0
push 5
push 0
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x2b06
call fcn.0048fd20
lea edx, [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
call fcn.00525ba8
jmp 0x52c86c
push 0
push 4
push 0
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
xor edx, edx
mov ax, 0x2b06
call fcn.0048fd20
lea edx, [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
call fcn.00525ba8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x52c8b8
lea eax, [ebp - 0x178]
mov edx, 9
call fcn.0040565c
lea eax, [ebp - 0x54]
mov edx, 4
call fcn.0040565c
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.0040565c
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.0040565c
ret