410532:	8b ec                	mov    %esp,%ebp
410534:	6a 00                	push   $0x0
410536:	6a 02                	push   $0x2
410538:	ff 75 08             	push   0x8(%ebp)
41053b:	e8 c9 fe ff ff       	call   0x410409
410540:	83 c4 0c             	add    $0xc,%esp
410543:	5d                   	pop    %ebp
410544:	c3                   	ret
410545:	8b ff                	mov    %edi,%edi
410547:	55                   	push   %ebp
410548:	8b ec                	mov    %esp,%ebp
41054a:	a1 b4 49 43 00       	mov    0x4349b4,%eax
41054f:	3b 05 14 30 43 00    	cmp    0x433014,%eax
410555:	0f 85 b7 1d 00 00    	jne    0x412312
41055b:	ff 75 08             	push   0x8(%ebp)
41055e:	e8 e0 f6 ff ff       	call   0x40fc43
410563:	59                   	pop    %ecx
410564:	a3 b4 49 43 00       	mov    %eax,0x4349b4
410569:	5d                   	pop    %ebp
41056a:	c3                   	ret
41056b:	8b ff                	mov    %edi,%edi
41056d:	55                   	push   %ebp
41056e:	8b ec                	mov    %esp,%ebp
410570:	6a 00                	push   $0x0
410572:	6a 00                	push   $0x0
410574:	ff 75 08             	push   0x8(%ebp)
410577:	e8 8d fe ff ff       	call   0x410409
41057c:	83 c4 0c             	add    $0xc,%esp
41057f:	5d                   	pop    %ebp
410580:	c3                   	ret
410581:	8b ff                	mov    %edi,%edi
410583:	55                   	push   %ebp
410584:	8b ec                	mov    %esp,%ebp
410586:	8b 4d 08             	mov    0x8(%ebp),%ecx
410589:	85 c9                	test   %ecx,%ecx
41058b:	75 15                	jne    0x4105a2
41058d:	e8 69 e8 ff ff       	call   0x40edfb
410592:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
410598:	e8 e4 ca ff ff       	call   0x40d081
41059d:	6a 16                	push   $0x16
41059f:	58                   	pop    %eax
4105a0:	5d                   	pop    %ebp
4105a1:	c3                   	ret
4105a2:	a1 e8 4d 43 00       	mov    0x434de8,%eax
4105a7:	90                   	nop
4105a8:	89 01                	mov    %eax,(%ecx)
4105aa:	33 c0                	xor    %eax,%eax
4105ac:	5d                   	pop    %ebp
4105ad:	c3                   	ret
4105ae:	8b ff                	mov    %edi,%edi
4105b0:	55                   	push   %ebp
4105b1:	8b ec                	mov    %esp,%ebp
4105b3:	8b 45 08             	mov    0x8(%ebp),%eax
4105b6:	3d 00 40 00 00       	cmp    $0x4000,%eax
4105bb:	74 23                	je     0x4105e0
4105bd:	3d 00 80 00 00       	cmp    $0x8000,%eax
4105c2:	74 1c                	je     0x4105e0
4105c4:	3d 00 00 01 00       	cmp    $0x10000,%eax
4105c9:	74 15                	je     0x4105e0
4105cb:	e8 2b e8 ff ff       	call   0x40edfb
4105d0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4105d6:	e8 a6 ca ff ff       	call   0x40d081
4105db:	6a 16                	push   $0x16
4105dd:	58                   	pop    %eax
4105de:	5d                   	pop    %ebp
4105df:	c3                   	ret
4105e0:	b9 e8 4d 43 00       	mov    $0x434de8,%ecx
4105e5:	87 01                	xchg   %eax,(%ecx)
4105e7:	33 c0                	xor    %eax,%eax
4105e9:	5d                   	pop    %ebp
4105ea:	c3                   	ret
4105eb:	8b ff                	mov    %edi,%edi
4105ed:	55                   	push   %ebp
4105ee:	8b ec                	mov    %esp,%ebp
4105f0:	51                   	push   %ecx
4105f1:	8b 45 08             	mov    0x8(%ebp),%eax
4105f4:	53                   	push   %ebx
4105f5:	56                   	push   %esi
4105f6:	57                   	push   %edi
4105f7:	8b f8                	mov    %eax,%edi
4105f9:	83 e0 3f             	and    $0x3f,%eax
4105fc:	c1 ff 06             	sar    $0x6,%edi
4105ff:	6b d0 38             	imul   $0x38,%eax,%edx
410602:	8b 34 bd c0 4a 43 00 	mov    0x434ac0(,%edi,4),%esi
410609:	8a 44 16 28          	mov    0x28(%esi,%edx,1),%al
41060d:	8a 5c 16 29          	mov    0x29(%esi,%edx,1),%bl
410611:	0f b6 c8             	movzbl %al,%ecx
410614:	81 e1 80 00 00 00    	and    $0x80,%ecx
41061a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41061d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
410620:	81 f9 00 40 00 00    	cmp    $0x4000,%ecx
410626:	74 50                	je     0x410678
410628:	81 f9 00 80 00 00    	cmp    $0x8000,%ecx
41062e:	74 40                	je     0x410670
410630:	81 f9 00 00 01 00    	cmp    $0x10000,%ecx
410636:	74 24                	je     0x41065c
410638:	81 f9 00 00 02 00    	cmp    $0x20000,%ecx
41063e:	74 1c                	je     0x41065c
410640:	81 f9 00 00 04 00    	cmp    $0x40000,%ecx
410646:	75 42                	jne    0x41068a
410648:	0c 80                	or     $0x80,%al
41064a:	88 44 16 28          	mov    %al,0x28(%esi,%edx,1)
41064e:	8b 04 bd c0 4a 43 00 	mov    0x434ac0(,%edi,4),%eax
410655:	c6 44 10 29 01       	movb   $0x1,0x29(%eax,%edx,1)
41065a:	eb 2e                	jmp    0x41068a
41065c:	0c 80                	or     $0x80,%al
41065e:	88 44 16 28          	mov    %al,0x28(%esi,%edx,1)
410662:	8b 04 bd c0 4a 43 00 	mov    0x434ac0(,%edi,4),%eax
410669:	c6 44 10 29 02       	movb   $0x2,0x29(%eax,%edx,1)
41066e:	eb 1a                	jmp    0x41068a
410670:	24 7f                	and    $0x7f,%al
410672:	88 44 16 28          	mov    %al,0x28(%esi,%edx,1)
410676:	eb 12                	jmp    0x41068a
410678:	0c 80                	or     $0x80,%al
41067a:	88 44 16 28          	mov    %al,0x28(%esi,%edx,1)
41067e:	8b 0c bd c0 4a 43 00 	mov    0x434ac0(,%edi,4),%ecx
410685:	c6 44 11 29 00       	movb   $0x0,0x29(%ecx,%edx,1)
41068a:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41068e:	75 07                	jne    0x410697
410690:	b8 00 80 00 00       	mov    $0x8000,%eax
410695:	eb 1e                	jmp    0x4106b5
410697:	84 db                	test   %bl,%bl
410699:	75 07                	jne    0x4106a2
41069b:	b8 00 40 00 00       	mov    $0x4000,%eax
4106a0:	eb 13                	jmp    0x4106b5
4106a2:	33 c0                	xor    %eax,%eax
4106a4:	80 fb 01             	cmp    $0x1,%bl
4106a7:	0f 95 c0             	setne  %al
4106aa:	48                   	dec    %eax
4106ab:	25 00 00 03 00       	and    $0x30000,%eax
4106b0:	05 00 00 01 00       	add    $0x10000,%eax
4106b5:	5f                   	pop    %edi
4106b6:	5e                   	pop    %esi
4106b7:	5b                   	pop    %ebx
4106b8:	c9                   	leave
4106b9:	c3                   	ret
4106ba:	6a 08                	push   $0x8
4106bc:	68 b8 16 43 00       	push   $0x4316b8
4106c1:	e8 fa 78 ff ff       	call   0x407fc0
4106c6:	8b 45 08             	mov    0x8(%ebp),%eax
4106c9:	ff 30                	push   (%eax)
4106cb:	e8 53 ca ff ff       	call   0x40d123
4106d0:	59                   	pop    %ecx
4106d1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4106d5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4106d8:	e8 c1 01 00 00       	call   0x41089e
4106dd:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4106e4:	e8 12 00 00 00       	call   0x4106fb
4106e9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4106ec:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4106f3:	59                   	pop    %ecx
4106f4:	5f                   	pop    %edi
4106f5:	5e                   	pop    %esi
4106f6:	5b                   	pop    %ebx
4106f7:	c9                   	leave
4106f8:	c2 0c 00             	ret    $0xc
4106fb:	8b 45 10             	mov    0x10(%ebp),%eax
4106fe:	ff 30                	push   (%eax)
410700:	e8 66 ca ff ff       	call   0x40d16b
410705:	59                   	pop    %ecx
410706:	c3                   	ret
410707:	6a 08                	push   $0x8
410709:	68 d8 16 43 00       	push   $0x4316d8
41070e:	e8 ad 78 ff ff       	call   0x407fc0
410713:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
410717:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41071a:	e8 15 01 00 00       	call   0x410834
41071f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
410726:	e8 12 00 00 00       	call   0x41073d
41072b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41072e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
410735:	59                   	pop    %ecx
410736:	5f                   	pop    %edi
410737:	5e                   	pop    %esi
410738:	5b                   	pop    %ebx
410739:	c9                   	leave
41073a:	c2 0c 00             	ret    $0xc
41073d:	8b 45 10             	mov    0x10(%ebp),%eax
410740:	8b 00                	mov    (%eax),%eax
410742:	8b 00                	mov    (%eax),%eax
410744:	83 a0 50 03 00 00 ef 	andl   $0xffffffef,0x350(%eax)
41074b:	c3                   	ret
41074c:	6a 0c                	push   $0xc
41074e:	68 98 16 43 00       	push   $0x431698
410753:	e8 68 78 ff ff       	call   0x407fc0
410758:	8b 45 08             	mov    0x8(%ebp),%eax
41075b:	ff 30                	push   (%eax)
41075d:	e8 c1 c9 ff ff       	call   0x40d123
410762:	59                   	pop    %ecx
410763:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
410767:	be d8 4c 43 00       	mov    $0x434cd8,%esi
41076c:	bf d0 31 43 00       	mov    $0x4331d0,%edi
410771:	89 75 e4             	mov    %esi,-0x1c(%ebp)
410774:	81 fe dc 4c 43 00    	cmp    $0x434cdc,%esi
41077a:	74 14                	je     0x410790
41077c:	39 3e                	cmp    %edi,(%esi)
41077e:	74 0b                	je     0x41078b
410780:	57                   	push   %edi
410781:	56                   	push   %esi
410782:	e8 10 c1 00 00       	call   0x41c897
410787:	59                   	pop    %ecx
410788:	59                   	pop    %ecx
410789:	89 06                	mov    %eax,(%esi)
41078b:	83 c6 04             	add    $0x4,%esi
41078e:	eb e1                	jmp    0x410771
410790:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
410797:	e8 12 00 00 00       	call   0x4107ae
41079c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41079f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4107a6:	59                   	pop    %ecx
4107a7:	5f                   	pop    %edi
4107a8:	5e                   	pop    %esi
4107a9:	5b                   	pop    %ebx
4107aa:	c9                   	leave
4107ab:	c2 0c 00             	ret    $0xc
4107ae:	8b 45 10             	mov    0x10(%ebp),%eax
4107b1:	ff 30                	push   (%eax)
4107b3:	e8 b3 c9 ff ff       	call   0x40d16b
4107b8:	59                   	pop    %ecx
4107b9:	c3                   	ret
4107ba:	8b ff                	mov    %edi,%edi
4107bc:	55                   	push   %ebp
4107bd:	8b ec                	mov    %esp,%ebp
4107bf:	8b 45 10             	mov    0x10(%ebp),%eax
4107c2:	8b 55 0c             	mov    0xc(%ebp),%edx
4107c5:	53                   	push   %ebx
4107c6:	56                   	push   %esi
4107c7:	8b 75 08             	mov    0x8(%ebp),%esi
4107ca:	33 db                	xor    %ebx,%ebx
4107cc:	57                   	push   %edi
4107cd:	8b f9                	mov    %ecx,%edi
4107cf:	6a 55                	push   $0x55
4107d1:	89 47 08             	mov    %eax,0x8(%edi)
4107d4:	05 50 02 00 00       	add    $0x250,%eax
4107d9:	50                   	push   %eax
4107da:	52                   	push   %edx
4107db:	56                   	push   %esi
4107dc:	89 37                	mov    %esi,(%edi)
4107de:	89 57 04             	mov    %edx,0x4(%edi)
4107e1:	88 5f 0c             	mov    %bl,0xc(%edi)
4107e4:	e8 e5 9e 00 00       	call   0x41a6ce
4107e9:	83 c4 10             	add    $0x10,%esp
4107ec:	85 c0                	test   %eax,%eax
4107ee:	75 09                	jne    0x4107f9
4107f0:	8b c7                	mov    %edi,%eax
4107f2:	5f                   	pop    %edi
4107f3:	5e                   	pop    %esi
4107f4:	5b                   	pop    %ebx
4107f5:	5d                   	pop    %ebp
4107f6:	c2 0c 00             	ret    $0xc
4107f9:	53                   	push   %ebx
4107fa:	53                   	push   %ebx
4107fb:	53                   	push   %ebx
4107fc:	53                   	push   %ebx
4107fd:	53                   	push   %ebx
4107fe:	e8 ab c8 ff ff       	call   0x40d0ae
410803:	cc                   	int3
410804:	80 79 0c 00          	cmpb   $0x0,0xc(%ecx)
410808:	75 1c                	jne    0x410826
41080a:	ff 71 04             	push   0x4(%ecx)
41080d:	8b 41 08             	mov    0x8(%ecx),%eax
410810:	ff 31                	push   (%ecx)
410812:	05 50 02 00 00       	add    $0x250,%eax
410817:	6a 55                	push   $0x55
410819:	50                   	push   %eax
41081a:	e8 af 9e 00 00       	call   0x41a6ce
41081f:	83 c4 10             	add    $0x10,%esp
410822:	85 c0                	test   %eax,%eax
410824:	75 01                	jne    0x410827
410826:	c3                   	ret
410827:	33 c0                	xor    %eax,%eax
410829:	50                   	push   %eax
41082a:	50                   	push   %eax
41082b:	50                   	push   %eax
41082c:	50                   	push   %eax
41082d:	50                   	push   %eax
41082e:	e8 7b c8 ff ff       	call   0x40d0ae
410833:	cc                   	int3
410834:	8b ff                	mov    %edi,%edi
410836:	55                   	push   %ebp
410837:	8b ec                	mov    %esp,%ebp
410839:	83 ec 20             	sub    $0x20,%esp
41083c:	56                   	push   %esi
41083d:	57                   	push   %edi
41083e:	68 b8 00 00 00       	push   $0xb8
410843:	6a 01                	push   $0x1
410845:	8b f9                	mov    %ecx,%edi
410847:	e8 62 28 00 00       	call   0x4130ae
41084c:	8b 17                	mov    (%edi),%edx
41084e:	8b f0                	mov    %eax,%esi
410850:	6a 00                	push   $0x0
410852:	89 32                	mov    %esi,(%edx)
410854:	e8 b2 28 00 00       	call   0x41310b
410859:	83 c4 0c             	add    $0xc,%esp
41085c:	85 f6                	test   %esi,%esi
41085e:	74 3a                	je     0x41089a
410860:	8b 07                	mov    (%edi),%eax
410862:	8d 4d ff             	lea    -0x1(%ebp),%ecx
410865:	89 45 e0             	mov    %eax,-0x20(%ebp)
410868:	8b 47 04             	mov    0x4(%edi),%eax
41086b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41086e:	8b 47 08             	mov    0x8(%edi),%eax
410871:	89 45 e8             	mov    %eax,-0x18(%ebp)
410874:	8b 47 0c             	mov    0xc(%edi),%eax
410877:	89 45 ec             	mov    %eax,-0x14(%ebp)
41087a:	8b 47 10             	mov    0x10(%edi),%eax
41087d:	6a 04                	push   $0x4
41087f:	89 45 f0             	mov    %eax,-0x10(%ebp)
410882:	58                   	pop    %eax
410883:	89 45 f8             	mov    %eax,-0x8(%ebp)
410886:	89 45 f4             	mov    %eax,-0xc(%ebp)
410889:	8d 45 f8             	lea    -0x8(%ebp),%eax
41088c:	50                   	push   %eax
41088d:	8d 45 e0             	lea    -0x20(%ebp),%eax
410890:	50                   	push   %eax
410891:	8d 45 f4             	lea    -0xc(%ebp),%eax
410894:	50                   	push   %eax
410895:	e8 20 fe ff ff       	call   0x4106ba
41089a:	5f                   	pop    %edi
41089b:	5e                   	pop    %esi
41089c:	c9                   	leave
41089d:	c3                   	ret
41089e:	8b ff                	mov    %edi,%edi
4108a0:	56                   	push   %esi
4108a1:	8b f1                	mov    %ecx,%esi
4108a3:	8b 46 04             	mov    0x4(%esi),%eax
4108a6:	8b 00                	mov    (%eax),%eax
4108a8:	ff 70 4c             	push   0x4c(%eax)
4108ab:	8b 06                	mov    (%esi),%eax
4108ad:	ff 30                	push   (%eax)
4108af:	e8 15 04 00 00       	call   0x410cc9
4108b4:	8b 46 10             	mov    0x10(%esi),%eax
4108b7:	ff 30                	push   (%eax)
4108b9:	8b 46 0c             	mov    0xc(%esi),%eax
4108bc:	ff 30                	push   (%eax)
4108be:	8b 06                	mov    (%esi),%eax
4108c0:	ff 30                	push   (%eax)
4108c2:	e8 56 0a 00 00       	call   0x41131d
4108c7:	8b 4e 08             	mov    0x8(%esi),%ecx
4108ca:	83 c4 14             	add    $0x14,%esp
4108cd:	89 01                	mov    %eax,(%ecx)
4108cf:	85 c0                	test   %eax,%eax
4108d1:	0f 84 af 00 00 00    	je     0x410986
4108d7:	8b 46 10             	mov    0x10(%esi),%eax
4108da:	8b 00                	mov    (%eax),%eax
4108dc:	85 c0                	test   %eax,%eax
4108de:	74 3f                	je     0x41091f
4108e0:	ba 90 32 43 00       	mov    $0x433290,%edx
4108e5:	57                   	push   %edi
4108e6:	66 8b 38             	mov    (%eax),%di