8c5624:	8b f8                	mov    %eax,%edi
8c5626:	59                   	pop    %ecx
8c5627:	85 db                	test   %ebx,%ebx
8c5629:	7e 23                	jle    0x8c564e
8c562b:	8b 4d 08             	mov    0x8(%ebp),%ecx
8c562e:	56                   	push   %esi
8c562f:	e8 1f c4 b5 ff       	call   0x421a53
8c5634:	8b 4d 08             	mov    0x8(%ebp),%ecx
8c5637:	56                   	push   %esi
8c5638:	8b 00                	mov    (%eax),%eax
8c563a:	89 04 f7             	mov    %eax,(%edi,%esi,8)
8c563d:	e8 11 c4 b5 ff       	call   0x421a53
8c5642:	8b 40 04             	mov    0x4(%eax),%eax
8c5645:	89 44 f7 04          	mov    %eax,0x4(%edi,%esi,8)
8c5649:	46                   	inc    %esi
8c564a:	3b f3                	cmp    %ebx,%esi
8c564c:	7c dd                	jl     0x8c562b
8c564e:	8b c7                	mov    %edi,%eax
8c5650:	5f                   	pop    %edi
8c5651:	5e                   	pop    %esi
8c5652:	5b                   	pop    %ebx
8c5653:	5d                   	pop    %ebp
8c5654:	c2 04 00             	ret    $0x4
8c5657:	cc                   	int3
8c5658:	cc                   	int3
8c5659:	cc                   	int3
8c565a:	cc                   	int3
8c565b:	cc                   	int3
8c565c:	cc                   	int3
8c565d:	cc                   	int3
8c565e:	cc                   	int3
8c565f:	cc                   	int3
8c5660:	cc                   	int3
8c5661:	cc                   	int3
8c5662:	cc                   	int3
8c5663:	cc                   	int3
8c5664:	cc                   	int3
8c5665:	cc                   	int3
8c5666:	cc                   	int3
8c5667:	cc                   	int3
8c5668:	cc                   	int3
8c5669:	cc                   	int3
8c566a:	cc                   	int3
8c566b:	cc                   	int3
8c566c:	55                   	push   %ebp
8c566d:	8b ec                	mov    %esp,%ebp
8c566f:	53                   	push   %ebx
8c5670:	8b 5d 0c             	mov    0xc(%ebp),%ebx
8c5673:	56                   	push   %esi
8c5674:	57                   	push   %edi
8c5675:	33 f6                	xor    %esi,%esi
8c5677:	8b 7b 08             	mov    0x8(%ebx),%edi
8c567a:	85 ff                	test   %edi,%edi
8c567c:	7e 14                	jle    0x8c5692
8c567e:	56                   	push   %esi
8c567f:	8b cb                	mov    %ebx,%ecx
8c5681:	e8 cd c3 b5 ff       	call   0x421a53
8c5686:	8b 4d 08             	mov    0x8(%ebp),%ecx
8c5689:	39 08                	cmp    %ecx,(%eax)
8c568b:	74 0f                	je     0x8c569c
8c568d:	46                   	inc    %esi
8c568e:	3b f7                	cmp    %edi,%esi
8c5690:	7c ec                	jl     0x8c567e
8c5692:	83 c8 ff             	or     $0xffffffff,%eax
8c5695:	5f                   	pop    %edi
8c5696:	5e                   	pop    %esi
8c5697:	5b                   	pop    %ebx
8c5698:	5d                   	pop    %ebp
8c5699:	c2 08 00             	ret    $0x8
8c569c:	8b c6                	mov    %esi,%eax
8c569e:	eb f5                	jmp    0x8c5695
8c56a0:	cc                   	int3
8c56a1:	cc                   	int3
8c56a2:	cc                   	int3
8c56a3:	cc                   	int3
8c56a4:	cc                   	int3
8c56a5:	cc                   	int3
8c56a6:	cc                   	int3
8c56a7:	cc                   	int3
8c56a8:	cc                   	int3
8c56a9:	cc                   	int3
8c56aa:	cc                   	int3
8c56ab:	cc                   	int3
8c56ac:	cc                   	int3
8c56ad:	6a 06                	push   $0x6
8c56af:	58                   	pop    %eax
8c56b0:	c3                   	ret
8c56b1:	55                   	push   %ebp
8c56b2:	8b ec                	mov    %esp,%ebp
8c56b4:	8b 45 08             	mov    0x8(%ebp),%eax
8c56b7:	83 e8 01             	sub    $0x1,%eax
8c56ba:	74 34                	je     0x8c56f0
8c56bc:	83 e8 01             	sub    $0x1,%eax
8c56bf:	74 2b                	je     0x8c56ec
8c56c1:	48                   	dec    %eax
8c56c2:	83 e8 01             	sub    $0x1,%eax
8c56c5:	74 21                	je     0x8c56e8
8c56c7:	48                   	dec    %eax
8c56c8:	83 e8 01             	sub    $0x1,%eax
8c56cb:	74 16                	je     0x8c56e3
8c56cd:	83 e8 01             	sub    $0x1,%eax
8c56d0:	74 0d                	je     0x8c56df
8c56d2:	83 e8 01             	sub    $0x1,%eax
8c56d5:	74 04                	je     0x8c56db
8c56d7:	33 c0                	xor    %eax,%eax
8c56d9:	eb 18                	jmp    0x8c56f3
8c56db:	6a 20                	push   $0x20
8c56dd:	eb 06                	jmp    0x8c56e5
8c56df:	6a 04                	push   $0x4
8c56e1:	eb 02                	jmp    0x8c56e5
8c56e3:	6a 02                	push   $0x2
8c56e5:	58                   	pop    %eax
8c56e6:	eb 0b                	jmp    0x8c56f3
8c56e8:	6a 10                	push   $0x10
8c56ea:	eb f9                	jmp    0x8c56e5
8c56ec:	6a 08                	push   $0x8
8c56ee:	eb f5                	jmp    0x8c56e5
8c56f0:	33 c0                	xor    %eax,%eax
8c56f2:	40                   	inc    %eax
8c56f3:	5d                   	pop    %ebp
8c56f4:	c2 04 00             	ret    $0x4
8c56f7:	cc                   	int3
8c56f8:	cc                   	int3
8c56f9:	cc                   	int3
8c56fa:	cc                   	int3
8c56fb:	cc                   	int3
8c56fc:	cc                   	int3
8c56fd:	cc                   	int3
8c56fe:	cc                   	int3
8c56ff:	cc                   	int3
8c5700:	cc                   	int3
8c5701:	cc                   	int3
8c5702:	cc                   	int3
8c5703:	cc                   	int3
8c5704:	cc                   	int3
8c5705:	cc                   	int3
8c5706:	cc                   	int3
8c5707:	cc                   	int3
8c5708:	55                   	push   %ebp
8c5709:	8b ec                	mov    %esp,%ebp
8c570b:	8b 45 08             	mov    0x8(%ebp),%eax
8c570e:	83 e8 01             	sub    $0x1,%eax
8c5711:	74 33                	je     0x8c5746
8c5713:	83 e8 01             	sub    $0x1,%eax
8c5716:	74 29                	je     0x8c5741
8c5718:	48                   	dec    %eax
8c5719:	83 e8 01             	sub    $0x1,%eax
8c571c:	74 1f                	je     0x8c573d
8c571e:	83 e8 04             	sub    $0x4,%eax
8c5721:	74 16                	je     0x8c5739
8c5723:	83 e8 08             	sub    $0x8,%eax
8c5726:	74 0d                	je     0x8c5735
8c5728:	83 e8 10             	sub    $0x10,%eax
8c572b:	74 04                	je     0x8c5731
8c572d:	33 c0                	xor    %eax,%eax
8c572f:	eb 18                	jmp    0x8c5749
8c5731:	6a 08                	push   $0x8
8c5733:	eb 0e                	jmp    0x8c5743
8c5735:	6a 04                	push   $0x4
8c5737:	eb 0a                	jmp    0x8c5743
8c5739:	6a 02                	push   $0x2
8c573b:	eb 06                	jmp    0x8c5743
8c573d:	6a 07                	push   $0x7
8c573f:	eb 02                	jmp    0x8c5743
8c5741:	6a 06                	push   $0x6
8c5743:	58                   	pop    %eax
8c5744:	eb 03                	jmp    0x8c5749
8c5746:	33 c0                	xor    %eax,%eax
8c5748:	40                   	inc    %eax
8c5749:	5d                   	pop    %ebp
8c574a:	c2 04 00             	ret    $0x4
8c574d:	cc                   	int3
8c574e:	cc                   	int3
8c574f:	cc                   	int3
8c5750:	cc                   	int3
8c5751:	cc                   	int3
8c5752:	cc                   	int3
8c5753:	cc                   	int3
8c5754:	cc                   	int3
8c5755:	cc                   	int3
8c5756:	cc                   	int3
8c5757:	cc                   	int3
8c5758:	cc                   	int3
8c5759:	cc                   	int3
8c575a:	cc                   	int3
8c575b:	cc                   	int3
8c575c:	cc                   	int3
8c575d:	cc                   	int3
8c575e:	8b 41 14             	mov    0x14(%ecx),%eax
8c5761:	c3                   	ret
8c5762:	b8 90 8d c4 00       	mov    $0xc48d90,%eax
8c5767:	c3                   	ret
8c5768:	8b 81 8c 00 00 00    	mov    0x8c(%ecx),%eax
8c576e:	c3                   	ret
8c576f:	8b 81 88 00 00 00    	mov    0x88(%ecx),%eax
8c5775:	c3                   	ret
8c5776:	8b 41 08             	mov    0x8(%ecx),%eax
8c5779:	c3                   	ret
8c577a:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
8c5780:	c3                   	ret
8c5781:	55                   	push   %ebp
8c5782:	8b ec                	mov    %esp,%ebp
8c5784:	51                   	push   %ecx
8c5785:	53                   	push   %ebx
8c5786:	56                   	push   %esi
8c5787:	57                   	push   %edi
8c5788:	8b f9                	mov    %ecx,%edi
8c578a:	8d 47 2c             	lea    0x2c(%edi),%eax
8c578d:	50                   	push   %eax
8c578e:	ff 75 08             	push   0x8(%ebp)
8c5791:	89 45 fc             	mov    %eax,-0x4(%ebp)
8c5794:	e8 1b c2 b4 ff       	call   0x4119b4
8c5799:	8b 17                	mov    (%edi),%edx
8c579b:	8b d8                	mov    %eax,%ebx
8c579d:	ff 75 08             	push   0x8(%ebp)
8c57a0:	8b 72 3c             	mov    0x3c(%edx),%esi
8c57a3:	8b ce                	mov    %esi,%ecx
8c57a5:	e8 bb 6e b6 ff       	call   0x42c665
8c57aa:	8b cf                	mov    %edi,%ecx
8c57ac:	ff d6                	call   *%esi
8c57ae:	8b c8                	mov    %eax,%ecx
8c57b0:	83 fb ff             	cmp    $0xffffffff,%ebx
8c57b3:	75 09                	jne    0x8c57be
8c57b5:	85 4f 08             	test   %ecx,0x8(%edi)
8c57b8:	74 29                	je     0x8c57e3
8c57ba:	3b db                	cmp    %ebx,%ebx
8c57bc:	74 12                	je     0x8c57d0
8c57be:	8b 4d fc             	mov    -0x4(%ebp),%ecx
8c57c1:	53                   	push   %ebx
8c57c2:	e8 8c c2 b5 ff       	call   0x421a53
8c57c7:	0f b6 40 08          	movzbl 0x8(%eax),%eax
8c57cb:	83 e0 01             	and    $0x1,%eax
8c57ce:	eb 0a                	jmp    0x8c57da
8c57d0:	8b 47 0c             	mov    0xc(%edi),%eax
8c57d3:	23 c1                	and    %ecx,%eax
8c57d5:	f7 d8                	neg    %eax
8c57d7:	1b c0                	sbb    %eax,%eax
8c57d9:	40                   	inc    %eax
8c57da:	5f                   	pop    %edi
8c57db:	5e                   	pop    %esi
8c57dc:	5b                   	pop    %ebx
8c57dd:	8b e5                	mov    %ebp,%esp
8c57df:	5d                   	pop    %ebp
8c57e0:	c2 04 00             	ret    $0x4
8c57e3:	e8 7e c7 b6 ff       	call   0x431f66
8c57e8:	cc                   	int3
8c57e9:	cc                   	int3
8c57ea:	cc                   	int3
8c57eb:	cc                   	int3
8c57ec:	cc                   	int3
8c57ed:	cc                   	int3
8c57ee:	cc                   	int3
8c57ef:	cc                   	int3
8c57f0:	cc                   	int3
8c57f1:	cc                   	int3
8c57f2:	cc                   	int3
8c57f3:	cc                   	int3
8c57f4:	cc                   	int3
8c57f5:	cc                   	int3
8c57f6:	cc                   	int3
8c57f7:	cc                   	int3
8c57f8:	cc                   	int3
8c57f9:	cc                   	int3
8c57fa:	cc                   	int3
8c57fb:	cc                   	int3
8c57fc:	cc                   	int3
8c57fd:	cc                   	int3
8c57fe:	cc                   	int3
8c57ff:	cc                   	int3
8c5800:	cc                   	int3
8c5801:	cc                   	int3
8c5802:	cc                   	int3
8c5803:	33 c0                	xor    %eax,%eax
8c5805:	39 41 08             	cmp    %eax,0x8(%ecx)
8c5808:	0f 94 c0             	sete   %al
8c580b:	c3                   	ret
8c580c:	cc                   	int3
8c580d:	cc                   	int3
8c580e:	55                   	push   %ebp
8c580f:	8b ec                	mov    %esp,%ebp
8c5811:	56                   	push   %esi
8c5812:	8d 71 40             	lea    0x40(%ecx),%esi
8c5815:	56                   	push   %esi
8c5816:	ff 75 08             	push   0x8(%ebp)
8c5819:	e8 96 c1 b4 ff       	call   0x4119b4
8c581e:	83 f8 ff             	cmp    $0xffffffff,%eax
8c5821:	74 14                	je     0x8c5837
8c5823:	50                   	push   %eax
8c5824:	8b ce                	mov    %esi,%ecx
8c5826:	e8 28 c2 b5 ff       	call   0x421a53
8c582b:	5e                   	pop    %esi
8c582c:	0f b6 40 08          	movzbl 0x8(%eax),%eax
8c5830:	83 e0 01             	and    $0x1,%eax
8c5833:	5d                   	pop    %ebp
8c5834:	c2 04 00             	ret    $0x4
8c5837:	e8 2a c7 b6 ff       	call   0x431f66
8c583c:	cc                   	int3
8c583d:	cc                   	int3
8c583e:	cc                   	int3
8c583f:	cc                   	int3
8c5840:	cc                   	int3
8c5841:	cc                   	int3
8c5842:	cc                   	int3
8c5843:	cc                   	int3
8c5844:	cc                   	int3
8c5845:	cc                   	int3
8c5846:	cc                   	int3
8c5847:	cc                   	int3
8c5848:	e9 cb 56 b6 ff       	jmp    0x42af18
8c584d:	6a 04                	push   $0x4
8c584f:	b8 b2 23 ba 00       	mov    $0xba23b2,%eax
8c5854:	e8 32 4a b4 ff       	call   0x40a28b
8c5859:	8b d9                	mov    %ecx,%ebx
8c585b:	8b 75 08             	mov    0x8(%ebp),%esi
8c585e:	3b 75 0c             	cmp    0xc(%ebp),%esi
8c5861:	7e 05                	jle    0x8c5868
8c5863:	e8 fe c6 b6 ff       	call   0x431f66
8c5868:	85 f6                	test   %esi,%esi
8c586a:	78 f7                	js     0x8c5863
8c586c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
8c5870:	7c f1                	jl     0x8c5863
8c5872:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
8c5876:	75 eb                	jne    0x8c5863
8c5878:	e8 98 0d b7 ff       	call   0x436615
8c587d:	50                   	push   %eax
8c587e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
8c5881:	e8 8e 43 b4 ff       	call   0x409c14
8c5886:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
8c588a:	8d 4b 2c             	lea    0x2c(%ebx),%ecx
8c588d:	6a ff                	push   $0xffffffff
8c588f:	6a 00                	push   $0x0
8c5891:	e8 07 6d b6 ff       	call   0x42c59d
8c5896:	56                   	push   %esi
8c5897:	e8 df 4f b4 ff       	call   0x40a87b
8c589c:	85 c0                	test   %eax,%eax
8c589e:	74 1e                	je     0x8c58be
8c58a0:	56                   	push   %esi
8c58a1:	50                   	push   %eax
8c58a2:	8d 4d f0             	lea    -0x10(%ebp),%ecx
8c58a5:	e8 22 e6 b3 ff       	call   0x403ecc
8c58aa:	85 c0                	test   %eax,%eax
8c58ac:	74 10                	je     0x8c58be
8c58ae:	6a 00                	push   $0x0
8c58b0:	6a 01                	push   $0x1
8c58b2:	8d 45 f0             	lea    -0x10(%ebp),%eax
8c58b5:	8b cb                	mov    %ebx,%ecx
8c58b7:	50                   	push   %eax
8c58b8:	56                   	push   %esi
8c58b9:	e8 ad 16 b7 ff       	call   0x436f6b
8c58be:	46                   	inc    %esi