428d07:	8b cf                	mov    %edi,%ecx
428d09:	56                   	push   %esi
428d0a:	ff 15 20 a5 43 00    	call   *0x43a520
428d10:	ff d7                	call   *%edi
428d12:	8b 3d dc 90 43 00    	mov    0x4390dc,%edi
428d18:	85 ff                	test   %edi,%edi
428d1a:	74 0b                	je     0x428d27
428d1c:	56                   	push   %esi
428d1d:	8b cf                	mov    %edi,%ecx
428d1f:	ff 15 20 a5 43 00    	call   *0x43a520
428d25:	ff d7                	call   *%edi
428d27:	8b 3d e4 90 43 00    	mov    0x4390e4,%edi
428d2d:	85 ff                	test   %edi,%edi
428d2f:	74 0b                	je     0x428d3c
428d31:	56                   	push   %esi
428d32:	8b cf                	mov    %edi,%ecx
428d34:	ff 15 20 a5 43 00    	call   *0x43a520
428d3a:	ff d7                	call   *%edi
428d3c:	33 c0                	xor    %eax,%eax
428d3e:	39 46 04             	cmp    %eax,0x4(%esi)
428d41:	7c 11                	jl     0x428d54
428d43:	83 7d 18 03          	cmpl   $0x3,0x18(%ebp)
428d47:	0f 85 90 00 00 00    	jne    0x428ddd
428d4d:	c7 46 04 ff ff 00 80 	movl   $0x8000ffff,0x4(%esi)
428d54:	e8 b3 fc ff ff       	call   0x428a0c
428d59:	8b 3d c8 90 43 00    	mov    0x4390c8,%edi
428d5f:	84 c0                	test   %al,%al
428d61:	75 1d                	jne    0x428d80
428d63:	85 ff                	test   %edi,%edi
428d65:	74 52                	je     0x428db9
428d67:	38 05 d4 90 43 00    	cmp    %al,0x4390d4
428d6d:	75 4a                	jne    0x428db9
428d6f:	33 c0                	xor    %eax,%eax
428d71:	8b cf                	mov    %edi,%ecx
428d73:	50                   	push   %eax
428d74:	50                   	push   %eax
428d75:	56                   	push   %esi
428d76:	ff 15 20 a5 43 00    	call   *0x43a520
428d7c:	ff d7                	call   *%edi
428d7e:	eb 39                	jmp    0x428db9
428d80:	85 ff                	test   %edi,%edi
428d82:	74 1a                	je     0x428d9e
428d84:	80 3d d4 90 43 00 00 	cmpb   $0x0,0x4390d4
428d8b:	75 11                	jne    0x428d9e
428d8d:	68 00 08 00 00       	push   $0x800
428d92:	53                   	push   %ebx
428d93:	56                   	push   %esi
428d94:	8b cf                	mov    %edi,%ecx
428d96:	ff 15 20 a5 43 00    	call   *0x43a520
428d9c:	ff d7                	call   *%edi
428d9e:	33 c0                	xor    %eax,%eax
428da0:	66 39 03             	cmp    %ax,(%ebx)
428da3:	75 0d                	jne    0x428db2
428da5:	56                   	push   %esi
428da6:	ba 00 08 00 00       	mov    $0x800,%edx
428dab:	8b cb                	mov    %ebx,%ecx
428dad:	e8 6c f2 ff ff       	call   0x42801e
428db2:	53                   	push   %ebx
428db3:	ff 15 8c a0 43 00    	call   *0x43a08c
428db9:	80 3d cc 90 43 00 00 	cmpb   $0x0,0x4390cc
428dc0:	74 14                	je     0x428dd6
428dc2:	8b 35 48 90 43 00    	mov    0x439048,%esi
428dc8:	85 f6                	test   %esi,%esi
428dca:	74 0a                	je     0x428dd6
428dcc:	8b ce                	mov    %esi,%ecx
428dce:	ff 15 20 a5 43 00    	call   *0x43a520
428dd4:	ff d6                	call   *%esi
428dd6:	5f                   	pop    %edi
428dd7:	5e                   	pop    %esi
428dd8:	5b                   	pop    %ebx
428dd9:	c9                   	leave
428dda:	c2 34 00             	ret    $0x34
428ddd:	e8 0f 52 00 00       	call   0x42dff1
428de2:	cc                   	int3
428de3:	8b ff                	mov    %edi,%edi
428de5:	55                   	push   %ebp
428de6:	8b ec                	mov    %esp,%ebp
428de8:	8b 55 0c             	mov    0xc(%ebp),%edx
428deb:	8d 45 14             	lea    0x14(%ebp),%eax
428dee:	56                   	push   %esi
428def:	8b 75 08             	mov    0x8(%ebp),%esi
428df2:	2b d6                	sub    %esi,%edx
428df4:	50                   	push   %eax
428df5:	ff 75 10             	push   0x10(%ebp)
428df8:	d1 fa                	sar    $1,%edx
428dfa:	8b ce                	mov    %esi,%ecx
428dfc:	e8 8e 41 00 00       	call   0x42cf8f
428e01:	39 75 0c             	cmp    %esi,0xc(%ebp)
428e04:	74 17                	je     0x428e1d
428e06:	8b ce                	mov    %esi,%ecx
428e08:	8d 51 02             	lea    0x2(%ecx),%edx
428e0b:	66 8b 01             	mov    (%ecx),%ax
428e0e:	83 c1 02             	add    $0x2,%ecx
428e11:	66 85 c0             	test   %ax,%ax
428e14:	75 f5                	jne    0x428e0b
428e16:	2b ca                	sub    %edx,%ecx
428e18:	d1 f9                	sar    $1,%ecx
428e1a:	8d 34 4e             	lea    (%esi,%ecx,2),%esi
428e1d:	8b c6                	mov    %esi,%eax
428e1f:	5e                   	pop    %esi
428e20:	5d                   	pop    %ebp
428e21:	c3                   	ret
428e22:	8b ff                	mov    %edi,%edi
428e24:	55                   	push   %ebp
428e25:	8b ec                	mov    %esp,%ebp
428e27:	ff 75 0c             	push   0xc(%ebp)
428e2a:	6a 02                	push   $0x2
428e2c:	ff 75 04             	push   0x4(%ebp)
428e2f:	6a 00                	push   $0x0
428e31:	6a 00                	push   $0x0
428e33:	ff 75 08             	push   0x8(%ebp)
428e36:	e8 33 2d 00 00       	call   0x42bb6e
428e3b:	8b 45 0c             	mov    0xc(%ebp),%eax
428e3e:	5d                   	pop    %ebp
428e3f:	c2 08 00             	ret    $0x8
428e42:	8b ff                	mov    %edi,%edi
428e44:	55                   	push   %ebp
428e45:	8b ec                	mov    %esp,%ebp
428e47:	53                   	push   %ebx
428e48:	56                   	push   %esi
428e49:	57                   	push   %edi
428e4a:	8b f9                	mov    %ecx,%edi
428e4c:	33 f6                	xor    %esi,%esi
428e4e:	39 77 08             	cmp    %esi,0x8(%edi)
428e51:	7e 1a                	jle    0x428e6d
428e53:	8b 5d 08             	mov    0x8(%ebp),%ebx
428e56:	8b 07                	mov    (%edi),%eax
428e58:	ff 33                	push   (%ebx)
428e5a:	ff 34 b0             	push   (%eax,%esi,4)
428e5d:	ff 15 78 a2 43 00    	call   *0x43a278
428e63:	85 c0                	test   %eax,%eax
428e65:	74 09                	je     0x428e70
428e67:	46                   	inc    %esi
428e68:	3b 77 08             	cmp    0x8(%edi),%esi
428e6b:	7c e9                	jl     0x428e56
428e6d:	83 ce ff             	or     $0xffffffff,%esi
428e70:	83 fe ff             	cmp    $0xffffffff,%esi
428e73:	75 04                	jne    0x428e79
428e75:	33 c0                	xor    %eax,%eax
428e77:	eb 0a                	jmp    0x428e83
428e79:	56                   	push   %esi
428e7a:	8b cf                	mov    %edi,%ecx
428e7c:	e8 3f f8 ff ff       	call   0x4286c0
428e81:	8b 00                	mov    (%eax),%eax
428e83:	5f                   	pop    %edi
428e84:	5e                   	pop    %esi
428e85:	5b                   	pop    %ebx
428e86:	5d                   	pop    %ebp
428e87:	c2 04 00             	ret    $0x4
428e8a:	8b ff                	mov    %edi,%edi
428e8c:	55                   	push   %ebp
428e8d:	8b ec                	mov    %esp,%ebp
428e8f:	83 ec 1c             	sub    $0x1c,%esp
428e92:	66 8b 41 06          	mov    0x6(%ecx),%ax
428e96:	33 d2                	xor    %edx,%edx
428e98:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
428e9c:	8a 41 08             	mov    0x8(%ecx),%al
428e9f:	53                   	push   %ebx
428ea0:	8b 5d 08             	mov    0x8(%ebp),%ebx
428ea3:	56                   	push   %esi
428ea4:	8b 75 0c             	mov    0xc(%ebp),%esi
428ea7:	88 45 e6             	mov    %al,-0x1a(%ebp)
428eaa:	33 c0                	xor    %eax,%eax
428eac:	89 4d f8             	mov    %ecx,-0x8(%ebp)
428eaf:	89 55 e8             	mov    %edx,-0x18(%ebp)
428eb2:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
428eb6:	89 55 f0             	mov    %edx,-0x10(%ebp)
428eb9:	89 55 f4             	mov    %edx,-0xc(%ebp)
428ebc:	85 f6                	test   %esi,%esi
428ebe:	74 47                	je     0x428f07
428ec0:	57                   	push   %edi
428ec1:	8b 41 0c             	mov    0xc(%ecx),%eax
428ec4:	8b fe                	mov    %esi,%edi
428ec6:	ff 71 14             	push   0x14(%ecx)
428ec9:	d1 ef                	shr    $1,%edi
428ecb:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
428ece:	0f af c7             	imul   %edi,%eax
428ed1:	03 c3                	add    %ebx,%eax
428ed3:	89 45 fc             	mov    %eax,-0x4(%ebp)
428ed6:	8d 45 fc             	lea    -0x4(%ebp),%eax
428ed9:	50                   	push   %eax
428eda:	e8 88 13 00 00       	call   0x42a267
428edf:	ff 75 14             	push   0x14(%ebp)
428ee2:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
428ee5:	ff 75 10             	push   0x10(%ebp)
428ee8:	e8 95 e5 ff ff       	call   0x427482
428eed:	85 c0                	test   %eax,%eax
428eef:	7e 0c                	jle    0x428efd
428ef1:	8b 5d fc             	mov    -0x4(%ebp),%ebx
428ef4:	83 c8 ff             	or     $0xffffffff,%eax
428ef7:	2b c7                	sub    %edi,%eax
428ef9:	03 f0                	add    %eax,%esi
428efb:	eb 02                	jmp    0x428eff
428efd:	8b f7                	mov    %edi,%esi
428eff:	8b 4d f8             	mov    -0x8(%ebp),%ecx
428f02:	85 f6                	test   %esi,%esi
428f04:	75 bb                	jne    0x428ec1
428f06:	5f                   	pop    %edi
428f07:	5e                   	pop    %esi
428f08:	8b c3                	mov    %ebx,%eax
428f0a:	5b                   	pop    %ebx
428f0b:	c9                   	leave
428f0c:	c2 10 00             	ret    $0x10
428f0f:	8b ff                	mov    %edi,%edi
428f11:	55                   	push   %ebp
428f12:	8b ec                	mov    %esp,%ebp
428f14:	83 e4 f8             	and    $0xfffffff8,%esp
428f17:	83 ec 14             	sub    $0x14,%esp
428f1a:	53                   	push   %ebx
428f1b:	8b 5d 08             	mov    0x8(%ebp),%ebx
428f1e:	56                   	push   %esi
428f1f:	57                   	push   %edi
428f20:	6a 40                	push   $0x40
428f22:	83 23 00             	andl   $0x0,(%ebx)
428f25:	8b f1                	mov    %ecx,%esi
428f27:	89 54 24 18          	mov    %edx,0x18(%esp)
428f2b:	5a                   	pop    %edx
428f2c:	6a 08                	push   $0x8
428f2e:	59                   	pop    %ecx
428f2f:	e8 c6 2b ff ff       	call   0x41bafa
428f34:	8b f8                	mov    %eax,%edi
428f36:	89 7c 24 10          	mov    %edi,0x10(%esp)
428f3a:	85 ff                	test   %edi,%edi
428f3c:	75 1a                	jne    0x428f58
428f3e:	8b 4d 04             	mov    0x4(%ebp),%ecx
428f41:	be 0e 00 07 80       	mov    $0x8007000e,%esi
428f46:	56                   	push   %esi
428f47:	68 d0 4f 40 00       	push   $0x404fd0
428f4c:	ba 42 01 00 00       	mov    $0x142,%edx
428f51:	e8 b4 31 00 00       	call   0x42c10a
428f56:	eb 52                	jmp    0x428faa
428f58:	83 64 24 18 00       	andl   $0x0,0x18(%esp)
428f5d:	8d 4c 24 18          	lea    0x18(%esp),%ecx
428f61:	83 64 24 1c 00       	andl   $0x0,0x1c(%esp)
428f66:	57                   	push   %edi
428f67:	56                   	push   %esi
428f68:	e8 d6 e6 ff ff       	call   0x427643
428f6d:	8b f0                	mov    %eax,%esi
428f6f:	85 f6                	test   %esi,%esi
428f71:	79 15                	jns    0x428f88
428f73:	8b 4d 04             	mov    0x4(%ebp),%ecx
428f76:	ba 45 01 00 00       	mov    $0x145,%edx
428f7b:	56                   	push   %esi
428f7c:	68 d0 4f 40 00       	push   $0x404fd0
428f81:	e8 84 31 00 00       	call   0x42c10a
428f86:	eb 19                	jmp    0x428fa1
428f88:	8d 44 24 18          	lea    0x18(%esp),%eax
428f8c:	8b cf                	mov    %edi,%ecx
428f8e:	50                   	push   %eax
428f8f:	ff 74 24 18          	push   0x18(%esp)
428f93:	e8 31 bb ff ff       	call   0x424ac9
428f98:	83 64 24 10 00       	andl   $0x0,0x10(%esp)
428f9d:	33 f6                	xor    %esi,%esi
428f9f:	89 3b                	mov    %edi,(%ebx)
428fa1:	8d 4c 24 18          	lea    0x18(%esp),%ecx
428fa5:	e8 24 cb ff ff       	call   0x425ace
428faa:	8d 4c 24 10          	lea    0x10(%esp),%ecx
428fae:	e8 ec c3 ff ff       	call   0x42539f
428fb3:	5f                   	pop    %edi
428fb4:	8b c6                	mov    %esi,%eax
428fb6:	5e                   	pop    %esi
428fb7:	5b                   	pop    %ebx
428fb8:	8b e5                	mov    %ebp,%esp
428fba:	5d                   	pop    %ebp
428fbb:	c2 04 00             	ret    $0x4
428fbe:	8b ff                	mov    %edi,%edi
428fc0:	55                   	push   %ebp
428fc1:	8b ec                	mov    %esp,%ebp
428fc3:	83 ec 18             	sub    $0x18,%esp
428fc6:	53                   	push   %ebx
428fc7:	8b 5d 08             	mov    0x8(%ebp),%ebx
428fca:	56                   	push   %esi
428fcb:	57                   	push   %edi
428fcc:	6a 08                	push   $0x8
428fce:	83 23 00             	andl   $0x0,(%ebx)
428fd1:	8b f1                	mov    %ecx,%esi
428fd3:	89 55 f4             	mov    %edx,-0xc(%ebp)
428fd6:	ba a8 00 00 00       	mov    $0xa8,%edx
428fdb:	59                   	pop    %ecx
428fdc:	e8 19 2b ff ff       	call   0x41bafa
428fe1:	8b f8                	mov    %eax,%edi
428fe3:	89 7d f8             	mov    %edi,-0x8(%ebp)
428fe6:	85 ff                	test   %edi,%edi
428fe8:	75 1a                	jne    0x429004
428fea:	8b 4d 04             	mov    0x4(%ebp),%ecx
428fed:	be 0e 00 07 80       	mov    $0x8007000e,%esi
428ff2:	56                   	push   %esi
428ff3:	68 d0 4f 40 00       	push   $0x404fd0
428ff8:	ba 42 01 00 00       	mov    $0x142,%edx
428ffd:	e8 08 31 00 00       	call   0x42c10a
429002:	eb 4b                	jmp    0x42904f
429004:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
429008:	8d 4d ec             	lea    -0x14(%ebp),%ecx
42900b:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
42900f:	57                   	push   %edi
429010:	56                   	push   %esi
429011:	e8 2d e6 ff ff       	call   0x427643
429016:	8b f0                	mov    %eax,%esi
429018:	85 f6                	test   %esi,%esi
42901a:	79 15                	jns    0x429031
42901c:	8b 4d 04             	mov    0x4(%ebp),%ecx
42901f:	ba 45 01 00 00       	mov    $0x145,%edx
429024:	56                   	push   %esi
429025:	68 d0 4f 40 00       	push   $0x404fd0
42902a:	e8 db 30 00 00       	call   0x42c10a
42902f:	eb 16                	jmp    0x429047
429031:	8d 45 ec             	lea    -0x14(%ebp),%eax
429034:	8b cf                	mov    %edi,%ecx
429036:	50                   	push   %eax
429037:	ff 75 f4             	push   -0xc(%ebp)
42903a:	e8 df ba ff ff       	call   0x424b1e
42903f:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
429043:	33 f6                	xor    %esi,%esi
429045:	89 3b                	mov    %edi,(%ebx)
429047:	8d 4d ec             	lea    -0x14(%ebp),%ecx
42904a:	e8 7f ca ff ff       	call   0x425ace
42904f:	8d 4d f8             	lea    -0x8(%ebp),%ecx
429052:	e8 48 c3 ff ff       	call   0x42539f
429057:	5f                   	pop    %edi
429058:	8b c6                	mov    %esi,%eax
42905a:	5e                   	pop    %esi
42905b:	5b                   	pop    %ebx
42905c:	c9                   	leave
42905d:	c2 04 00             	ret    $0x4
429060:	8b ff                	mov    %edi,%edi
429062:	55                   	push   %ebp
429063:	8b ec                	mov    %esp,%ebp
429065:	53                   	push   %ebx
429066:	57                   	push   %edi
429067:	8b fa                	mov    %edx,%edi
429069:	8b d9                	mov    %ecx,%ebx
42906b:	85 ff                	test   %edi,%edi
42906d:	74 25                	je     0x429094
42906f:	8b 03                	mov    (%ebx),%eax
429071:	56                   	push   %esi
429072:	8b 70 04             	mov    0x4(%eax),%esi
429075:	8b ce                	mov    %esi,%ecx
429077:	ff 15 20 a5 43 00    	call   *0x43a520
42907d:	8b cb                	mov    %ebx,%ecx
42907f:	ff d6                	call   *%esi
429081:	50                   	push   %eax
429082:	68 fc 6f 40 00       	push   $0x406ffc
429087:	ff 75 08             	push   0x8(%ebp)
42908a:	57                   	push   %edi
42908b:	e8 99 b1 fe ff       	call   0x414229
429090:	83 c4 10             	add    $0x10,%esp
429093:	5e                   	pop    %esi
429094:	5f                   	pop    %edi
429095:	5b                   	pop    %ebx
429096:	5d                   	pop    %ebp