Function at 0x1000d7d0
Capabilities:
Parse credit card information

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
mov edi, eax
xor ebp, ebp
xor al, al
cmp dword [edi + 0x40], 0xffff
je 0x1000daad
jmp 0x1000d7f0
mov ecx, dword [edi + 0x40]
mov edx, 0x10000000
cmp ecx, 0x7c
je 0x1000daad
cmp ecx, 0x29
jne 0x1000d823
cmp dword [edi + 0x10], ebp
jne 0x1000daad
test dword [edi + 0x44], edx
jne 0x1000d823
push 5
call fcn.1001eb32
add esp, 4
jmp 0x1000da97
cmp ecx, 0x2e
jne 0x1000d8ca
push 0x14
call fcn.1001fc90
add esp, 4
cmp eax, ebp
je 0x1000d852
mov dword [eax], vtable.std::tr1::_Node_base.0
mov dword [eax + 4], 5
mov dword [eax + 8], ebp
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebp
jmp 0x1000d854
xor eax, eax
mov ecx, dword [edi + 0x1c]
mov dword [eax + 0x10], ecx
mov edx, dword [edi + 0x1c]
mov ecx, dword [edx + 0xc]
cmp ecx, ebp
je 0x1000d870
mov dword [eax + 0xc], ecx
mov ecx, dword [edi + 0x1c]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x10], eax
mov ecx, dword [edi + 0x1c]
mov dword [ecx + 0xc], eax
mov dword [edi + 0x1c], eax
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x1000d8be
cmp word [eax], 0x5c
jne 0x1000d8bb
add eax, 2
cmp eax, ecx
je 0x1000d8a4
test byte [edi + 0x44], 8
jne 0x1000d8a4
movzx ecx, word [eax]
cmp cx, 0x28
je 0x1000d8b9
cmp cx, 0x29
je 0x1000d8b9
test byte [edi + 0x44], 0x10
jne 0x1000d8bb
movzx ecx, word [eax]
cmp cx, 0x7b
je 0x1000d8b9
cmp cx, 0x7d
jne 0x1000d8bb
mov dword [edi], eax
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
jmp 0x1000da97
cmp ecx, 0x5c
jne 0x1000d9b9
mov eax, dword [edi]
mov ecx, dword [edi + 8]
cmp eax, ecx
je 0x1000d918
cmp word [eax], 0x5c
jne 0x1000d915
add eax, 2
cmp eax, ecx
je 0x1000d8fe
test byte [edi + 0x44], 8
jne 0x1000d8fe
movzx ecx, word [eax]
cmp cx, 0x28
je 0x1000d913
cmp cx, 0x29
je 0x1000d913
test byte [edi + 0x44], 0x10
jne 0x1000d915
movzx ecx, word [eax]
cmp cx, 0x7b
je 0x1000d913
cmp cx, 0x7d
jne 0x1000d915
mov dword [edi], eax
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
mov eax, dword [edi + 0x44]
and eax, 0x80
je 0x1000d964
cmp word [edi + 0x3e], 0x62
jne 0x1000d964
lea esi, [edi + 0x18]
call fcn.1000eb90
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000d958
cmp word [esi], 0x5c
jne 0x1000d955
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000d955
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
jmp 0x1000da9e
cmp eax, ebp
je 0x1000d9ad
cmp word [edi + 0x3e], 0x42
jne 0x1000d9ad
lea esi, [edi + 0x18]
call fcn.1000eb90
mov eax, dword [edi + 0x1c]
or dword [eax + 8], 1
mov esi, dword [edi]
add eax, 8
cmp esi, dword [edi + 8]
je 0x1000d9a1
cmp word [esi], 0x5c
jne 0x1000d99e
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000d99e
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
jmp 0x1000da9e
mov eax, edi
call fcn.1000e7f0
jmp 0x1000da97
cmp ecx, 0x5b
jne 0x1000da23
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000d9de
cmp word [esi], 0x5c
jne 0x1000d9db
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000d9db
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
call fcn.1000e750
cmp dword [edi + 0x40], 0x5d
je 0x1000d9fa
push 4
call fcn.1001eb32
add esp, 4
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000da1a
cmp word [esi], 0x5c
jne 0x1000da17
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000da17
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
jmp 0x1000da97
cmp ecx, 0x28
jne 0x1000dab3
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000da4c
cmp word [esi], 0x5c
jne 0x1000da49
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000da49
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
mov eax, edi
call fcn.1000e8b0
cmp dword [edi + 0x40], 0x29
mov bl, al
je 0x1000da6c
push 5
call fcn.1001eb32
add esp, 4
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000da8c
cmp word [esi], 0x5c
jne 0x1000da89
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000da89
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
test bl, bl
je 0x1000da9e
mov eax, edi
call fcn.1000e9b0
cmp dword [edi + 0x40], 0xffff
mov al, 1
jne 0x1000d7f0
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
cmp ecx, 0x5e
jne 0x1000dae9
lea esi, [edi + 0x18]
call fcn.1000eaf0
mov esi, dword [edi]
cmp esi, dword [edi + 8]
je 0x1000dae0
cmp word [esi], 0x5c
jne 0x1000dadd
mov edx, edi
call fcn.1000d760
test al, al
je 0x1000dadd
add esi, 2
mov dword [edi], esi
add dword [edi], 2
mov esi, edi
call fcn.1000cc20
jmp 0x1000da9e
cmp ecx, 0x24
jne 0x1000daff
lea esi, [edi + 0x18]
call fcn.1000eb40
mov eax, edi
call fcn.1000d7a0
jmp 0x1000da9e
cmp ecx, 0x2a
je 0x1000db5e
cmp ecx, 0x2b
je 0x1000db5e
cmp ecx, 0x3f
je 0x1000db5e
cmp ecx, 0x7b
je 0x1000db5e
cmp ecx, 0x7d
jne 0x1000db2c
test dword [edi + 0x44], edx
jne 0x1000db2c
push 6
call fcn.1001eb32
add esp, 4
jmp 0x1000da97
cmp ecx, 0x5d
jne 0x1000db45
test dword [edi + 0x44], edx
jne 0x1000db45
push 4
call fcn.1001eb32
add esp, 4
jmp 0x1000da97
movzx edx, word [edi + 0x3e]
push edx
lea eax, [edi + 0x18]
call fcn.1000ebe0
mov eax, edi
call fcn.1000d7a0
jmp 0x1000da97
push 0xa
call fcn.1001eb32
add esp, 4
jmp 0x1000da97