4384e7:	84 43 00             	test   %al,0x0(%ebx)
4384ea:	0b 84 43 00 66 84 43 	or     0x43846600(%ebx,%eax,2),%eax
4384f1:	00 00                	add    %al,(%eax)
4384f3:	01 02                	add    %eax,(%edx)
4384f5:	03 16                	add    (%esi),%edx
4384f7:	16                   	push   %ss
4384f8:	16                   	push   %ss
4384f9:	04 05                	add    $0x5,%al
4384fb:	16                   	push   %ss
4384fc:	16                   	push   %ss
4384fd:	16                   	push   %ss
4384fe:	06                   	push   %es
4384ff:	16                   	push   %ss
438500:	16                   	push   %ss
438501:	16                   	push   %ss
438502:	16                   	push   %ss
438503:	07                   	pop    %es
438504:	08 09                	or     %cl,(%ecx)
438506:	0a 16                	or     (%esi),%dl
438508:	0a 09                	or     (%ecx),%cl
43850a:	0b 16                	or     (%esi),%edx
43850c:	16                   	push   %ss
43850d:	16                   	push   %ss
43850e:	16                   	push   %ss
43850f:	16                   	push   %ss
438510:	16                   	push   %ss
438511:	16                   	push   %ss
438512:	00 01                	add    %al,(%ecx)
438514:	0c 0d                	or     $0xd,%al
438516:	0d 16 16 01 16       	or     $0x16011616,%eax
43851b:	0e                   	push   %cs
43851c:	16                   	push   %ss
43851d:	16                   	push   %ss
43851e:	0f 10 16             	movups (%esi),%xmm2
438521:	11 16                	adc    %edx,(%esi)
438523:	12 16                	adc    (%esi),%dl
438525:	10 16                	adc    %dl,(%esi)
438527:	16                   	push   %ss
438528:	13 14 15 6a 1c b8 8e 	adc    -0x7147e396(,%edx,1),%edx
43852f:	25 49 00 e8 13       	and    $0x13e80049,%eax
438534:	75 00                	jne    0x438536
438536:	00 8b f1 89 75 f0    	add    %cl,-0xf8a760f(%ebx)
43853c:	8b 45 1c             	mov    0x1c(%ebp),%eax
43853f:	8d 4d e8             	lea    -0x18(%ebp),%ecx
438542:	ff 70 30             	push   0x30(%eax)
438545:	e8 f2 08 ff ff       	call   0x428e3c
43854a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43854e:	8d 45 e8             	lea    -0x18(%ebp),%eax
438551:	50                   	push   %eax
438552:	e8 a6 65 ff ff       	call   0x42eafd
438557:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43855b:	8b d8                	mov    %eax,%ebx
43855d:	59                   	pop    %ecx
43855e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
438561:	e8 81 6e fd ff       	call   0x40f3e7
438566:	8b ce                	mov    %esi,%ecx
438568:	e8 a5 ea ff ff       	call   0x437012
43856d:	8b f0                	mov    %eax,%esi
43856f:	89 75 ec             	mov    %esi,-0x14(%ebp)
438572:	85 f6                	test   %esi,%esi
438574:	75 07                	jne    0x43857d
438576:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
43857d:	8d 45 14             	lea    0x14(%ebp),%eax
438580:	50                   	push   %eax
438581:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438584:	e8 b7 28 00 00       	call   0x43ae40
438589:	8b 7d 20             	mov    0x20(%ebp),%edi
43858c:	84 c0                	test   %al,%al
43858e:	0f 85 09 01 00 00    	jne    0x43869d
438594:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
438598:	75 08                	jne    0x4385a2
43859a:	8d 4d 0c             	lea    0xc(%ebp),%ecx
43859d:	e8 75 d9 ff ff       	call   0x435f17
4385a2:	8b 03                	mov    (%ebx),%eax
4385a4:	ff 75 12             	push   0x12(%ebp)
4385a7:	6a 04                	push   $0x4
4385a9:	8b 70 10             	mov    0x10(%eax),%esi
4385ac:	8b ce                	mov    %esi,%ecx
4385ae:	ff 15 54 43 49 00    	call   *0x494354
4385b4:	8b cb                	mov    %ebx,%ecx
4385b6:	ff d6                	call   *%esi
4385b8:	84 c0                	test   %al,%al
4385ba:	75 30                	jne    0x4385ec
4385bc:	8b 45 24             	mov    0x24(%ebp),%eax
4385bf:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4385c2:	50                   	push   %eax
4385c3:	57                   	push   %edi
4385c4:	ff 75 1c             	push   0x1c(%ebp)
4385c7:	8d 45 e8             	lea    -0x18(%ebp),%eax
4385ca:	ff 75 18             	push   0x18(%ebp)
4385cd:	ff 75 14             	push   0x14(%ebp)
4385d0:	ff 75 10             	push   0x10(%ebp)
4385d3:	ff 75 0c             	push   0xc(%ebp)
4385d6:	50                   	push   %eax
4385d7:	e8 3b 29 00 00       	call   0x43af17
4385dc:	6a 02                	push   $0x2
4385de:	5e                   	pop    %esi
4385df:	8b 08                	mov    (%eax),%ecx
4385e1:	89 4d 0c             	mov    %ecx,0xc(%ebp)
4385e4:	8b 40 04             	mov    0x4(%eax),%eax
4385e7:	89 75 ec             	mov    %esi,-0x14(%ebp)
4385ea:	eb 7c                	jmp    0x438668
4385ec:	8b 75 ec             	mov    -0x14(%ebp),%esi
4385ef:	83 fe 02             	cmp    $0x2,%esi
4385f2:	75 28                	jne    0x43861c
4385f4:	8b 75 24             	mov    0x24(%ebp),%esi
4385f7:	8d 45 14             	lea    0x14(%ebp),%eax
4385fa:	53                   	push   %ebx
4385fb:	83 c6 10             	add    $0x10,%esi
4385fe:	56                   	push   %esi
4385ff:	6a 0c                	push   $0xc
438601:	6a 01                	push   $0x1
438603:	50                   	push   %eax
438604:	8d 45 0c             	lea    0xc(%ebp),%eax
438607:	50                   	push   %eax
438608:	ff 75 f0             	push   -0x10(%ebp)
43860b:	e8 e2 aa ff ff       	call   0x4330f2
438610:	09 07                	or     %eax,(%edi)
438612:	83 c4 1c             	add    $0x1c,%esp
438615:	ff 0e                	decl   (%esi)
438617:	e9 81 00 00 00       	jmp    0x43869d
43861c:	8b 45 24             	mov    0x24(%ebp),%eax
43861f:	83 fe 01             	cmp    $0x1,%esi
438622:	75 1f                	jne    0x438643
438624:	53                   	push   %ebx
438625:	83 c0 0c             	add    $0xc,%eax
438628:	50                   	push   %eax
438629:	6a 1f                	push   $0x1f
43862b:	56                   	push   %esi
43862c:	8d 45 14             	lea    0x14(%ebp),%eax
43862f:	50                   	push   %eax
438630:	8d 45 0c             	lea    0xc(%ebp),%eax
438633:	50                   	push   %eax
438634:	ff 75 f0             	push   -0x10(%ebp)
438637:	e8 b6 aa ff ff       	call   0x4330f2
43863c:	83 c4 1c             	add    $0x1c,%esp
43863f:	09 07                	or     %eax,(%edi)
438641:	eb 5a                	jmp    0x43869d
438643:	8b 4d f0             	mov    -0x10(%ebp),%ecx
438646:	50                   	push   %eax
438647:	57                   	push   %edi
438648:	ff 75 1c             	push   0x1c(%ebp)
43864b:	8d 45 e0             	lea    -0x20(%ebp),%eax
43864e:	ff 75 18             	push   0x18(%ebp)
438651:	ff 75 14             	push   0x14(%ebp)
438654:	ff 75 10             	push   0x10(%ebp)
438657:	ff 75 0c             	push   0xc(%ebp)
43865a:	50                   	push   %eax
43865b:	e8 97 29 00 00       	call   0x43aff7
438660:	8b 08                	mov    (%eax),%ecx
438662:	89 4d 0c             	mov    %ecx,0xc(%ebp)
438665:	8b 40 04             	mov    0x4(%eax),%eax
438668:	89 45 10             	mov    %eax,0x10(%ebp)
43866b:	eb 30                	jmp    0x43869d
43866d:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
438671:	75 08                	jne    0x43867b
438673:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438676:	e8 9c d8 ff ff       	call   0x435f17
43867b:	8b 03                	mov    (%ebx),%eax
43867d:	ff 75 12             	push   0x12(%ebp)
438680:	6a 48                	push   $0x48
438682:	8b 70 10             	mov    0x10(%eax),%esi
438685:	8b ce                	mov    %esi,%ecx
438687:	ff 15 54 43 49 00    	call   *0x494354
43868d:	8b cb                	mov    %ebx,%ecx
43868f:	ff d6                	call   *%esi
438691:	84 c0                	test   %al,%al
438693:	74 18                	je     0x4386ad
438695:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438698:	e8 a4 c3 ff ff       	call   0x434a41
43869d:	8d 45 14             	lea    0x14(%ebp),%eax
4386a0:	50                   	push   %eax
4386a1:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4386a4:	e8 97 27 00 00       	call   0x43ae40
4386a9:	84 c0                	test   %al,%al
4386ab:	74 c0                	je     0x43866d
4386ad:	8d 45 14             	lea    0x14(%ebp),%eax
4386b0:	50                   	push   %eax
4386b1:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4386b4:	e8 87 27 00 00       	call   0x43ae40
4386b9:	84 c0                	test   %al,%al
4386bb:	75 61                	jne    0x43871e
4386bd:	38 45 10             	cmp    %al,0x10(%ebp)
4386c0:	75 08                	jne    0x4386ca
4386c2:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4386c5:	e8 4d d8 ff ff       	call   0x435f17
4386ca:	8b 03                	mov    (%ebx),%eax
4386cc:	6a 00                	push   $0x0
4386ce:	ff 75 12             	push   0x12(%ebp)
4386d1:	8b 70 38             	mov    0x38(%eax),%esi
4386d4:	8b ce                	mov    %esi,%ecx
4386d6:	ff 15 54 43 49 00    	call   *0x494354
4386dc:	8b cb                	mov    %ebx,%ecx
4386de:	ff d6                	call   *%esi
4386e0:	3c 3a                	cmp    $0x3a,%al
4386e2:	74 32                	je     0x438716
4386e4:	3c 2c                	cmp    $0x2c,%al
4386e6:	74 2e                	je     0x438716
4386e8:	3c 2f                	cmp    $0x2f,%al
4386ea:	75 32                	jne    0x43871e
4386ec:	eb 28                	jmp    0x438716
4386ee:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
4386f2:	75 08                	jne    0x4386fc
4386f4:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4386f7:	e8 1b d8 ff ff       	call   0x435f17
4386fc:	8b 03                	mov    (%ebx),%eax
4386fe:	ff 75 12             	push   0x12(%ebp)
438701:	6a 48                	push   $0x48
438703:	8b 70 10             	mov    0x10(%eax),%esi
438706:	8b ce                	mov    %esi,%ecx
438708:	ff 15 54 43 49 00    	call   *0x494354
43870e:	8b cb                	mov    %ebx,%ecx
438710:	ff d6                	call   *%esi
438712:	84 c0                	test   %al,%al
438714:	74 18                	je     0x43872e
438716:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438719:	e8 23 c3 ff ff       	call   0x434a41
43871e:	8d 45 14             	lea    0x14(%ebp),%eax
438721:	50                   	push   %eax
438722:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438725:	e8 16 27 00 00       	call   0x43ae40
43872a:	84 c0                	test   %al,%al
43872c:	74 c0                	je     0x4386ee
43872e:	8d 45 14             	lea    0x14(%ebp),%eax
438731:	50                   	push   %eax
438732:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438735:	e8 06 27 00 00       	call   0x43ae40
43873a:	84 c0                	test   %al,%al
43873c:	0f 85 f7 00 00 00    	jne    0x438839
438742:	38 45 10             	cmp    %al,0x10(%ebp)
438745:	75 08                	jne    0x43874f
438747:	8d 4d 0c             	lea    0xc(%ebp),%ecx
43874a:	e8 c8 d7 ff ff       	call   0x435f17
43874f:	8b 03                	mov    (%ebx),%eax
438751:	ff 75 12             	push   0x12(%ebp)
438754:	6a 04                	push   $0x4
438756:	8b 70 10             	mov    0x10(%eax),%esi
438759:	8b ce                	mov    %esi,%ecx
43875b:	ff 15 54 43 49 00    	call   *0x494354
438761:	8b cb                	mov    %ebx,%ecx
438763:	ff d6                	call   *%esi
438765:	8b 75 ec             	mov    -0x14(%ebp),%esi
438768:	84 c0                	test   %al,%al
43876a:	75 4b                	jne    0x4387b7
43876c:	83 fe 02             	cmp    $0x2,%esi
43876f:	75 07                	jne    0x438778
438771:	09 37                	or     %esi,(%edi)
438773:	e9 c1 00 00 00       	jmp    0x438839
438778:	ff 75 24             	push   0x24(%ebp)
43877b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43877e:	8d 45 e0             	lea    -0x20(%ebp),%eax
438781:	57                   	push   %edi
438782:	ff 75 1c             	push   0x1c(%ebp)
438785:	ff 75 18             	push   0x18(%ebp)
438788:	ff 75 14             	push   0x14(%ebp)
43878b:	ff 75 10             	push   0x10(%ebp)
43878e:	ff 75 0c             	push   0xc(%ebp)
438791:	50                   	push   %eax
438792:	e8 80 27 00 00       	call   0x43af17
438797:	8b 08                	mov    (%eax),%ecx
438799:	89 4d 0c             	mov    %ecx,0xc(%ebp)
43879c:	8b 40 04             	mov    0x4(%eax),%eax
43879f:	89 45 10             	mov    %eax,0x10(%ebp)
4387a2:	83 fe 04             	cmp    $0x4,%esi
4387a5:	0f 85 8e 00 00 00    	jne    0x438839
4387ab:	c7 45 ec 03 00 00 00 	movl   $0x3,-0x14(%ebp)
4387b2:	e9 82 00 00 00       	jmp    0x438839
4387b7:	83 fe 01             	cmp    $0x1,%esi
4387ba:	74 28                	je     0x4387e4
4387bc:	83 fe 03             	cmp    $0x3,%esi
4387bf:	74 23                	je     0x4387e4
4387c1:	8b 45 24             	mov    0x24(%ebp),%eax
4387c4:	53                   	push   %ebx
4387c5:	83 c0 0c             	add    $0xc,%eax
4387c8:	50                   	push   %eax
4387c9:	6a 1f                	push   $0x1f
4387cb:	6a 01                	push   $0x1
4387cd:	8d 45 14             	lea    0x14(%ebp),%eax
4387d0:	50                   	push   %eax
4387d1:	8d 45 0c             	lea    0xc(%ebp),%eax
4387d4:	50                   	push   %eax
4387d5:	ff 75 f0             	push   -0x10(%ebp)
4387d8:	e8 15 a9 ff ff       	call   0x4330f2
4387dd:	83 c4 1c             	add    $0x1c,%esp
4387e0:	09 07                	or     %eax,(%edi)
4387e2:	eb 55                	jmp    0x438839
4387e4:	8b 75 24             	mov    0x24(%ebp),%esi
4387e7:	8d 45 14             	lea    0x14(%ebp),%eax
4387ea:	53                   	push   %ebx
4387eb:	83 c6 10             	add    $0x10,%esi
4387ee:	56                   	push   %esi
4387ef:	6a 0c                	push   $0xc
4387f1:	6a 01                	push   $0x1
4387f3:	50                   	push   %eax
4387f4:	8d 45 0c             	lea    0xc(%ebp),%eax
4387f7:	50                   	push   %eax
4387f8:	ff 75 f0             	push   -0x10(%ebp)
4387fb:	e8 f2 a8 ff ff       	call   0x4330f2
438800:	09 07                	or     %eax,(%edi)
438802:	83 c4 1c             	add    $0x1c,%esp
438805:	ff 0e                	decl   (%esi)
438807:	eb 30                	jmp    0x438839
438809:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
43880d:	75 08                	jne    0x438817
43880f:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438812:	e8 00 d7 ff ff       	call   0x435f17
438817:	8b 03                	mov    (%ebx),%eax
438819:	ff 75 12             	push   0x12(%ebp)
43881c:	6a 48                	push   $0x48
43881e:	8b 70 10             	mov    0x10(%eax),%esi
438821:	8b ce                	mov    %esi,%ecx
438823:	ff 15 54 43 49 00    	call   *0x494354
438829:	8b cb                	mov    %ebx,%ecx
43882b:	ff d6                	call   *%esi
43882d:	84 c0                	test   %al,%al
43882f:	74 18                	je     0x438849
438831:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438834:	e8 08 c2 ff ff       	call   0x434a41
438839:	8d 45 14             	lea    0x14(%ebp),%eax
43883c:	50                   	push   %eax
43883d:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438840:	e8 fb 25 00 00       	call   0x43ae40
438845:	84 c0                	test   %al,%al
438847:	74 c0                	je     0x438809
438849:	8d 45 14             	lea    0x14(%ebp),%eax
43884c:	50                   	push   %eax
43884d:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438850:	e8 eb 25 00 00       	call   0x43ae40
438855:	84 c0                	test   %al,%al
438857:	75 61                	jne    0x4388ba
438859:	38 45 10             	cmp    %al,0x10(%ebp)
43885c:	75 08                	jne    0x438866
43885e:	8d 4d 0c             	lea    0xc(%ebp),%ecx
438861:	e8 b1 d6 ff ff       	call   0x435f17
438866:	8b 03                	mov    (%ebx),%eax
438868:	6a 00                	push   $0x0
43886a:	ff 75 12             	push   0x12(%ebp)
43886d:	8b 70 38             	mov    0x38(%eax),%esi
438870:	8b ce                	mov    %esi,%ecx
438872:	ff 15 54 43 49 00    	call   *0x494354
438878:	8b cb                	mov    %ebx,%ecx
43887a:	ff d6                	call   *%esi
43887c:	3c 3a                	cmp    $0x3a,%al
43887e:	74 32                	je     0x4388b2
438880:	3c 2c                	cmp    $0x2c,%al
438882:	74 2e                	je     0x4388b2
438884:	3c 2f                	cmp    $0x2f,%al
438886:	75 32                	jne    0x4388ba
438888:	eb 28                	jmp    0x4388b2
43888a:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)