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
418ee1:	8b 4e 0c             	mov    0xc(%esi),%ecx
418ee4:	f6 c1 08             	test   $0x8,%cl
418ee7:	74 0c                	je     0x418ef5
418ee9:	f6 c5 04             	test   $0x4,%ch
418eec:	75 07                	jne    0x418ef5
418eee:	c7 46 18 00 10 00 00 	movl   $0x1000,0x18(%esi)
418ef5:	83 c0 fe             	add    $0xfffffffe,%eax
418ef8:	33 d2                	xor    %edx,%edx
418efa:	89 46 04             	mov    %eax,0x4(%esi)
418efd:	8b 06                	mov    (%esi),%eax
418eff:	66 8b 10             	mov    (%eax),%dx
418f02:	83 c0 02             	add    $0x2,%eax
418f05:	89 06                	mov    %eax,(%esi)
418f07:	8b c2                	mov    %edx,%eax
418f09:	5f                   	pop    %edi
418f0a:	5e                   	pop    %esi
418f0b:	c3                   	ret
418f0c:	8b 4e 0c             	mov    0xc(%esi),%ecx
418f0f:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
418f16:	f7 d8                	neg    %eax
418f18:	1b c0                	sbb    %eax,%eax
418f1a:	83 e0 10             	and    $0x10,%eax
418f1d:	83 c0 10             	add    $0x10,%eax
418f20:	0b c8                	or     %eax,%ecx
418f22:	89 4e 0c             	mov    %ecx,0xc(%esi)
418f25:	5f                   	pop    %edi
418f26:	b8 ff ff 00 00       	mov    $0xffff,%eax
418f2b:	5e                   	pop    %esi
418f2c:	c3                   	ret
418f2d:	90                   	nop
418f2e:	90                   	nop
418f2f:	90                   	nop
418f30:	53                   	push   %ebx
418f31:	56                   	push   %esi
418f32:	57                   	push   %edi
418f33:	68 88 89 43 00       	push   $0x438988
418f38:	ff 15 fc 96 43 00    	call   *0x4396fc
418f3e:	a1 84 89 43 00       	mov    0x438984,%eax
418f43:	8b 3d 18 97 43 00    	mov    0x439718,%edi
418f49:	85 c0                	test   %eax,%eax
418f4b:	74 18                	je     0x418f65
418f4d:	68 88 89 43 00       	push   $0x438988
418f52:	ff d7                	call   *%edi
418f54:	6a 13                	push   $0x13
418f56:	e8 e5 64 ff ff       	call   0x40f440
418f5b:	83 c4 04             	add    $0x4,%esp
418f5e:	be 01 00 00 00       	mov    $0x1,%esi
418f63:	eb 02                	jmp    0x418f67
418f65:	33 f6                	xor    %esi,%esi
418f67:	8b 44 24 18          	mov    0x18(%esp),%eax
418f6b:	8b 4c 24 14          	mov    0x14(%esp),%ecx
418f6f:	8b 54 24 10          	mov    0x10(%esp),%edx
418f73:	50                   	push   %eax
418f74:	51                   	push   %ecx
418f75:	52                   	push   %edx
418f76:	e8 35 00 00 00       	call   0x418fb0
418f7b:	83 c4 0c             	add    $0xc,%esp
418f7e:	8b d8                	mov    %eax,%ebx
418f80:	85 f6                	test   %esi,%esi
418f82:	74 10                	je     0x418f94
418f84:	6a 13                	push   $0x13
418f86:	e8 35 65 ff ff       	call   0x40f4c0
418f8b:	83 c4 04             	add    $0x4,%esp
418f8e:	8b c3                	mov    %ebx,%eax
418f90:	5f                   	pop    %edi
418f91:	5e                   	pop    %esi
418f92:	5b                   	pop    %ebx
418f93:	c3                   	ret
418f94:	68 88 89 43 00       	push   $0x438988
418f99:	ff d7                	call   *%edi
418f9b:	5f                   	pop    %edi
418f9c:	8b c3                	mov    %ebx,%eax
418f9e:	5e                   	pop    %esi
418f9f:	5b                   	pop    %ebx
418fa0:	c3                   	ret
418fa1:	90                   	nop
418fa2:	90                   	nop
418fa3:	90                   	nop
418fa4:	90                   	nop
418fa5:	90                   	nop
418fa6:	90                   	nop
418fa7:	90                   	nop
418fa8:	90                   	nop
418fa9:	90                   	nop
418faa:	90                   	nop
418fab:	90                   	nop
418fac:	90                   	nop
418fad:	90                   	nop
418fae:	90                   	nop
418faf:	90                   	nop
418fb0:	56                   	push   %esi
418fb1:	8b 74 24 0c          	mov    0xc(%esp),%esi
418fb5:	85 f6                	test   %esi,%esi
418fb7:	57                   	push   %edi
418fb8:	0f 84 eb 00 00 00    	je     0x4190a9
418fbe:	8b 7c 24 14          	mov    0x14(%esp),%edi
418fc2:	85 ff                	test   %edi,%edi
418fc4:	0f 84 df 00 00 00    	je     0x4190a9
418fca:	8a 06                	mov    (%esi),%al
418fcc:	84 c0                	test   %al,%al
418fce:	75 16                	jne    0x418fe6
418fd0:	8b 44 24 0c          	mov    0xc(%esp),%eax
418fd4:	85 c0                	test   %eax,%eax
418fd6:	0f 84 cd 00 00 00    	je     0x4190a9
418fdc:	66 c7 00 00 00       	movw   $0x0,(%eax)
418fe1:	33 c0                	xor    %eax,%eax
418fe3:	5f                   	pop    %edi
418fe4:	5e                   	pop    %esi
418fe5:	c3                   	ret
418fe6:	8b 0d 70 73 43 00    	mov    0x437370,%ecx
418fec:	85 c9                	test   %ecx,%ecx
418fee:	75 1b                	jne    0x41900b
418ff0:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
418ff4:	85 c9                	test   %ecx,%ecx
418ff6:	0f 84 a5 00 00 00    	je     0x4190a1
418ffc:	66 0f b6 c0          	movzbw %al,%ax
419000:	66 89 01             	mov    %ax,(%ecx)
419003:	b8 01 00 00 00       	mov    $0x1,%eax
419008:	5f                   	pop    %edi
419009:	5e                   	pop    %esi
41900a:	c3                   	ret
41900b:	8b 0d 48 1b 43 00    	mov    0x431b48,%ecx
419011:	25 ff 00 00 00       	and    $0xff,%eax
419016:	f6 44 41 01 80       	testb  $0x80,0x1(%ecx,%eax,2)
41901b:	74 50                	je     0x41906d
41901d:	a1 54 1d 43 00       	mov    0x431d54,%eax
419022:	83 f8 01             	cmp    $0x1,%eax
419025:	7e 2a                	jle    0x419051
419027:	3b f8                	cmp    %eax,%edi
419029:	7c 28                	jl     0x419053
41902b:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
41902f:	33 d2                	xor    %edx,%edx
419031:	85 c9                	test   %ecx,%ecx
419033:	0f 95 c2             	setne  %dl
419036:	52                   	push   %edx
419037:	51                   	push   %ecx
419038:	50                   	push   %eax
419039:	a1 80 73 43 00       	mov    0x437380,%eax
41903e:	56                   	push   %esi
41903f:	6a 09                	push   $0x9
419041:	50                   	push   %eax
419042:	ff 15 f4 96 43 00    	call   *0x4396f4
419048:	85 c0                	test   %eax,%eax
41904a:	a1 54 1d 43 00       	mov    0x431d54,%eax
41904f:	75 5a                	jne    0x4190ab
419051:	3b f8                	cmp    %eax,%edi
419053:	72 3b                	jb     0x419090
419055:	8a 4e 01             	mov    0x1(%esi),%cl
419058:	84 c9                	test   %cl,%cl
41905a:	75 4f                	jne    0x4190ab
41905c:	e8 2f 46 ff ff       	call   0x40d690
419061:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
419067:	83 c8 ff             	or     $0xffffffff,%eax
41906a:	5f                   	pop    %edi
41906b:	5e                   	pop    %esi
41906c:	c3                   	ret
41906d:	8b 44 24 0c          	mov    0xc(%esp),%eax
419071:	33 c9                	xor    %ecx,%ecx
419073:	8b 15 80 73 43 00    	mov    0x437380,%edx
419079:	85 c0                	test   %eax,%eax
41907b:	0f 95 c1             	setne  %cl
41907e:	51                   	push   %ecx
41907f:	50                   	push   %eax
419080:	6a 01                	push   $0x1
419082:	56                   	push   %esi
419083:	6a 09                	push   $0x9
419085:	52                   	push   %edx
419086:	ff 15 f4 96 43 00    	call   *0x4396f4
41908c:	85 c0                	test   %eax,%eax
41908e:	75 11                	jne    0x4190a1
419090:	e8 fb 45 ff ff       	call   0x40d690
419095:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
41909b:	83 c8 ff             	or     $0xffffffff,%eax
41909e:	5f                   	pop    %edi
41909f:	5e                   	pop    %esi