8796b1:	8b 7d fc             	mov    -0x4(%ebp),%edi
8796b4:	8b 08                	mov    (%eax),%ecx
8796b6:	85 c9                	test   %ecx,%ecx
8796b8:	75 08                	jne    0x8796c2
8796ba:	42                   	inc    %edx
8796bb:	83 c0 04             	add    $0x4,%eax
8796be:	3b d7                	cmp    %edi,%edx
8796c0:	72 f2                	jb     0x8796b4
8796c2:	8b 45 0c             	mov    0xc(%ebp),%eax
8796c5:	89 0b                	mov    %ecx,(%ebx)
8796c7:	8b 0e                	mov    (%esi),%ecx
8796c9:	5f                   	pop    %edi
8796ca:	89 08                	mov    %ecx,(%eax)
8796cc:	8b 45 10             	mov    0x10(%ebp),%eax
8796cf:	8b 4e 04             	mov    0x4(%esi),%ecx
8796d2:	5e                   	pop    %esi
8796d3:	5b                   	pop    %ebx
8796d4:	89 08                	mov    %ecx,(%eax)
8796d6:	8b e5                	mov    %ebp,%esp
8796d8:	5d                   	pop    %ebp
8796d9:	c2 0c 00             	ret    $0xc
8796dc:	e8 85 88 bb ff       	call   0x431f66
8796e1:	cc                   	int3
8796e2:	cc                   	int3
8796e3:	cc                   	int3
8796e4:	cc                   	int3
8796e5:	cc                   	int3
8796e6:	cc                   	int3
8796e7:	cc                   	int3
8796e8:	cc                   	int3
8796e9:	cc                   	int3
8796ea:	cc                   	int3
8796eb:	cc                   	int3
8796ec:	cc                   	int3
8796ed:	cc                   	int3
8796ee:	cc                   	int3
8796ef:	cc                   	int3
8796f0:	cc                   	int3
8796f1:	cc                   	int3
8796f2:	cc                   	int3
8796f3:	cc                   	int3
8796f4:	cc                   	int3
8796f5:	cc                   	int3
8796f6:	cc                   	int3
8796f7:	cc                   	int3
8796f8:	cc                   	int3
8796f9:	cc                   	int3
8796fa:	cc                   	int3
8796fb:	cc                   	int3
8796fc:	cc                   	int3
8796fd:	cc                   	int3
8796fe:	cc                   	int3
8796ff:	cc                   	int3
879700:	cc                   	int3
879701:	cc                   	int3
879702:	cc                   	int3
879703:	55                   	push   %ebp
879704:	8b ec                	mov    %esp,%ebp
879706:	8b 4d 08             	mov    0x8(%ebp),%ecx
879709:	8b 11                	mov    (%ecx),%edx
87970b:	8b 42 04             	mov    0x4(%edx),%eax
87970e:	89 01                	mov    %eax,(%ecx)
879710:	8d 42 08             	lea    0x8(%edx),%eax
879713:	5d                   	pop    %ebp
879714:	c2 04 00             	ret    $0x4
879717:	cc                   	int3
879718:	cc                   	int3
879719:	cc                   	int3
87971a:	cc                   	int3
87971b:	cc                   	int3
87971c:	b8 14 32 c4 00       	mov    $0xc43214,%eax
879721:	c3                   	ret
879722:	b8 a8 2d c4 00       	mov    $0xc42da8,%eax
879727:	c3                   	ret
879728:	b8 28 30 c4 00       	mov    $0xc43028,%eax
87972d:	c3                   	ret
87972e:	85 c9                	test   %ecx,%ecx
879730:	74 23                	je     0x879755
879732:	83 79 20 00          	cmpl   $0x0,0x20(%ecx)
879736:	74 1d                	je     0x879755
879738:	8b 81 10 01 00 00    	mov    0x110(%ecx),%eax
87973e:	85 c0                	test   %eax,%eax
879740:	74 13                	je     0x879755
879742:	6a 02                	push   $0x2
879744:	6a ff                	push   $0xffffffff
879746:	68 0c 10 00 00       	push   $0x100c
87974b:	ff 70 20             	push   0x20(%eax)
87974e:	ff 15 20 40 d8 00    	call   *0xd84020
879754:	c3                   	ret
879755:	83 c8 ff             	or     $0xffffffff,%eax
879758:	c3                   	ret
879759:	cc                   	int3
87975a:	cc                   	int3
87975b:	cc                   	int3
87975c:	cc                   	int3
87975d:	cc                   	int3
87975e:	cc                   	int3
87975f:	cc                   	int3
879760:	cc                   	int3
879761:	cc                   	int3
879762:	cc                   	int3
879763:	8b 41 0c             	mov    0xc(%ecx),%eax
879766:	f7 d8                	neg    %eax
879768:	1b c0                	sbb    %eax,%eax
87976a:	c3                   	ret
87976b:	cc                   	int3
87976c:	cc                   	int3
87976d:	55                   	push   %ebp
87976e:	8b ec                	mov    %esp,%ebp
879770:	8b 45 08             	mov    0x8(%ebp),%eax
879773:	85 81 d4 00 00 00    	test   %eax,0xd4(%ecx)
879779:	75 05                	jne    0x879780
87977b:	83 c8 ff             	or     $0xffffffff,%eax
87977e:	eb 28                	jmp    0x8797a8
879780:	83 e8 01             	sub    $0x1,%eax
879783:	74 1c                	je     0x8797a1
879785:	83 e8 01             	sub    $0x1,%eax
879788:	74 13                	je     0x87979d
87978a:	48                   	dec    %eax
87978b:	83 e8 01             	sub    $0x1,%eax
87978e:	74 09                	je     0x879799
879790:	83 e8 04             	sub    $0x4,%eax
879793:	75 e6                	jne    0x87977b
879795:	6a f2                	push   $0xfffffff2
879797:	eb 0a                	jmp    0x8797a3
879799:	6a f3                	push   $0xfffffff3
87979b:	eb 06                	jmp    0x8797a3
87979d:	6a f4                	push   $0xfffffff4
87979f:	eb 02                	jmp    0x8797a3
8797a1:	6a f5                	push   $0xfffffff5
8797a3:	e8 08 e4 ba ff       	call   0x427bb0
8797a8:	5d                   	pop    %ebp
8797a9:	c2 04 00             	ret    $0x4
8797ac:	cc                   	int3
8797ad:	cc                   	int3
8797ae:	cc                   	int3
8797af:	cc                   	int3
8797b0:	cc                   	int3
8797b1:	cc                   	int3
8797b2:	cc                   	int3
8797b3:	cc                   	int3
8797b4:	cc                   	int3
8797b5:	cc                   	int3
8797b6:	cc                   	int3
8797b7:	cc                   	int3
8797b8:	cc                   	int3
8797b9:	cc                   	int3
8797ba:	cc                   	int3
8797bb:	8b 41 08             	mov    0x8(%ecx),%eax
8797be:	c3                   	ret
8797bf:	b8 f4 37 c4 00       	mov    $0xc437f4,%eax
8797c4:	c3                   	ret
8797c5:	b8 14 37 c4 00       	mov    $0xc43714,%eax
8797ca:	c3                   	ret
8797cb:	b8 c8 35 c4 00       	mov    $0xc435c8,%eax
8797d0:	c3                   	ret
8797d1:	56                   	push   %esi
8797d2:	57                   	push   %edi
8797d3:	6a 00                	push   $0x0
8797d5:	6a 0a                	push   $0xa
8797d7:	6a 00                	push   $0x0
8797d9:	8b f9                	mov    %ecx,%edi
8797db:	e8 2b 2b b9 ff       	call   0x40c30b
8797e0:	8b 07                	mov    (%edi),%eax
8797e2:	8b b0 c8 01 00 00    	mov    0x1c8(%eax),%esi
8797e8:	8b ce                	mov    %esi,%ecx
8797ea:	e8 76 2e bb ff       	call   0x42c665
8797ef:	8b cf                	mov    %edi,%ecx
8797f1:	ff d6                	call   *%esi
8797f3:	85 c0                	test   %eax,%eax
8797f5:	74 09                	je     0x879800
8797f7:	8b cf                	mov    %edi,%ecx
8797f9:	5f                   	pop    %edi
8797fa:	5e                   	pop    %esi
8797fb:	e9 91 f3 ba ff       	jmp    0x428b91
879800:	5f                   	pop    %edi
879801:	5e                   	pop    %esi
879802:	c3                   	ret
879803:	cc                   	int3
879804:	cc                   	int3
879805:	cc                   	int3
879806:	cc                   	int3
879807:	cc                   	int3
879808:	cc                   	int3
879809:	cc                   	int3
87980a:	cc                   	int3
87980b:	cc                   	int3
87980c:	cc                   	int3
87980d:	cc                   	int3
87980e:	cc                   	int3
87980f:	55                   	push   %ebp
879810:	8b ec                	mov    %esp,%ebp
879812:	56                   	push   %esi
879813:	8b f1                	mov    %ecx,%esi
879815:	57                   	push   %edi
879816:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
87981a:	74 0d                	je     0x879829
87981c:	ff 76 04             	push   0x4(%esi)
87981f:	e8 ee 4d bc ff       	call   0x43e612
879824:	83 66 04 00          	andl   $0x0,0x4(%esi)
879828:	59                   	pop    %ecx
879829:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
87982d:	8b 7d 08             	mov    0x8(%ebp),%edi
879830:	74 31                	je     0x879863
879832:	33 c9                	xor    %ecx,%ecx
879834:	8b c7                	mov    %edi,%eax
879836:	6a 04                	push   $0x4
879838:	5a                   	pop    %edx
879839:	f7 e2                	mul    %edx
87983b:	0f 90 c1             	seto   %cl
87983e:	f7 d9                	neg    %ecx
879840:	0b c8                	or     %eax,%ecx
879842:	51                   	push   %ecx
879843:	e8 4f bf bb ff       	call   0x435797
879848:	59                   	pop    %ecx
879849:	8b c8                	mov    %eax,%ecx
87984b:	89 4e 04             	mov    %ecx,0x4(%esi)
87984e:	85 c9                	test   %ecx,%ecx
879850:	74 1a                	je     0x87986c
879852:	8b c7                	mov    %edi,%eax
879854:	c1 e0 02             	shl    $0x2,%eax
879857:	50                   	push   %eax
879858:	6a 00                	push   $0x0
87985a:	51                   	push   %ecx
87985b:	e8 58 af b9 ff       	call   0x4147b8
879860:	83 c4 0c             	add    $0xc,%esp
879863:	89 7e 08             	mov    %edi,0x8(%esi)
879866:	5f                   	pop    %edi
879867:	5e                   	pop    %esi
879868:	5d                   	pop    %ebp
879869:	c2 08 00             	ret    $0x8
87986c:	e8 f5 86 bb ff       	call   0x431f66
879871:	cc                   	int3
879872:	cc                   	int3
879873:	cc                   	int3
879874:	cc                   	int3
879875:	cc                   	int3
879876:	cc                   	int3
879877:	cc                   	int3
879878:	cc                   	int3
879879:	cc                   	int3
87987a:	cc                   	int3
87987b:	cc                   	int3
87987c:	cc                   	int3
87987d:	cc                   	int3
87987e:	cc                   	int3
87987f:	cc                   	int3
879880:	cc                   	int3
879881:	cc                   	int3
879882:	cc                   	int3
879883:	cc                   	int3
879884:	cc                   	int3
879885:	cc                   	int3
879886:	cc                   	int3
879887:	cc                   	int3
879888:	cc                   	int3
879889:	cc                   	int3
87988a:	55                   	push   %ebp
87988b:	8b ec                	mov    %esp,%ebp
87988d:	33 c0                	xor    %eax,%eax
87988f:	50                   	push   %eax
879890:	ff 75 10             	push   0x10(%ebp)
879893:	50                   	push   %eax
879894:	50                   	push   %eax
879895:	ff 75 0c             	push   0xc(%ebp)
879898:	ff 75 08             	push   0x8(%ebp)
87989b:	6a 03                	push   $0x3
87989d:	e8 ef 08 b9 ff       	call   0x40a191
8798a2:	5d                   	pop    %ebp
8798a3:	c2 0c 00             	ret    $0xc
8798a6:	cc                   	int3
8798a7:	cc                   	int3
8798a8:	cc                   	int3
8798a9:	cc                   	int3
8798aa:	cc                   	int3
8798ab:	cc                   	int3
8798ac:	cc                   	int3
8798ad:	8b 81 d8 00 00 00    	mov    0xd8(%ecx),%eax
8798b3:	c3                   	ret
8798b4:	33 c0                	xor    %eax,%eax
8798b6:	39 41 0c             	cmp    %eax,0xc(%ecx)
8798b9:	0f 94 c0             	sete   %al
8798bc:	c3                   	ret
8798bd:	cc                   	int3
8798be:	cc                   	int3
8798bf:	55                   	push   %ebp
8798c0:	8b ec                	mov    %esp,%ebp
8798c2:	8b 45 08             	mov    0x8(%ebp),%eax
8798c5:	89 81 d4 00 00 00    	mov    %eax,0xd4(%ecx)
8798cb:	8b 45 0c             	mov    0xc(%ebp),%eax
8798ce:	89 81 d0 00 00 00    	mov    %eax,0xd0(%ecx)
8798d4:	5d                   	pop    %ebp
8798d5:	c2 08 00             	ret    $0x8
8798d8:	cc                   	int3
8798d9:	cc                   	int3
8798da:	cc                   	int3
8798db:	cc                   	int3
8798dc:	cc                   	int3
8798dd:	cc                   	int3
8798de:	55                   	push   %ebp
8798df:	8b ec                	mov    %esp,%ebp
8798e1:	51                   	push   %ecx
8798e2:	51                   	push   %ecx
8798e3:	8d 45 fc             	lea    -0x4(%ebp),%eax
8798e6:	50                   	push   %eax
8798e7:	8d 45 f8             	lea    -0x8(%ebp),%eax
8798ea:	50                   	push   %eax
8798eb:	ff 75 08             	push   0x8(%ebp)
8798ee:	e8 a7 b8 b9 ff       	call   0x41519a
8798f3:	85 c0                	test   %eax,%eax
8798f5:	74 0b                	je     0x879902
8798f7:	8b 48 04             	mov    0x4(%eax),%ecx
8798fa:	8b 45 0c             	mov    0xc(%ebp),%eax
8798fd:	89 08                	mov    %ecx,(%eax)
8798ff:	33 c0                	xor    %eax,%eax
879901:	40                   	inc    %eax
879902:	8b e5                	mov    %ebp,%esp
879904:	5d                   	pop    %ebp
879905:	c2 08 00             	ret    $0x8
879908:	cc                   	int3
879909:	cc                   	int3
87990a:	cc                   	int3
87990b:	cc                   	int3
87990c:	cc                   	int3
87990d:	cc                   	int3
87990e:	cc                   	int3
87990f:	cc                   	int3
879910:	cc                   	int3
879911:	cc                   	int3
879912:	55                   	push   %ebp
879913:	8b ec                	mov    %esp,%ebp
879915:	51                   	push   %ecx
879916:	53                   	push   %ebx
879917:	56                   	push   %esi
879918:	57                   	push   %edi
879919:	8b f9                	mov    %ecx,%edi
87991b:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
87991f:	75 31                	jne    0x879952
879921:	6a 10                	push   $0x10
879923:	ff 77 18             	push   0x18(%edi)
879926:	8d 47 14             	lea    0x14(%edi),%eax
879929:	50                   	push   %eax
87992a:	e8 7d 97 b9 ff       	call   0x4130ac
87992f:	8b 57 18             	mov    0x18(%edi),%edx
879932:	83 c0 08             	add    $0x8,%eax
879935:	8b ca                	mov    %edx,%ecx
879937:	c1 e1 04             	shl    $0x4,%ecx
87993a:	83 c1 f0             	add    $0xfffffff0,%ecx
87993d:	03 c8                	add    %eax,%ecx
87993f:	eb 0c                	jmp    0x87994d