409971:	8b d0                	mov    %eax,%edx
409973:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
409979:	ff d7                	call   *%edi
40997b:	50                   	push   %eax
40997c:	68 9c 77 40 00       	push   $0x40779c
409981:	ff d6                	call   *%esi
409983:	8d 95 14 ff ff ff    	lea    -0xec(%ebp),%edx
409989:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
40998f:	52                   	push   %edx
409990:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
409996:	50                   	push   %eax
409997:	c7 85 14 ff ff ff 08 	movl   $0x8,-0xec(%ebp)
40999e:	00 00 00
4099a1:	ff 15 8c 11 40 00    	call   *0x40118c
4099a7:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
4099ad:	51                   	push   %ecx
4099ae:	8d 95 e4 fe ff ff    	lea    -0x11c(%ebp),%edx
4099b4:	52                   	push   %edx
4099b5:	c7 85 ec fe ff ff 0c 	movl   $0xc,-0x114(%ebp)
4099bc:	00 00 00
4099bf:	c7 85 e4 fe ff ff 02 	movl   $0x8002,-0x11c(%ebp)
4099c6:	80 00 00
4099c9:	ff 15 60 11 40 00    	call   *0x401160
4099cf:	66 89 85 8c fe ff ff 	mov    %ax,-0x174(%ebp)
4099d6:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
4099dc:	50                   	push   %eax
4099dd:	8d 8d 28 ff ff ff    	lea    -0xd8(%ebp),%ecx
4099e3:	51                   	push   %ecx
4099e4:	8d 95 2c ff ff ff    	lea    -0xd4(%ebp),%edx
4099ea:	52                   	push   %edx
4099eb:	6a 03                	push   $0x3
4099ed:	ff 15 48 11 40 00    	call   *0x401148
4099f3:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
4099f9:	50                   	push   %eax
4099fa:	8d 8d 14 ff ff ff    	lea    -0xec(%ebp),%ecx
409a00:	51                   	push   %ecx
409a01:	6a 02                	push   $0x2
409a03:	ff 15 28 10 40 00    	call   *0x401028
409a09:	83 c4 1c             	add    $0x1c,%esp
409a0c:	66 39 9d 8c fe ff ff 	cmp    %bx,-0x174(%ebp)
409a13:	74 73                	je     0x409a88
409a15:	83 ec 10             	sub    $0x10,%esp
409a18:	8b d4                	mov    %esp,%edx
409a1a:	b9 08 00 00 00       	mov    $0x8,%ecx
409a1f:	89 0a                	mov    %ecx,(%edx)
409a21:	89 8d e4 fe ff ff    	mov    %ecx,-0x11c(%ebp)
409a27:	8b 8d e8 fe ff ff    	mov    -0x118(%ebp),%ecx
409a2d:	89 4a 04             	mov    %ecx,0x4(%edx)
409a30:	b8 98 79 40 00       	mov    $0x407998,%eax
409a35:	89 42 08             	mov    %eax,0x8(%edx)
409a38:	89 85 ec fe ff ff    	mov    %eax,-0x114(%ebp)
409a3e:	8b 85 f0 fe ff ff    	mov    -0x110(%ebp),%eax
409a44:	89 42 0c             	mov    %eax,0xc(%edx)
409a47:	8b 95 c8 fe ff ff    	mov    -0x138(%ebp),%edx
409a4d:	83 ec 10             	sub    $0x10,%esp
409a50:	8b cc                	mov    %esp,%ecx
409a52:	b8 03 00 00 00       	mov    $0x3,%eax
409a57:	89 01                	mov    %eax,(%ecx)
409a59:	89 51 04             	mov    %edx,0x4(%ecx)
409a5c:	b8 d3 aa 3b 00       	mov    $0x3baad3,%eax
409a61:	89 41 08             	mov    %eax,0x8(%ecx)
409a64:	8b 85 d0 fe ff ff    	mov    -0x130(%ebp),%eax
409a6a:	6a 02                	push   $0x2
409a6c:	89 41 0c             	mov    %eax,0xc(%ecx)
409a6f:	68 ac 79 40 00       	push   $0x4079ac
409a74:	8d 4d b0             	lea    -0x50(%ebp),%ecx
409a77:	51                   	push   %ecx
409a78:	ff 15 c8 10 40 00    	call   *0x4010c8
409a7e:	50                   	push   %eax
409a7f:	ff 15 6c 11 40 00    	call   *0x40116c
409a85:	83 c4 2c             	add    $0x2c,%esp
409a88:	68 78 77 40 00       	push   $0x407778
409a8d:	68 80 77 40 00       	push   $0x407780
409a92:	ff d6                	call   *%esi
409a94:	8b d0                	mov    %eax,%edx
409a96:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
409a9c:	ff d7                	call   *%edi
409a9e:	50                   	push   %eax
409a9f:	68 88 77 40 00       	push   $0x407788
409aa4:	ff d6                	call   *%esi
409aa6:	8b d0                	mov    %eax,%edx
409aa8:	8d 8d 28 ff ff ff    	lea    -0xd8(%ebp),%ecx
409aae:	ff d7                	call   *%edi
409ab0:	50                   	push   %eax
409ab1:	68 90 77 40 00       	push   $0x407790
409ab6:	ff d6                	call   *%esi
409ab8:	8b d0                	mov    %eax,%edx
409aba:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
409ac0:	ff d7                	call   *%edi
409ac2:	50                   	push   %eax
409ac3:	68 9c 77 40 00       	push   $0x40779c
409ac8:	ff d6                	call   *%esi
409aca:	8d 95 14 ff ff ff    	lea    -0xec(%ebp),%edx
409ad0:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
409ad6:	52                   	push   %edx
409ad7:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
409add:	50                   	push   %eax
409ade:	c7 85 14 ff ff ff 08 	movl   $0x8,-0xec(%ebp)
409ae5:	00 00 00
409ae8:	ff 15 8c 11 40 00    	call   *0x40118c
409aee:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
409af4:	51                   	push   %ecx
409af5:	8d 95 e4 fe ff ff    	lea    -0x11c(%ebp),%edx
409afb:	52                   	push   %edx
409afc:	c7 85 ec fe ff ff 0c 	movl   $0xc,-0x114(%ebp)
409b03:	00 00 00
409b06:	c7 85 e4 fe ff ff 02 	movl   $0x8002,-0x11c(%ebp)
409b0d:	80 00 00
409b10:	ff 15 60 11 40 00    	call   *0x401160
409b16:	66 89 85 8c fe ff ff 	mov    %ax,-0x174(%ebp)
409b1d:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
409b23:	50                   	push   %eax
409b24:	8d 8d 28 ff ff ff    	lea    -0xd8(%ebp),%ecx
409b2a:	51                   	push   %ecx
409b2b:	8d 95 2c ff ff ff    	lea    -0xd4(%ebp),%edx
409b31:	52                   	push   %edx
409b32:	6a 03                	push   $0x3
409b34:	ff 15 48 11 40 00    	call   *0x401148
409b3a:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
409b40:	50                   	push   %eax
409b41:	8d 8d 14 ff ff ff    	lea    -0xec(%ebp),%ecx
409b47:	51                   	push   %ecx
409b48:	6a 02                	push   $0x2
409b4a:	ff 15 28 10 40 00    	call   *0x401028
409b50:	83 c4 1c             	add    $0x1c,%esp
409b53:	66 39 9d 8c fe ff ff 	cmp    %bx,-0x174(%ebp)
409b5a:	74 73                	je     0x409bcf
409b5c:	83 ec 10             	sub    $0x10,%esp
409b5f:	8b d4                	mov    %esp,%edx
409b61:	b9 08 00 00 00       	mov    $0x8,%ecx
409b66:	89 0a                	mov    %ecx,(%edx)
409b68:	89 8d e4 fe ff ff    	mov    %ecx,-0x11c(%ebp)
409b6e:	8b 8d e8 fe ff ff    	mov    -0x118(%ebp),%ecx
409b74:	89 4a 04             	mov    %ecx,0x4(%edx)
409b77:	b8 ec 79 40 00       	mov    $0x4079ec,%eax
409b7c:	89 42 08             	mov    %eax,0x8(%edx)
409b7f:	89 85 ec fe ff ff    	mov    %eax,-0x114(%ebp)
409b85:	8b 85 f0 fe ff ff    	mov    -0x110(%ebp),%eax
409b8b:	89 42 0c             	mov    %eax,0xc(%edx)
409b8e:	8b 95 c8 fe ff ff    	mov    -0x138(%ebp),%edx
409b94:	83 ec 10             	sub    $0x10,%esp
409b97:	8b cc                	mov    %esp,%ecx
409b99:	b8 03 00 00 00       	mov    $0x3,%eax
409b9e:	89 01                	mov    %eax,(%ecx)
409ba0:	89 51 04             	mov    %edx,0x4(%ecx)
409ba3:	b8 48 48 0e 00       	mov    $0xe4848,%eax
409ba8:	89 41 08             	mov    %eax,0x8(%ecx)
409bab:	8b 85 d0 fe ff ff    	mov    -0x130(%ebp),%eax
409bb1:	6a 02                	push   $0x2
409bb3:	89 41 0c             	mov    %eax,0xc(%ecx)
409bb6:	68 fc 79 40 00       	push   $0x4079fc
409bbb:	8d 4d 88             	lea    -0x78(%ebp),%ecx
409bbe:	51                   	push   %ecx
409bbf:	ff 15 c8 10 40 00    	call   *0x4010c8
409bc5:	50                   	push   %eax
409bc6:	ff 15 6c 11 40 00    	call   *0x40116c
409bcc:	83 c4 2c             	add    $0x2c,%esp
409bcf:	68 78 77 40 00       	push   $0x407778
409bd4:	68 80 77 40 00       	push   $0x407780
409bd9:	ff d6                	call   *%esi
409bdb:	8b d0                	mov    %eax,%edx
409bdd:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
409be3:	ff d7                	call   *%edi
409be5:	50                   	push   %eax
409be6:	68 88 77 40 00       	push   $0x407788
409beb:	ff d6                	call   *%esi
409bed:	8b d0                	mov    %eax,%edx
409bef:	8d 8d 28 ff ff ff    	lea    -0xd8(%ebp),%ecx
409bf5:	ff d7                	call   *%edi
409bf7:	50                   	push   %eax
409bf8:	68 90 77 40 00       	push   $0x407790
409bfd:	ff d6                	call   *%esi
409bff:	8b d0                	mov    %eax,%edx
409c01:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
409c07:	ff d7                	call   *%edi
409c09:	50                   	push   %eax
409c0a:	68 9c 77 40 00       	push   $0x40779c
409c0f:	ff d6                	call   *%esi
409c11:	8d 95 14 ff ff ff    	lea    -0xec(%ebp),%edx
409c17:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
409c1d:	52                   	push   %edx
409c1e:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
409c24:	50                   	push   %eax
409c25:	c7 85 14 ff ff ff 08 	movl   $0x8,-0xec(%ebp)
409c2c:	00 00 00
409c2f:	ff 15 8c 11 40 00    	call   *0x40118c
409c35:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
409c3b:	51                   	push   %ecx
409c3c:	8d 95 e4 fe ff ff    	lea    -0x11c(%ebp),%edx
409c42:	52                   	push   %edx
409c43:	c7 85 ec fe ff ff 0c 	movl   $0xc,-0x114(%ebp)
409c4a:	00 00 00
409c4d:	c7 85 e4 fe ff ff 02 	movl   $0x8002,-0x11c(%ebp)
409c54:	80 00 00
409c57:	ff 15 60 11 40 00    	call   *0x401160
409c5d:	66 8b f0             	mov    %ax,%si
409c60:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
409c66:	50                   	push   %eax
409c67:	8d 8d 28 ff ff ff    	lea    -0xd8(%ebp),%ecx
409c6d:	51                   	push   %ecx
409c6e:	8d 95 2c ff ff ff    	lea    -0xd4(%ebp),%edx
409c74:	52                   	push   %edx
409c75:	6a 03                	push   $0x3
409c77:	ff 15 48 11 40 00    	call   *0x401148
409c7d:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
409c83:	50                   	push   %eax
409c84:	8d 8d 14 ff ff ff    	lea    -0xec(%ebp),%ecx
409c8a:	51                   	push   %ecx
409c8b:	6a 02                	push   $0x2
409c8d:	ff 15 28 10 40 00    	call   *0x401028
409c93:	83 c4 1c             	add    $0x1c,%esp
409c96:	66 3b f3             	cmp    %bx,%si
409c99:	74 76                	je     0x409d11
409c9b:	83 ec 10             	sub    $0x10,%esp
409c9e:	8b fc                	mov    %esp,%edi
409ca0:	b9 08 00 00 00       	mov    $0x8,%ecx
409ca5:	89 0f                	mov    %ecx,(%edi)
409ca7:	89 8d e4 fe ff ff    	mov    %ecx,-0x11c(%ebp)
409cad:	8b 8d e8 fe ff ff    	mov    -0x118(%ebp),%ecx
409cb3:	89 4f 04             	mov    %ecx,0x4(%edi)
409cb6:	b8 20 7a 40 00       	mov    $0x407a20,%eax
409cbb:	89 47 08             	mov    %eax,0x8(%edi)
409cbe:	83 ec 10             	sub    $0x10,%esp
409cc1:	89 85 ec fe ff ff    	mov    %eax,-0x114(%ebp)
409cc7:	8b 85 f0 fe ff ff    	mov    -0x110(%ebp),%eax
409ccd:	89 47 0c             	mov    %eax,0xc(%edi)
409cd0:	8b 85 c8 fe ff ff    	mov    -0x138(%ebp),%eax
409cd6:	8b cc                	mov    %esp,%ecx
409cd8:	be 03 00 00 00       	mov    $0x3,%esi
409cdd:	89 31                	mov    %esi,(%ecx)
409cdf:	89 41 04             	mov    %eax,0x4(%ecx)
409ce2:	6a 02                	push   $0x2
409ce4:	ba 14 9c 59 00       	mov    $0x599c14,%edx
409ce9:	89 51 08             	mov    %edx,0x8(%ecx)
409cec:	8b 95 d0 fe ff ff    	mov    -0x130(%ebp),%edx
409cf2:	68 38 7a 40 00       	push   $0x407a38
409cf7:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
409cfd:	50                   	push   %eax
409cfe:	89 51 0c             	mov    %edx,0xc(%ecx)
409d01:	ff 15 c8 10 40 00    	call   *0x4010c8
409d07:	50                   	push   %eax
409d08:	ff 15 6c 11 40 00    	call   *0x40116c
409d0e:	83 c4 2c             	add    $0x2c,%esp
409d11:	ba 70 7a 40 00       	mov    $0x407a70,%edx
409d16:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
409d1c:	c7 85 ac fe ff ff ff 	movl   $0xffffffff,-0x154(%ebp)
409d23:	ff ff ff
409d26:	ff 15 40 11 40 00    	call   *0x401140
409d2c:	8b 3d e4 10 40 00    	mov    0x4010e4,%edi
409d32:	b9 63 00 00 00       	mov    $0x63,%ecx
409d37:	ff d7                	call   *%edi
409d39:	8b 75 08             	mov    0x8(%ebp),%esi
409d3c:	8b 0e                	mov    (%esi),%ecx
409d3e:	68 f7 5a 00 00       	push   $0x5af7
409d43:	68 80 61 c9 7a       	push   $0x7ac96180
409d48:	68 00 5b 00 00       	push   $0x5b00
409d4d:	68 20 4f ab c0       	push   $0xc0ab4f20
409d52:	8d 95 ac fe ff ff    	lea    -0x154(%ebp),%edx
409d58:	52                   	push   %edx
409d59:	88 85 b0 fe ff ff    	mov    %al,-0x150(%ebp)
409d5f:	8d 85 2c ff ff ff    	lea    -0xd4(%ebp),%eax
409d65:	50                   	push   %eax
409d66:	8d 95 b0 fe ff ff    	lea    -0x150(%ebp),%edx
409d6c:	52                   	push   %edx
409d6d:	68 3f 67 00 00       	push   $0x673f
409d72:	68 fc 5a 00 00       	push   $0x5afc
409d77:	68 00 e6 1a 16       	push   $0x161ae600
409d7c:	56                   	push   %esi
409d7d:	ff 91 f8 06 00 00    	call   *0x6f8(%ecx)
409d83:	3b c3                	cmp    %ebx,%eax
409d85:	7d 12                	jge    0x409d99
409d87:	68 f8 06 00 00       	push   $0x6f8
409d8c:	68 1c 76 40 00       	push   $0x40761c
409d91:	56                   	push   %esi
409d92:	50                   	push   %eax
409d93:	ff 15 48 10 40 00    	call   *0x401048
409d99:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
409d9f:	ff 15 ac 11 40 00    	call   *0x4011ac
409da5:	8b 06                	mov    (%esi),%eax
409da7:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
409dad:	51                   	push   %ecx
409dae:	68 62 c6 24 4b       	push   $0x4b24c662
409db3:	8d 95 a0 fe ff ff    	lea    -0x160(%ebp),%edx
409db9:	52                   	push   %edx
409dba:	8d 8d 98 fe ff ff    	lea    -0x168(%ebp),%ecx
409dc0:	51                   	push   %ecx
409dc1:	68 b0 7a 40 00       	push   $0x407ab0
409dc6:	68 9c 7a 40 00       	push   $0x407a9c
409dcb:	56                   	push   %esi
409dcc:	c7 85 a0 fe ff ff 7d 	movl   $0x16f17d,-0x160(%ebp)
409dd3:	f1 16 00
409dd6:	c7 85 98 fe ff ff 00 	movl   $0xda80000,-0x168(%ebp)
409ddd:	00 a8 0d
409de0:	c7 85 9c fe ff ff b7 	movl   $0x4202a1b7,-0x164(%ebp)
409de7:	a1 02 42
409dea:	ff 90 18 07 00 00    	call   *0x718(%eax)
409df0:	8b 16                	mov    (%esi),%edx
409df2:	8d 85 90 fe ff ff    	lea    -0x170(%ebp),%eax
409df8:	50                   	push   %eax
409df9:	68 04 5b 00 00       	push   $0x5b04
409dfe:	68 80 49 bb 2f       	push   $0x2fbb4980
409e03:	8d 8d 98 fe ff ff    	lea    -0x168(%ebp),%ecx
409e09:	51                   	push   %ecx
409e0a:	8d 85 a0 fe ff ff    	lea    -0x160(%ebp),%eax
409e10:	50                   	push   %eax
409e11:	68 bc 69 2e 00       	push   $0x2e69bc
409e16:	68 d0 7a 40 00       	push   $0x407ad0
409e1b:	56                   	push   %esi
409e1c:	c7 85 98 fe ff ff 20 	movl   $0xe6789920,-0x168(%ebp)
409e23:	99 78 e6
409e26:	c7 85 9c fe ff ff 04 	movl   $0x5b04,-0x164(%ebp)
409e2d:	5b 00 00
409e30:	c7 85 a0 fe ff ff 1c 	movl   $0x4b43391c,-0x160(%ebp)
409e37:	39 43 4b
409e3a:	ff 92 1c 07 00 00    	call   *0x71c(%edx)
409e40:	8b 0e                	mov    (%esi),%ecx
409e42:	8d 95 98 fe ff ff    	lea    -0x168(%ebp),%edx
409e48:	52                   	push   %edx
409e49:	8d 85 b0 fe ff ff    	lea    -0x150(%ebp),%eax
409e4f:	50                   	push   %eax
409e50:	56                   	push   %esi
409e51:	c7 85 b0 fe ff ff 76 	movl   $0x3876,-0x150(%ebp)
409e58:	38 00 00
409e5b:	ff 91 fc 06 00 00    	call   *0x6fc(%ecx)
409e61:	3b c3                	cmp    %ebx,%eax
409e63:	7d 12                	jge    0x409e77
409e65:	68 fc 06 00 00       	push   $0x6fc
409e6a:	68 1c 76 40 00       	push   $0x40761c
409e6f:	56                   	push   %esi
409e70:	50                   	push   %eax
409e71:	ff 15 48 10 40 00    	call   *0x401048
409e77:	b9 a6 00 00 00       	mov    $0xa6,%ecx
409e7c:	c7 85 a8 fe ff ff 42 	movl   $0x642,-0x158(%ebp)
409e83:	06 00 00
409e86:	c7 85 98 fe ff ff 00 	movl   $0xdf200000,-0x168(%ebp)
409e8d:	00 20 df
409e90:	c7 85 9c fe ff ff 43 	movl   $0x4202a243,-0x164(%ebp)
409e97:	a2 02 42
409e9a:	c7 85 ac fe ff ff 15 	movl   $0x115,-0x154(%ebp)
409ea1:	01 00 00
409ea4:	ff d7                	call   *%edi
409ea6:	8b 16                	mov    (%esi),%edx
409ea8:	8d 8d a4 fe ff ff    	lea    -0x15c(%ebp),%ecx
409eae:	88 85 b0 fe ff ff    	mov    %al,-0x150(%ebp)
409eb4:	51                   	push   %ecx
409eb5:	8d 85 a8 fe ff ff    	lea    -0x158(%ebp),%eax
409ebb:	50                   	push   %eax
409ebc:	b9 fd 00 00 00       	mov    $0xfd,%ecx
409ec1:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
409ec7:	ff d7                	call   *%edi