404870:	85 c0                	test   %eax,%eax
404872:	75 38                	jne    0x4048ac
404874:	ff 15 e8 b0 44 00    	call   *0x44b0e8
40487a:	0f b7 f0             	movzwl %ax,%esi
40487d:	81 ce 00 00 07 80    	or     $0x80070000,%esi
404883:	85 c0                	test   %eax,%eax
404885:	0f 4e f0             	cmovle %eax,%esi
404888:	b8 05 40 00 80       	mov    $0x80004005,%eax
40488d:	85 f6                	test   %esi,%esi
40488f:	0f 49 f0             	cmovns %eax,%esi
404892:	56                   	push   %esi
404893:	68 51 02 00 00       	push   $0x251
404898:	68 d4 b9 44 00       	push   $0x44b9d4
40489d:	e8 31 ef ff ff       	call   0x4037d3
4048a2:	68 80 be 44 00       	push   $0x44be80
4048a7:	e9 95 00 00 00       	jmp    0x404941
4048ac:	57                   	push   %edi
4048ad:	68 4c 44 40 00       	push   $0x40444c
4048b2:	e8 d4 bc 03 00       	call   0x44058b
4048b7:	57                   	push   %edi
4048b8:	ff 75 08             	push   0x8(%ebp)
4048bb:	e8 6a 9f 01 00       	call   0x41e82a
4048c0:	8b f0                	mov    %eax,%esi
4048c2:	85 f6                	test   %esi,%esi
4048c4:	79 07                	jns    0x4048cd
4048c6:	68 20 bd 44 00       	push   $0x44bd20
4048cb:	eb 74                	jmp    0x404941
4048cd:	6a 01                	push   $0x1
4048cf:	e8 54 d2 03 00       	call   0x441b28
4048d4:	8d 47 18             	lea    0x18(%edi),%eax
4048d7:	50                   	push   %eax
4048d8:	8d 87 f8 00 00 00    	lea    0xf8(%edi),%eax
4048de:	50                   	push   %eax
4048df:	8d 45 f8             	lea    -0x8(%ebp),%eax
4048e2:	50                   	push   %eax
4048e3:	8d 45 fc             	lea    -0x4(%ebp),%eax
4048e6:	50                   	push   %eax
4048e7:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
4048ed:	50                   	push   %eax
4048ee:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
4048f4:	50                   	push   %eax
4048f5:	8d 87 88 00 00 00    	lea    0x88(%edi),%eax
4048fb:	50                   	push   %eax
4048fc:	8d 87 b8 02 00 00    	lea    0x2b8(%edi),%eax
404902:	50                   	push   %eax
404903:	8d 87 c0 02 00 00    	lea    0x2c0(%edi),%eax
404909:	50                   	push   %eax
40490a:	8d 87 a8 02 00 00    	lea    0x2a8(%edi),%eax
404910:	50                   	push   %eax
404911:	8d 87 d8 03 00 00    	lea    0x3d8(%edi),%eax
404917:	50                   	push   %eax
404918:	ff b7 b4 04 00 00    	push   0x4b4(%edi)
40491e:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
404924:	ff b7 98 04 00 00    	push   0x498(%edi)
40492a:	e8 eb 86 01 00       	call   0x41d01a
40492f:	53                   	push   %ebx
404930:	53                   	push   %ebx
404931:	8b f0                	mov    %eax,%esi
404933:	e8 53 bc 03 00       	call   0x44058b
404938:	85 f6                	test   %esi,%esi
40493a:	79 0d                	jns    0x404949
40493c:	68 c4 be 44 00       	push   $0x44bec4
404941:	56                   	push   %esi
404942:	e8 e8 b7 03 00       	call   0x44012f
404947:	59                   	pop    %ecx
404948:	59                   	pop    %ecx
404949:	53                   	push   %ebx
40494a:	53                   	push   %ebx
40494b:	e8 3b bc 03 00       	call   0x44058b
404950:	57                   	push   %edi
404951:	e8 95 9e 01 00       	call   0x41e7eb
404956:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
404959:	74 05                	je     0x404960
40495b:	e8 f6 87 01 00       	call   0x41d156
404960:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
404963:	74 12                	je     0x404977
404965:	ff 75 fc             	push   -0x4(%ebp)
404968:	ff 15 90 b1 44 00    	call   *0x44b190
40496e:	ff 75 fc             	push   -0x4(%ebp)
404971:	ff 15 d4 b0 44 00    	call   *0x44b0d4
404977:	5f                   	pop    %edi
404978:	8b c6                	mov    %esi,%eax
40497a:	5e                   	pop    %esi
40497b:	5b                   	pop    %ebx
40497c:	8b e5                	mov    %ebp,%esp
40497e:	5d                   	pop    %ebp
40497f:	c2 0c 00             	ret    $0xc
404982:	55                   	push   %ebp
404983:	8b ec                	mov    %esp,%ebp
404985:	53                   	push   %ebx
404986:	56                   	push   %esi
404987:	57                   	push   %edi
404988:	8b 7d 0c             	mov    0xc(%ebp),%edi
40498b:	33 db                	xor    %ebx,%ebx
40498d:	6a 00                	push   $0x0
40498f:	43                   	inc    %ebx
404990:	8d 87 b8 04 00 00    	lea    0x4b8(%edi),%eax
404996:	89 9f ec 03 00 00    	mov    %ebx,0x3ec(%edi)
40499c:	50                   	push   %eax
40499d:	e8 91 ff 00 00       	call   0x414933
4049a2:	8b f0                	mov    %eax,%esi
4049a4:	85 f6                	test   %esi,%esi
4049a6:	79 07                	jns    0x4049af
4049a8:	68 f4 be 44 00       	push   $0x44bef4
4049ad:	eb 1f                	jmp    0x4049ce
4049af:	39 5f 20             	cmp    %ebx,0x20(%edi)
4049b2:	75 06                	jne    0x4049ba
4049b4:	89 9f 08 01 00 00    	mov    %ebx,0x108(%edi)
4049ba:	57                   	push   %edi
4049bb:	ff 75 08             	push   0x8(%ebp)
4049be:	e8 1c 00 00 00       	call   0x4049df
4049c3:	8b f0                	mov    %eax,%esi
4049c5:	85 f6                	test   %esi,%esi
4049c7:	79 0d                	jns    0x4049d6
4049c9:	68 28 bf 44 00       	push   $0x44bf28
4049ce:	56                   	push   %esi
4049cf:	e8 5b b7 03 00       	call   0x44012f
4049d4:	59                   	pop    %ecx
4049d5:	59                   	pop    %ecx
4049d6:	5f                   	pop    %edi
4049d7:	8b c6                	mov    %esi,%eax
4049d9:	5e                   	pop    %esi
4049da:	5b                   	pop    %ebx
4049db:	5d                   	pop    %ebp
4049dc:	c2 08 00             	ret    $0x8
4049df:	55                   	push   %ebp
4049e0:	8b ec                	mov    %esp,%ebp
4049e2:	51                   	push   %ecx
4049e3:	53                   	push   %ebx
4049e4:	56                   	push   %esi
4049e5:	57                   	push   %edi
4049e6:	8b 7d 0c             	mov    0xc(%ebp),%edi
4049e9:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4049f0:	ff b7 60 01 00 00    	push   0x160(%edi)
4049f6:	8d 9f 88 00 00 00    	lea    0x88(%edi),%ebx
4049fc:	ff 77 20             	push   0x20(%edi)
4049ff:	8d 87 f4 03 00 00    	lea    0x3f4(%edi),%eax
404a05:	53                   	push   %ebx
404a06:	50                   	push   %eax
404a07:	e8 3b f4 00 00       	call   0x413e47
404a0c:	8b f0                	mov    %eax,%esi
404a0e:	85 f6                	test   %esi,%esi
404a10:	79 0a                	jns    0x404a1c
404a12:	68 e8 bc 44 00       	push   $0x44bce8
404a17:	e9 0d 01 00 00       	jmp    0x404b29
404a1c:	8d 45 fc             	lea    -0x4(%ebp),%eax
404a1f:	50                   	push   %eax
404a20:	8d 87 f8 00 00 00    	lea    0xf8(%edi),%eax
404a26:	50                   	push   %eax
404a27:	ff b7 60 01 00 00    	push   0x160(%edi)
404a2d:	8d 87 ac 00 00 00    	lea    0xac(%edi),%eax
404a33:	ff 77 20             	push   0x20(%edi)
404a36:	50                   	push   %eax
404a37:	53                   	push   %ebx
404a38:	e8 33 4e 00 00       	call   0x409870
404a3d:	8b f0                	mov    %eax,%esi
404a3f:	85 f6                	test   %esi,%esi
404a41:	79 0a                	jns    0x404a4d
404a43:	68 fc bc 44 00       	push   $0x44bcfc
404a48:	e9 dc 00 00 00       	jmp    0x404b29
404a4d:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
404a51:	75 13                	jne    0x404a66
404a53:	68 35 00 00 e0       	push   $0xe0000035
404a58:	6a 02                	push   $0x2
404a5a:	e8 b0 0a 00 00       	call   0x40550f
404a5f:	33 f6                	xor    %esi,%esi
404a61:	e9 c9 00 00 00       	jmp    0x404b2f
404a66:	83 bf b8 00 00 00 00 	cmpl   $0x0,0xb8(%edi)
404a6d:	74 14                	je     0x404a83
404a6f:	83 7f 20 02          	cmpl   $0x2,0x20(%edi)
404a73:	7e 0e                	jle    0x404a83
404a75:	8d 47 34             	lea    0x34(%edi),%eax
404a78:	50                   	push   %eax
404a79:	6a 00                	push   $0x0
404a7b:	ff 75 08             	push   0x8(%ebp)
404a7e:	e8 71 99 01 00       	call   0x41e3f4
404a83:	57                   	push   %edi
404a84:	ff 75 08             	push   0x8(%ebp)
404a87:	e8 9e 9d 01 00       	call   0x41e82a
404a8c:	8b f0                	mov    %eax,%esi
404a8e:	85 f6                	test   %esi,%esi
404a90:	79 0a                	jns    0x404a9c
404a92:	68 20 bd 44 00       	push   $0x44bd20
404a97:	e9 8d 00 00 00       	jmp    0x404b29
404a9c:	57                   	push   %edi
404a9d:	e8 81 30 01 00       	call   0x417b23
404aa2:	8b f0                	mov    %eax,%esi
404aa4:	85 f6                	test   %esi,%esi
404aa6:	79 07                	jns    0x404aaf
404aa8:	68 48 bd 44 00       	push   $0x44bd48
404aad:	eb 7a                	jmp    0x404b29
404aaf:	53                   	push   %ebx
404ab0:	ff 77 1c             	push   0x1c(%edi)
404ab3:	e8 04 ed 00 00       	call   0x4137bc
404ab8:	8b f0                	mov    %eax,%esi
404aba:	85 f6                	test   %esi,%esi
404abc:	79 07                	jns    0x404ac5
404abe:	68 68 bd 44 00       	push   $0x44bd68
404ac3:	eb 64                	jmp    0x404b29
404ac5:	53                   	push   %ebx
404ac6:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
404acc:	50                   	push   %eax
404acd:	e8 2d bb 00 00       	call   0x4105ff
404ad2:	8b f0                	mov    %eax,%esi
404ad4:	85 f6                	test   %esi,%esi
404ad6:	79 07                	jns    0x404adf
404ad8:	68 88 bd 44 00       	push   $0x44bd88
404add:	eb 4a                	jmp    0x404b29
404adf:	8b 47 40             	mov    0x40(%edi),%eax
404ae2:	33 c9                	xor    %ecx,%ecx
404ae4:	85 c0                	test   %eax,%eax
404ae6:	74 21                	je     0x404b09
404ae8:	66 39 08             	cmp    %cx,(%eax)
404aeb:	74 1c                	je     0x404b09
404aed:	51                   	push   %ecx
404aee:	50                   	push   %eax
404aef:	68 c0 b8 44 00       	push   $0x44b8c0
404af4:	53                   	push   %ebx
404af5:	e8 9d 36 00 00       	call   0x408197
404afa:	8b f0                	mov    %eax,%esi
404afc:	85 f6                	test   %esi,%esi
404afe:	79 07                	jns    0x404b07
404b00:	68 b0 bd 44 00       	push   $0x44bdb0
404b05:	eb 22                	jmp    0x404b29
404b07:	33 c9                	xor    %ecx,%ecx
404b09:	8d 45 08             	lea    0x8(%ebp),%eax
404b0c:	89 4d 08             	mov    %ecx,0x8(%ebp)
404b0f:	50                   	push   %eax
404b10:	57                   	push   %edi
404b11:	e8 7a fb ff ff       	call   0x404690
404b16:	8b f0                	mov    %eax,%esi
404b18:	85 f6                	test   %esi,%esi
404b1a:	78 08                	js     0x404b24
404b1c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
404b20:	74 0f                	je     0x404b31
404b22:	eb e3                	jmp    0x404b07
404b24:	68 00 be 44 00       	push   $0x44be00
404b29:	56                   	push   %esi
404b2a:	e8 00 b6 03 00       	call   0x44012f
404b2f:	59                   	pop    %ecx
404b30:	59                   	pop    %ecx
404b31:	57                   	push   %edi
404b32:	e8 b4 9c 01 00       	call   0x41e7eb
404b37:	53                   	push   %ebx
404b38:	e8 66 37 00 00       	call   0x4082a3
404b3d:	33 db                	xor    %ebx,%ebx
404b3f:	83 bf b0 04 00 00 ff 	cmpl   $0xffffffff,0x4b0(%edi)
404b46:	74 13                	je     0x404b5b
404b48:	53                   	push   %ebx
404b49:	ff b7 f8 00 00 00    	push   0xf8(%edi)
404b4f:	8d 87 a0 04 00 00    	lea    0x4a0(%edi),%eax
404b55:	50                   	push   %eax
404b56:	e8 8e 06 01 00       	call   0x4151e9
404b5b:	ff 77 34             	push   0x34(%edi)
404b5e:	ff 15 54 b3 44 00    	call   *0x44b354
404b64:	85 c0                	test   %eax,%eax
404b66:	74 0d                	je     0x404b75
404b68:	53                   	push   %ebx
404b69:	53                   	push   %ebx
404b6a:	6a 10                	push   $0x10
404b6c:	ff 77 34             	push   0x34(%edi)
404b6f:	ff 15 50 b3 44 00    	call   *0x44b350
404b75:	5f                   	pop    %edi
404b76:	8b c6                	mov    %esi,%eax
404b78:	5e                   	pop    %esi
404b79:	5b                   	pop    %ebx
404b7a:	8b e5                	mov    %ebp,%esp
404b7c:	5d                   	pop    %ebp
404b7d:	c2 08 00             	ret    $0x8
404b80:	55                   	push   %ebp
404b81:	8b ec                	mov    %esp,%ebp
404b83:	83 ec 0c             	sub    $0xc,%esp
404b86:	56                   	push   %esi
404b87:	57                   	push   %edi
404b88:	8d 45 fc             	lea    -0x4(%ebp),%eax
404b8b:	33 ff                	xor    %edi,%edi
404b8d:	50                   	push   %eax
404b8e:	ff 75 08             	push   0x8(%ebp)
404b91:	89 7d fc             	mov    %edi,-0x4(%ebp)
404b94:	89 7d f8             	mov    %edi,-0x8(%ebp)
404b97:	89 7d f4             	mov    %edi,-0xc(%ebp)
404b9a:	e8 58 ac 00 00       	call   0x40f7f7
404b9f:	8b f0                	mov    %eax,%esi
404ba1:	85 f6                	test   %esi,%esi
404ba3:	79 0f                	jns    0x404bb4
404ba5:	68 5c bf 44 00       	push   $0x44bf5c
404baa:	56                   	push   %esi
404bab:	e8 7f b5 03 00       	call   0x44012f
404bb0:	59                   	pop    %ecx
404bb1:	59                   	pop    %ecx
404bb2:	eb 4a                	jmp    0x404bfe
404bb4:	57                   	push   %edi
404bb5:	8d 45 f8             	lea    -0x8(%ebp),%eax
404bb8:	50                   	push   %eax
404bb9:	e8 19 e8 ff ff       	call   0x4033d7
404bbe:	8b f0                	mov    %eax,%esi
404bc0:	85 f6                	test   %esi,%esi
404bc2:	79 07                	jns    0x404bcb
404bc4:	68 90 bf 44 00       	push   $0x44bf90
404bc9:	eb df                	jmp    0x404baa
404bcb:	39 7d fc             	cmp    %edi,-0x4(%ebp)
404bce:	8d 45 f4             	lea    -0xc(%ebp),%eax
404bd1:	50                   	push   %eax
404bd2:	ff 75 0c             	push   0xc(%ebp)
404bd5:	b8 24 b5 44 00       	mov    $0x44b524,%eax
404bda:	0f 47 45 fc          	cmova  -0x4(%ebp),%eax
404bde:	50                   	push   %eax
404bdf:	ff 75 f8             	push   -0x8(%ebp)
404be2:	e8 46 bc 03 00       	call   0x44082d
404be7:	8b f0                	mov    %eax,%esi
404be9:	85 f6                	test   %esi,%esi
404beb:	79 11                	jns    0x404bfe
404bed:	ff 75 f8             	push   -0x8(%ebp)
404bf0:	68 b4 bf 44 00       	push   $0x44bfb4
404bf5:	56                   	push   %esi
404bf6:	e8 34 b5 03 00       	call   0x44012f
404bfb:	83 c4 0c             	add    $0xc,%esp
404bfe:	39 7d f4             	cmp    %edi,-0xc(%ebp)
404c01:	74 0c                	je     0x404c0f
404c03:	ff 75 f4             	push   -0xc(%ebp)
404c06:	ff 15 d4 b0 44 00    	call   *0x44b0d4
404c0c:	89 7d f4             	mov    %edi,-0xc(%ebp)
404c0f:	39 7d fc             	cmp    %edi,-0x4(%ebp)
404c12:	74 08                	je     0x404c1c
404c14:	ff 75 fc             	push   -0x4(%ebp)
404c17:	e8 d3 08 04 00       	call   0x4454ef
404c1c:	39 7d f8             	cmp    %edi,-0x8(%ebp)
404c1f:	74 08                	je     0x404c29
404c21:	ff 75 f8             	push   -0x8(%ebp)
404c24:	e8 c6 08 04 00       	call   0x4454ef
404c29:	5f                   	pop    %edi
404c2a:	8b c6                	mov    %esi,%eax
404c2c:	5e                   	pop    %esi
404c2d:	8b e5                	mov    %ebp,%esp
404c2f:	5d                   	pop    %ebp
404c30:	c2 08 00             	ret    $0x8
404c33:	55                   	push   %ebp
404c34:	8b ec                	mov    %esp,%ebp
404c36:	83 ec 70             	sub    $0x70,%esp
404c39:	53                   	push   %ebx
404c3a:	56                   	push   %esi
404c3b:	57                   	push   %edi
404c3c:	33 f6                	xor    %esi,%esi
404c3e:	8d 45 90             	lea    -0x70(%ebp),%eax
404c41:	6a 44                	push   $0x44
404c43:	56                   	push   %esi
404c44:	50                   	push   %eax
404c45:	89 75 f4             	mov    %esi,-0xc(%ebp)
404c48:	89 75 e4             	mov    %esi,-0x1c(%ebp)
404c4b:	89 75 f8             	mov    %esi,-0x8(%ebp)