402501:	8b 7d 08             	mov    0x8(%ebp),%edi
402504:	0f 57 c0             	xorps  %xmm0,%xmm0
402507:	0f 11 06             	movups %xmm0,(%esi)
40250a:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
402511:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
402518:	57                   	push   %edi
402519:	e8 59 49 00 00       	call   0x406e77
40251e:	83 c4 04             	add    $0x4,%esp
402521:	89 f1                	mov    %esi,%ecx
402523:	50                   	push   %eax
402524:	57                   	push   %edi
402525:	e8 86 0a 00 00       	call   0x402fb0
40252a:	c6 46 18 01          	movb   $0x1,0x18(%esi)
40252e:	8b 45 e8             	mov    -0x18(%ebp),%eax
402531:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
402537:	89 f0                	mov    %esi,%eax
402539:	83 c4 10             	add    $0x10,%esp
40253c:	5e                   	pop    %esi
40253d:	5f                   	pop    %edi
40253e:	5b                   	pop    %ebx
40253f:	5d                   	pop    %ebp
402540:	c2 04 00             	ret    $0x4
402543:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
40254a:	e8 8a 4f 00 00       	call   0x4074d9
40254f:	90                   	nop
402550:	55                   	push   %ebp
402551:	83 ec 08             	sub    $0x8,%esp
402554:	83 c5 0c             	add    $0xc,%ebp
402557:	e8 0d 25 00 00       	call   0x404a69
40255c:	cc                   	int3
40255d:	cc                   	int3
40255e:	cc                   	int3
40255f:	cc                   	int3
402560:	55                   	push   %ebp
402561:	89 e5                	mov    %esp,%ebp
402563:	53                   	push   %ebx
402564:	57                   	push   %edi
402565:	56                   	push   %esi
402566:	83 ec 10             	sub    $0x10,%esp
402569:	89 ce                	mov    %ecx,%esi
40256b:	89 65 e4             	mov    %esp,-0x1c(%ebp)
40256e:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
402575:	8d 45 e8             	lea    -0x18(%ebp),%eax
402578:	c7 45 ec d0 34 40 00 	movl   $0x4034d0,-0x14(%ebp)
40257f:	64 8b 0d 00 00 00 00 	mov    %fs:0x0,%ecx
402586:	89 4d e8             	mov    %ecx,-0x18(%ebp)
402589:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40258f:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
402593:	74 4b                	je     0x4025e0
402595:	8b 46 14             	mov    0x14(%esi),%eax
402598:	83 f8 08             	cmp    $0x8,%eax
40259b:	72 30                	jb     0x4025cd
40259d:	8b 0e                	mov    (%esi),%ecx
40259f:	8d 3c 00             	lea    (%eax,%eax,1),%edi
4025a2:	83 c7 02             	add    $0x2,%edi
4025a5:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
4025ab:	72 16                	jb     0x4025c3
4025ad:	8b 51 fc             	mov    -0x4(%ecx),%edx
4025b0:	83 c1 fc             	add    $0xfffffffc,%ecx
4025b3:	29 d1                	sub    %edx,%ecx
4025b5:	83 f9 20             	cmp    $0x20,%ecx
4025b8:	73 37                	jae    0x4025f1
4025ba:	01 c0                	add    %eax,%eax
4025bc:	83 c0 25             	add    $0x25,%eax
4025bf:	89 c7                	mov    %eax,%edi
4025c1:	89 d1                	mov    %edx,%ecx
4025c3:	57                   	push   %edi
4025c4:	51                   	push   %ecx
4025c5:	e8 21 10 00 00       	call   0x4035eb
4025ca:	83 c4 08             	add    $0x8,%esp
4025cd:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4025d4:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
4025db:	66 c7 06 00 00       	movw   $0x0,(%esi)
4025e0:	8b 45 e8             	mov    -0x18(%ebp),%eax
4025e3:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4025e9:	83 c4 10             	add    $0x10,%esp
4025ec:	5e                   	pop    %esi
4025ed:	5f                   	pop    %edi
4025ee:	5b                   	pop    %ebx
4025ef:	5d                   	pop    %ebp
4025f0:	c3                   	ret
4025f1:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4025f8:	e8 dc 4e 00 00       	call   0x4074d9
4025fd:	0f 1f 00             	nopl   (%eax)
402600:	55                   	push   %ebp
402601:	83 ec 08             	sub    $0x8,%esp
402604:	83 c5 0c             	add    $0xc,%ebp
402607:	e8 5d 24 00 00       	call   0x404a69
40260c:	cc                   	int3
40260d:	cc                   	int3
40260e:	cc                   	int3
40260f:	cc                   	int3
402610:	55                   	push   %ebp
402611:	89 e5                	mov    %esp,%ebp
402613:	53                   	push   %ebx
402614:	57                   	push   %edi
402615:	56                   	push   %esi
402616:	83 ec 10             	sub    $0x10,%esp
402619:	89 65 e4             	mov    %esp,-0x1c(%ebp)
40261c:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
402623:	8d 45 e8             	lea    -0x18(%ebp),%eax
402626:	c7 45 ec e0 34 40 00 	movl   $0x4034e0,-0x14(%ebp)
40262d:	64 8b 15 00 00 00 00 	mov    %fs:0x0,%edx
402634:	89 55 e8             	mov    %edx,-0x18(%ebp)
402637:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40263d:	8b 01                	mov    (%ecx),%eax
40263f:	85 c0                	test   %eax,%eax
402641:	74 0e                	je     0x402651
402643:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
40264a:	50                   	push   %eax
40264b:	ff 15 2c 90 41 00    	call   *0x41902c
402651:	8b 45 e8             	mov    -0x18(%ebp),%eax
402654:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40265a:	83 c4 10             	add    $0x10,%esp
40265d:	5e                   	pop    %esi
40265e:	5f                   	pop    %edi
40265f:	5b                   	pop    %ebx
402660:	5d                   	pop    %ebp
402661:	c3                   	ret
402662:	66 66 66 66 66 2e 0f 	data16 data16 data16 data16 nopw %cs:0x0(%eax,%eax,1)
402669:	1f 84 00 00 00 00 00
402670:	55                   	push   %ebp
402671:	50                   	push   %eax
402672:	83 c5 0c             	add    $0xc,%ebp
402675:	e8 ef 23 00 00       	call   0x404a69
40267a:	cc                   	int3
40267b:	cc                   	int3
40267c:	cc                   	int3
40267d:	cc                   	int3
40267e:	cc                   	int3
40267f:	cc                   	int3
402680:	55                   	push   %ebp
402681:	89 e5                	mov    %esp,%ebp
402683:	53                   	push   %ebx
402684:	57                   	push   %edi
402685:	56                   	push   %esi
402686:	83 ec 10             	sub    $0x10,%esp
402689:	89 ce                	mov    %ecx,%esi
40268b:	89 65 e4             	mov    %esp,-0x1c(%ebp)
40268e:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
402695:	8d 45 e8             	lea    -0x18(%ebp),%eax
402698:	c7 45 ec f0 34 40 00 	movl   $0x4034f0,-0x14(%ebp)
40269f:	64 8b 0d 00 00 00 00 	mov    %fs:0x0,%ecx
4026a6:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4026a9:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4026af:	8b 0e                	mov    (%esi),%ecx
4026b1:	85 c9                	test   %ecx,%ecx
4026b3:	74 3c                	je     0x4026f1
4026b5:	8b 46 08             	mov    0x8(%esi),%eax
4026b8:	29 c8                	sub    %ecx,%eax
4026ba:	3d 00 10 00 00       	cmp    $0x1000,%eax
4026bf:	72 12                	jb     0x4026d3
4026c1:	8b 51 fc             	mov    -0x4(%ecx),%edx
4026c4:	83 c1 fc             	add    $0xfffffffc,%ecx
4026c7:	29 d1                	sub    %edx,%ecx
4026c9:	83 f9 20             	cmp    $0x20,%ecx
4026cc:	73 34                	jae    0x402702
4026ce:	83 c0 23             	add    $0x23,%eax
4026d1:	89 d1                	mov    %edx,%ecx
4026d3:	50                   	push   %eax
4026d4:	51                   	push   %ecx
4026d5:	e8 11 0f 00 00       	call   0x4035eb
4026da:	83 c4 08             	add    $0x8,%esp
4026dd:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4026e3:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
4026ea:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4026f1:	8b 45 e8             	mov    -0x18(%ebp),%eax
4026f4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4026fa:	83 c4 10             	add    $0x10,%esp
4026fd:	5e                   	pop    %esi
4026fe:	5f                   	pop    %edi
4026ff:	5b                   	pop    %ebx
402700:	5d                   	pop    %ebp
402701:	c3                   	ret
402702:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
402709:	e8 cb 4d 00 00       	call   0x4074d9
40270e:	66 90                	xchg   %ax,%ax
402710:	55                   	push   %ebp
402711:	83 ec 08             	sub    $0x8,%esp
402714:	83 c5 0c             	add    $0xc,%ebp
402717:	e8 4d 23 00 00       	call   0x404a69
40271c:	cc                   	int3
40271d:	cc                   	int3
40271e:	cc                   	int3
40271f:	cc                   	int3
402720:	55                   	push   %ebp
402721:	89 e5                	mov    %esp,%ebp
402723:	53                   	push   %ebx
402724:	57                   	push   %edi
402725:	56                   	push   %esi
402726:	83 ec 10             	sub    $0x10,%esp
402729:	89 ce                	mov    %ecx,%esi
40272b:	89 65 e4             	mov    %esp,-0x1c(%ebp)
40272e:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
402735:	8d 45 e8             	lea    -0x18(%ebp),%eax
402738:	c7 45 ec 00 35 40 00 	movl   $0x403500,-0x14(%ebp)
40273f:	64 8b 0d 00 00 00 00 	mov    %fs:0x0,%ecx
402746:	89 4d e8             	mov    %ecx,-0x18(%ebp)
402749:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40274f:	80 7e 34 00          	cmpb   $0x0,0x34(%esi)
402753:	74 51                	je     0x4027a6
402755:	8b 46 30             	mov    0x30(%esi),%eax
402758:	83 f8 08             	cmp    $0x8,%eax
40275b:	72 35                	jb     0x402792
40275d:	8b 4e 1c             	mov    0x1c(%esi),%ecx
402760:	8d 3c 00             	lea    (%eax,%eax,1),%edi
402763:	83 c7 02             	add    $0x2,%edi
402766:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
40276c:	72 1a                	jb     0x402788
40276e:	8b 51 fc             	mov    -0x4(%ecx),%edx
402771:	83 c1 fc             	add    $0xfffffffc,%ecx
402774:	29 d1                	sub    %edx,%ecx
402776:	83 f9 20             	cmp    $0x20,%ecx
402779:	0f 83 89 00 00 00    	jae    0x402808
40277f:	01 c0                	add    %eax,%eax
402781:	83 c0 25             	add    $0x25,%eax
402784:	89 c7                	mov    %eax,%edi
402786:	89 d1                	mov    %edx,%ecx
402788:	57                   	push   %edi
402789:	51                   	push   %ecx
40278a:	e8 5c 0e 00 00       	call   0x4035eb
40278f:	83 c4 08             	add    $0x8,%esp
402792:	c7 46 2c 00 00 00 00 	movl   $0x0,0x2c(%esi)
402799:	c7 46 30 07 00 00 00 	movl   $0x7,0x30(%esi)
4027a0:	66 c7 46 1c 00 00    	movw   $0x0,0x1c(%esi)
4027a6:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
4027aa:	74 4b                	je     0x4027f7
4027ac:	8b 46 14             	mov    0x14(%esi),%eax
4027af:	83 f8 08             	cmp    $0x8,%eax
4027b2:	72 30                	jb     0x4027e4
4027b4:	8b 0e                	mov    (%esi),%ecx
4027b6:	8d 3c 00             	lea    (%eax,%eax,1),%edi
4027b9:	83 c7 02             	add    $0x2,%edi
4027bc:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
4027c2:	72 16                	jb     0x4027da
4027c4:	8b 51 fc             	mov    -0x4(%ecx),%edx
4027c7:	83 c1 fc             	add    $0xfffffffc,%ecx
4027ca:	29 d1                	sub    %edx,%ecx
4027cc:	83 f9 20             	cmp    $0x20,%ecx
4027cf:	73 43                	jae    0x402814
4027d1:	01 c0                	add    %eax,%eax
4027d3:	83 c0 25             	add    $0x25,%eax
4027d6:	89 c7                	mov    %eax,%edi
4027d8:	89 d1                	mov    %edx,%ecx
4027da:	57                   	push   %edi
4027db:	51                   	push   %ecx
4027dc:	e8 0a 0e 00 00       	call   0x4035eb
4027e1:	83 c4 08             	add    $0x8,%esp
4027e4:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4027eb:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
4027f2:	66 c7 06 00 00       	movw   $0x0,(%esi)
4027f7:	8b 45 e8             	mov    -0x18(%ebp),%eax
4027fa:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
402800:	83 c4 10             	add    $0x10,%esp
402803:	5e                   	pop    %esi
402804:	5f                   	pop    %edi
402805:	5b                   	pop    %ebx
402806:	5d                   	pop    %ebp
402807:	c3                   	ret
402808:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
40280f:	e8 c5 4c 00 00       	call   0x4074d9
402814:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
40281b:	e8 b9 4c 00 00       	call   0x4074d9
402820:	55                   	push   %ebp
402821:	83 ec 08             	sub    $0x8,%esp
402824:	83 c5 0c             	add    $0xc,%ebp
402827:	e8 3d 22 00 00       	call   0x404a69
40282c:	0f 1f 40 00          	nopl   0x0(%eax)
402830:	55                   	push   %ebp
402831:	83 ec 08             	sub    $0x8,%esp
402834:	83 c5 0c             	add    $0xc,%ebp
402837:	e8 2d 22 00 00       	call   0x404a69
40283c:	cc                   	int3
40283d:	cc                   	int3
40283e:	cc                   	int3
40283f:	cc                   	int3
402840:	55                   	push   %ebp
402841:	89 e5                	mov    %esp,%ebp
402843:	53                   	push   %ebx
402844:	57                   	push   %edi
402845:	56                   	push   %esi
402846:	83 ec 14             	sub    $0x14,%esp
402849:	89 65 e4             	mov    %esp,-0x1c(%ebp)
40284c:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
402853:	8d 45 e8             	lea    -0x18(%ebp),%eax
402856:	c7 45 ec 10 35 40 00 	movl   $0x403510,-0x14(%ebp)
40285d:	64 8b 15 00 00 00 00 	mov    %fs:0x0,%edx
402864:	89 55 e8             	mov    %edx,-0x18(%ebp)
402867:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40286d:	8b 41 04             	mov    0x4(%ecx),%eax
402870:	85 c0                	test   %eax,%eax
402872:	74 14                	je     0x402888
402874:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
40287b:	50                   	push   %eax
40287c:	89 4d e0             	mov    %ecx,-0x20(%ebp)
40287f:	ff 15 2c 90 41 00    	call   *0x41902c
402885:	8b 4d e0             	mov    -0x20(%ebp),%ecx
402888:	8b 01                	mov    (%ecx),%eax
40288a:	85 c0                	test   %eax,%eax
40288c:	74 0e                	je     0x40289c
40288e:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
402895:	50                   	push   %eax
402896:	ff 15 2c 90 41 00    	call   *0x41902c
40289c:	8b 45 e8             	mov    -0x18(%ebp),%eax
40289f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4028a5:	83 c4 14             	add    $0x14,%esp
4028a8:	5e                   	pop    %esi
4028a9:	5f                   	pop    %edi
4028aa:	5b                   	pop    %ebx
4028ab:	5d                   	pop    %ebp
4028ac:	c3                   	ret
4028ad:	0f 1f 00             	nopl   (%eax)
4028b0:	55                   	push   %ebp
4028b1:	50                   	push   %eax
4028b2:	83 c5 0c             	add    $0xc,%ebp
4028b5:	e8 af 21 00 00       	call   0x404a69
4028ba:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4028c0:	55                   	push   %ebp
4028c1:	50                   	push   %eax
4028c2:	83 c5 0c             	add    $0xc,%ebp
4028c5:	e8 9f 21 00 00       	call   0x404a69
4028ca:	cc                   	int3
4028cb:	cc                   	int3
4028cc:	cc                   	int3
4028cd:	cc                   	int3
4028ce:	cc                   	int3
4028cf:	cc                   	int3
4028d0:	55                   	push   %ebp
4028d1:	89 e5                	mov    %esp,%ebp
4028d3:	53                   	push   %ebx
4028d4:	57                   	push   %edi
4028d5:	56                   	push   %esi
4028d6:	83 ec 14             	sub    $0x14,%esp
4028d9:	8b 45 08             	mov    0x8(%ebp),%eax
4028dc:	89 65 e4             	mov    %esp,-0x1c(%ebp)
4028df:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
4028e6:	8d 75 e8             	lea    -0x18(%ebp),%esi
4028e9:	c7 45 ec 20 35 40 00 	movl   $0x403520,-0x14(%ebp)
4028f0:	64 8b 15 00 00 00 00 	mov    %fs:0x0,%edx
4028f7:	89 55 e8             	mov    %edx,-0x18(%ebp)
4028fa:	64 89 35 00 00 00 00 	mov    %esi,%fs:0x0
402901:	c6 41 18 00          	movb   $0x0,0x18(%ecx)
402905:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
402909:	74 37                	je     0x402942
40290b:	0f 57 c0             	xorps  %xmm0,%xmm0
40290e:	0f 11 01             	movups %xmm0,(%ecx)
402911:	c7 41 14 00 00 00 00 	movl   $0x0,0x14(%ecx)
402918:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%ecx)
40291f:	8b 50 10             	mov    0x10(%eax),%edx
402922:	83 78 14 08          	cmpl   $0x8,0x14(%eax)