856641:	cc                   	int3
856642:	8b 01                	mov    (%ecx),%eax
856644:	8b 80 80 01 00 00    	mov    0x180(%eax),%eax
85664a:	e8 53 32 bd ff       	call   0x4298a2
85664f:	ff e0                	jmp    *%eax
856651:	cc                   	int3
856652:	cc                   	int3
856653:	cc                   	int3
856654:	55                   	push   %ebp
856655:	8b ec                	mov    %esp,%ebp
856657:	56                   	push   %esi
856658:	8b f1                	mov    %ecx,%esi
85665a:	e8 c7 4e bd ff       	call   0x42b526
85665f:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
856663:	74 18                	je     0x85667d
856665:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
856669:	75 08                	jne    0x856673
85666b:	56                   	push   %esi
85666c:	e8 1e b1 ba ff       	call   0x40178f
856671:	eb 09                	jmp    0x85667c
856673:	6a 20                	push   $0x20
856675:	56                   	push   %esi
856676:	e8 5f 91 bc ff       	call   0x41f7da
85667b:	59                   	pop    %ecx
85667c:	59                   	pop    %ecx
85667d:	8b c6                	mov    %esi,%eax
85667f:	5e                   	pop    %esi
856680:	5d                   	pop    %ebp
856681:	c2 04 00             	ret    $0x4
856684:	cc                   	int3
856685:	cc                   	int3
856686:	cc                   	int3
856687:	cc                   	int3
856688:	cc                   	int3
856689:	cc                   	int3
85668a:	cc                   	int3
85668b:	cc                   	int3
85668c:	cc                   	int3
85668d:	cc                   	int3
85668e:	cc                   	int3
85668f:	cc                   	int3
856690:	55                   	push   %ebp
856691:	8b ec                	mov    %esp,%ebp
856693:	56                   	push   %esi
856694:	8b f1                	mov    %ecx,%esi
856696:	c7 06 14 e6 c3 00    	movl   $0xc3e614,(%esi)
85669c:	e8 bb f6 bb ff       	call   0x415d5c
8566a1:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
8566a5:	74 1b                	je     0x8566c2
8566a7:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
8566ab:	75 08                	jne    0x8566b5
8566ad:	56                   	push   %esi
8566ae:	e8 dc b0 ba ff       	call   0x40178f
8566b3:	eb 0c                	jmp    0x8566c1
8566b5:	68 b0 00 00 00       	push   $0xb0
8566ba:	56                   	push   %esi
8566bb:	e8 1a 91 bc ff       	call   0x41f7da
8566c0:	59                   	pop    %ecx
8566c1:	59                   	pop    %ecx
8566c2:	8b c6                	mov    %esi,%eax
8566c4:	5e                   	pop    %esi
8566c5:	5d                   	pop    %ebp
8566c6:	c2 04 00             	ret    $0x4
8566c9:	cc                   	int3
8566ca:	cc                   	int3
8566cb:	cc                   	int3
8566cc:	cc                   	int3
8566cd:	cc                   	int3
8566ce:	cc                   	int3
8566cf:	cc                   	int3
8566d0:	cc                   	int3
8566d1:	cc                   	int3
8566d2:	cc                   	int3
8566d3:	cc                   	int3
8566d4:	cc                   	int3
8566d5:	cc                   	int3
8566d6:	cc                   	int3
8566d7:	55                   	push   %ebp
8566d8:	8b ec                	mov    %esp,%ebp
8566da:	51                   	push   %ecx
8566db:	53                   	push   %ebx
8566dc:	56                   	push   %esi
8566dd:	57                   	push   %edi
8566de:	8b 7d 08             	mov    0x8(%ebp),%edi
8566e1:	8b d9                	mov    %ecx,%ebx
8566e3:	85 ff                	test   %edi,%edi
8566e5:	75 63                	jne    0x85674a
8566e7:	8b 3d e4 c6 d7 00    	mov    0xd7c6e4,%edi
8566ed:	85 ff                	test   %edi,%edi
8566ef:	74 50                	je     0x856741
8566f1:	8b 47 04             	mov    0x4(%edi),%eax
8566f4:	89 45 fc             	mov    %eax,-0x4(%ebp)
8566f7:	85 c0                	test   %eax,%eax
8566f9:	74 29                	je     0x856724
8566fb:	8d 45 fc             	lea    -0x4(%ebp),%eax
8566fe:	8b cf                	mov    %edi,%ecx
856700:	50                   	push   %eax
856701:	e8 f6 83 bb ff       	call   0x40eafc
856706:	8b 0b                	mov    (%ebx),%ecx
856708:	ff 30                	push   (%eax)
85670a:	8b 71 0c             	mov    0xc(%ecx),%esi
85670d:	8b ce                	mov    %esi,%ecx
85670f:	e8 51 5f bd ff       	call   0x42c665
856714:	8b cb                	mov    %ebx,%ecx
856716:	ff d6                	call   *%esi
856718:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
85671c:	8b 3d e4 c6 d7 00    	mov    0xd7c6e4,%edi
856722:	75 d7                	jne    0x8566fb
856724:	85 ff                	test   %edi,%edi
856726:	74 12                	je     0x85673a
856728:	8b 07                	mov    (%edi),%eax
85672a:	6a 01                	push   $0x1
85672c:	8b 70 04             	mov    0x4(%eax),%esi
85672f:	8b ce                	mov    %esi,%ecx
856731:	e8 2f 5f bd ff       	call   0x42c665
856736:	8b cf                	mov    %edi,%ecx
856738:	ff d6                	call   *%esi
85673a:	83 25 e4 c6 d7 00 00 	andl   $0x0,0xd7c6e4
856741:	83 25 04 e7 d5 00 00 	andl   $0x0,0xd5e704
856748:	eb 19                	jmp    0x856763
85674a:	8b 07                	mov    (%edi),%eax
85674c:	8b 70 50             	mov    0x50(%eax),%esi
85674f:	8b ce                	mov    %esi,%ecx
856751:	e8 0f 5f bd ff       	call   0x42c665
856756:	8b cf                	mov    %edi,%ecx
856758:	ff d6                	call   *%esi
85675a:	57                   	push   %edi
85675b:	8d 4b 04             	lea    0x4(%ebx),%ecx
85675e:	e8 77 89 be ff       	call   0x43f0da
856763:	5f                   	pop    %edi
856764:	5e                   	pop    %esi
856765:	5b                   	pop    %ebx
856766:	8b e5                	mov    %ebp,%esp
856768:	5d                   	pop    %ebp
856769:	c2 04 00             	ret    $0x4
85676c:	cc                   	int3
85676d:	cc                   	int3
85676e:	cc                   	int3
85676f:	cc                   	int3
856770:	cc                   	int3
856771:	cc                   	int3
856772:	cc                   	int3
856773:	cc                   	int3
856774:	cc                   	int3
856775:	cc                   	int3
856776:	cc                   	int3
856777:	cc                   	int3
856778:	cc                   	int3
856779:	cc                   	int3
85677a:	cc                   	int3
85677b:	cc                   	int3
85677c:	cc                   	int3
85677d:	cc                   	int3
85677e:	cc                   	int3
85677f:	cc                   	int3
856780:	cc                   	int3
856781:	cc                   	int3
856782:	cc                   	int3
856783:	cc                   	int3
856784:	cc                   	int3
856785:	cc                   	int3
856786:	cc                   	int3
856787:	cc                   	int3
856788:	cc                   	int3
856789:	cc                   	int3
85678a:	cc                   	int3
85678b:	cc                   	int3
85678c:	cc                   	int3
85678d:	cc                   	int3
85678e:	cc                   	int3
85678f:	cc                   	int3
856790:	cc                   	int3
856791:	55                   	push   %ebp
856792:	8b ec                	mov    %esp,%ebp
856794:	51                   	push   %ecx
856795:	8b 41 08             	mov    0x8(%ecx),%eax
856798:	89 45 fc             	mov    %eax,-0x4(%ebp)
85679b:	85 c0                	test   %eax,%eax
85679d:	74 2f                	je     0x8567ce
85679f:	53                   	push   %ebx
8567a0:	56                   	push   %esi
8567a1:	57                   	push   %edi
8567a2:	8d 59 04             	lea    0x4(%ecx),%ebx
8567a5:	8d 45 fc             	lea    -0x4(%ebp),%eax
8567a8:	8b cb                	mov    %ebx,%ecx
8567aa:	50                   	push   %eax
8567ab:	e8 4c 83 bb ff       	call   0x40eafc
8567b0:	ff 75 08             	push   0x8(%ebp)
8567b3:	8b 38                	mov    (%eax),%edi
8567b5:	8b 07                	mov    (%edi),%eax
8567b7:	8b 70 7c             	mov    0x7c(%eax),%esi
8567ba:	8b ce                	mov    %esi,%ecx
8567bc:	e8 a4 5e bd ff       	call   0x42c665
8567c1:	8b cf                	mov    %edi,%ecx
8567c3:	ff d6                	call   *%esi
8567c5:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
8567c9:	75 da                	jne    0x8567a5
8567cb:	5f                   	pop    %edi
8567cc:	5e                   	pop    %esi
8567cd:	5b                   	pop    %ebx
8567ce:	8b e5                	mov    %ebp,%esp
8567d0:	5d                   	pop    %ebp
8567d1:	c2 04 00             	ret    $0x4
8567d4:	cc                   	int3
8567d5:	cc                   	int3
8567d6:	cc                   	int3
8567d7:	cc                   	int3
8567d8:	cc                   	int3
8567d9:	cc                   	int3
8567da:	cc                   	int3
8567db:	cc                   	int3
8567dc:	cc                   	int3
8567dd:	cc                   	int3
8567de:	cc                   	int3
8567df:	cc                   	int3
8567e0:	cc                   	int3
8567e1:	cc                   	int3
8567e2:	cc                   	int3
8567e3:	cc                   	int3
8567e4:	68 04 05 00 00       	push   $0x504
8567e9:	b8 8a bf b9 00       	mov    $0xb9bf8a,%eax
8567ee:	e8 72 b8 bd ff       	call   0x432065
8567f3:	8b f9                	mov    %ecx,%edi
8567f5:	8b 45 08             	mov    0x8(%ebp),%eax
8567f8:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
8567fe:	8b 75 18             	mov    0x18(%ebp),%esi
856801:	33 db                	xor    %ebx,%ebx
856803:	6a 01                	push   $0x1
856805:	53                   	push   %ebx
856806:	53                   	push   %ebx
856807:	53                   	push   %ebx
856808:	6a 06                	push   $0x6
85680a:	53                   	push   %ebx
85680b:	89 85 f0 fa ff ff    	mov    %eax,-0x510(%ebp)
856811:	8b 45 14             	mov    0x14(%ebp),%eax
856814:	53                   	push   %ebx
856815:	50                   	push   %eax
856816:	e8 85 10 bc ff       	call   0x4178a0
85681b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
85681e:	e8 f2 fd bd ff       	call   0x436615
856823:	50                   	push   %eax
856824:	8d 8d f4 fa ff ff    	lea    -0x50c(%ebp),%ecx
85682a:	e8 e5 33 bb ff       	call   0x409c14
85682f:	ff 75 0c             	push   0xc(%ebp)
856832:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
856836:	e8 40 40 bb ff       	call   0x40a87b
85683b:	85 c0                	test   %eax,%eax
85683d:	0f 84 fd 01 00 00    	je     0x856a40
856843:	ff 75 0c             	push   0xc(%ebp)
856846:	8d 8d f4 fa ff ff    	lea    -0x50c(%ebp),%ecx
85684c:	50                   	push   %eax
85684d:	e8 7a d6 ba ff       	call   0x403ecc
856852:	85 c0                	test   %eax,%eax
856854:	0f 84 e6 01 00 00    	je     0x856a40
85685a:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
856860:	e8 2a 13 bb ff       	call   0x407b8f
856865:	8d 48 34             	lea    0x34(%eax),%ecx
856868:	8b 45 10             	mov    0x10(%ebp),%eax
85686b:	09 01                	or     %eax,(%ecx)
85686d:	e8 a3 fd bd ff       	call   0x436615
856872:	50                   	push   %eax
856873:	8d 8d 04 fb ff ff    	lea    -0x4fc(%ebp),%ecx
856879:	e8 96 33 bb ff       	call   0x409c14
85687e:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
856882:	e8 8e fd bd ff       	call   0x436615
856887:	50                   	push   %eax
856888:	8d 8d fc fa ff ff    	lea    -0x504(%ebp),%ecx
85688e:	e8 81 33 bb ff       	call   0x409c14
856893:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
856897:	85 f6                	test   %esi,%esi
856899:	74 22                	je     0x8568bd
85689b:	8d 85 fc fa ff ff    	lea    -0x504(%ebp),%eax
8568a1:	50                   	push   %eax
8568a2:	56                   	push   %esi
8568a3:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
8568a9:	e8 e1 12 bb ff       	call   0x407b8f
8568ae:	50                   	push   %eax
8568af:	8d 85 04 fb ff ff    	lea    -0x4fc(%ebp),%eax
8568b5:	50                   	push   %eax
8568b6:	e8 0d 69 bd ff       	call   0x42d1c8
8568bb:	eb 50                	jmp    0x85690d
8568bd:	8b 47 08             	mov    0x8(%edi),%eax
8568c0:	33 f6                	xor    %esi,%esi
8568c2:	46                   	inc    %esi
8568c3:	89 85 00 fb ff ff    	mov    %eax,-0x500(%ebp)
8568c9:	85 c0                	test   %eax,%eax
8568cb:	74 40                	je     0x85690d
8568cd:	8d 85 00 fb ff ff    	lea    -0x500(%ebp),%eax
8568d3:	50                   	push   %eax
8568d4:	8d 4f 04             	lea    0x4(%edi),%ecx
8568d7:	e8 20 82 bb ff       	call   0x40eafc
8568dc:	f7 de                	neg    %esi
8568de:	8d 8d fc fa ff ff    	lea    -0x504(%ebp),%ecx
8568e4:	1b f6                	sbb    %esi,%esi
8568e6:	23 f1                	and    %ecx,%esi
8568e8:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
8568ee:	56                   	push   %esi
8568ef:	ff 30                	push   (%eax)
8568f1:	e8 99 12 bb ff       	call   0x407b8f
8568f6:	50                   	push   %eax
8568f7:	8d 85 04 fb ff ff    	lea    -0x4fc(%ebp),%eax
8568fd:	50                   	push   %eax
8568fe:	e8 c5 68 bd ff       	call   0x42d1c8
856903:	8b f3                	mov    %ebx,%esi
856905:	39 b5 00 fb ff ff    	cmp    %esi,-0x500(%ebp)
85690b:	75 c0                	jne    0x8568cd
85690d:	e8 03 fd bd ff       	call   0x436615
856912:	50                   	push   %eax
856913:	8d 8d 00 fb ff ff    	lea    -0x500(%ebp),%ecx
856919:	e8 f6 32 bb ff       	call   0x409c14
85691e:	be 02 f0 00 00       	mov    $0xf002,%esi
856923:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
856927:	56                   	push   %esi
856928:	e8 4e 3f bb ff       	call   0x40a87b
85692d:	85 c0                	test   %eax,%eax
85692f:	74 0d                	je     0x85693e
856931:	56                   	push   %esi
856932:	50                   	push   %eax
856933:	8d 8d 00 fb ff ff    	lea    -0x500(%ebp),%ecx
856939:	e8 8e d5 ba ff       	call   0x403ecc
85693e:	8b 9d 00 fb ff ff    	mov    -0x500(%ebp),%ebx
856944:	8d 8d 04 fb ff ff    	lea    -0x4fc(%ebp),%ecx
85694a:	ff 73 f4             	push   -0xc(%ebx)
85694d:	53                   	push   %ebx
85694e:	e8 1b ec bb ff       	call   0x41556e
856953:	6a 00                	push   $0x0
856955:	8d 8d 04 fb ff ff    	lea    -0x4fc(%ebp),%ecx
85695b:	e8 25 ca bc ff       	call   0x423385
856960:	68 38 e8 c3 00       	push   $0xc3e838
856965:	8d 8d 04 fb ff ff    	lea    -0x4fc(%ebp),%ecx
85696b:	e8 1c eb bc ff       	call   0x42548c
856970:	6a 00                	push   $0x0
856972:	8d 8d 04 fb ff ff    	lea    -0x4fc(%ebp),%ecx
856978:	e8 08 ca bc ff       	call   0x423385
85697d:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
856983:	e8 07 12 bb ff       	call   0x407b8f
856988:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
85698e:	ff 40 14             	incl   0x14(%eax)
856991:	e8 f9 11 bb ff       	call   0x407b8f
856996:	8b bd 04 fb ff ff    	mov    -0x4fc(%ebp),%edi
85699c:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
8569a2:	89 78 0c             	mov    %edi,0xc(%eax)
8569a5:	e8 e5 11 bb ff       	call   0x407b8f
8569aa:	8b b5 f4 fa ff ff    	mov    -0x50c(%ebp),%esi
8569b0:	8b 8d f0 fa ff ff    	mov    -0x510(%ebp),%ecx
8569b6:	68 04 01 00 00       	push   $0x104
8569bb:	89 70 30             	mov    %esi,0x30(%eax)
8569be:	e8 cf 7b bc ff       	call   0x41e592
8569c3:	8d 8d 08 fb ff ff    	lea    -0x4f8(%ebp),%ecx
8569c9:	89 85 f8 fa ff ff    	mov    %eax,-0x508(%ebp)