411aa5:	74 6f                	je     0x411b16
411aa7:	83 f8 27             	cmp    $0x27,%eax
411aaa:	74 6a                	je     0x411b16
411aac:	8b cb                	mov    %ebx,%ecx
411aae:	33 f6                	xor    %esi,%esi
411ab0:	8d 51 02             	lea    0x2(%ecx),%edx
411ab3:	66 8b 01             	mov    (%ecx),%ax
411ab6:	83 c1 02             	add    $0x2,%ecx
411ab9:	66 3b c6             	cmp    %si,%ax
411abc:	75 f5                	jne    0x411ab3
411abe:	2b ca                	sub    %edx,%ecx
411ac0:	33 d2                	xor    %edx,%edx
411ac2:	d1 f9                	sar    $1,%ecx
411ac4:	8d 41 01             	lea    0x1(%ecx),%eax
411ac7:	50                   	push   %eax
411ac8:	8d 8d 98 fd ff ff    	lea    -0x268(%ebp),%ecx
411ace:	89 85 94 fd ff ff    	mov    %eax,-0x26c(%ebp)
411ad4:	e8 0a e0 ff ff       	call   0x40fae3
411ad9:	8b f0                	mov    %eax,%esi
411adb:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
411ae1:	3b c6                	cmp    %esi,%eax
411ae3:	74 13                	je     0x411af8
411ae5:	ff 36                	push   (%esi)
411ae7:	8b c8                	mov    %eax,%ecx
411ae9:	e8 44 c7 ff ff       	call   0x40e232
411aee:	8b bd a4 fd ff ff    	mov    -0x25c(%ebp),%edi
411af4:	33 c0                	xor    %eax,%eax
411af6:	89 06                	mov    %eax,(%esi)
411af8:	83 bd 98 fd ff ff 00 	cmpl   $0x0,-0x268(%ebp)
411aff:	74 0c                	je     0x411b0d
411b01:	ff b5 98 fd ff ff    	push   -0x268(%ebp)
411b07:	ff 15 dc 62 42 00    	call   *0x4262dc
411b0d:	8b 95 94 fd ff ff    	mov    -0x26c(%ebp),%edx
411b13:	53                   	push   %ebx
411b14:	eb 7f                	jmp    0x411b95
411b16:	83 c3 02             	add    $0x2,%ebx
411b19:	8b f0                	mov    %eax,%esi
411b1b:	89 9d 94 fd ff ff    	mov    %ebx,-0x26c(%ebp)
411b21:	0f b7 03             	movzwl (%ebx),%eax
411b24:	66 85 c0             	test   %ax,%ax
411b27:	74 15                	je     0x411b3e
411b29:	8b d0                	mov    %eax,%edx
411b2b:	66 3b d6             	cmp    %si,%dx
411b2e:	74 0e                	je     0x411b3e
411b30:	83 c3 02             	add    $0x2,%ebx
411b33:	41                   	inc    %ecx
411b34:	0f b7 03             	movzwl (%ebx),%eax
411b37:	8b d0                	mov    %eax,%edx
411b39:	66 85 c0             	test   %ax,%ax
411b3c:	75 ed                	jne    0x411b2b
411b3e:	8d 41 01             	lea    0x1(%ecx),%eax
411b41:	33 d2                	xor    %edx,%edx
411b43:	50                   	push   %eax
411b44:	8d 8d 98 fd ff ff    	lea    -0x268(%ebp),%ecx
411b4a:	89 85 8c fd ff ff    	mov    %eax,-0x274(%ebp)
411b50:	e8 8e df ff ff       	call   0x40fae3
411b55:	8b f0                	mov    %eax,%esi
411b57:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
411b5d:	3b c6                	cmp    %esi,%eax
411b5f:	74 13                	je     0x411b74
411b61:	ff 36                	push   (%esi)
411b63:	8b c8                	mov    %eax,%ecx
411b65:	e8 c8 c6 ff ff       	call   0x40e232
411b6a:	8b bd a4 fd ff ff    	mov    -0x25c(%ebp),%edi
411b70:	33 c0                	xor    %eax,%eax
411b72:	89 06                	mov    %eax,(%esi)
411b74:	83 bd 98 fd ff ff 00 	cmpl   $0x0,-0x268(%ebp)
411b7b:	74 0c                	je     0x411b89
411b7d:	ff b5 98 fd ff ff    	push   -0x268(%ebp)
411b83:	ff 15 dc 62 42 00    	call   *0x4262dc
411b89:	ff b5 94 fd ff ff    	push   -0x26c(%ebp)
411b8f:	8b 95 8c fd ff ff    	mov    -0x274(%ebp),%edx
411b95:	8b cf                	mov    %edi,%ecx
411b97:	e8 b8 48 ff ff       	call   0x406454
411b9c:	33 f6                	xor    %esi,%esi
411b9e:	53                   	push   %ebx
411b9f:	89 b5 a0 fd ff ff    	mov    %esi,-0x260(%ebp)
411ba5:	ff 15 3c 63 42 00    	call   *0x42633c
411bab:	85 c0                	test   %eax,%eax
411bad:	74 10                	je     0x411bbf
411baf:	57                   	push   %edi
411bb0:	8d 8d a0 fd ff ff    	lea    -0x260(%ebp),%ecx
411bb6:	e8 77 c6 ff ff       	call   0x40e232
411bbb:	8b fe                	mov    %esi,%edi
411bbd:	eb 0e                	jmp    0x411bcd
411bbf:	51                   	push   %ecx
411bc0:	8d 95 a0 fd ff ff    	lea    -0x260(%ebp),%edx
411bc6:	8b cf                	mov    %edi,%ecx
411bc8:	e8 40 f4 ff ff       	call   0x41100d
411bcd:	8b b5 a0 fd ff ff    	mov    -0x260(%ebp),%esi
411bd3:	8d 85 a8 fd ff ff    	lea    -0x258(%ebp),%eax
411bd9:	50                   	push   %eax
411bda:	56                   	push   %esi
411bdb:	ff 15 b0 60 42 00    	call   *0x4260b0
411be1:	83 f8 ff             	cmp    $0xffffffff,%eax
411be4:	74 0c                	je     0x411bf2
411be6:	50                   	push   %eax
411be7:	ff 15 b4 60 42 00    	call   *0x4260b4
411bed:	e9 a8 00 00 00       	jmp    0x411c9a
411bf2:	56                   	push   %esi
411bf3:	ff 15 34 63 42 00    	call   *0x426334
411bf9:	33 c9                	xor    %ecx,%ecx
411bfb:	66 39 08             	cmp    %cx,(%eax)
411bfe:	0f 85 96 00 00 00    	jne    0x411c9a
411c04:	8b ce                	mov    %esi,%ecx
411c06:	8d 51 02             	lea    0x2(%ecx),%edx
411c09:	66 8b 01             	mov    (%ecx),%ax
411c0c:	83 c1 02             	add    $0x2,%ecx
411c0f:	66 3b 85 90 fd ff ff 	cmp    -0x270(%ebp),%ax
411c16:	75 f1                	jne    0x411c09
411c18:	2b ca                	sub    %edx,%ecx
411c1a:	33 d2                	xor    %edx,%edx
411c1c:	d1 f9                	sar    $1,%ecx
411c1e:	8d 41 05             	lea    0x5(%ecx),%eax
411c21:	50                   	push   %eax
411c22:	8d 8d 9c fd ff ff    	lea    -0x264(%ebp),%ecx
411c28:	89 85 90 fd ff ff    	mov    %eax,-0x270(%ebp)
411c2e:	e8 b0 de ff ff       	call   0x40fae3
411c33:	83 bd 9c fd ff ff 00 	cmpl   $0x0,-0x264(%ebp)
411c3a:	74 28                	je     0x411c64
411c3c:	8b 95 90 fd ff ff    	mov    -0x270(%ebp),%edx
411c42:	8b 8d 9c fd ff ff    	mov    -0x264(%ebp),%ecx
411c48:	56                   	push   %esi
411c49:	e8 3b 48 ff ff       	call   0x406489
411c4e:	8b 95 90 fd ff ff    	mov    -0x270(%ebp),%edx
411c54:	8b 8d 9c fd ff ff    	mov    -0x264(%ebp),%ecx
411c5a:	68 c4 24 40 00       	push   $0x4024c4
411c5f:	e8 25 48 ff ff       	call   0x406489
411c64:	8d 85 a8 fd ff ff    	lea    -0x258(%ebp),%eax
411c6a:	50                   	push   %eax
411c6b:	ff b5 9c fd ff ff    	push   -0x264(%ebp)
411c71:	ff 15 b0 60 42 00    	call   *0x4260b0
411c77:	83 f8 ff             	cmp    $0xffffffff,%eax
411c7a:	74 07                	je     0x411c83
411c7c:	50                   	push   %eax
411c7d:	ff 15 b4 60 42 00    	call   *0x4260b4
411c83:	ff b5 9c fd ff ff    	push   -0x264(%ebp)
411c89:	8d 8d a0 fd ff ff    	lea    -0x260(%ebp),%ecx
411c8f:	e8 9e c5 ff ff       	call   0x40e232
411c94:	8b b5 a0 fd ff ff    	mov    -0x260(%ebp),%esi
411c9a:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
411ca0:	8d 8d a0 fd ff ff    	lea    -0x260(%ebp),%ecx
411ca6:	3b c1                	cmp    %ecx,%eax
411ca8:	74 0c                	je     0x411cb6
411caa:	56                   	push   %esi
411cab:	8b c8                	mov    %eax,%ecx
411cad:	e8 80 c5 ff ff       	call   0x40e232
411cb2:	33 c0                	xor    %eax,%eax
411cb4:	8b f0                	mov    %eax,%esi
411cb6:	85 f6                	test   %esi,%esi
411cb8:	74 07                	je     0x411cc1
411cba:	56                   	push   %esi
411cbb:	ff 15 dc 62 42 00    	call   *0x4262dc
411cc1:	85 ff                	test   %edi,%edi
411cc3:	74 07                	je     0x411ccc
411cc5:	57                   	push   %edi
411cc6:	ff 15 dc 62 42 00    	call   *0x4262dc
411ccc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411ccf:	8b c3                	mov    %ebx,%eax
411cd1:	5f                   	pop    %edi
411cd2:	5e                   	pop    %esi
411cd3:	33 cd                	xor    %ebp,%ecx
411cd5:	5b                   	pop    %ebx
411cd6:	e8 95 fb 00 00       	call   0x421870
411cdb:	c9                   	leave
411cdc:	c3                   	ret
411cdd:	8b ff                	mov    %edi,%edi
411cdf:	55                   	push   %ebp
411ce0:	8b ec                	mov    %esp,%ebp
411ce2:	51                   	push   %ecx
411ce3:	51                   	push   %ecx
411ce4:	53                   	push   %ebx
411ce5:	56                   	push   %esi
411ce6:	57                   	push   %edi
411ce7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
411cea:	bb 18 01 00 00       	mov    $0x118,%ebx
411cef:	68 30 02 00 00       	push   $0x230
411cf4:	eb 45                	jmp    0x411d3b
411cf6:	33 ff                	xor    %edi,%edi
411cf8:	33 c0                	xor    %eax,%eax
411cfa:	89 45 fc             	mov    %eax,-0x4(%ebp)
411cfd:	8b 04 bd 70 12 40 00 	mov    0x401270(,%edi,4),%eax
411d04:	53                   	push   %ebx
411d05:	56                   	push   %esi
411d06:	ff 30                	push   (%eax)
411d08:	ff 75 f8             	push   -0x8(%ebp)
411d0b:	ff 15 e8 61 42 00    	call   *0x4261e8
411d11:	8b c8                	mov    %eax,%ecx
411d13:	8d 43 ff             	lea    -0x1(%ebx),%eax
411d16:	3b c8                	cmp    %eax,%ecx
411d18:	7d 0f                	jge    0x411d29
411d1a:	8b 45 fc             	mov    -0x4(%ebp),%eax
411d1d:	40                   	inc    %eax
411d1e:	03 c1                	add    %ecx,%eax
411d20:	47                   	inc    %edi
411d21:	89 45 fc             	mov    %eax,-0x4(%ebp)
411d24:	83 ff 3c             	cmp    $0x3c,%edi
411d27:	7c d4                	jl     0x411cfd
411d29:	56                   	push   %esi
411d2a:	ff 15 c0 60 42 00    	call   *0x4260c0
411d30:	83 ff 3c             	cmp    $0x3c,%edi
411d33:	7d 19                	jge    0x411d4e
411d35:	03 db                	add    %ebx,%ebx
411d37:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
411d3a:	50                   	push   %eax
411d3b:	6a 40                	push   $0x40
411d3d:	ff 15 bc 60 42 00    	call   *0x4260bc
411d43:	8b f0                	mov    %eax,%esi
411d45:	85 f6                	test   %esi,%esi
411d47:	75 ad                	jne    0x411cf6
411d49:	5f                   	pop    %edi
411d4a:	5e                   	pop    %esi
411d4b:	5b                   	pop    %ebx
411d4c:	c9                   	leave
411d4d:	c3                   	ret
411d4e:	8b 45 fc             	mov    -0x4(%ebp),%eax
411d51:	eb f6                	jmp    0x411d49
411d53:	8b ff                	mov    %edi,%edi
411d55:	55                   	push   %ebp
411d56:	8b ec                	mov    %esp,%ebp
411d58:	51                   	push   %ecx
411d59:	53                   	push   %ebx
411d5a:	56                   	push   %esi
411d5b:	8b c1                	mov    %ecx,%eax
411d5d:	57                   	push   %edi
411d5e:	89 45 fc             	mov    %eax,-0x4(%ebp)
411d61:	e8 77 ff ff ff       	call   0x411cdd
411d66:	85 c0                	test   %eax,%eax
411d68:	0f 84 84 00 00 00    	je     0x411df2
411d6e:	03 c0                	add    %eax,%eax
411d70:	50                   	push   %eax
411d71:	6a 40                	push   $0x40
411d73:	ff 15 bc 60 42 00    	call   *0x4260bc
411d79:	8b d8                	mov    %eax,%ebx
411d7b:	85 db                	test   %ebx,%ebx
411d7d:	74 73                	je     0x411df2
411d7f:	53                   	push   %ebx
411d80:	ff 15 1c 61 42 00    	call   *0x42611c
411d86:	8b f0                	mov    %eax,%esi
411d88:	d1 ee                	shr    $1,%esi
411d8a:	74 66                	je     0x411df2
411d8c:	bf 70 12 40 00       	mov    $0x401270,%edi
411d91:	8b 07                	mov    (%edi),%eax
411d93:	56                   	push   %esi
411d94:	53                   	push   %ebx
411d95:	ff 30                	push   (%eax)
411d97:	ff 75 fc             	push   -0x4(%ebp)
411d9a:	ff 15 e8 61 42 00    	call   *0x4261e8
411da0:	8b 0f                	mov    (%edi),%ecx
411da2:	40                   	inc    %eax
411da3:	89 19                	mov    %ebx,(%ecx)
411da5:	8d 1c 43             	lea    (%ebx,%eax,2),%ebx
411da8:	3b c6                	cmp    %esi,%eax
411daa:	7f 46                	jg     0x411df2
411dac:	83 c7 04             	add    $0x4,%edi
411daf:	2b f0                	sub    %eax,%esi
411db1:	81 ff 60 13 40 00    	cmp    $0x401360,%edi
411db7:	7c d8                	jl     0x411d91
411db9:	ff 35 c8 42 42 00    	push   0x4242c8
411dbf:	b9 78 4f 42 00       	mov    $0x424f78,%ecx
411dc4:	6a 28                	push   $0x28
411dc6:	5a                   	pop    %edx
411dc7:	e8 88 46 ff ff       	call   0x406454
411dcc:	ff 35 c4 42 42 00    	push   0x4242c4
411dd2:	b9 c8 4f 42 00       	mov    $0x424fc8,%ecx
411dd7:	6a 28                	push   $0x28
411dd9:	5a                   	pop    %edx
411dda:	e8 75 46 ff ff       	call   0x406454
411ddf:	a1 d0 42 42 00       	mov    0x4242d0,%eax
411de4:	66 8b 00             	mov    (%eax),%ax
411de7:	66 a3 44 4f 42 00    	mov    %ax,0x424f44
411ded:	33 c0                	xor    %eax,%eax
411def:	40                   	inc    %eax
411df0:	eb 02                	jmp    0x411df4
411df2:	33 c0                	xor    %eax,%eax
411df4:	5f                   	pop    %edi
411df5:	5e                   	pop    %esi
411df6:	5b                   	pop    %ebx
411df7:	c9                   	leave
411df8:	c3                   	ret
411df9:	8b ff                	mov    %edi,%edi
411dfb:	0f b7 01             	movzwl (%ecx),%eax
411dfe:	83 f8 20             	cmp    $0x20,%eax
411e01:	74 05                	je     0x411e08
411e03:	83 f8 09             	cmp    $0x9,%eax
411e06:	75 05                	jne    0x411e0d
411e08:	83 c1 02             	add    $0x2,%ecx
411e0b:	eb ee                	jmp    0x411dfb
411e0d:	8b c1                	mov    %ecx,%eax
411e0f:	c3                   	ret
411e10:	8b ff                	mov    %edi,%edi
411e12:	55                   	push   %ebp
411e13:	8b ec                	mov    %esp,%ebp
411e15:	51                   	push   %ecx
411e16:	53                   	push   %ebx
411e17:	56                   	push   %esi
411e18:	57                   	push   %edi
411e19:	8b f9                	mov    %ecx,%edi
411e1b:	33 db                	xor    %ebx,%ebx
411e1d:	8b d7                	mov    %edi,%edx
411e1f:	b9 d0 24 40 00       	mov    $0x4024d0,%ecx
411e24:	8b f3                	mov    %ebx,%esi
411e26:	e8 fe fb ff ff       	call   0x411a29
411e2b:	85 c0                	test   %eax,%eax
411e2d:	0f 85 1b 01 00 00    	jne    0x411f4e
411e33:	53                   	push   %ebx
411e34:	ff 35 0c 5e 42 00    	push   0x425e0c
411e3a:	c7 05 f4 5b 42 00 01 	movl   $0x1,0x425bf4
411e41:	00 00 00
411e44:	ff 15 70 62 42 00    	call   *0x426270
411e4a:	68 e0 24 40 00       	push   $0x4024e0
411e4f:	ff 35 30 4f 42 00    	push   0x424f30
411e55:	a3 cc 4e 42 00       	mov    %eax,0x424ecc
411e5a:	ff 15 74 62 42 00    	call   *0x426274
411e60:	68 00 00 fd 00       	push   $0xfd0000
411e65:	6a f0                	push   $0xfffffff0
411e67:	ff 35 0c 5e 42 00    	push   0x425e0c
411e6d:	a3 c4 4e 42 00       	mov    %eax,0x424ec4
411e72:	ff 15 78 62 42 00    	call   *0x426278
411e78:	8d 4f 0e             	lea    0xe(%edi),%ecx
411e7b:	e8 79 ff ff ff       	call   0x411df9
411e80:	66 39 18             	cmp    %bx,(%eax)
411e83:	0f 84 fe 00 00 00    	je     0x411f87
411e89:	8d 55 fc             	lea    -0x4(%ebp),%edx
411e8c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
411e8f:	8b c8                	mov    %eax,%ecx
411e91:	e8 d9 fb ff ff       	call   0x411a6f
411e96:	53                   	push   %ebx
411e97:	68 80 00 00 00       	push   $0x80
411e9c:	6a 03                	push   $0x3
411e9e:	5f                   	pop    %edi
411e9f:	57                   	push   %edi
411ea0:	53                   	push   %ebx
411ea1:	57                   	push   %edi
411ea2:	68 00 00 00 80       	push   $0x80000000
411ea7:	ff 75 fc             	push   -0x4(%ebp)
411eaa:	ff 15 94 60 42 00    	call   *0x426094
411eb0:	a3 30 4e 42 00       	mov    %eax,0x424e30
411eb5:	83 f8 ff             	cmp    $0xffffffff,%eax
411eb8:	0f 85 97 00 00 00    	jne    0x411f55
411ebe:	ff 15 70 61 42 00    	call   *0x426170
411ec4:	8b 15 f0 42 42 00    	mov    0x4242f0,%edx
411eca:	48                   	dec    %eax
411ecb:	8b 0d 0c 5e 42 00    	mov    0x425e0c,%ecx
411ed1:	83 e8 01             	sub    $0x1,%eax
411ed4:	74 2d                	je     0x411f03
411ed6:	6a 31                	push   $0x31
411ed8:	ff 75 fc             	push   -0x4(%ebp)
411edb:	2b c7                	sub    %edi,%eax
411edd:	74 1c                	je     0x411efb