412625:	8b d9                	mov    %ecx,%ebx
412627:	59                   	pop    %ecx
412628:	e8 a3 b6 ff ff       	call   0x40dcd0
41262d:	8b f0                	mov    %eax,%esi
41262f:	85 f6                	test   %esi,%esi
412631:	0f 84 40 cd 00 00    	je     0x41f377
412637:	83 26 00             	andl   $0x0,(%esi)
41263a:	33 c9                	xor    %ecx,%ecx
41263c:	41                   	inc    %ecx
41263d:	e8 56 b7 ff ff       	call   0x40dd98
412642:	85 c0                	test   %eax,%eax
412644:	0f 85 ed cc 00 00    	jne    0x41f337
41264a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41264d:	50                   	push   %eax
41264e:	ff 36                	push   (%esi)
412650:	ff 15 28 a0 44 00    	call   *0x44a028
412656:	85 c0                	test   %eax,%eax
412658:	0f 85 fe cc 00 00    	jne    0x41f35c
41265e:	bf 02 20 00 00       	mov    $0x2002,%edi
412663:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
412666:	e8 65 b6 ff ff       	call   0x40dcd0
41266b:	85 c0                	test   %eax,%eax
41266d:	0f 84 04 cd 00 00    	je     0x41f377
412673:	89 46 10             	mov    %eax,0x10(%esi)
412676:	8b ce                	mov    %esi,%ecx
412678:	33 c0                	xor    %eax,%eax
41267a:	89 7e 0c             	mov    %edi,0xc(%esi)
41267d:	89 46 14             	mov    %eax,0x14(%esi)
412680:	89 46 08             	mov    %eax,0x8(%esi)
412683:	89 46 04             	mov    %eax,0x4(%esi)
412686:	89 46 24             	mov    %eax,0x24(%esi)
412689:	e8 13 00 00 00       	call   0x4126a1
41268e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
412691:	33 c0                	xor    %eax,%eax
412693:	5f                   	pop    %edi
412694:	89 33                	mov    %esi,(%ebx)
412696:	33 cd                	xor    %ebp,%ecx
412698:	5e                   	pop    %esi
412699:	5b                   	pop    %ebx
41269a:	e8 91 44 00 00       	call   0x416b30
41269f:	c9                   	leave
4126a0:	c3                   	ret
4126a1:	8b ff                	mov    %edi,%edi
4126a3:	55                   	push   %ebp
4126a4:	8b ec                	mov    %esp,%ebp
4126a6:	83 ec 1c             	sub    $0x1c,%esp
4126a9:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
4126ae:	33 c5                	xor    %ebp,%eax
4126b0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4126b3:	53                   	push   %ebx
4126b4:	56                   	push   %esi
4126b5:	57                   	push   %edi
4126b6:	6a 19                	push   $0x19
4126b8:	8b f9                	mov    %ecx,%edi
4126ba:	5e                   	pop    %esi
4126bb:	6a 50                	push   $0x50
4126bd:	5b                   	pop    %ebx
4126be:	83 3f 00             	cmpl   $0x0,(%edi)
4126c1:	0f 85 c3 cc 00 00    	jne    0x41f38a
4126c7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4126ca:	89 77 1c             	mov    %esi,0x1c(%edi)
4126cd:	33 cd                	xor    %ebp,%ecx
4126cf:	89 5f 20             	mov    %ebx,0x20(%edi)
4126d2:	5f                   	pop    %edi
4126d3:	5e                   	pop    %esi
4126d4:	5b                   	pop    %ebx
4126d5:	e8 56 44 00 00       	call   0x416b30
4126da:	c9                   	leave
4126db:	c3                   	ret
4126dc:	8b ff                	mov    %edi,%edi
4126de:	55                   	push   %ebp
4126df:	8b ec                	mov    %esp,%ebp
4126e1:	83 e4 f8             	and    $0xfffffff8,%esp
4126e4:	81 ec ac 04 00 00    	sub    $0x4ac,%esp
4126ea:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
4126ef:	33 c4                	xor    %esp,%eax
4126f1:	89 84 24 a8 04 00 00 	mov    %eax,0x4a8(%esp)
4126f8:	53                   	push   %ebx
4126f9:	33 c0                	xor    %eax,%eax
4126fb:	89 4c 24 04          	mov    %ecx,0x4(%esp)
4126ff:	33 c9                	xor    %ecx,%ecx
412701:	89 44 24 18          	mov    %eax,0x18(%esp)
412705:	66 89 44 24 20       	mov    %ax,0x20(%esp)
41270a:	33 db                	xor    %ebx,%ebx
41270c:	56                   	push   %esi
41270d:	57                   	push   %edi
41270e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
412712:	8d 7c 24 4a          	lea    0x4a(%esp),%edi
412716:	89 4c 24 14          	mov    %ecx,0x14(%esp)
41271a:	be 04 01 00 00       	mov    $0x104,%esi
41271f:	89 4c 24 18          	mov    %ecx,0x18(%esp)
412723:	43                   	inc    %ebx
412724:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
412728:	89 4c 24 24          	mov    %ecx,0x24(%esp)
41272c:	89 4c 24 2a          	mov    %ecx,0x2a(%esp)
412730:	89 4c 24 2e          	mov    %ecx,0x2e(%esp)
412734:	89 4c 24 32          	mov    %ecx,0x32(%esp)
412738:	89 4c 24 36          	mov    %ecx,0x36(%esp)
41273c:	89 4c 24 3a          	mov    %ecx,0x3a(%esp)
412740:	89 4c 24 3e          	mov    %ecx,0x3e(%esp)
412744:	89 4c 24 42          	mov    %ecx,0x42(%esp)
412748:	89 4c 24 46          	mov    %ecx,0x46(%esp)
41274c:	ab                   	stos   %eax,%es:(%edi)
41274d:	56                   	push   %esi
41274e:	51                   	push   %ecx
41274f:	89 8c 24 90 02 00 00 	mov    %ecx,0x290(%esp)
412756:	ab                   	stos   %eax,%es:(%edi)
412757:	88 9c 24 94 02 00 00 	mov    %bl,0x294(%esp)
41275e:	89 b4 24 98 02 00 00 	mov    %esi,0x298(%esp)
412765:	ab                   	stos   %eax,%es:(%edi)
412766:	66 ab                	stos   %ax,%es:(%edi)
412768:	33 c0                	xor    %eax,%eax
41276a:	89 4c 24 60          	mov    %ecx,0x60(%esp)
41276e:	8d 7c 24 7c          	lea    0x7c(%esp),%edi
412772:	89 4c 24 64          	mov    %ecx,0x64(%esp)
412776:	89 4c 24 68          	mov    %ecx,0x68(%esp)
41277a:	88 4c 24 6c          	mov    %cl,0x6c(%esp)
41277e:	89 4c 24 70          	mov    %ecx,0x70(%esp)
412782:	89 4c 24 74          	mov    %ecx,0x74(%esp)
412786:	89 4c 24 78          	mov    %ecx,0x78(%esp)
41278a:	ab                   	stos   %eax,%es:(%edi)
41278b:	ab                   	stos   %eax,%es:(%edi)
41278c:	ab                   	stos   %eax,%es:(%edi)
41278d:	8d 84 24 88 00 00 00 	lea    0x88(%esp),%eax
412794:	50                   	push   %eax
412795:	e8 23 58 00 00       	call   0x417fbd
41279a:	33 c0                	xor    %eax,%eax
41279c:	8d 8c 24 8c 00 00 00 	lea    0x8c(%esp),%ecx
4127a3:	83 c4 0c             	add    $0xc,%esp
4127a6:	38 84 24 8c 02 00 00 	cmp    %al,0x28c(%esp)
4127ad:	0f 94 c0             	sete   %al
4127b0:	48                   	dec    %eax
4127b1:	25 e3 7e 00 00       	and    $0x7ee3,%eax
4127b6:	03 c6                	add    %esi,%eax
4127b8:	50                   	push   %eax
4127b9:	e8 32 bc ff ff       	call   0x40e3f0
4127be:	33 ff                	xor    %edi,%edi
4127c0:	85 c0                	test   %eax,%eax
4127c2:	0f 88 30 01 00 00    	js     0x4128f8
4127c8:	8b 35 78 67 43 00    	mov    0x436778,%esi
4127ce:	b8 04 01 00 00       	mov    $0x104,%eax
4127d3:	50                   	push   %eax
4127d4:	89 84 24 ac 04 00 00 	mov    %eax,0x4ac(%esp)
4127db:	8d 84 24 9c 02 00 00 	lea    0x29c(%esp),%eax
4127e2:	57                   	push   %edi
4127e3:	50                   	push   %eax
4127e4:	c7 44 24 20 06 00 00 	movl   $0x6,0x20(%esp)
4127eb:	00
4127ec:	89 7c 24 24          	mov    %edi,0x24(%esp)
4127f0:	c7 44 24 1c 00 80 00 	movl   $0x8000,0x1c(%esp)
4127f7:	00
4127f8:	89 7c 24 64          	mov    %edi,0x64(%esp)
4127fc:	89 7c 24 78          	mov    %edi,0x78(%esp)
412800:	89 bc 24 ac 04 00 00 	mov    %edi,0x4ac(%esp)
412807:	88 9c 24 b0 04 00 00 	mov    %bl,0x4b0(%esp)
41280e:	e8 aa 57 00 00       	call   0x417fbd
412813:	83 c4 0c             	add    $0xc,%esp
412816:	57                   	push   %edi
412817:	57                   	push   %edi
412818:	68 d0 25 40 00       	push   $0x4025d0
41281d:	ff 15 d0 a1 44 00    	call   *0x44a1d0
412823:	50                   	push   %eax
412824:	8d 8c 24 9c 02 00 00 	lea    0x29c(%esp),%ecx
41282b:	e8 c0 bb ff ff       	call   0x40e3f0
412830:	85 c0                	test   %eax,%eax
412832:	0f 88 aa 00 00 00    	js     0x4128e2
412838:	8b 84 24 a0 04 00 00 	mov    0x4a0(%esp),%eax
41283f:	85 c0                	test   %eax,%eax
412841:	75 07                	jne    0x41284a
412843:	8d 84 24 98 02 00 00 	lea    0x298(%esp),%eax
41284a:	ff b4 24 a8 04 00 00 	push   0x4a8(%esp)
412851:	50                   	push   %eax
412852:	68 d0 25 40 00       	push   $0x4025d0
412857:	ff 15 d0 a1 44 00    	call   *0x44a1d0
41285d:	85 c0                	test   %eax,%eax
41285f:	0f 85 4d cb 00 00    	jne    0x41f3b2
412865:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
412869:	8d 54 24 10          	lea    0x10(%esp),%edx
41286d:	e8 d2 68 ff ff       	call   0x409144
412872:	3b c3                	cmp    %ebx,%eax
412874:	74 6c                	je     0x4128e2
412876:	8b 44 24 10          	mov    0x10(%esp),%eax
41287a:	a8 40                	test   $0x40,%al
41287c:	74 09                	je     0x412887
41287e:	25 fb 79 fb ff       	and    $0xfffb79fb,%eax
412883:	89 44 24 10          	mov    %eax,0x10(%esp)
412887:	a9 00 04 00 00       	test   $0x400,%eax
41288c:	0f 85 55 cb 00 00    	jne    0x41f3e7
412892:	8b 8c 24 88 02 00 00 	mov    0x288(%esp),%ecx
412899:	85 c9                	test   %ecx,%ecx
41289b:	0f 84 54 cb 00 00    	je     0x41f3f5
4128a1:	8b 94 24 90 02 00 00 	mov    0x290(%esp),%edx
4128a8:	57                   	push   %edi
4128a9:	e8 f0 65 ff ff       	call   0x408e9e
4128ae:	39 7c 24 58          	cmp    %edi,0x58(%esp)
4128b2:	0f 84 49 cb 00 00    	je     0x41f401
4128b8:	8d 4c 24 10          	lea    0x10(%esp),%ecx
4128bc:	e8 5c ed ff ff       	call   0x41161d
4128c1:	8b d8                	mov    %eax,%ebx
4128c3:	8b 84 24 88 02 00 00 	mov    0x288(%esp),%eax
4128ca:	85 c0                	test   %eax,%eax
4128cc:	74 5b                	je     0x412929
4128ce:	ff b4 24 90 02 00 00 	push   0x290(%esp)
4128d5:	50                   	push   %eax
4128d6:	e8 b0 fa ff ff       	call   0x41238b
4128db:	8b ce                	mov    %esi,%ecx
4128dd:	e8 ad f0 ff ff       	call   0x41198f
4128e2:	8b 84 24 a0 04 00 00 	mov    0x4a0(%esp),%eax
4128e9:	89 bc 24 a0 04 00 00 	mov    %edi,0x4a0(%esp)
4128f0:	85 c0                	test   %eax,%eax
4128f2:	0f 85 39 cb 00 00    	jne    0x41f431
4128f8:	8b 84 24 88 02 00 00 	mov    0x288(%esp),%eax
4128ff:	89 bc 24 88 02 00 00 	mov    %edi,0x288(%esp)
412906:	85 c0                	test   %eax,%eax
412908:	74 08                	je     0x412912
41290a:	50                   	push   %eax
41290b:	ff 15 e0 a3 44 00    	call   *0x44a3e0
412911:	59                   	pop    %ecx
412912:	8b 8c 24 b4 04 00 00 	mov    0x4b4(%esp),%ecx
412919:	8b c3                	mov    %ebx,%eax
41291b:	5f                   	pop    %edi
41291c:	5e                   	pop    %esi
41291d:	5b                   	pop    %ebx
41291e:	33 cc                	xor    %esp,%ecx
412920:	e8 0b 42 00 00       	call   0x416b30
412925:	8b e5                	mov    %ebp,%esp
412927:	5d                   	pop    %ebp
412928:	c3                   	ret
412929:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
412930:	eb 9c                	jmp    0x4128ce
412932:	cc                   	int3
412933:	cc                   	int3
412934:	cc                   	int3
412935:	cc                   	int3
412936:	cc                   	int3
412937:	cc                   	int3
412938:	cc                   	int3
412939:	cc                   	int3
41293a:	cc                   	int3
41293b:	cc                   	int3
41293c:	cc                   	int3
41293d:	cc                   	int3
41293e:	cc                   	int3
41293f:	cc                   	int3
412940:	8b ff                	mov    %edi,%edi
412942:	55                   	push   %ebp
412943:	8b ec                	mov    %esp,%ebp
412945:	8b 4d 08             	mov    0x8(%ebp),%ecx
412948:	8b 49 3c             	mov    0x3c(%ecx),%ecx
41294b:	e8 8c fd ff ff       	call   0x4126dc
412950:	a3 dc 65 43 00       	mov    %eax,0x4365dc
412955:	5d                   	pop    %ebp
412956:	c2 04 00             	ret    $0x4
412959:	cc                   	int3
41295a:	cc                   	int3
41295b:	cc                   	int3
41295c:	cc                   	int3
41295d:	cc                   	int3
41295e:	cc                   	int3
41295f:	cc                   	int3
412960:	8b ff                	mov    %edi,%edi
412962:	55                   	push   %ebp
412963:	8b ec                	mov    %esp,%ebp
412965:	51                   	push   %ecx
412966:	51                   	push   %ecx
412967:	53                   	push   %ebx
412968:	56                   	push   %esi
412969:	57                   	push   %edi
41296a:	8b 7d 08             	mov    0x8(%ebp),%edi
41296d:	8d 45 fc             	lea    -0x4(%ebp),%eax
412970:	33 db                	xor    %ebx,%ebx
412972:	53                   	push   %ebx
412973:	50                   	push   %eax
412974:	ff 77 38             	push   0x38(%edi)
412977:	ff 15 38 a4 44 00    	call   *0x44a438
41297d:	8b f0                	mov    %eax,%esi
41297f:	8d 45 f8             	lea    -0x8(%ebp),%eax
412982:	53                   	push   %ebx
412983:	50                   	push   %eax
412984:	ff 77 3c             	push   0x3c(%edi)
412987:	ff 15 38 a4 44 00    	call   *0x44a438
41298d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
412990:	83 c4 18             	add    $0x18,%esp
412993:	66 39 19             	cmp    %bx,(%ecx)
412996:	75 5b                	jne    0x4129f3
412998:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41299b:	66 39 19             	cmp    %bx,(%ecx)
41299e:	75 53                	jne    0x4129f3
4129a0:	2b f0                	sub    %eax,%esi
4129a2:	8b 47 44             	mov    0x44(%edi),%eax
4129a5:	83 e8 01             	sub    $0x1,%eax
4129a8:	74 20                	je     0x4129ca
4129aa:	83 e8 01             	sub    $0x1,%eax
4129ad:	74 24                	je     0x4129d3
4129af:	83 e8 01             	sub    $0x1,%eax
4129b2:	74 2f                	je     0x4129e3
4129b4:	83 e8 01             	sub    $0x1,%eax
4129b7:	74 31                	je     0x4129ea
4129b9:	83 e8 01             	sub    $0x1,%eax
4129bc:	75 1e                	jne    0x4129dc
4129be:	85 f6                	test   %esi,%esi
4129c0:	0f 9f c0             	setg   %al
4129c3:	5f                   	pop    %edi
4129c4:	5e                   	pop    %esi
4129c5:	5b                   	pop    %ebx
4129c6:	c9                   	leave
4129c7:	c2 04 00             	ret    $0x4
4129ca:	33 c0                	xor    %eax,%eax
4129cc:	85 f6                	test   %esi,%esi
4129ce:	0f 94 c0             	sete   %al
4129d1:	eb f0                	jmp    0x4129c3
4129d3:	33 c0                	xor    %eax,%eax
4129d5:	85 f6                	test   %esi,%esi
4129d7:	0f 95 c0             	setne  %al
4129da:	eb e7                	jmp    0x4129c3
4129dc:	83 e8 01             	sub    $0x1,%eax
4129df:	75 30                	jne    0x412a11
4129e1:	f7 d6                	not    %esi
4129e3:	c1 ee 1f             	shr    $0x1f,%esi
4129e6:	8b c6                	mov    %esi,%eax
4129e8:	eb d9                	jmp    0x4129c3
4129ea:	33 c0                	xor    %eax,%eax
4129ec:	85 f6                	test   %esi,%esi
4129ee:	0f 9e c0             	setle  %al
4129f1:	eb d0                	jmp    0x4129c3
4129f3:	f6 47 40 02          	testb  $0x2,0x40(%edi)
4129f7:	ff 77 3c             	push   0x3c(%edi)
4129fa:	ff 77 38             	push   0x38(%edi)
4129fd:	75 0a                	jne    0x412a09
4129ff:	ff 15 70 a2 44 00    	call   *0x44a270
412a05:	8b f0                	mov    %eax,%esi
412a07:	eb 99                	jmp    0x4129a2
412a09:	ff 15 74 a2 44 00    	call   *0x44a274
412a0f:	eb f4                	jmp    0x412a05
412a11:	33 c0                	xor    %eax,%eax
412a13:	eb ae                	jmp    0x4129c3
412a15:	8b ff                	mov    %edi,%edi
412a17:	56                   	push   %esi
412a18:	57                   	push   %edi
412a19:	68 f0 4a 44 00       	push   $0x444af0
412a1e:	68 18 23 40 00       	push   $0x402318
412a23:	33 ff                	xor    %edi,%edi
412a25:	ff 15 40 a4 44 00    	call   *0x44a440
412a2b:	59                   	pop    %ecx
412a2c:	59                   	pop    %ecx
412a2d:	85 c0                	test   %eax,%eax
412a2f:	0f 84 09 ca 00 00    	je     0x41f43e
412a35:	6a 2b                	push   $0x2b
412a37:	59                   	pop    %ecx
412a38:	c7 05 fc 66 43 00 1e 	movl   $0x1e,0x4366fc