4188f7:	e9 6e c3 fe ff       	jmp    0x404c6a
4188fc:	f6 c2 04             	test   $0x4,%dl
4188ff:	74 11                	je     0x418912
418901:	8b 4c 24 10          	mov    0x10(%esp),%ecx
418905:	51                   	push   %ecx
418906:	8b ce                	mov    %esi,%ecx
418908:	e8 15 29 01 00       	call   0x42b222
41890d:	e9 74 c3 fe ff       	jmp    0x404c86
418912:	f7 c2 02 04 00 00    	test   $0x402,%edx
418918:	0f 84 6f 06 00 00    	je     0x418f8d
41891e:	ff 74 24 10          	push   0x10(%esp)
418922:	8b ce                	mov    %esi,%ecx
418924:	52                   	push   %edx
418925:	8b 57 5c             	mov    0x5c(%edi),%edx
418928:	e8 20 20 01 00       	call   0x42a94d
41892d:	8b d8                	mov    %eax,%ebx
41892f:	33 c0                	xor    %eax,%eax
418931:	89 44 24 28          	mov    %eax,0x28(%esp)
418935:	85 db                	test   %ebx,%ebx
418937:	0f 85 a8 04 00 00    	jne    0x418de5
41893d:	f7 07 00 04 00 00    	testl  $0x400,(%edi)
418943:	74 3a                	je     0x41897f
418945:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
418949:	66 39 43 02          	cmp    %ax,0x2(%ebx)
41894d:	74 25                	je     0x418974
41894f:	8b 15 90 e1 42 00    	mov    0x42e190,%edx
418955:	8b ce                	mov    %esi,%ecx
418957:	8d 52 13             	lea    0x13(%edx),%edx
41895a:	e8 52 f7 00 00       	call   0x4280b1
41895f:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
418963:	8b 17                	mov    (%edi),%edx
418965:	51                   	push   %ecx
418966:	8d 4b 30             	lea    0x30(%ebx),%ecx
418969:	8d 04 41             	lea    (%ecx,%eax,2),%eax
41896c:	8b ce                	mov    %esi,%ecx
41896e:	50                   	push   %eax
41896f:	e8 24 bf fe ff       	call   0x404898
418974:	8b 15 90 e1 42 00    	mov    0x42e190,%edx
41897a:	83 c2 20             	add    $0x20,%edx
41897d:	eb 09                	jmp    0x418988
41897f:	8b 15 90 e1 42 00    	mov    0x42e190,%edx
418985:	83 c2 13             	add    $0x13,%edx
418988:	8b ce                	mov    %esi,%ecx
41898a:	e8 22 f7 00 00       	call   0x4280b1
41898f:	f7 07 00 00 04 00    	testl  $0x40000,(%edi)
418995:	bb a0 3f 40 00       	mov    $0x403fa0,%ebx
41899a:	89 5c 24 14          	mov    %ebx,0x14(%esp)
41899e:	0f 84 e5 01 00 00    	je     0x418b89
4189a4:	33 c0                	xor    %eax,%eax
4189a6:	c7 44 24 1c 01 01 00 	movl   $0x101,0x1c(%esp)
4189ad:	00
4189ae:	b9 04 01 00 00       	mov    $0x104,%ecx
4189b3:	89 44 24 0c          	mov    %eax,0xc(%esp)
4189b7:	51                   	push   %ecx
4189b8:	50                   	push   %eax
4189b9:	89 84 24 48 02 00 00 	mov    %eax,0x248(%esp)
4189c0:	8d 44 24 40          	lea    0x40(%esp),%eax
4189c4:	50                   	push   %eax
4189c5:	c7 44 24 30 10 00 00 	movl   $0x10,0x30(%esp)
4189cc:	00
4189cd:	c6 84 24 50 02 00 00 	movb   $0x1,0x250(%esp)
4189d4:	01
4189d5:	89 8c 24 54 02 00 00 	mov    %ecx,0x254(%esp)
4189dc:	e8 dc f5 ff ff       	call   0x417fbd
4189e1:	33 c0                	xor    %eax,%eax
4189e3:	8d 4c 24 44          	lea    0x44(%esp),%ecx
4189e7:	83 c4 0c             	add    $0xc,%esp
4189ea:	38 84 24 44 02 00 00 	cmp    %al,0x244(%esp)
4189f1:	0f 94 c0             	sete   %al
4189f4:	48                   	dec    %eax
4189f5:	25 e3 7e 00 00       	and    $0x7ee3,%eax
4189fa:	05 04 01 00 00       	add    $0x104,%eax
4189ff:	50                   	push   %eax
418a00:	e8 eb 59 ff ff       	call   0x40e3f0
418a05:	85 c0                	test   %eax,%eax
418a07:	79 12                	jns    0x418a1b
418a09:	53                   	push   %ebx
418a0a:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418a0f:	8b ce                	mov    %esi,%ecx
418a11:	e8 ee db ff ff       	call   0x416604
418a16:	e9 52 01 00 00       	jmp    0x418b6d
418a1b:	b9 00 00 01 00       	mov    $0x10000,%ecx
418a20:	e8 ab 52 ff ff       	call   0x40dcd0
418a25:	8b d8                	mov    %eax,%ebx
418a27:	85 db                	test   %ebx,%ebx
418a29:	75 16                	jne    0x418a41
418a2b:	68 a0 3f 40 00       	push   $0x403fa0
418a30:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418a35:	8b ce                	mov    %esi,%ecx
418a37:	e8 c8 db ff ff       	call   0x416604
418a3c:	e9 0f 01 00 00       	jmp    0x418b50
418a41:	8b 8c 24 40 02 00 00 	mov    0x240(%esp),%ecx
418a48:	85 c9                	test   %ecx,%ecx
418a4a:	75 04                	jne    0x418a50
418a4c:	8d 4c 24 38          	lea    0x38(%esp),%ecx
418a50:	8b 44 24 10          	mov    0x10(%esp),%eax
418a54:	8b 94 24 48 02 00 00 	mov    0x248(%esp),%edx
418a5b:	83 c0 2c             	add    $0x2c,%eax
418a5e:	50                   	push   %eax
418a5f:	8b 44 24 1c          	mov    0x1c(%esp),%eax
418a63:	ff 70 04             	push   0x4(%eax)
418a66:	e8 4d aa ff ff       	call   0x4134b8
418a6b:	85 c0                	test   %eax,%eax
418a6d:	0f 85 c5 00 00 00    	jne    0x418b38
418a73:	8b 84 24 40 02 00 00 	mov    0x240(%esp),%eax
418a7a:	85 c0                	test   %eax,%eax
418a7c:	75 04                	jne    0x418a82
418a7e:	8d 44 24 38          	lea    0x38(%esp),%eax
418a82:	8d 4c 24 30          	lea    0x30(%esp),%ecx
418a86:	51                   	push   %ecx
418a87:	68 00 00 01 00       	push   $0x10000
418a8c:	53                   	push   %ebx
418a8d:	6a 01                	push   $0x1
418a8f:	50                   	push   %eax
418a90:	ff 15 0c a3 44 00    	call   *0x44a30c
418a96:	85 c0                	test   %eax,%eax
418a98:	0f 84 9a 00 00 00    	je     0x418b38
418a9e:	8d 44 24 34          	lea    0x34(%esp),%eax
418aa2:	50                   	push   %eax
418aa3:	8d 44 24 10          	lea    0x10(%esp),%eax
418aa7:	50                   	push   %eax
418aa8:	53                   	push   %ebx
418aa9:	ff 15 08 a3 44 00    	call   *0x44a308
418aaf:	85 c0                	test   %eax,%eax
418ab1:	0f 84 81 00 00 00    	je     0x418b38
418ab7:	e8 33 e8 ff ff       	call   0x4172ef
418abc:	84 c0                	test   %al,%al
418abe:	74 5f                	je     0x418b1f
418ac0:	8d 44 24 2c          	lea    0x2c(%esp),%eax
418ac4:	50                   	push   %eax
418ac5:	8d 44 24 28          	lea    0x28(%esp),%eax
418ac9:	50                   	push   %eax
418aca:	8d 84 24 98 02 00 00 	lea    0x298(%esp),%eax
418ad1:	50                   	push   %eax
418ad2:	8d 44 24 28          	lea    0x28(%esp),%eax
418ad6:	50                   	push   %eax
418ad7:	8d 84 24 c0 02 00 00 	lea    0x2c0(%esp),%eax
418ade:	50                   	push   %eax
418adf:	ff 74 24 20          	push   0x20(%esp)
418ae3:	33 c0                	xor    %eax,%eax
418ae5:	50                   	push   %eax
418ae6:	ff 15 34 d0 44 00    	call   *0x44d034
418aec:	85 c0                	test   %eax,%eax
418aee:	74 2f                	je     0x418b1f
418af0:	8d 84 24 90 02 00 00 	lea    0x290(%esp),%eax
418af7:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418afc:	50                   	push   %eax
418afd:	8b ce                	mov    %esi,%ecx
418aff:	e8 00 db ff ff       	call   0x416604
418b04:	68 0c 25 40 00       	push   $0x40250c
418b09:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418b0e:	8b ce                	mov    %esi,%ecx
418b10:	e8 ef da ff ff       	call   0x416604
418b15:	8d 84 24 b0 02 00 00 	lea    0x2b0(%esp),%eax
418b1c:	50                   	push   %eax
418b1d:	eb 05                	jmp    0x418b24
418b1f:	68 a0 3f 40 00       	push   $0x403fa0
418b24:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418b29:	8b ce                	mov    %esi,%ecx
418b2b:	e8 d4 da ff ff       	call   0x416604
418b30:	33 c0                	xor    %eax,%eax
418b32:	89 44 24 0c          	mov    %eax,0xc(%esp)
418b36:	eb 11                	jmp    0x418b49
418b38:	68 a0 3f 40 00       	push   $0x403fa0
418b3d:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418b42:	8b ce                	mov    %esi,%ecx
418b44:	e8 bb da ff ff       	call   0x416604
418b49:	8b cb                	mov    %ebx,%ecx
418b4b:	e8 10 51 ff ff       	call   0x40dc60
418b50:	f7 07 00 04 00 00    	testl  $0x400,(%edi)
418b56:	8b 15 90 e1 42 00    	mov    0x42e190,%edx
418b5c:	74 05                	je     0x418b63
418b5e:	83 c2 37             	add    $0x37,%edx
418b61:	eb 03                	jmp    0x418b66
418b63:	83 c2 2a             	add    $0x2a,%edx
418b66:	8b ce                	mov    %esi,%ecx
418b68:	e8 44 f5 00 00       	call   0x4280b1
418b6d:	8b 84 24 40 02 00 00 	mov    0x240(%esp),%eax
418b74:	33 c9                	xor    %ecx,%ecx
418b76:	89 8c 24 40 02 00 00 	mov    %ecx,0x240(%esp)
418b7d:	85 c0                	test   %eax,%eax
418b7f:	74 08                	je     0x418b89
418b81:	50                   	push   %eax
418b82:	ff 15 e0 a3 44 00    	call   *0x44a3e0
418b88:	59                   	pop    %ecx
418b89:	8b 44 24 10          	mov    0x10(%esp),%eax
418b8d:	8b 17                	mov    (%edi),%edx
418b8f:	83 c0 2c             	add    $0x2c,%eax
418b92:	51                   	push   %ecx
418b93:	50                   	push   %eax
418b94:	8b ce                	mov    %esi,%ecx
418b96:	89 44 24 24          	mov    %eax,0x24(%esp)
418b9a:	e8 f9 bc fe ff       	call   0x404898
418b9f:	8b d8                	mov    %eax,%ebx
418ba1:	8b 44 24 10          	mov    0x10(%esp),%eax
418ba5:	f7 00 00 04 00 00    	testl  $0x400,(%eax)
418bab:	0f 84 32 02 00 00    	je     0x418de3
418bb1:	f7 40 24 00 00 00 20 	testl  $0x20000000,0x24(%eax)
418bb8:	0f 84 25 02 00 00    	je     0x418de3
418bbe:	b9 04 01 00 00       	mov    $0x104,%ecx
418bc3:	c6 84 24 44 02 00 00 	movb   $0x1,0x244(%esp)
418bca:	01
418bcb:	33 c0                	xor    %eax,%eax
418bcd:	89 8c 24 48 02 00 00 	mov    %ecx,0x248(%esp)
418bd4:	51                   	push   %ecx
418bd5:	50                   	push   %eax
418bd6:	89 84 24 48 02 00 00 	mov    %eax,0x248(%esp)
418bdd:	8d 44 24 40          	lea    0x40(%esp),%eax
418be1:	50                   	push   %eax
418be2:	e8 d6 f3 ff ff       	call   0x417fbd
418be7:	33 c0                	xor    %eax,%eax
418be9:	8d 4c 24 44          	lea    0x44(%esp),%ecx
418bed:	83 c4 0c             	add    $0xc,%esp
418bf0:	38 84 24 44 02 00 00 	cmp    %al,0x244(%esp)
418bf7:	0f 94 c0             	sete   %al
418bfa:	48                   	dec    %eax
418bfb:	25 e3 7e 00 00       	and    $0x7ee3,%eax
418c00:	05 04 01 00 00       	add    $0x104,%eax
418c05:	50                   	push   %eax
418c06:	e8 e5 57 ff ff       	call   0x40e3f0
418c0b:	85 c0                	test   %eax,%eax
418c0d:	0f 88 a3 01 00 00    	js     0x418db6
418c13:	8b 8c 24 40 02 00 00 	mov    0x240(%esp),%ecx
418c1a:	85 c9                	test   %ecx,%ecx
418c1c:	75 04                	jne    0x418c22
418c1e:	8d 4c 24 38          	lea    0x38(%esp),%ecx
418c22:	8b 44 24 18          	mov    0x18(%esp),%eax
418c26:	ff 74 24 1c          	push   0x1c(%esp)
418c2a:	8b 94 24 4c 02 00 00 	mov    0x24c(%esp),%edx
418c31:	ff 70 04             	push   0x4(%eax)
418c34:	e8 7f a8 ff ff       	call   0x4134b8
418c39:	85 c0                	test   %eax,%eax
418c3b:	0f 85 75 01 00 00    	jne    0x418db6
418c41:	8b 84 24 40 02 00 00 	mov    0x240(%esp),%eax
418c48:	85 c0                	test   %eax,%eax
418c4a:	75 04                	jne    0x418c50
418c4c:	8d 44 24 38          	lea    0x38(%esp),%eax
418c50:	33 c9                	xor    %ecx,%ecx
418c52:	51                   	push   %ecx
418c53:	68 00 00 20 02       	push   $0x2200000
418c58:	6a 03                	push   $0x3
418c5a:	51                   	push   %ecx
418c5b:	6a 07                	push   $0x7
418c5d:	6a 08                	push   $0x8
418c5f:	50                   	push   %eax
418c60:	ff 15 ac a0 44 00    	call   *0x44a0ac
418c66:	89 44 24 1c          	mov    %eax,0x1c(%esp)
418c6a:	83 f8 ff             	cmp    $0xffffffff,%eax
418c6d:	75 0e                	jne    0x418c7d
418c6f:	68 b4 3f 40 00       	push   $0x403fb4
418c74:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418c79:	8b ce                	mov    %esi,%ecx
418c7b:	eb 33                	jmp    0x418cb0
418c7d:	33 d2                	xor    %edx,%edx
418c7f:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
418c83:	52                   	push   %edx
418c84:	51                   	push   %ecx
418c85:	68 02 40 00 00       	push   $0x4002
418c8a:	8d 8c 24 bc 02 00 00 	lea    0x2bc(%esp),%ecx
418c91:	51                   	push   %ecx
418c92:	52                   	push   %edx
418c93:	52                   	push   %edx
418c94:	68 a8 00 09 00       	push   $0x900a8
418c99:	50                   	push   %eax
418c9a:	ff 15 54 a1 44 00    	call   *0x44a154
418ca0:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418ca5:	8b ce                	mov    %esi,%ecx
418ca7:	85 c0                	test   %eax,%eax
418ca9:	75 0f                	jne    0x418cba
418cab:	68 c0 3f 40 00       	push   $0x403fc0
418cb0:	e8 4f d9 ff ff       	call   0x416604
418cb5:	e9 f0 00 00 00       	jmp    0x418daa
418cba:	68 d0 3f 40 00       	push   $0x403fd0
418cbf:	e8 40 d9 ff ff       	call   0x416604
418cc4:	81 bc 24 b0 02 00 00 	cmpl   $0xa0000003,0x2b0(%esp)
418ccb:	03 00 00 a0
418ccf:	75 34                	jne    0x418d05
418cd1:	0f b7 84 24 bc 02 00 	movzwl 0x2bc(%esp),%eax
418cd8:	00
418cd9:	0f b7 bc 24 be 02 00 	movzwl 0x2be(%esp),%edi
418ce0:	00
418ce1:	d1 e8                	shr    $1,%eax
418ce3:	8d 84 44 c0 02 00 00 	lea    0x2c0(%esp,%eax,2),%eax
418cea:	89 44 24 14          	mov    %eax,0x14(%esp)
418cee:	85 ff                	test   %edi,%edi
418cf0:	75 63                	jne    0x418d55
418cf2:	0f b7 84 24 b8 02 00 	movzwl 0x2b8(%esp),%eax
418cf9:	00
418cfa:	d1 e8                	shr    $1,%eax
418cfc:	8d 84 44 c0 02 00 00 	lea    0x2c0(%esp,%eax,2),%eax
418d03:	eb 3f                	jmp    0x418d44
418d05:	81 bc 24 b0 02 00 00 	cmpl   $0xa000000c,0x2b0(%esp)
418d0c:	0c 00 00 a0
418d10:	75 40                	jne    0x418d52
418d12:	0f b7 84 24 bc 02 00 	movzwl 0x2bc(%esp),%eax
418d19:	00
418d1a:	0f b7 bc 24 be 02 00 	movzwl 0x2be(%esp),%edi
418d21:	00
418d22:	d1 e8                	shr    $1,%eax
418d24:	8d 84 44 c4 02 00 00 	lea    0x2c4(%esp,%eax,2),%eax
418d2b:	89 44 24 14          	mov    %eax,0x14(%esp)
418d2f:	85 ff                	test   %edi,%edi
418d31:	75 22                	jne    0x418d55
418d33:	0f b7 84 24 b8 02 00 	movzwl 0x2b8(%esp),%eax
418d3a:	00
418d3b:	d1 e8                	shr    $1,%eax
418d3d:	8d 84 44 c4 02 00 00 	lea    0x2c4(%esp,%eax,2),%eax
418d44:	0f b7 bc 24 ba 02 00 	movzwl 0x2ba(%esp),%edi
418d4b:	00
418d4c:	89 44 24 14          	mov    %eax,0x14(%esp)
418d50:	eb 03                	jmp    0x418d55
418d52:	6a 06                	push   $0x6
418d54:	5f                   	pop    %edi
418d55:	8d 4f 02             	lea    0x2(%edi),%ecx
418d58:	e8 73 4f ff ff       	call   0x40dcd0
418d5d:	89 44 24 0c          	mov    %eax,0xc(%esp)
418d61:	85 c0                	test   %eax,%eax
418d63:	74 30                	je     0x418d95
418d65:	57                   	push   %edi
418d66:	ff 74 24 18          	push   0x18(%esp)
418d6a:	50                   	push   %eax
418d6b:	e8 cc ee ff ff       	call   0x417c3c
418d70:	8b 44 24 18          	mov    0x18(%esp),%eax
418d74:	83 c4 0c             	add    $0xc,%esp
418d77:	d1 ef                	shr    $1,%edi
418d79:	33 c9                	xor    %ecx,%ecx
418d7b:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418d80:	50                   	push   %eax
418d81:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
418d85:	8b ce                	mov    %esi,%ecx
418d87:	e8 78 d8 ff ff       	call   0x416604
418d8c:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
418d90:	e8 cb 4e ff ff       	call   0x40dc60
418d95:	68 d8 3f 40 00       	push   $0x403fd8
418d9a:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418d9f:	8b ce                	mov    %esi,%ecx
418da1:	e8 5e d8 ff ff       	call   0x416604
418da6:	8b 7c 24 20          	mov    0x20(%esp),%edi
418daa:	ff 74 24 1c          	push   0x1c(%esp)
418dae:	ff 15 1c a1 44 00    	call   *0x44a11c
418db4:	eb 11                	jmp    0x418dc7
418db6:	68 a8 3f 40 00       	push   $0x403fa8
418dbb:	ba 00 1f 40 00       	mov    $0x401f00,%edx
418dc0:	8b ce                	mov    %esi,%ecx
418dc2:	e8 3d d8 ff ff       	call   0x416604
418dc7:	8b 84 24 40 02 00 00 	mov    0x240(%esp),%eax
418dce:	33 c9                	xor    %ecx,%ecx
418dd0:	89 8c 24 40 02 00 00 	mov    %ecx,0x240(%esp)
418dd7:	85 c0                	test   %eax,%eax
418dd9:	74 08                	je     0x418de3