4184e6:	5e                   	pop    %esi
4184e7:	89 30                	mov    %esi,(%eax)
4184e9:	e8 00 4f ff ff       	call   0x40d3ee
4184ee:	8b c6                	mov    %esi,%eax
4184f0:	eb 03                	jmp    0x4184f5
4184f2:	6a 16                	push   $0x16
4184f4:	58                   	pop    %eax
4184f5:	5f                   	pop    %edi
4184f6:	5e                   	pop    %esi
4184f7:	5d                   	pop    %ebp
4184f8:	c3                   	ret
4184f9:	8b ff                	mov    %edi,%edi
4184fb:	55                   	push   %ebp
4184fc:	8b ec                	mov    %esp,%ebp
4184fe:	56                   	push   %esi
4184ff:	8b 75 08             	mov    0x8(%ebp),%esi
418502:	57                   	push   %edi
418503:	85 f6                	test   %esi,%esi
418505:	75 1a                	jne    0x418521
418507:	8b 75 0c             	mov    0xc(%ebp),%esi
41850a:	8b ce                	mov    %esi,%ecx
41850c:	e8 f6 00 00 00       	call   0x418607
418511:	33 ff                	xor    %edi,%edi
418513:	89 7e 08             	mov    %edi,0x8(%esi)
418516:	89 7e 0c             	mov    %edi,0xc(%esi)
418519:	89 7e 10             	mov    %edi,0x10(%esi)
41851c:	e9 84 00 00 00       	jmp    0x4185a5
418521:	33 ff                	xor    %edi,%edi
418523:	80 3e 00             	cmpb   $0x0,(%esi)
418526:	75 1f                	jne    0x418547
418528:	8b 75 0c             	mov    0xc(%ebp),%esi
41852b:	39 7e 0c             	cmp    %edi,0xc(%esi)
41852e:	75 0d                	jne    0x41853d
418530:	6a 01                	push   $0x1
418532:	8b ce                	mov    %esi,%ecx
418534:	e8 e8 00 00 00       	call   0x418621
418539:	85 c0                	test   %eax,%eax
41853b:	75 6a                	jne    0x4185a7
41853d:	8b 46 08             	mov    0x8(%esi),%eax
418540:	33 c9                	xor    %ecx,%ecx
418542:	66 89 08             	mov    %cx,(%eax)
418545:	eb d2                	jmp    0x418519
418547:	57                   	push   %edi
418548:	57                   	push   %edi
418549:	6a ff                	push   $0xffffffff
41854b:	56                   	push   %esi
41854c:	6a 09                	push   $0x9
41854e:	ff 75 14             	push   0x14(%ebp)
418551:	e8 52 82 00 00       	call   0x4207a8
418556:	83 c4 18             	add    $0x18,%esp
418559:	85 c0                	test   %eax,%eax
41855b:	75 16                	jne    0x418573
41855d:	ff 15 08 11 43 00    	call   *0x431108
418563:	50                   	push   %eax
418564:	e8 ae 40 00 00       	call   0x41c617
418569:	59                   	pop    %ecx
41856a:	e8 02 41 00 00       	call   0x41c671
41856f:	8b 00                	mov    (%eax),%eax
418571:	eb 34                	jmp    0x4185a7
418573:	8b 7d 0c             	mov    0xc(%ebp),%edi
418576:	3b 47 0c             	cmp    0xc(%edi),%eax
418579:	76 0c                	jbe    0x418587
41857b:	50                   	push   %eax
41857c:	8b cf                	mov    %edi,%ecx
41857e:	e8 9e 00 00 00       	call   0x418621
418583:	85 c0                	test   %eax,%eax
418585:	75 20                	jne    0x4185a7
418587:	ff 77 0c             	push   0xc(%edi)
41858a:	ff 77 08             	push   0x8(%edi)
41858d:	6a ff                	push   $0xffffffff
41858f:	56                   	push   %esi
418590:	6a 09                	push   $0x9
418592:	ff 75 14             	push   0x14(%ebp)
418595:	e8 0e 82 00 00       	call   0x4207a8
41859a:	83 c4 18             	add    $0x18,%esp
41859d:	85 c0                	test   %eax,%eax
41859f:	74 bc                	je     0x41855d
4185a1:	48                   	dec    %eax
4185a2:	89 47 10             	mov    %eax,0x10(%edi)
4185a5:	33 c0                	xor    %eax,%eax
4185a7:	5f                   	pop    %edi
4185a8:	5e                   	pop    %esi
4185a9:	5d                   	pop    %ebp
4185aa:	c3                   	ret
4185ab:	8b ff                	mov    %edi,%edi
4185ad:	55                   	push   %ebp
4185ae:	8b ec                	mov    %esp,%ebp
4185b0:	51                   	push   %ecx
4185b1:	ff 75 10             	push   0x10(%ebp)
4185b4:	8d 45 ff             	lea    -0x1(%ebp),%eax
4185b7:	50                   	push   %eax
4185b8:	ff 75 0c             	push   0xc(%ebp)
4185bb:	ff 75 08             	push   0x8(%ebp)
4185be:	e8 36 ff ff ff       	call   0x4184f9
4185c3:	83 c4 10             	add    $0x10,%esp
4185c6:	c9                   	leave
4185c7:	c3                   	ret
4185c8:	8b ff                	mov    %edi,%edi
4185ca:	55                   	push   %ebp
4185cb:	8b ec                	mov    %esp,%ebp
4185cd:	83 ec 10             	sub    $0x10,%esp
4185d0:	6a 00                	push   $0x0
4185d2:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4185d5:	e8 1a ac ff ff       	call   0x4131f4
4185da:	8b 45 f4             	mov    -0xc(%ebp),%eax
4185dd:	ba e9 fd 00 00       	mov    $0xfde9,%edx
4185e2:	39 50 08             	cmp    %edx,0x8(%eax)
4185e5:	74 0c                	je     0x4185f3
4185e7:	e8 92 5d 00 00       	call   0x41e37e
4185ec:	33 d2                	xor    %edx,%edx
4185ee:	85 c0                	test   %eax,%eax
4185f0:	75 01                	jne    0x4185f3
4185f2:	42                   	inc    %edx
4185f3:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
4185f7:	74 0a                	je     0x418603
4185f9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4185fc:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
418603:	8b c2                	mov    %edx,%eax
418605:	c9                   	leave
418606:	c3                   	ret
418607:	8b ff                	mov    %edi,%edi
418609:	56                   	push   %esi
41860a:	8b f1                	mov    %ecx,%esi
41860c:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
418610:	74 0d                	je     0x41861f
418612:	ff 76 08             	push   0x8(%esi)
418615:	e8 f6 e5 fe ff       	call   0x406c10
41861a:	59                   	pop    %ecx
41861b:	c6 46 14 00          	movb   $0x0,0x14(%esi)
41861f:	5e                   	pop    %esi
418620:	c3                   	ret
418621:	8b ff                	mov    %edi,%edi
418623:	55                   	push   %ebp
418624:	8b ec                	mov    %esp,%ebp
418626:	56                   	push   %esi
418627:	57                   	push   %edi
418628:	8b f1                	mov    %ecx,%esi
41862a:	e8 d8 ff ff ff       	call   0x418607
41862f:	8b 7d 08             	mov    0x8(%ebp),%edi
418632:	56                   	push   %esi
418633:	8d 04 3f             	lea    (%edi,%edi,1),%eax
418636:	50                   	push   %eax
418637:	8d 46 08             	lea    0x8(%esi),%eax
41863a:	50                   	push   %eax
41863b:	e8 20 00 00 00       	call   0x418660
418640:	83 c4 0c             	add    $0xc,%esp
418643:	85 c0                	test   %eax,%eax
418645:	74 0a                	je     0x418651
418647:	83 66 0c 00          	andl   $0x0,0xc(%esi)
41864b:	c6 46 14 00          	movb   $0x0,0x14(%esi)
41864f:	eb 09                	jmp    0x41865a
418651:	c6 46 14 01          	movb   $0x1,0x14(%esi)
418655:	33 c0                	xor    %eax,%eax
418657:	89 7e 0c             	mov    %edi,0xc(%esi)
41865a:	5f                   	pop    %edi
41865b:	5e                   	pop    %esi
41865c:	5d                   	pop    %ebp
41865d:	c2 04 00             	ret    $0x4
418660:	8b ff                	mov    %edi,%edi
418662:	55                   	push   %ebp
418663:	8b ec                	mov    %esp,%ebp
418665:	ff 75 0c             	push   0xc(%ebp)
418668:	e8 c3 e5 fe ff       	call   0x406c30
41866d:	59                   	pop    %ecx
41866e:	8b 4d 08             	mov    0x8(%ebp),%ecx
418671:	89 01                	mov    %eax,(%ecx)
418673:	f7 d8                	neg    %eax
418675:	1b c0                	sbb    %eax,%eax
418677:	83 e0 f4             	and    $0xfffffff4,%eax
41867a:	83 c0 0c             	add    $0xc,%eax
41867d:	5d                   	pop    %ebp
41867e:	c3                   	ret
41867f:	8b ff                	mov    %edi,%edi
418681:	55                   	push   %ebp
418682:	8b ec                	mov    %esp,%ebp
418684:	8b 45 10             	mov    0x10(%ebp),%eax
418687:	85 c0                	test   %eax,%eax
418689:	75 02                	jne    0x41868d
41868b:	5d                   	pop    %ebp
41868c:	c3                   	ret
41868d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
418690:	8b 55 08             	mov    0x8(%ebp),%edx
418693:	56                   	push   %esi
418694:	83 e8 01             	sub    $0x1,%eax
418697:	74 15                	je     0x4186ae
418699:	0f b7 32             	movzwl (%edx),%esi
41869c:	66 85 f6             	test   %si,%si
41869f:	74 0d                	je     0x4186ae
4186a1:	66 3b 31             	cmp    (%ecx),%si
4186a4:	75 08                	jne    0x4186ae
4186a6:	83 c2 02             	add    $0x2,%edx
4186a9:	83 c1 02             	add    $0x2,%ecx
4186ac:	eb e6                	jmp    0x418694
4186ae:	0f b7 02             	movzwl (%edx),%eax
4186b1:	0f b7 09             	movzwl (%ecx),%ecx
4186b4:	2b c1                	sub    %ecx,%eax
4186b6:	5e                   	pop    %esi
4186b7:	5d                   	pop    %ebp
4186b8:	c3                   	ret
4186b9:	8b ff                	mov    %edi,%edi
4186bb:	55                   	push   %ebp
4186bc:	8b ec                	mov    %esp,%ebp
4186be:	56                   	push   %esi
4186bf:	8b 75 08             	mov    0x8(%ebp),%esi
4186c2:	57                   	push   %edi
4186c3:	8b 7d 0c             	mov    0xc(%ebp),%edi
4186c6:	0f b7 0e             	movzwl (%esi),%ecx
4186c9:	8d 76 02             	lea    0x2(%esi),%esi
4186cc:	8d 41 bf             	lea    -0x41(%ecx),%eax
4186cf:	83 f8 19             	cmp    $0x19,%eax
4186d2:	77 03                	ja     0x4186d7
4186d4:	83 c1 20             	add    $0x20,%ecx
4186d7:	0f b7 17             	movzwl (%edi),%edx
4186da:	83 c7 02             	add    $0x2,%edi
4186dd:	8d 42 bf             	lea    -0x41(%edx),%eax
4186e0:	83 f8 19             	cmp    $0x19,%eax
4186e3:	77 03                	ja     0x4186e8
4186e5:	83 c2 20             	add    $0x20,%edx
4186e8:	8b c1                	mov    %ecx,%eax
4186ea:	2b c2                	sub    %edx,%eax
4186ec:	75 04                	jne    0x4186f2
4186ee:	85 c9                	test   %ecx,%ecx
4186f0:	75 d4                	jne    0x4186c6
4186f2:	5f                   	pop    %edi
4186f3:	5e                   	pop    %esi
4186f4:	5d                   	pop    %ebp
4186f5:	c3                   	ret
4186f6:	8b ff                	mov    %edi,%edi
4186f8:	55                   	push   %ebp
4186f9:	8b ec                	mov    %esp,%ebp
4186fb:	8b 45 08             	mov    0x8(%ebp),%eax
4186fe:	b9 00 01 00 00       	mov    $0x100,%ecx
418703:	66 3b c1             	cmp    %cx,%ax
418706:	73 20                	jae    0x418728
418708:	0f b6 c8             	movzbl %al,%ecx
41870b:	f6 04 4d 52 40 43 00 	testb  $0x1,0x434052(,%ecx,2)
418712:	01
418713:	74 0e                	je     0x418723
418715:	8b 45 0c             	mov    0xc(%ebp),%eax
418718:	8b 00                	mov    (%eax),%eax
41871a:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
418720:	8a 04 01             	mov    (%ecx,%eax,1),%al
418723:	0f b6 c0             	movzbl %al,%eax
418726:	5d                   	pop    %ebp
418727:	c3                   	ret
418728:	ff 75 0c             	push   0xc(%ebp)
41872b:	50                   	push   %eax
41872c:	e8 d5 84 00 00       	call   0x420c06
418731:	59                   	pop    %ecx
418732:	59                   	pop    %ecx
418733:	5d                   	pop    %ebp
418734:	c3                   	ret
418735:	8b ff                	mov    %edi,%edi
418737:	55                   	push   %ebp
418738:	8b ec                	mov    %esp,%ebp
41873a:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
418741:	75 29                	jne    0x41876c
418743:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
418747:	75 17                	jne    0x418760
418749:	e8 23 3f 00 00       	call   0x41c671
41874e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
418754:	e8 95 4c ff ff       	call   0x40d3ee
418759:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41875e:	5d                   	pop    %ebp
41875f:	c3                   	ret
418760:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
418764:	74 e3                	je     0x418749
418766:	5d                   	pop    %ebp
418767:	e9 4d ff ff ff       	jmp    0x4186b9
41876c:	6a 00                	push   $0x0
41876e:	ff 75 0c             	push   0xc(%ebp)
418771:	ff 75 08             	push   0x8(%ebp)
418774:	e8 05 00 00 00       	call   0x41877e
418779:	83 c4 0c             	add    $0xc,%esp
41877c:	5d                   	pop    %ebp
41877d:	c3                   	ret
41877e:	8b ff                	mov    %edi,%edi
418780:	55                   	push   %ebp
418781:	8b ec                	mov    %esp,%ebp
418783:	83 ec 10             	sub    $0x10,%esp
418786:	56                   	push   %esi
418787:	8b 75 08             	mov    0x8(%ebp),%esi
41878a:	85 f6                	test   %esi,%esi
41878c:	75 1a                	jne    0x4187a8
41878e:	e8 de 3e 00 00       	call   0x41c671
418793:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
418799:	e8 50 4c ff ff       	call   0x40d3ee
41879e:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4187a3:	e9 8b 00 00 00       	jmp    0x418833
4187a8:	57                   	push   %edi
4187a9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4187ac:	85 ff                	test   %edi,%edi
4187ae:	75 17                	jne    0x4187c7
4187b0:	e8 bc 3e 00 00       	call   0x41c671
4187b5:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4187bb:	e8 2e 4c ff ff       	call   0x40d3ee
4187c0:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4187c5:	eb 6b                	jmp    0x418832
4187c7:	ff 75 10             	push   0x10(%ebp)
4187ca:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4187cd:	e8 22 aa ff ff       	call   0x4131f4
4187d2:	8b 45 f4             	mov    -0xc(%ebp),%eax
4187d5:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
4187dc:	75 0d                	jne    0x4187eb
4187de:	57                   	push   %edi
4187df:	56                   	push   %esi
4187e0:	e8 d4 fe ff ff       	call   0x4186b9
4187e5:	59                   	pop    %ecx
4187e6:	59                   	pop    %ecx
4187e7:	8b c8                	mov    %eax,%ecx
4187e9:	eb 35                	jmp    0x418820
4187eb:	53                   	push   %ebx
4187ec:	0f b7 06             	movzwl (%esi),%eax
4187ef:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4187f2:	51                   	push   %ecx
4187f3:	50                   	push   %eax
4187f4:	8d 76 02             	lea    0x2(%esi),%esi
4187f7:	e8 fa fe ff ff       	call   0x4186f6
4187fc:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4187ff:	0f b7 d8             	movzwl %ax,%ebx
418802:	0f b7 07             	movzwl (%edi),%eax
418805:	8d 7f 02             	lea    0x2(%edi),%edi
418808:	51                   	push   %ecx
418809:	50                   	push   %eax
41880a:	e8 e7 fe ff ff       	call   0x4186f6
41880f:	0f b7 c0             	movzwl %ax,%eax
418812:	8b cb                	mov    %ebx,%ecx
418814:	83 c4 10             	add    $0x10,%esp
418817:	2b c8                	sub    %eax,%ecx
418819:	75 04                	jne    0x41881f
41881b:	85 db                	test   %ebx,%ebx
41881d:	75 cd                	jne    0x4187ec
41881f:	5b                   	pop    %ebx
418820:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
418824:	74 0a                	je     0x418830
418826:	8b 45 f0             	mov    -0x10(%ebp),%eax
418829:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
418830:	8b c1                	mov    %ecx,%eax
418832:	5f                   	pop    %edi
418833:	5e                   	pop    %esi
418834:	c9                   	leave
418835:	c3                   	ret
418836:	cc                   	int3
418837:	cc                   	int3
418838:	cc                   	int3
418839:	cc                   	int3
41883a:	cc                   	int3
41883b:	cc                   	int3
41883c:	cc                   	int3
41883d:	cc                   	int3