4186a7:	0f b7 f0             	movzwl %ax,%esi
4186aa:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4186b0:	85 c0                	test   %eax,%eax
4186b2:	0f 4e f0             	cmovle %eax,%esi
4186b5:	b8 05 40 00 80       	mov    $0x80004005,%eax
4186ba:	85 f6                	test   %esi,%esi
4186bc:	0f 49 f0             	cmovns %eax,%esi
4186bf:	56                   	push   %esi
4186c0:	68 d6 06 00 00       	push   $0x6d6
4186c5:	68 50 65 45 00       	push   $0x456550
4186ca:	e8 04 b1 fe ff       	call   0x4037d3
4186cf:	68 24 78 45 00       	push   $0x457824
4186d4:	eb 17                	jmp    0x4186ed
4186d6:	6a 0c                	push   $0xc
4186d8:	8d 45 f0             	lea    -0x10(%ebp),%eax
4186db:	50                   	push   %eax
4186dc:	57                   	push   %edi
4186dd:	e8 0c c6 02 00       	call   0x444cee
4186e2:	8b f0                	mov    %eax,%esi
4186e4:	85 f6                	test   %esi,%esi
4186e6:	79 0d                	jns    0x4186f5
4186e8:	68 60 78 45 00       	push   $0x457860
4186ed:	56                   	push   %esi
4186ee:	e8 3c 7a 02 00       	call   0x44012f
4186f3:	59                   	pop    %ecx
4186f4:	59                   	pop    %ecx
4186f5:	57                   	push   %edi
4186f6:	ff 15 d4 b0 44 00    	call   *0x44b0d4
4186fc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4186ff:	8b c6                	mov    %esi,%eax
418701:	5f                   	pop    %edi
418702:	5e                   	pop    %esi
418703:	33 cd                	xor    %ebp,%ecx
418705:	5b                   	pop    %ebx
418706:	e8 2b 57 01 00       	call   0x42de36
41870b:	8b e5                	mov    %ebp,%esp
41870d:	5d                   	pop    %ebp
41870e:	c2 10 00             	ret    $0x10
418711:	55                   	push   %ebp
418712:	8b ec                	mov    %esp,%ebp
418714:	51                   	push   %ecx
418715:	53                   	push   %ebx
418716:	56                   	push   %esi
418717:	57                   	push   %edi
418718:	8b 7d 08             	mov    0x8(%ebp),%edi
41871b:	33 db                	xor    %ebx,%ebx
41871d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
418720:	85 ff                	test   %edi,%edi
418722:	74 6a                	je     0x41878e
418724:	39 1d b8 aa 46 00    	cmp    %ebx,0x46aab8
41872a:	75 62                	jne    0x41878e
41872c:	8d 45 fc             	lea    -0x4(%ebp),%eax
41872f:	50                   	push   %eax
418730:	6a 01                	push   $0x1
418732:	57                   	push   %edi
418733:	e8 32 01 00 00       	call   0x41886a
418738:	8b f0                	mov    %eax,%esi
41873a:	85 f6                	test   %esi,%esi
41873c:	79 0f                	jns    0x41874d
41873e:	68 34 70 45 00       	push   $0x457034
418743:	56                   	push   %esi
418744:	e8 e6 79 02 00       	call   0x44012f
418749:	59                   	pop    %ecx
41874a:	59                   	pop    %ecx
41874b:	eb 77                	jmp    0x4187c4
41874d:	53                   	push   %ebx
41874e:	ff 75 fc             	push   -0x4(%ebp)
418751:	e8 bd b8 fe ff       	call   0x404013
418756:	ff 75 fc             	push   -0x4(%ebp)
418759:	8b f0                	mov    %eax,%esi
41875b:	85 f6                	test   %esi,%esi
41875d:	79 10                	jns    0x41876f
41875f:	68 54 70 45 00       	push   $0x457054
418764:	56                   	push   %esi
418765:	e8 c5 79 02 00       	call   0x44012f
41876a:	83 c4 0c             	add    $0xc,%esp
41876d:	eb 55                	jmp    0x4187c4
41876f:	e8 41 05 00 00       	call   0x418cb5
418774:	8b f0                	mov    %eax,%esi
418776:	85 f6                	test   %esi,%esi
418778:	79 0a                	jns    0x418784
41877a:	ff 75 fc             	push   -0x4(%ebp)
41877d:	68 7c 70 45 00       	push   $0x45707c
418782:	eb e0                	jmp    0x418764
418784:	c7 05 b8 aa 46 00 01 	movl   $0x1,0x46aab8
41878b:	00 00 00
41878e:	8d 45 fc             	lea    -0x4(%ebp),%eax
418791:	50                   	push   %eax
418792:	ff 75 0c             	push   0xc(%ebp)
418795:	57                   	push   %edi
418796:	e8 ee 19 00 00       	call   0x41a189
41879b:	8b f0                	mov    %eax,%esi
41879d:	85 f6                	test   %esi,%esi
41879f:	78 9d                	js     0x41873e
4187a1:	53                   	push   %ebx
4187a2:	ff 75 fc             	push   -0x4(%ebp)
4187a5:	e8 69 b8 fe ff       	call   0x404013
4187aa:	ff 75 fc             	push   -0x4(%ebp)
4187ad:	8b f0                	mov    %eax,%esi
4187af:	85 f6                	test   %esi,%esi
4187b1:	78 ac                	js     0x41875f
4187b3:	57                   	push   %edi
4187b4:	e8 2c 04 00 00       	call   0x418be5
4187b9:	8b 45 10             	mov    0x10(%ebp),%eax
4187bc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4187bf:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4187c2:	89 08                	mov    %ecx,(%eax)
4187c4:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4187c7:	74 08                	je     0x4187d1
4187c9:	ff 75 fc             	push   -0x4(%ebp)
4187cc:	e8 1e cd 02 00       	call   0x4454ef
4187d1:	5f                   	pop    %edi
4187d2:	8b c6                	mov    %esi,%eax
4187d4:	5e                   	pop    %esi
4187d5:	5b                   	pop    %ebx
4187d6:	8b e5                	mov    %ebp,%esp
4187d8:	5d                   	pop    %ebp
4187d9:	c2 0c 00             	ret    $0xc
4187dc:	55                   	push   %ebp
4187dd:	8b ec                	mov    %esp,%ebp
4187df:	51                   	push   %ecx
4187e0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4187e4:	8d 45 fc             	lea    -0x4(%ebp),%eax
4187e7:	56                   	push   %esi
4187e8:	57                   	push   %edi
4187e9:	50                   	push   %eax
4187ea:	68 88 5f 45 00       	push   $0x455f88
4187ef:	ff 75 08             	push   0x8(%ebp)
4187f2:	e8 92 19 00 00       	call   0x41a189
4187f7:	8b 7d fc             	mov    -0x4(%ebp),%edi
4187fa:	8b f0                	mov    %eax,%esi
4187fc:	85 f6                	test   %esi,%esi
4187fe:	79 07                	jns    0x418807
418800:	68 34 70 45 00       	push   $0x457034
418805:	eb 47                	jmp    0x41884e
418807:	83 3d bc aa 46 00 00 	cmpl   $0x0,0x46aabc
41880e:	75 27                	jne    0x418837
418810:	6a 00                	push   $0x0
418812:	57                   	push   %edi
418813:	e8 fb b7 fe ff       	call   0x404013
418818:	8b f0                	mov    %eax,%esi
41881a:	57                   	push   %edi
41881b:	85 f6                	test   %esi,%esi
41881d:	79 10                	jns    0x41882f
41881f:	68 a4 70 45 00       	push   $0x4570a4
418824:	56                   	push   %esi
418825:	e8 05 79 02 00       	call   0x44012f
41882a:	83 c4 0c             	add    $0xc,%esp
41882d:	eb 27                	jmp    0x418856
41882f:	ff 75 08             	push   0x8(%ebp)
418832:	e8 ae 03 00 00       	call   0x418be5
418837:	ff 75 10             	push   0x10(%ebp)
41883a:	ff 75 0c             	push   0xc(%ebp)
41883d:	57                   	push   %edi
41883e:	e8 36 a5 fe ff       	call   0x402d79
418843:	8b f0                	mov    %eax,%esi
418845:	85 f6                	test   %esi,%esi
418847:	79 0d                	jns    0x418856
418849:	68 d8 70 45 00       	push   $0x4570d8
41884e:	56                   	push   %esi
41884f:	e8 db 78 02 00       	call   0x44012f
418854:	59                   	pop    %ecx
418855:	59                   	pop    %ecx
418856:	85 ff                	test   %edi,%edi
418858:	74 06                	je     0x418860
41885a:	57                   	push   %edi
41885b:	e8 8f cc 02 00       	call   0x4454ef
418860:	5f                   	pop    %edi
418861:	8b c6                	mov    %esi,%eax
418863:	5e                   	pop    %esi
418864:	8b e5                	mov    %ebp,%esp
418866:	5d                   	pop    %ebp
418867:	c2 0c 00             	ret    $0xc
41886a:	55                   	push   %ebp
41886b:	8b ec                	mov    %esp,%ebp
41886d:	51                   	push   %ecx
41886e:	51                   	push   %ecx
41886f:	53                   	push   %ebx
418870:	56                   	push   %esi
418871:	33 f6                	xor    %esi,%esi
418873:	57                   	push   %edi
418874:	89 75 fc             	mov    %esi,-0x4(%ebp)
418877:	89 75 f8             	mov    %esi,-0x8(%ebp)
41887a:	39 75 08             	cmp    %esi,0x8(%ebp)
41887d:	0f 84 33 01 00 00    	je     0x4189b6
418883:	39 35 9c aa 46 00    	cmp    %esi,0x46aa9c
418889:	75 63                	jne    0x4188ee
41888b:	8d 45 fc             	lea    -0x4(%ebp),%eax
41888e:	50                   	push   %eax
41888f:	6a 23                	push   $0x23
418891:	e8 2f ac fe ff       	call   0x4034c5
418896:	8b d8                	mov    %eax,%ebx
418898:	85 db                	test   %ebx,%ebx
41889a:	79 0f                	jns    0x4188ab
41889c:	68 34 63 45 00       	push   $0x456334
4188a1:	68 10 6e 45 00       	push   $0x456e10
4188a6:	e9 87 01 00 00       	jmp    0x418a32
4188ab:	bf 9c aa 46 00       	mov    $0x46aa9c,%edi
4188b0:	57                   	push   %edi
4188b1:	68 a0 5f 45 00       	push   $0x455fa0
4188b6:	ff 75 fc             	push   -0x4(%ebp)
4188b9:	e8 bb a4 fe ff       	call   0x402d79
4188be:	8b d8                	mov    %eax,%ebx
4188c0:	85 db                	test   %ebx,%ebx
4188c2:	79 0f                	jns    0x4188d3
4188c4:	68 34 63 45 00       	push   $0x456334
4188c9:	68 3c 6e 45 00       	push   $0x456e3c
4188ce:	e9 5f 01 00 00       	jmp    0x418a32
4188d3:	57                   	push   %edi
4188d4:	e8 55 a2 fe ff       	call   0x402b2e
4188d9:	8b d8                	mov    %eax,%ebx
4188db:	85 db                	test   %ebx,%ebx
4188dd:	79 0f                	jns    0x4188ee
4188df:	68 34 63 45 00       	push   $0x456334
4188e4:	68 78 6e 45 00       	push   $0x456e78
4188e9:	e9 44 01 00 00       	jmp    0x418a32
4188ee:	8b 0d a0 aa 46 00    	mov    0x46aaa0,%ecx
4188f4:	85 c9                	test   %ecx,%ecx
4188f6:	75 69                	jne    0x418961
4188f8:	bf a0 aa 46 00       	mov    $0x46aaa0,%edi
4188fd:	57                   	push   %edi
4188fe:	56                   	push   %esi
4188ff:	68 c0 6e 45 00       	push   $0x456ec0
418904:	68 f8 5e 45 00       	push   $0x455ef8
418909:	e8 1a ce 02 00       	call   0x445728
41890e:	8b d8                	mov    %eax,%ebx
418910:	85 db                	test   %ebx,%ebx
418912:	79 12                	jns    0x418926
418914:	68 dc 6e 45 00       	push   $0x456edc
418919:	53                   	push   %ebx
41891a:	e8 10 78 02 00       	call   0x44012f
41891f:	59                   	pop    %ecx
418920:	59                   	pop    %ecx
418921:	e9 15 01 00 00       	jmp    0x418a3b
418926:	39 35 a0 aa 46 00    	cmp    %esi,0x46aaa0
41892c:	74 13                	je     0x418941
41892e:	57                   	push   %edi
41892f:	e8 fa a1 fe ff       	call   0x402b2e
418934:	8b d8                	mov    %eax,%ebx
418936:	85 db                	test   %ebx,%ebx
418938:	79 21                	jns    0x41895b
41893a:	68 10 6f 45 00       	push   $0x456f10
41893f:	eb d8                	jmp    0x418919
418941:	56                   	push   %esi
418942:	ff 35 9c aa 46 00    	push   0x46aa9c
418948:	57                   	push   %edi
418949:	e8 57 98 fe ff       	call   0x4021a5
41894e:	8b d8                	mov    %eax,%ebx
418950:	85 db                	test   %ebx,%ebx
418952:	79 07                	jns    0x41895b
418954:	68 68 6f 45 00       	push   $0x456f68
418959:	eb be                	jmp    0x418919
41895b:	8b 0d a0 aa 46 00    	mov    0x46aaa0,%ecx
418961:	39 75 0c             	cmp    %esi,0xc(%ebp)
418964:	a1 9c aa 46 00       	mov    0x46aa9c,%eax
418969:	56                   	push   %esi
41896a:	8b 75 10             	mov    0x10(%ebp),%esi
41896d:	0f 45 c1             	cmovne %ecx,%eax
418970:	50                   	push   %eax
418971:	56                   	push   %esi
418972:	e8 2e 98 fe ff       	call   0x4021a5
418977:	8b d8                	mov    %eax,%ebx
418979:	85 db                	test   %ebx,%ebx
41897b:	79 0a                	jns    0x418987
41897d:	68 34 63 45 00       	push   $0x456334
418982:	e9 a6 00 00 00       	jmp    0x418a2d
418987:	8d 45 f8             	lea    -0x8(%ebp),%eax
41898a:	50                   	push   %eax
41898b:	ff 36                	push   (%esi)
41898d:	ff 35 9c aa 46 00    	push   0x46aa9c
418993:	e8 6d a3 fe ff       	call   0x402d05
418998:	8b d8                	mov    %eax,%ebx
41899a:	85 db                	test   %ebx,%ebx
41899c:	79 0a                	jns    0x4189a8
41899e:	68 f0 6f 45 00       	push   $0x456ff0
4189a3:	e9 71 ff ff ff       	jmp    0x418919
4189a8:	33 db                	xor    %ebx,%ebx
4189aa:	83 7d f8 02          	cmpl   $0x2,-0x8(%ebp)
4189ae:	0f 95 c3             	setne  %bl
4189b1:	e9 85 00 00 00       	jmp    0x418a3b
4189b6:	a1 98 aa 46 00       	mov    0x46aa98,%eax
4189bb:	85 c0                	test   %eax,%eax
4189bd:	75 59                	jne    0x418a18
4189bf:	8d 45 fc             	lea    -0x4(%ebp),%eax
4189c2:	50                   	push   %eax
4189c3:	6a 1c                	push   $0x1c
4189c5:	e8 fb aa fe ff       	call   0x4034c5
4189ca:	8b d8                	mov    %eax,%ebx
4189cc:	85 db                	test   %ebx,%ebx
4189ce:	79 0a                	jns    0x4189da
4189d0:	68 40 63 45 00       	push   $0x456340
4189d5:	e9 c7 fe ff ff       	jmp    0x4188a1
4189da:	bf 98 aa 46 00       	mov    $0x46aa98,%edi
4189df:	57                   	push   %edi
4189e0:	68 a0 5f 45 00       	push   $0x455fa0
4189e5:	ff 75 fc             	push   -0x4(%ebp)
4189e8:	e8 8c a3 fe ff       	call   0x402d79
4189ed:	8b d8                	mov    %eax,%ebx
4189ef:	85 db                	test   %ebx,%ebx
4189f1:	79 0a                	jns    0x4189fd
4189f3:	68 40 63 45 00       	push   $0x456340
4189f8:	e9 cc fe ff ff       	jmp    0x4188c9
4189fd:	57                   	push   %edi
4189fe:	e8 2b a1 fe ff       	call   0x402b2e
418a03:	8b d8                	mov    %eax,%ebx
418a05:	85 db                	test   %ebx,%ebx
418a07:	79 0a                	jns    0x418a13
418a09:	68 40 63 45 00       	push   $0x456340
418a0e:	e9 d1 fe ff ff       	jmp    0x4188e4
418a13:	a1 98 aa 46 00       	mov    0x46aa98,%eax
418a18:	56                   	push   %esi
418a19:	50                   	push   %eax
418a1a:	ff 75 10             	push   0x10(%ebp)
418a1d:	e8 83 97 fe ff       	call   0x4021a5
418a22:	8b d8                	mov    %eax,%ebx
418a24:	85 db                	test   %ebx,%ebx
418a26:	79 13                	jns    0x418a3b
418a28:	68 40 63 45 00       	push   $0x456340
418a2d:	68 bc 6f 45 00       	push   $0x456fbc
418a32:	53                   	push   %ebx
418a33:	e8 f7 76 02 00       	call   0x44012f
418a38:	83 c4 0c             	add    $0xc,%esp
418a3b:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
418a3f:	74 08                	je     0x418a49
418a41:	ff 75 fc             	push   -0x4(%ebp)
418a44:	e8 a6 ca 02 00       	call   0x4454ef
418a49:	5f                   	pop    %edi
418a4a:	5e                   	pop    %esi
418a4b:	8b c3                	mov    %ebx,%eax
418a4d:	5b                   	pop    %ebx
418a4e:	8b e5                	mov    %ebp,%esp
418a50:	5d                   	pop    %ebp
418a51:	c2 0c 00             	ret    $0xc
418a54:	55                   	push   %ebp
418a55:	8b ec                	mov    %esp,%ebp
418a57:	56                   	push   %esi
418a58:	8b 75 10             	mov    0x10(%ebp),%esi
418a5b:	57                   	push   %edi
418a5c:	8d 46 1c             	lea    0x1c(%esi),%eax
418a5f:	50                   	push   %eax
418a60:	ff 75 08             	push   0x8(%ebp)
418a63:	e8 9b f5 ff ff       	call   0x418003
418a68:	8b f8                	mov    %eax,%edi
418a6a:	85 ff                	test   %edi,%edi
418a6c:	79 0f                	jns    0x418a7d
418a6e:	68 e4 73 45 00       	push   $0x4573e4
418a73:	57                   	push   %edi
418a74:	e8 b6 76 02 00       	call   0x44012f
418a79:	59                   	pop    %ecx
418a7a:	59                   	pop    %ecx