4146f7:	68 6d 03 00 00       	push   $0x36d
4146fc:	68 b0 3f 45 00       	push   $0x453fb0
414701:	8b f7                	mov    %edi,%esi
414703:	e8 cb f0 fe ff       	call   0x4037d3
414708:	68 2c 48 45 00       	push   $0x45482c
41470d:	e9 73 fe ff ff       	jmp    0x414585
414712:	55                   	push   %ebp
414713:	8b ec                	mov    %esp,%ebp
414715:	56                   	push   %esi
414716:	8b 75 08             	mov    0x8(%ebp),%esi
414719:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41471d:	74 16                	je     0x414735
41471f:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
414723:	74 0c                	je     0x414731
414725:	ff 76 0c             	push   0xc(%esi)
414728:	e8 6c f2 fe ff       	call   0x403999
41472d:	83 66 0c 00          	andl   $0x0,0xc(%esi)
414731:	83 66 08 00          	andl   $0x0,0x8(%esi)
414735:	5e                   	pop    %esi
414736:	5d                   	pop    %ebp
414737:	c2 04 00             	ret    $0x4
41473a:	55                   	push   %ebp
41473b:	8b ec                	mov    %esp,%ebp
41473d:	83 ec 0c             	sub    $0xc,%esp
414740:	53                   	push   %ebx
414741:	56                   	push   %esi
414742:	33 f6                	xor    %esi,%esi
414744:	21 75 f4             	and    %esi,-0xc(%ebp)
414747:	21 75 f8             	and    %esi,-0x8(%ebp)
41474a:	21 75 fc             	and    %esi,-0x4(%ebp)
41474d:	33 db                	xor    %ebx,%ebx
41474f:	57                   	push   %edi
414750:	6a 00                	push   $0x0
414752:	8d 45 fc             	lea    -0x4(%ebp),%eax
414755:	50                   	push   %eax
414756:	6a 08                	push   $0x8
414758:	58                   	pop    %eax
414759:	2b c3                	sub    %ebx,%eax
41475b:	50                   	push   %eax
41475c:	8d 45 f4             	lea    -0xc(%ebp),%eax
41475f:	03 c3                	add    %ebx,%eax
414761:	50                   	push   %eax
414762:	ff 75 08             	push   0x8(%ebp)
414765:	ff 15 ec b1 44 00    	call   *0x44b1ec
41476b:	8b 7d 0c             	mov    0xc(%ebp),%edi
41476e:	85 c0                	test   %eax,%eax
414770:	75 28                	jne    0x41479a
414772:	ff 15 e8 b0 44 00    	call   *0x44b0e8
414778:	3d ea 00 00 00       	cmp    $0xea,%eax
41477d:	75 04                	jne    0x414783
41477f:	33 f6                	xor    %esi,%esi
414781:	eb 17                	jmp    0x41479a
414783:	83 f8 6d             	cmp    $0x6d,%eax
414786:	74 77                	je     0x4147ff
414788:	0f b7 f0             	movzwl %ax,%esi
41478b:	81 ce 00 00 07 80    	or     $0x80070000,%esi
414791:	85 c0                	test   %eax,%eax
414793:	0f 4e f0             	cmovle %eax,%esi
414796:	85 f6                	test   %esi,%esi
414798:	78 46                	js     0x4147e0
41479a:	03 5d fc             	add    -0x4(%ebp),%ebx
41479d:	83 fb 08             	cmp    $0x8,%ebx
4147a0:	72 ae                	jb     0x414750
4147a2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4147a5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4147a8:	89 0f                	mov    %ecx,(%edi)
4147aa:	89 47 04             	mov    %eax,0x4(%edi)
4147ad:	85 c0                	test   %eax,%eax
4147af:	0f 84 ac 00 00 00    	je     0x414861
4147b5:	6a 00                	push   $0x0
4147b7:	50                   	push   %eax
4147b8:	e8 17 f1 fe ff       	call   0x4038d4
4147bd:	89 47 0c             	mov    %eax,0xc(%edi)
4147c0:	85 c0                	test   %eax,%eax
4147c2:	75 4a                	jne    0x41480e
4147c4:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4147c9:	56                   	push   %esi
4147ca:	68 23 03 00 00       	push   $0x323
4147cf:	68 b0 3f 45 00       	push   $0x453fb0
4147d4:	e8 fa ef fe ff       	call   0x4037d3
4147d9:	68 9c 46 45 00       	push   $0x45469c
4147de:	eb 15                	jmp    0x4147f5
4147e0:	56                   	push   %esi
4147e1:	68 18 03 00 00       	push   $0x318
4147e6:	68 b0 3f 45 00       	push   $0x453fb0
4147eb:	e8 e3 ef fe ff       	call   0x4037d3
4147f0:	68 78 46 45 00       	push   $0x454678
4147f5:	56                   	push   %esi
4147f6:	e8 34 b9 02 00       	call   0x44012f
4147fb:	59                   	pop    %ecx
4147fc:	59                   	pop    %ecx
4147fd:	eb 62                	jmp    0x414861
4147ff:	33 c9                	xor    %ecx,%ecx
414801:	33 c0                	xor    %eax,%eax
414803:	33 f6                	xor    %esi,%esi
414805:	89 4d f4             	mov    %ecx,-0xc(%ebp)
414808:	89 45 f8             	mov    %eax,-0x8(%ebp)
41480b:	46                   	inc    %esi
41480c:	eb 9a                	jmp    0x4147a8
41480e:	6a 00                	push   $0x0
414810:	8d 4d fc             	lea    -0x4(%ebp),%ecx
414813:	51                   	push   %ecx
414814:	ff 77 04             	push   0x4(%edi)
414817:	50                   	push   %eax
414818:	ff 75 08             	push   0x8(%ebp)
41481b:	ff 15 ec b1 44 00    	call   *0x44b1ec
414821:	85 c0                	test   %eax,%eax
414823:	75 35                	jne    0x41485a
414825:	ff 15 e8 b0 44 00    	call   *0x44b0e8
41482b:	0f b7 f0             	movzwl %ax,%esi
41482e:	81 ce 00 00 07 80    	or     $0x80070000,%esi
414834:	85 c0                	test   %eax,%eax
414836:	0f 4e f0             	cmovle %eax,%esi
414839:	b8 05 40 00 80       	mov    $0x80004005,%eax
41483e:	85 f6                	test   %esi,%esi
414840:	0f 49 f0             	cmovns %eax,%esi
414843:	56                   	push   %esi
414844:	68 27 03 00 00       	push   $0x327
414849:	68 b0 3f 45 00       	push   $0x453fb0
41484e:	e8 80 ef fe ff       	call   0x4037d3
414853:	68 c4 46 45 00       	push   $0x4546c4
414858:	eb 9b                	jmp    0x4147f5
41485a:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%edi)
414861:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
414865:	75 0e                	jne    0x414875
414867:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
41486b:	74 08                	je     0x414875
41486d:	ff 77 0c             	push   0xc(%edi)
414870:	e8 24 f1 fe ff       	call   0x403999
414875:	5f                   	pop    %edi
414876:	8b c6                	mov    %esi,%eax
414878:	5e                   	pop    %esi
414879:	5b                   	pop    %ebx
41487a:	8b e5                	mov    %ebp,%esp
41487c:	5d                   	pop    %ebp
41487d:	c2 08 00             	ret    $0x8
414880:	55                   	push   %ebp
414881:	8b ec                	mov    %esp,%ebp
414883:	51                   	push   %ecx
414884:	51                   	push   %ecx
414885:	56                   	push   %esi
414886:	57                   	push   %edi
414887:	8d 45 fc             	lea    -0x4(%ebp),%eax
41488a:	33 ff                	xor    %edi,%edi
41488c:	50                   	push   %eax
41488d:	8d 45 f8             	lea    -0x8(%ebp),%eax
414890:	89 7d f8             	mov    %edi,-0x8(%ebp)
414893:	50                   	push   %eax
414894:	ff 75 14             	push   0x14(%ebp)
414897:	89 7d fc             	mov    %edi,-0x4(%ebp)
41489a:	ff 75 10             	push   0x10(%ebp)
41489d:	ff 75 0c             	push   0xc(%ebp)
4148a0:	e8 a7 fb ff ff       	call   0x41444c
4148a5:	8b f0                	mov    %eax,%esi
4148a7:	85 f6                	test   %esi,%esi
4148a9:	79 07                	jns    0x4148b2
4148ab:	68 28 46 45 00       	push   $0x454628
4148b0:	eb 61                	jmp    0x414913
4148b2:	89 7d 14             	mov    %edi,0x14(%ebp)
4148b5:	39 7d fc             	cmp    %edi,-0x4(%ebp)
4148b8:	76 61                	jbe    0x41491b
4148ba:	6a 00                	push   $0x0
4148bc:	8d 45 14             	lea    0x14(%ebp),%eax
4148bf:	50                   	push   %eax
4148c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4148c3:	2b c7                	sub    %edi,%eax
4148c5:	50                   	push   %eax
4148c6:	ff 75 f8             	push   -0x8(%ebp)
4148c9:	ff 75 08             	push   0x8(%ebp)
4148cc:	ff 15 30 b1 44 00    	call   *0x44b130
4148d2:	85 c0                	test   %eax,%eax
4148d4:	74 0a                	je     0x4148e0
4148d6:	03 7d 14             	add    0x14(%ebp),%edi
4148d9:	3b 7d fc             	cmp    -0x4(%ebp),%edi
4148dc:	72 dc                	jb     0x4148ba
4148de:	eb 3b                	jmp    0x41491b
4148e0:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4148e6:	0f b7 f0             	movzwl %ax,%esi
4148e9:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4148ef:	85 c0                	test   %eax,%eax
4148f1:	0f 4e f0             	cmovle %eax,%esi
4148f4:	b8 05 40 00 80       	mov    $0x80004005,%eax
4148f9:	85 f6                	test   %esi,%esi
4148fb:	0f 49 f0             	cmovns %eax,%esi
4148fe:	56                   	push   %esi
4148ff:	68 f0 02 00 00       	push   $0x2f0
414904:	68 b0 3f 45 00       	push   $0x453fb0
414909:	e8 c5 ee fe ff       	call   0x4037d3
41490e:	68 50 46 45 00       	push   $0x454650
414913:	56                   	push   %esi
414914:	e8 16 b8 02 00       	call   0x44012f
414919:	59                   	pop    %ecx
41491a:	59                   	pop    %ecx
41491b:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41491f:	74 08                	je     0x414929
414921:	ff 75 f8             	push   -0x8(%ebp)
414924:	e8 70 f0 fe ff       	call   0x403999
414929:	5f                   	pop    %edi
41492a:	8b c6                	mov    %esi,%eax
41492c:	5e                   	pop    %esi
41492d:	8b e5                	mov    %ebp,%esp
41492f:	5d                   	pop    %ebp
414930:	c2 10 00             	ret    $0x10
414933:	55                   	push   %ebp
414934:	8b ec                	mov    %esp,%ebp
414936:	51                   	push   %ecx
414937:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41493b:	8d 45 fc             	lea    -0x4(%ebp),%eax
41493e:	56                   	push   %esi
41493f:	57                   	push   %edi
414940:	8b 7d 08             	mov    0x8(%ebp),%edi
414943:	ff 37                	push   (%edi)
414945:	68 cc 3e 45 00       	push   $0x453ecc
41494a:	50                   	push   %eax
41494b:	e8 d0 d5 fe ff       	call   0x401f20
414950:	8b f0                	mov    %eax,%esi
414952:	83 c4 0c             	add    $0xc,%esp
414955:	85 f6                	test   %esi,%esi
414957:	79 12                	jns    0x41496b
414959:	68 34 45 45 00       	push   $0x454534
41495e:	56                   	push   %esi
41495f:	e8 cb b7 02 00       	call   0x44012f
414964:	59                   	pop    %ecx
414965:	59                   	pop    %ecx
414966:	e9 8b 01 00 00       	jmp    0x414af6
41496b:	53                   	push   %ebx
41496c:	be ff ff 00 80       	mov    $0x8000ffff,%esi
414971:	33 db                	xor    %ebx,%ebx
414973:	81 fb 08 07 00 00    	cmp    $0x708,%ebx
414979:	73 53                	jae    0x4149ce
41497b:	6a 00                	push   $0x0
41497d:	6a 00                	push   $0x0
41497f:	6a 03                	push   $0x3
414981:	6a 00                	push   $0x0
414983:	6a 00                	push   $0x0
414985:	68 00 00 00 c0       	push   $0xc0000000
41498a:	ff 75 fc             	push   -0x4(%ebp)
41498d:	ff 15 d8 b0 44 00    	call   *0x44b0d8
414993:	89 47 10             	mov    %eax,0x10(%edi)
414996:	83 f8 ff             	cmp    $0xffffffff,%eax
414999:	75 2c                	jne    0x4149c7
41499b:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4149a1:	0f b7 f0             	movzwl %ax,%esi
4149a4:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4149aa:	85 c0                	test   %eax,%eax
4149ac:	6a 64                	push   $0x64
4149ae:	0f 4e f0             	cmovle %eax,%esi
4149b1:	b8 b4 05 07 80       	mov    $0x800705b4,%eax
4149b6:	81 fe 02 00 07 80    	cmp    $0x80070002,%esi
4149bc:	0f 44 f0             	cmove  %eax,%esi
4149bf:	ff 15 08 b1 44 00    	call   *0x44b108
4149c5:	eb 02                	jmp    0x4149c9
4149c7:	33 f6                	xor    %esi,%esi
4149c9:	43                   	inc    %ebx
4149ca:	85 f6                	test   %esi,%esi
4149cc:	78 a5                	js     0x414973
4149ce:	85 f6                	test   %esi,%esi
4149d0:	79 1d                	jns    0x4149ef
4149d2:	56                   	push   %esi
4149d3:	68 88 02 00 00       	push   $0x288
4149d8:	68 b0 3f 45 00       	push   $0x453fb0
4149dd:	e8 f1 ed fe ff       	call   0x4037d3
4149e2:	ff 75 fc             	push   -0x4(%ebp)
4149e5:	68 5c 45 45 00       	push   $0x45455c
4149ea:	e9 fd 00 00 00       	jmp    0x414aec
4149ef:	8d 5f 08             	lea    0x8(%edi),%ebx
4149f2:	53                   	push   %ebx
4149f3:	ff 77 04             	push   0x4(%edi)
4149f6:	ff 77 10             	push   0x10(%edi)
4149f9:	e8 e9 fa ff ff       	call   0x4144e7
4149fe:	8b f0                	mov    %eax,%esi
414a00:	85 f6                	test   %esi,%esi
414a02:	79 0d                	jns    0x414a11
414a04:	ff 75 fc             	push   -0x4(%ebp)
414a07:	68 7c 45 45 00       	push   $0x45457c
414a0c:	e9 db 00 00 00       	jmp    0x414aec
414a11:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
414a15:	0f 84 86 00 00 00    	je     0x414aa1
414a1b:	ff 37                	push   (%edi)
414a1d:	8d 45 fc             	lea    -0x4(%ebp),%eax
414a20:	68 e8 3e 45 00       	push   $0x453ee8
414a25:	50                   	push   %eax
414a26:	e8 f5 d4 fe ff       	call   0x401f20
414a2b:	8b f0                	mov    %eax,%esi
414a2d:	83 c4 0c             	add    $0xc,%esp
414a30:	85 f6                	test   %esi,%esi
414a32:	79 12                	jns    0x414a46
414a34:	68 a0 45 45 00       	push   $0x4545a0
414a39:	56                   	push   %esi
414a3a:	e8 f0 b6 02 00       	call   0x44012f
414a3f:	59                   	pop    %ecx
414a40:	59                   	pop    %ecx
414a41:	e9 af 00 00 00       	jmp    0x414af5
414a46:	33 c0                	xor    %eax,%eax
414a48:	50                   	push   %eax
414a49:	50                   	push   %eax
414a4a:	6a 03                	push   $0x3
414a4c:	50                   	push   %eax
414a4d:	50                   	push   %eax
414a4e:	68 00 00 00 c0       	push   $0xc0000000
414a53:	ff 75 fc             	push   -0x4(%ebp)
414a56:	ff 15 d8 b0 44 00    	call   *0x44b0d8
414a5c:	89 47 14             	mov    %eax,0x14(%edi)
414a5f:	83 f8 ff             	cmp    $0xffffffff,%eax
414a62:	75 29                	jne    0x414a8d
414a64:	ff 15 e8 b0 44 00    	call   *0x44b0e8
414a6a:	0f b7 f0             	movzwl %ax,%esi
414a6d:	81 ce 00 00 07 80    	or     $0x80070000,%esi
414a73:	85 c0                	test   %eax,%eax
414a75:	0f 4e f0             	cmovle %eax,%esi
414a78:	b8 05 40 00 80       	mov    $0x80004005,%eax
414a7d:	85 f6                	test   %esi,%esi
414a7f:	0f 49 f0             	cmovns %eax,%esi
414a82:	56                   	push   %esi
414a83:	68 97 02 00 00       	push   $0x297
414a88:	e9 4b ff ff ff       	jmp    0x4149d8
414a8d:	53                   	push   %ebx
414a8e:	ff 77 04             	push   0x4(%edi)
414a91:	50                   	push   %eax
414a92:	e8 50 fa ff ff       	call   0x4144e7
414a97:	8b f0                	mov    %eax,%esi
414a99:	85 f6                	test   %esi,%esi
414a9b:	0f 88 63 ff ff ff    	js     0x414a04
414aa1:	ff 33                	push   (%ebx)
414aa3:	6a 00                	push   $0x0
414aa5:	68 00 00 10 00       	push   $0x100000
414aaa:	ff 15 08 b2 44 00    	call   *0x44b208
414ab0:	89 47 0c             	mov    %eax,0xc(%edi)
414ab3:	85 c0                	test   %eax,%eax
414ab5:	75 3e                	jne    0x414af5
414ab7:	ff 15 e8 b0 44 00    	call   *0x44b0e8
414abd:	0f b7 f0             	movzwl %ax,%esi
414ac0:	81 ce 00 00 07 80    	or     $0x80070000,%esi
414ac6:	85 c0                	test   %eax,%eax
414ac8:	0f 4e f0             	cmovle %eax,%esi
414acb:	b8 05 40 00 80       	mov    $0x80004005,%eax
414ad0:	85 f6                	test   %esi,%esi
414ad2:	0f 49 f0             	cmovns %eax,%esi
414ad5:	56                   	push   %esi
414ad6:	68 a0 02 00 00       	push   $0x2a0
414adb:	68 b0 3f 45 00       	push   $0x453fb0
414ae0:	e8 ee ec fe ff       	call   0x4037d3
414ae5:	ff 33                	push   (%ebx)
414ae7:	68 d0 45 45 00       	push   $0x4545d0
414aec:	56                   	push   %esi
414aed:	e8 3d b6 02 00       	call   0x44012f
414af2:	83 c4 0c             	add    $0xc,%esp
414af5:	5b                   	pop    %ebx
414af6:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
414afa:	74 08                	je     0x414b04