Function at 0x486690
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, eax
xor al, al
cmp dword [ebx + 0x40], 0xffff
push esi
je 0x48692e
lea esp, [esp]
mov ecx, dword [ebx + 0x40]
cmp ecx, 0x7c
je 0x48692e
cmp ecx, 0x29
jne 0x4866e4
cmp dword [ebx + 0x10], 0
jne 0x48692e
mov eax, 0x10000000
test dword [ebx + 0x44], eax
jne 0x4866e9
push 5
call fcn.005c084d
add esp, 4
jmp 0x486918
mov eax, 0x10000000
cmp ecx, 0x2e
jne 0x486798
push 0x14
call fcn.0058d3f0
add esp, 4
test eax, eax
je 0x486724
mov dword [eax], vtable.std::tr1::_Node_base.0
mov dword [eax + 4], 5
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
jmp 0x486726
xor eax, eax
mov ecx, dword [ebx + 0x1c]
mov dword [eax + 0x10], ecx
mov edx, dword [ebx + 0x1c]
mov ecx, dword [edx + 0xc]
test ecx, ecx
je 0x486742
mov dword [eax + 0xc], ecx
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x10], eax
mov ecx, dword [ebx + 0x1c]
mov dword [ecx + 0xc], eax
mov dword [ebx + 0x1c], eax
mov eax, dword [ebx]
mov ecx, dword [ebx + 8]
cmp eax, ecx
je 0x48678c
cmp word [eax], 0x5c
jne 0x486789
add eax, 2
cmp eax, ecx
je 0x486774
test byte [ebx + 0x44], 8
jne 0x486774
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x486787
cmp ecx, 0x29
je 0x486787
test byte [ebx + 0x44], 0x10
jne 0x486789
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x486787
cmp ecx, 0x7d
jne 0x486789
mov dword [ebx], eax
add dword [ebx], 2
mov esi, ebx
call fcn.00484980
jmp 0x486918
cmp ecx, 0x5c
jne 0x486840
mov eax, dword [ebx]
mov ecx, dword [ebx + 8]
cmp eax, ecx
je 0x4867e2
cmp word [eax], 0x5c
jne 0x4867df
add eax, 2
cmp eax, ecx
je 0x4867ca
test byte [ebx + 0x44], 8
jne 0x4867ca
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x4867dd
cmp ecx, 0x29
je 0x4867dd
test byte [ebx + 0x44], 0x10
jne 0x4867df
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4867dd
cmp ecx, 0x7d
jne 0x4867df
mov dword [ebx], eax
add dword [ebx], 2
mov esi, ebx
call fcn.00484980
mov eax, dword [ebx + 0x44]
and eax, 0x80
je 0x48680e
cmp word [ebx + 0x3e], 0x62
jne 0x48680e
lea esi, [ebx + 0x18]
call fcn.00488f10
mov eax, ebx
call fcn.00486640
jmp 0x48691f
test eax, eax
je 0x486834
cmp word [ebx + 0x3e], 0x42
jne 0x486834
lea esi, [ebx + 0x18]
call fcn.00488f10
mov eax, dword [ebx + 0x1c]
xor dword [eax + 8], 1
mov eax, ebx
call fcn.00486640
jmp 0x48691f
mov eax, ebx
call fcn.00488b90
jmp 0x486918
cmp ecx, 0x5b
jne 0x4868ee
mov eax, dword [ebx]
mov ecx, dword [ebx + 8]
cmp eax, ecx
je 0x48688a
cmp word [eax], 0x5c
jne 0x486887
add eax, 2
cmp eax, ecx
je 0x486872
test byte [ebx + 0x44], 8
jne 0x486872
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x486885
cmp ecx, 0x29
je 0x486885
test byte [ebx + 0x44], 0x10
jne 0x486887
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x486885
cmp ecx, 0x7d
jne 0x486887
mov dword [ebx], eax
add dword [ebx], 2
mov esi, ebx
call fcn.00484980
call fcn.00488b20
cmp dword [ebx + 0x40], 0x5d
je 0x4868a6
push 4
call fcn.005c084d
add esp, 4
mov eax, dword [ebx]
mov ecx, dword [ebx + 8]
cmp eax, ecx
je 0x4868e7
cmp word [eax], 0x5c
jne 0x4868e4
add eax, 2
cmp eax, ecx
je 0x4868cf
test byte [ebx + 0x44], 8
jne 0x4868cf
movzx ecx, word [eax]
cmp ecx, 0x28
je 0x4868e2
cmp ecx, 0x29
je 0x4868e2
test byte [ebx + 0x44], 0x10
jne 0x4868e4
movzx ecx, word [eax]
cmp ecx, 0x7b
je 0x4868e2
cmp ecx, 0x7d
jne 0x4868e4
mov dword [ebx], eax
add dword [ebx], 2
call fcn.00484980
jmp 0x486918
cmp ecx, 0x28
jne 0x486934
mov eax, ebx
call fcn.00486640
mov eax, ebx
call fcn.00488c60
mov byte [ebp - 1], al
push 0x29
mov ecx, 5
mov eax, ebx
call fcn.00488ab0
cmp byte [ebp - 1], 0
je 0x48691f
mov eax, ebx
call fcn.00488d10
cmp dword [ebx + 0x40], 0xffff
mov al, 1
jne 0x4866b0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x5e
jne 0x48694a
lea esi, [ebx + 0x18]
call fcn.00488e70
mov eax, ebx
call fcn.00486640
jmp 0x48691f
cmp ecx, 0x24
jne 0x486960
lea esi, [ebx + 0x18]
call fcn.00488ec0
mov eax, ebx
call fcn.00486640
jmp 0x48691f
cmp ecx, 0x2a
je 0x4869bc
cmp ecx, 0x2b
je 0x4869bc
cmp ecx, 0x3f
je 0x4869bc
cmp ecx, 0x7b
je 0x4869bc
cmp ecx, 0x7d
jne 0x48698a
test dword [ebx + 0x44], eax
jne 0x48698a
push 6
call fcn.005c084d
add esp, 4
jmp 0x486918
cmp ecx, 0x5d
jne 0x4869a3
test dword [ebx + 0x44], eax
jne 0x4869a3
push 4
call fcn.005c084d
add esp, 4
jmp 0x486918
movzx edx, word [ebx + 0x3e]
lea ecx, [ebx + 0x18]
push edx
call fcn.00488fb0
mov eax, ebx
call fcn.00486640
jmp 0x486918
push 0xa
call fcn.005c084d
add esp, 4
jmp 0x486918