Function at 0x512f38
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff8c
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
lea edi, [ebp - 0x34]
lea eax, [ebp - 0x24]
push eax
call fcn.00523060
pop ecx
jmp 0x513202
cmp dword [ebx + 0xac], 0
jne 0x5130b6
mov word [ebp - 0x44], 0x7b
mov dword [ebp - 0x40], 1
xor edx, edx
mov dword [ebp - 0x3c], edx
xor ecx, ecx
mov dword [ebp - 0x38], ecx
lea eax, [ebx + 0xb8]
mov dx, word [eax]
cmp dx, word [ebp - 0x44]
jne 0x512f94
mov ecx, dword [eax + 4]
cmp ecx, dword [ebp - 0x40]
je 0x512f98
xor eax, eax
jmp 0x512f9d
mov eax, 1
test eax, eax
jne 0x513056
mov word [ebp - 0x54], 0x3f
mov dword [ebp - 0x50], 1
xor edx, edx
mov dword [ebp - 0x4c], edx
xor ecx, ecx
mov dword [ebp - 0x48], ecx
lea eax, [ebx + 0xb8]
mov dx, word [eax]
cmp dx, word [ebp - 0x54]
jne 0x512fd3
mov ecx, dword [eax + 4]
cmp ecx, dword [ebp - 0x50]
je 0x512fd7
xor eax, eax
jmp 0x512fdc
mov eax, 1
test eax, eax
jne 0x513056
mov word [ebp - 0x64], 0x2a
mov dword [ebp - 0x60], 1
xor edx, edx
mov dword [ebp - 0x5c], edx
xor ecx, ecx
mov dword [ebp - 0x58], ecx
lea eax, [ebx + 0xb8]
mov dx, word [eax]
cmp dx, word [ebp - 0x64]
jne 0x51300e
mov ecx, dword [eax + 4]
cmp ecx, dword [ebp - 0x60]
je 0x513012
xor eax, eax
jmp 0x513017
mov eax, 1
test eax, eax
jne 0x513056
mov word [ebp - 0x74], 0x2b
mov dword [ebp - 0x70], 1
xor edx, edx
mov dword [ebp - 0x6c], edx
xor ecx, ecx
mov dword [ebp - 0x68], ecx
lea eax, [ebx + 0xb8]
mov dx, word [eax]
cmp dx, word [ebp - 0x74]
jne 0x513049
mov ecx, dword [eax + 4]
cmp ecx, dword [ebp - 0x70]
je 0x51304d
xor eax, eax
jmp 0x513052
mov eax, 1
test eax, eax
je 0x51308b
cmp dword [ebp - 0x1c], 0
jne 0x51323f
mov dx, word [ebx + 0xa8]
mov word [ebp - 2], dx
push 1
push 1
lea ecx, [ebp - 2]
push ecx
lea eax, [ebp - 0x24]
push eax
call fcn.005135fc
add esp, 0x10
push ebx
call fcn.00520284
pop ecx
jmp 0x51323f
mov dx, word [ebx + 0xa8]
mov word [ebp - 4], dx
push 1
push 1
lea ecx, [ebp - 4]
push ecx
lea eax, [ebp - 0x24]
push eax
call fcn.005135fc
add esp, 0x10
push ebx
call fcn.00520284
pop ecx
jmp 0x513202
cmp dword [ebx + 0xac], 1
jne 0x513202
mov ax, word [ebx + 0xa8]
cmp ax, 0x29
je 0x51323f
cmp ax, 0x7c
je 0x51323f
cmp dword [ebp - 0x1c], 0
jg 0x51323f
cmp ax, 0x28
jne 0x51310d
push esi
push ebx
call fcn.0051383c
add esp, 8
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
jmp 0x5132c0
cmp ax, 0x5b
je 0x51313d
cmp ax, 0x2e
je 0x51313d
cmp ax, 0x77
je 0x51313d
cmp ax, 0x57
je 0x51313d
cmp ax, 0x73
je 0x51313d
cmp ax, 0x53
je 0x51313d
cmp ax, 0x64
je 0x51313d
cmp ax, 0x44
jne 0x51315c
push esi
push ebx
call fcn.005151dc
add esp, 8
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
jmp 0x5132c0
cmp ax, 0x5e
je 0x51318c
cmp ax, 0x24
je 0x51318c
cmp ax, 0x41
je 0x51318c
cmp ax, 0x5a
je 0x51318c
cmp ax, 0x7a
je 0x51318c
cmp ax, 0x62
je 0x51318c
cmp ax, 0x42
je 0x51318c
cmp ax, 0x47
jne 0x5131ab
push esi
push ebx
call fcn.00515f68
add esp, 8
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
jmp 0x5132c0
cmp ax, 0x5c
je 0x5131bd
cmp ax, 0x6b
je 0x5131bd
cmp ax, 0x67
jne 0x5131dc
push esi
push ebx
call fcn.00516660
add esp, 8
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
jmp 0x5132c0
mov dx, word [ebx + 0xa8]
mov word [ebp - 6], dx
push 1
push 1
lea ecx, [ebp - 6]
push ecx
lea eax, [ebp - 0x24]
push eax
call fcn.005135fc
add esp, 0x10
push ebx
call fcn.00520284
pop ecx
mov word [edi], 0
mov dword [edi + 4], 1
xor edx, edx
mov dword [edi + 8], edx
xor ecx, ecx
mov dword [edi + 0xc], ecx
lea eax, [ebx + 0xa8]
mov dx, word [eax]
cmp dx, word [edi]
jne 0x51322e
mov ecx, dword [eax + 4]
cmp ecx, dword [edi + 4]
je 0x513232
xor eax, eax
jmp 0x513237
mov eax, 1
test eax, eax
je 0x512f59
cmp dword [ebp - 0x1c], 0
jle 0x5132a5
push 0x20
call fcn.00512358
pop ecx
mov dword [ebp - 0x10], eax
test eax, eax
je 0x51327b
mov edx, dword [esi]
and edx, 8
push edx
mov ecx, dword [esi]
and ecx, 0x10
push ecx
push dword [ebp - 0x1c]
lea eax, [ebp - 0x24]
push eax
call fcn.00518600
pop ecx
push eax
push dword [ebp - 0x10]
call fcn.005187ac
add esp, 0x14
jmp 0x51327e
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], eax
push dword [ebp - 0xc]
add ebx, 0x14
push ebx
call fcn.00513384
add esp, 8
mov eax, dword [ebp - 0xc]
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
jmp 0x5132c0
push 0
push ebx
call fcn.005225c0
add esp, 8
push eax
push 2
lea edx, [ebp - 0x24]
push edx
call fcn.005133d0
add esp, 8
pop eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret