418b70:	eb 3c                	jmp    0x418bae
418b72:	6a 00                	push   $0x0
418b74:	51                   	push   %ecx
418b75:	53                   	push   %ebx
418b76:	e8 05 92 ff ff       	call   0x411d80
418b7b:	83 c4 0c             	add    $0xc,%esp
418b7e:	81 fe 00 02 00 00    	cmp    $0x200,%esi
418b84:	77 17                	ja     0x418b9d
418b86:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
418b8a:	8b 41 0c             	mov    0xc(%ecx),%eax
418b8d:	a8 08                	test   $0x8,%al
418b8f:	74 0c                	je     0x418b9d
418b91:	f6 c4 04             	test   $0x4,%ah
418b94:	75 07                	jne    0x418b9d
418b96:	be 00 02 00 00       	mov    $0x200,%esi
418b9b:	eb 07                	jmp    0x418ba4
418b9d:	8b 54 24 1c          	mov    0x1c(%esp),%edx
418ba1:	8b 72 18             	mov    0x18(%edx),%esi
418ba4:	8b 45 00             	mov    0x0(%ebp),%eax
418ba7:	f6 44 07 04 04       	testb  $0x4,0x4(%edi,%eax,1)
418bac:	74 01                	je     0x418baf
418bae:	46                   	inc    %esi
418baf:	8b 54 24 10          	mov    0x10(%esp),%edx
418bb3:	29 74 24 14          	sub    %esi,0x14(%esp)
418bb7:	8b 4c 24 14          	mov    0x14(%esp),%ecx
418bbb:	8d 04 11             	lea    (%ecx,%edx,1),%eax
418bbe:	5f                   	pop    %edi
418bbf:	5e                   	pop    %esi
418bc0:	5d                   	pop    %ebp
418bc1:	5b                   	pop    %ebx
418bc2:	83 c4 08             	add    $0x8,%esp
418bc5:	c3                   	ret
418bc6:	a8 80                	test   $0x80,%al
418bc8:	0f 85 0e ff ff ff    	jne    0x418adc
418bce:	e8 bd 4a ff ff       	call   0x40d690
418bd3:	5f                   	pop    %edi
418bd4:	5e                   	pop    %esi
418bd5:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
418bdb:	5d                   	pop    %ebp
418bdc:	83 c8 ff             	or     $0xffffffff,%eax
418bdf:	5b                   	pop    %ebx
418be0:	83 c4 08             	add    $0x8,%esp
418be3:	c3                   	ret
418be4:	90                   	nop
418be5:	90                   	nop
418be6:	90                   	nop
418be7:	90                   	nop
418be8:	90                   	nop
418be9:	90                   	nop
418bea:	90                   	nop
418beb:	90                   	nop
418bec:	90                   	nop
418bed:	90                   	nop
418bee:	90                   	nop
418bef:	90                   	nop
418bf0:	56                   	push   %esi
418bf1:	8b 74 24 08          	mov    0x8(%esp),%esi
418bf5:	57                   	push   %edi
418bf6:	56                   	push   %esi
418bf7:	e8 e4 68 ff ff       	call   0x40f4e0
418bfc:	8b 44 24 1c          	mov    0x1c(%esp),%eax
418c00:	8b 4c 24 18          	mov    0x18(%esp),%ecx
418c04:	8b 54 24 14          	mov    0x14(%esp),%edx
418c08:	83 c4 04             	add    $0x4,%esp
418c0b:	50                   	push   %eax
418c0c:	51                   	push   %ecx
418c0d:	52                   	push   %edx
418c0e:	56                   	push   %esi
418c0f:	e8 1c 00 00 00       	call   0x418c30
418c14:	83 c4 10             	add    $0x10,%esp
418c17:	8b f8                	mov    %eax,%edi
418c19:	56                   	push   %esi
418c1a:	e8 31 69 ff ff       	call   0x40f550
418c1f:	83 c4 04             	add    $0x4,%esp
418c22:	8b c7                	mov    %edi,%eax
418c24:	5f                   	pop    %edi
418c25:	5e                   	pop    %esi
418c26:	c3                   	ret
418c27:	90                   	nop
418c28:	90                   	nop
418c29:	90                   	nop
418c2a:	90                   	nop
418c2b:	90                   	nop
418c2c:	90                   	nop
418c2d:	90                   	nop
418c2e:	90                   	nop
418c2f:	90                   	nop
418c30:	56                   	push   %esi
418c31:	8b 74 24 08          	mov    0x8(%esp),%esi
418c35:	57                   	push   %edi
418c36:	8b 46 0c             	mov    0xc(%esi),%eax
418c39:	a8 83                	test   $0x83,%al
418c3b:	0f 84 89 00 00 00    	je     0x418cca
418c41:	8b 7c 24 18          	mov    0x18(%esp),%edi
418c45:	85 ff                	test   %edi,%edi
418c47:	74 0a                	je     0x418c53
418c49:	83 ff 01             	cmp    $0x1,%edi
418c4c:	74 05                	je     0x418c53
418c4e:	83 ff 02             	cmp    $0x2,%edi
418c51:	75 77                	jne    0x418cca
418c53:	24 ef                	and    $0xef,%al
418c55:	83 ff 01             	cmp    $0x1,%edi
418c58:	89 46 0c             	mov    %eax,0xc(%esi)
418c5b:	75 1f                	jne    0x418c7c
418c5d:	56                   	push   %esi
418c5e:	e8 ed fb ff ff       	call   0x418850
418c63:	8b 4c 24 14          	mov    0x14(%esp),%ecx
418c67:	83 c4 04             	add    $0x4,%esp
418c6a:	03 c8                	add    %eax,%ecx
418c6c:	8b 44 24 14          	mov    0x14(%esp),%eax
418c70:	13 c2                	adc    %edx,%eax
418c72:	89 4c 24 10          	mov    %ecx,0x10(%esp)
418c76:	89 44 24 14          	mov    %eax,0x14(%esp)
418c7a:	33 ff                	xor    %edi,%edi
418c7c:	56                   	push   %esi
418c7d:	e8 6e 9a ff ff       	call   0x4126f0
418c82:	8b 46 0c             	mov    0xc(%esi),%eax
418c85:	83 c4 04             	add    $0x4,%esp
418c88:	a8 80                	test   $0x80,%al
418c8a:	74 07                	je     0x418c93
418c8c:	24 fc                	and    $0xfc,%al
418c8e:	89 46 0c             	mov    %eax,0xc(%esi)
418c91:	eb 14                	jmp    0x418ca7
418c93:	a8 01                	test   $0x1,%al
418c95:	74 10                	je     0x418ca7
418c97:	a8 08                	test   $0x8,%al
418c99:	74 0c                	je     0x418ca7
418c9b:	f6 c4 04             	test   $0x4,%ah
418c9e:	75 07                	jne    0x418ca7
418ca0:	c7 46 18 00 02 00 00 	movl   $0x200,0x18(%esi)
418ca7:	8b 44 24 14          	mov    0x14(%esp),%eax
418cab:	8b 4c 24 10          	mov    0x10(%esp),%ecx
418caf:	8b 56 10             	mov    0x10(%esi),%edx
418cb2:	57                   	push   %edi
418cb3:	50                   	push   %eax
418cb4:	51                   	push   %ecx
418cb5:	52                   	push   %edx
418cb6:	e8 a5 06 00 00       	call   0x419360
418cbb:	23 c2                	and    %edx,%eax
418cbd:	83 c4 10             	add    $0x10,%esp
418cc0:	83 f8 ff             	cmp    $0xffffffff,%eax
418cc3:	74 10                	je     0x418cd5
418cc5:	33 c0                	xor    %eax,%eax
418cc7:	5f                   	pop    %edi
418cc8:	5e                   	pop    %esi
418cc9:	c3                   	ret
418cca:	e8 c1 49 ff ff       	call   0x40d690
418ccf:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
418cd5:	5f                   	pop    %edi
418cd6:	83 c8 ff             	or     $0xffffffff,%eax
418cd9:	5e                   	pop    %esi
418cda:	c3                   	ret
418cdb:	90                   	nop
418cdc:	90                   	nop
418cdd:	90                   	nop
418cde:	90                   	nop
418cdf:	90                   	nop
418ce0:	53                   	push   %ebx
418ce1:	55                   	push   %ebp
418ce2:	56                   	push   %esi
418ce3:	8b 74 24 14          	mov    0x14(%esp),%esi
418ce7:	57                   	push   %edi
418ce8:	8b 46 0c             	mov    0xc(%esi),%eax
418ceb:	8b 6e 10             	mov    0x10(%esi),%ebp
418cee:	a8 82                	test   $0x82,%al
418cf0:	0f 84 22 01 00 00    	je     0x418e18
418cf6:	a8 40                	test   $0x40,%al
418cf8:	0f 85 1a 01 00 00    	jne    0x418e18
418cfe:	33 db                	xor    %ebx,%ebx
418d00:	a8 01                	test   $0x1,%al
418d02:	74 15                	je     0x418d19
418d04:	a8 10                	test   $0x10,%al
418d06:	89 5e 04             	mov    %ebx,0x4(%esi)
418d09:	0f 84 09 01 00 00    	je     0x418e18
418d0f:	8b 4e 08             	mov    0x8(%esi),%ecx
418d12:	24 fe                	and    $0xfe,%al
418d14:	89 0e                	mov    %ecx,(%esi)
418d16:	89 46 0c             	mov    %eax,0xc(%esi)
418d19:	8b 46 0c             	mov    0xc(%esi),%eax
418d1c:	89 5e 04             	mov    %ebx,0x4(%esi)
418d1f:	24 ef                	and    $0xef,%al
418d21:	89 5c 24 18          	mov    %ebx,0x18(%esp)
418d25:	0c 02                	or     $0x2,%al
418d27:	a9 0c 01 00 00       	test   $0x10c,%eax
418d2c:	89 46 0c             	mov    %eax,0xc(%esi)
418d2f:	75 26                	jne    0x418d57
418d31:	81 fe 50 42 43 00    	cmp    $0x434250,%esi
418d37:	74 08                	je     0x418d41
418d39:	81 fe 70 42 43 00    	cmp    $0x434270,%esi
418d3f:	75 0d                	jne    0x418d4e
418d41:	55                   	push   %ebp
418d42:	e8 29 94 ff ff       	call   0x412170
418d47:	83 c4 04             	add    $0x4,%esp
418d4a:	85 c0                	test   %eax,%eax
418d4c:	75 09                	jne    0x418d57
418d4e:	56                   	push   %esi
418d4f:	e8 bc 93 ff ff       	call   0x412110
418d54:	83 c4 04             	add    $0x4,%esp
418d57:	f7 46 0c 08 01 00 00 	testl  $0x108,0xc(%esi)
418d5e:	74 79                	je     0x418dd9
418d60:	8b 46 08             	mov    0x8(%esi),%eax
418d63:	8b 3e                	mov    (%esi),%edi
418d65:	8b 4e 18             	mov    0x18(%esi),%ecx
418d68:	2b f8                	sub    %eax,%edi
418d6a:	8d 50 02             	lea    0x2(%eax),%edx
418d6d:	83 e9 02             	sub    $0x2,%ecx
418d70:	3b fb                	cmp    %ebx,%edi
418d72:	89 16                	mov    %edx,(%esi)
418d74:	89 4e 04             	mov    %ecx,0x4(%esi)
418d77:	7e 1b                	jle    0x418d94
418d79:	57                   	push   %edi
418d7a:	50                   	push   %eax
418d7b:	55                   	push   %ebp
418d7c:	e8 ff 90 ff ff       	call   0x411e80
418d81:	8b 56 08             	mov    0x8(%esi),%edx
418d84:	8b 5c 24 20          	mov    0x20(%esp),%ebx
418d88:	83 c4 0c             	add    $0xc,%esp
418d8b:	89 44 24 18          	mov    %eax,0x18(%esp)
418d8f:	66 89 1a             	mov    %bx,(%edx)
418d92:	eb 62                	jmp    0x418df6
418d94:	83 fd ff             	cmp    $0xffffffff,%ebp
418d97:	74 19                	je     0x418db2
418d99:	8b d5                	mov    %ebp,%edx
418d9b:	8b c5                	mov    %ebp,%eax
418d9d:	c1 fa 05             	sar    $0x5,%edx
418da0:	83 e0 1f             	and    $0x1f,%eax
418da3:	8b 0c 95 a0 89 43 00 	mov    0x4389a0(,%edx,4),%ecx
418daa:	8d 04 c0             	lea    (%eax,%eax,8),%eax
418dad:	8d 04 81             	lea    (%ecx,%eax,4),%eax
418db0:	eb 05                	jmp    0x418db7
418db2:	b8 e8 1d 43 00       	mov    $0x431de8,%eax
418db7:	f6 40 04 20          	testb  $0x20,0x4(%eax)
418dbb:	74 0c                	je     0x418dc9
418dbd:	6a 02                	push   $0x2
418dbf:	53                   	push   %ebx
418dc0:	55                   	push   %ebp
418dc1:	e8 ba 8f ff ff       	call   0x411d80
418dc6:	83 c4 0c             	add    $0xc,%esp
418dc9:	8b 56 08             	mov    0x8(%esi),%edx
418dcc:	8b 5c 24 14          	mov    0x14(%esp),%ebx
418dd0:	8b 44 24 18          	mov    0x18(%esp),%eax
418dd4:	66 89 1a             	mov    %bx,(%edx)
418dd7:	eb 1d                	jmp    0x418df6
418dd9:	8b 5c 24 14          	mov    0x14(%esp),%ebx
418ddd:	bf 02 00 00 00       	mov    $0x2,%edi
418de2:	8d 44 24 14          	lea    0x14(%esp),%eax
418de6:	57                   	push   %edi
418de7:	50                   	push   %eax
418de8:	55                   	push   %ebp
418de9:	66 89 5c 24 20       	mov    %bx,0x20(%esp)
418dee:	e8 8d 90 ff ff       	call   0x411e80
418df3:	83 c4 0c             	add    $0xc,%esp
418df6:	3b c7                	cmp    %edi,%eax
418df8:	74 12                	je     0x418e0c
418dfa:	8b 46 0c             	mov    0xc(%esi),%eax
418dfd:	0c 20                	or     $0x20,%al
418dff:	89 46 0c             	mov    %eax,0xc(%esi)
418e02:	b8 ff ff 00 00       	mov    $0xffff,%eax
418e07:	5f                   	pop    %edi
418e08:	5e                   	pop    %esi
418e09:	5d                   	pop    %ebp
418e0a:	5b                   	pop    %ebx
418e0b:	c3                   	ret
418e0c:	8b c3                	mov    %ebx,%eax
418e0e:	25 ff ff 00 00       	and    $0xffff,%eax
418e13:	5f                   	pop    %edi
418e14:	5e                   	pop    %esi
418e15:	5d                   	pop    %ebp
418e16:	5b                   	pop    %ebx
418e17:	c3                   	ret
418e18:	0c 20                	or     $0x20,%al
418e1a:	5f                   	pop    %edi
418e1b:	89 46 0c             	mov    %eax,0xc(%esi)
418e1e:	5e                   	pop    %esi
418e1f:	5d                   	pop    %ebp
418e20:	b8 ff ff 00 00       	mov    $0xffff,%eax
418e25:	5b                   	pop    %ebx
418e26:	c3                   	ret
418e27:	90                   	nop
418e28:	90                   	nop
418e29:	90                   	nop
418e2a:	90                   	nop
418e2b:	90                   	nop
418e2c:	90                   	nop
418e2d:	90                   	nop
418e2e:	90                   	nop
418e2f:	90                   	nop
418e30:	56                   	push   %esi
418e31:	8b 74 24 08          	mov    0x8(%esp),%esi
418e35:	57                   	push   %edi
418e36:	8b 46 0c             	mov    0xc(%esi),%eax
418e39:	a8 83                	test   $0x83,%al
418e3b:	0f 84 e4 00 00 00    	je     0x418f25
418e41:	a8 40                	test   $0x40,%al
418e43:	0f 85 dc 00 00 00    	jne    0x418f25
418e49:	a8 02                	test   $0x2,%al
418e4b:	74 0d                	je     0x418e5a
418e4d:	0c 20                	or     $0x20,%al
418e4f:	89 46 0c             	mov    %eax,0xc(%esi)
418e52:	b8 ff ff 00 00       	mov    $0xffff,%eax
418e57:	5f                   	pop    %edi
418e58:	5e                   	pop    %esi
418e59:	c3                   	ret
418e5a:	0c 01                	or     $0x1,%al
418e5c:	a9 0c 01 00 00       	test   $0x10c,%eax
418e61:	89 46 0c             	mov    %eax,0xc(%esi)
418e64:	75 0b                	jne    0x418e71
418e66:	56                   	push   %esi
418e67:	e8 a4 92 ff ff       	call   0x412110
418e6c:	83 c4 04             	add    $0x4,%esp
418e6f:	eb 05                	jmp    0x418e76
418e71:	8b 46 08             	mov    0x8(%esi),%eax
418e74:	89 06                	mov    %eax,(%esi)
418e76:	8b 4e 18             	mov    0x18(%esi),%ecx
418e79:	8b 56 08             	mov    0x8(%esi),%edx
418e7c:	8b 46 10             	mov    0x10(%esi),%eax
418e7f:	51                   	push   %ecx
418e80:	52                   	push   %edx
418e81:	50                   	push   %eax
418e82:	e8 29 02 00 00       	call   0x4190b0
418e87:	83 c4 0c             	add    $0xc,%esp
418e8a:	89 46 04             	mov    %eax,0x4(%esi)
418e8d:	85 c0                	test   %eax,%eax
418e8f:	74 7b                	je     0x418f0c
418e91:	83 f8 01             	cmp    $0x1,%eax
418e94:	74 76                	je     0x418f0c
418e96:	83 f8 ff             	cmp    $0xffffffff,%eax
418e99:	74 71                	je     0x418f0c
418e9b:	8b 56 0c             	mov    0xc(%esi),%edx
418e9e:	f6 c2 82             	test   $0x82,%dl
418ea1:	75 35                	jne    0x418ed8
418ea3:	8b 4e 10             	mov    0x10(%esi),%ecx
418ea6:	83 f9 ff             	cmp    $0xffffffff,%ecx
418ea9:	74 17                	je     0x418ec2
418eab:	8b f9                	mov    %ecx,%edi
418ead:	c1 ff 05             	sar    $0x5,%edi
418eb0:	83 e1 1f             	and    $0x1f,%ecx
418eb3:	8b 3c bd a0 89 43 00 	mov    0x4389a0(,%edi,4),%edi
418eba:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
418ebd:	8d 0c 8f             	lea    (%edi,%ecx,4),%ecx
418ec0:	eb 05                	jmp    0x418ec7
418ec2:	b9 e8 1d 43 00       	mov    $0x431de8,%ecx
418ec7:	8a 49 04             	mov    0x4(%ecx),%cl
418eca:	80 e1 82             	and    $0x82,%cl
418ecd:	80 f9 82             	cmp    $0x82,%cl
418ed0:	75 06                	jne    0x418ed8
418ed2:	80 ce 20             	or     $0x20,%dh
418ed5:	89 56 0c             	mov    %edx,0xc(%esi)
418ed8:	81 7e 18 00 02 00 00 	cmpl   $0x200,0x18(%esi)
418edf:	75 14                	jne    0x418ef5