Function at 0x42a890
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [edi + 0x60], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x49bb0
jmp 0x42a8b6
mov ebx, dword [esp + 0x10]
mov esi, dword [edi + 4]
add esi, 0x11c
call fcn.0041e1c0
mov esi, eax
mov eax, dword [esp + 0x14]
mov dword [esi + 8], 0xc
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], ebx
mov dword [esi + 0x1c], eax
mov dword [esi + 0x18], 0x96
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x8c]
cmp dword [ecx + 0x7f8], 0x2b
mov dword [esp + 0x1c], esi
jne 0x42a930
mov eax, dword [eax + 0x554c]
cmp eax, 6
je 0x42a910
cmp eax, 8
je 0x42a910
cmp eax, 7
jne 0x42a930
mov eax, dword [ecx + 0x81c]
mov esi, ebx
xor edi, edi
call fcn.00521450
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
mov edi, dword [ebp + 8]
mov dword [esp + 0x18], eax
jmp 0x42a938
mov dword [esp + 0x18], 0x28
fild dword [esp + 0x18]
mov eax, ebx
xor ecx, ecx
fsub qword [0x6794c8]
fstp dword [esi + 0x24]
mov ebx, dword [edi + 4]
call fcn.0041c740
add dword [esp + 0x10], 1
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
add eax, 0x2710
cmp eax, 0x55f00
fadd qword [0x6794c8]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x28]
jl 0x42a8b2
mov ecx, dword [edi]
mov eax, dword [ecx + 0x7f8]
cmp eax, 0x3d
jne 0x42aa47
mov edx, dword [edi + 4]
mov ebx, 9
push ebx
push 3
push edx
lea eax, [ebx + 1]
call fcn.0040e020
test eax, eax
jne 0x42a9d5
mov eax, dword [edi + 4]
lea esi, [eax + 0xac]
call fcn.0041de80
push 0xffffffffffffffff
mov esi, eax
push ebx
push esi
lea eax, [ebx + 1]
lea ecx, [ebx + 2]
mov byte [esi + 0x144], bl
call fcn.0045db60
push esi
mov eax, edi
call fcn.0042a530
mov eax, dword [edi + 4]
push ebx
push 3
push eax
mov eax, 3
call fcn.0040e020
test eax, eax
jne 0x42aa18
mov eax, dword [edi + 4]
lea esi, [eax + 0xac]
call fcn.0041de80
mov esi, eax
push 0xffffffffffffffff
push ebx
mov eax, 3
push esi
mov ecx, eax
mov byte [esi + 0x144], bl
call fcn.0045db60
push esi
mov eax, edi
call fcn.0042a530
push 7
push ebx
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 6
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 4
push 0xf
jmp 0x42b26e
cmp eax, 0x3e
jne 0x42ab7e
mov ecx, dword [edi + 4]
push 0x15
push 3
push ecx
xor eax, eax
call fcn.0040e020
test eax, eax
jne 0x42aa97
mov eax, dword [edi + 4]
lea esi, [eax + 0xac]
call fcn.0041de80
push 0xffffffffffffffff
mov esi, eax
mov ebx, 1
push 0x15
push esi
xor eax, eax
lea ecx, [ebx + 2]
mov byte [esi + 0x144], bl
call fcn.0045db60
push esi
mov eax, edi
call fcn.0042a530
jmp 0x42aa9c
mov ebx, 1
mov edx, dword [edi + 4]
push ebx
push 2
push edx
xor eax, eax
call fcn.0040e020
test eax, eax
jne 0x42aada
mov eax, dword [edi + 4]
lea esi, [eax + 0xac]
call fcn.0041de80
mov esi, eax
push 0xffffffffffffffff
push ebx
xor eax, eax
push esi
lea ecx, [eax + 2]
mov byte [esi + 0x144], bl
call fcn.0045db60
push esi
mov eax, edi
call fcn.0042a530
mov eax, dword [edi + 4]
push ebx
push 3
push eax
mov eax, 3
call fcn.0040e020
test eax, eax
jne 0x42ab1d
mov eax, dword [edi + 4]
lea esi, [eax + 0xac]
call fcn.0041de80
mov esi, eax
push 0xffffffffffffffff
push ebx
mov eax, 3
push esi
mov ecx, eax
mov byte [esi + 0x144], bl
call fcn.0045db60
push esi
mov eax, edi
call fcn.0042a530
push ebx
push 0x1d
push edi
xor eax, eax
call fcn.0042a6c0
push ebx
push 0xc
push edi
xor eax, eax
call fcn.0042a6c0
push 2
push 0xc
push edi
mov eax, 3
call fcn.0042a6c0
push ebx
push ebx
push edi
mov eax, 3
call fcn.0042a6c0
push 4
push ebx
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0x20
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0x14
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 4
push 0xa
jmp 0x42b26e
cmp eax, 0x3f
jne 0x42abf3
push 3
push 4
xor ebx, ebx
call fcn.0042a660
mov edi, dword [ebp + 8]
push 1
push 0x12
call fcn.0042a660
push 2
push 4
mov ebx, 2
call fcn.0042a660
push ebx
push 1
mov ebx, 4
call fcn.0042a660
push 1
push 6
mov ebx, 3
call fcn.0042a660
push 6
push 0x11
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 1
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0xf
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x34
jmp 0x42b26e
cmp eax, 0x40
jne 0x42acae
push 3
push 1
xor ebx, ebx
call fcn.0042a660
mov edi, dword [ebp + 8]
push 3
push 1
call fcn.0042a660
push 3
push 0x32
mov ebx, 1
call fcn.0042a660
push 1
push 0xa
mov ebx, 2
call fcn.0042a660
push ebx
push 1
call fcn.0042a660
push 3
push 0xf
mov ebx, 3
call fcn.0042a660
push ebx
push ebx
mov ebx, 3
call fcn.0042a660
push 7
push 1
call fcn.0042a660
push 1
push 4
push edi
xor eax, eax
call fcn.0042a6c0
push 1
push 1
push edi
lea eax, [ebx - 3]
call fcn.0042a6c0
push 2
push 0x22
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push 2
push 0x21
push edi
lea eax, [ebx - 1]
call fcn.0042a6c0
push 3
push 0x12
push edi
mov eax, ebx
call fcn.0042a6c0
push 5
push 0x27
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push ebx
push 1
jmp 0x42b26e
cmp eax, 0x41
jne 0x42ad1a
push 6
push 1
lea ebx, [eax - 0x3f]
call fcn.0042a660
mov edi, dword [ebp + 8]
push 1
push 0x1b
mov ebx, 3
call fcn.0042a660
push 3
push 1
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push 1
push 0x1d
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 2
push 0x14
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x22
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 7
push 0x1a
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 1
jmp 0x42b26e
cmp eax, 0x42
jne 0x42adad
push 4
push 0x17
lea ebx, [eax - 0x41]
call fcn.0042a660
mov edi, dword [ebp + 8]
push 4
push 0x1e
mov ebx, 3
call fcn.0042a660
push ebx
push 1
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push ebx
push 1
push edi
mov eax, ebx
call fcn.0042a6c0
push 2
push 0x12
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0xf
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push ebx
push 0x15
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 0x27
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0x22
jmp 0x42b26e
cmp eax, 0x43
jne 0x42adf2
push 8
push 1
lea ebx, [eax - 0x41]
call fcn.0042a660
mov edi, dword [ebp + 8]
push 1
push 0x12
mov ebx, 4
call fcn.0042a660
push 2
push 0x12
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0x10
push 4
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 1
jmp 0x42b26e
cmp eax, 0x44
jne 0x42ae41
push 1
push 0xf
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x1f
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 8
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 6
push 0x22
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0
push 4
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 7
push 1
jmp 0x42b26e
cmp eax, 0x45
jne 0x42af3d
push 5
push 0x17
lea ebx, [eax - 0x44]
call fcn.0042a660
mov edi, dword [ebp + 8]
push 5
push 0x16
mov ebx, 3
call fcn.0042a660
push 4
push 0x11
push edi
xor eax, eax
call fcn.0042a6c0
push 3
push 1
push edi
xor eax, eax
call fcn.0042a6c0
push 3
push 1
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push 1
push 0x12
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push 1
push 0x1c
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push 1
push 0x1c
push edi
lea eax, [ebx - 2]
call fcn.0042a6c0
push ebx
push 6
push edi
lea eax, [ebx - 1]
call fcn.0042a6c0
push 3
push 1
push edi
lea eax, [ebx - 1]
call fcn.0042a6c0
push 0
push 0x11
push edi
lea eax, [ebx - 1]
call fcn.0042a6c0
push ebx
push 0x1c
push edi
mov eax, ebx
call fcn.0042a6c0
push 2
push 1
push edi
mov eax, ebx
call fcn.0042a6c0
push 1
push 1
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 1
push 0xa
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 1
push 0xc
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 1
push 0x1d
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 1
push 0x1c
push edi
lea eax, [ebx + 1]
call fcn.0042a6c0
push 1
push 0x1f
lea eax, [ebx + 1]
jmp 0x42b271
cmp eax, 0x46
jne 0x42b277
mov eax, 5
call fcn.005af400
mov ecx, dword [edi + 0x6c]
mov dword [esp + 0x1c], eax
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, 3
cmp eax, 2
jg 0x42af6d
mov esi, 2
jmp 0x42af79
cmp eax, 6
mov esi, 6
jge 0x42af79
mov esi, eax
mov eax, 0x55555556
imul ecx
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx + 2]
cmp ebx, 2
jg 0x42af95
mov ebx, 2
jmp 0x42af9f
cmp ebx, 4
jl 0x42af9f
mov ebx, 4
mov eax, esi
sub eax, ebx
add eax, 1
call fcn.005af400
mov ecx, dword [edi + 0x6c]
mov esi, eax
add esi, ebx
test ecx, ecx
jne 0x42afba
xor esi, esi
jmp 0x42b022
cmp ecx, 1
jne 0x42afc3
mov esi, ecx
jmp 0x42b022
cmp ecx, 0xa
jl 0x42b022
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, 3
cmp eax, 2
jg 0x42afde
mov esi, 2
jmp 0x42afea
cmp eax, 7
mov esi, 7
jge 0x42afea
mov esi, eax
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax + 2]
cmp edx, 2
jg 0x42b006
mov ebx, 2
jmp 0x42b012
cmp edx, 5
mov ebx, 5
jge 0x42b012
mov ebx, edx
mov eax, esi
sub eax, ebx
add eax, 1
call fcn.005af400
mov esi, eax
add esi, ebx
mov ecx, 8
sub ecx, esi
push ecx
push 1
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push esi
push 0x1c
push edi
or eax, 0xffffffff
call fcn.0042a6c0
cmp dword [esp + 0x1c], 0
jne 0x42b0dc
cmp dword [edi + 0x6c], 1
jl 0x42b0dc
mov eax, 5
call fcn.005af400
test eax, eax
jne 0x42b087
push 0x10
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x1c
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 4
push 7
jmp 0x42b26e
cmp eax, 1
je 0x42addc
cmp eax, 2
jne 0x42b0ab
push 4
push 7
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 8
push 0xf
jmp 0x42b26e
cmp eax, 3
jne 0x42b0c6
push 9
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 8
push 0x1c
jmp 0x42b26e
push 0xe
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 5
push 1
jmp 0x42b26e
mov eax, 6
call fcn.005af400
test eax, eax
je 0x42b1b4
cmp eax, 1
je 0x42b1b4
cmp eax, 2
je 0x42b1b4
cmp eax, 3
je 0x42b145
cmp eax, 4
je 0x42b145
push 0xe
push 4
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 6
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0
push 0x11
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
jmp 0x42b26c
push 1
push 0x16
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x1c
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 7
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x22
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x12
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 5
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x27
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
jmp 0x42b26c
push 1
push 0x32
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0
push 0x16
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x12
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0xc
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 0x1a
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x16
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x22
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x12
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0
push 5
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x21
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0xa
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 3
push 0x1d
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 1
push 0x26
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 2
push 6
push edi
or eax, 0xffffffff
call fcn.0042a6c0
push 0
push 0x15
or eax, 0xffffffff
push edi
call fcn.0042a6c0
mov edx, dword [edi + 4]
pop edi
pop esi
mov dword [edx + 0x608], 0
pop ebx
mov esp, ebp
pop ebp
ret 4