4a2d17:	85 c0                	test   %eax,%eax
4a2d19:	75 24                	jne    0x4a2d3f
4a2d1b:	8b 44 24 54          	mov    0x54(%esp),%eax
4a2d1f:	6a 5c                	push   $0x5c
4a2d21:	50                   	push   %eax
4a2d22:	e8 f9 59 00 00       	call   0x4a8720
4a2d27:	83 c4 08             	add    $0x8,%esp
4a2d2a:	85 c0                	test   %eax,%eax
4a2d2c:	74 11                	je     0x4a2d3f
4a2d2e:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4a2d32:	6a 00                	push   $0x0
4a2d34:	53                   	push   %ebx
4a2d35:	51                   	push   %ecx
4a2d36:	ff 15 dc 31 4b 00    	call   *0x4b31dc
4a2d3c:	89 47 04             	mov    %eax,0x4(%edi)
4a2d3f:	8b 44 24 18          	mov    0x18(%esp),%eax
4a2d43:	50                   	push   %eax
4a2d44:	8b 10                	mov    (%eax),%edx
4a2d46:	ff 52 08             	call   *0x8(%edx)
4a2d49:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a2d4d:	50                   	push   %eax
4a2d4e:	8b 08                	mov    (%eax),%ecx
4a2d50:	ff 51 08             	call   *0x8(%ecx)
4a2d53:	33 ed                	xor    %ebp,%ebp
4a2d55:	53                   	push   %ebx
4a2d56:	e8 a3 59 00 00       	call   0x4a86fe
4a2d5b:	8b 44 24 18          	mov    0x18(%esp),%eax
4a2d5f:	83 c4 04             	add    $0x4,%esp
4a2d62:	3b c5                	cmp    %ebp,%eax
4a2d64:	74 0b                	je     0x4a2d71
4a2d66:	56                   	push   %esi
4a2d67:	e8 92 59 00 00       	call   0x4a86fe
4a2d6c:	83 c4 04             	add    $0x4,%esp
4a2d6f:	eb 7a                	jmp    0x4a2deb
4a2d71:	8d 54 24 24          	lea    0x24(%esp),%edx
4a2d75:	52                   	push   %edx
4a2d76:	56                   	push   %esi
4a2d77:	ff 15 10 35 4b 00    	call   *0x4b3510
4a2d7d:	3b c5                	cmp    %ebp,%eax
4a2d7f:	89 47 04             	mov    %eax,0x4(%edi)
4a2d82:	7d 0f                	jge    0x4a2d93
4a2d84:	8d 44 24 24          	lea    0x24(%esp),%eax
4a2d88:	50                   	push   %eax
4a2d89:	56                   	push   %esi
4a2d8a:	ff 15 00 35 4b 00    	call   *0x4b3500
4a2d90:	89 47 04             	mov    %eax,0x4(%edi)
4a2d93:	56                   	push   %esi
4a2d94:	e8 65 59 00 00       	call   0x4a86fe
4a2d99:	8b 47 04             	mov    0x4(%edi),%eax
4a2d9c:	83 c4 04             	add    $0x4,%esp
4a2d9f:	3b c5                	cmp    %ebp,%eax
4a2da1:	7d 0a                	jge    0x4a2dad
4a2da3:	5f                   	pop    %edi
4a2da4:	5e                   	pop    %esi
4a2da5:	5d                   	pop    %ebp
4a2da6:	33 c0                	xor    %eax,%eax
4a2da8:	5b                   	pop    %ebx
4a2da9:	83 c4 24             	add    $0x24,%esp
4a2dac:	c3                   	ret
4a2dad:	8b 1d 0c 35 4b 00    	mov    0x4b350c,%ebx
4a2db3:	8d 4c 24 14          	lea    0x14(%esp),%ecx
4a2db7:	51                   	push   %ecx
4a2db8:	68 a0 35 4b 00       	push   $0x4b35a0
4a2dbd:	6a 17                	push   $0x17
4a2dbf:	8d 54 24 30          	lea    0x30(%esp),%edx
4a2dc3:	55                   	push   %ebp
4a2dc4:	52                   	push   %edx
4a2dc5:	ff d3                	call   *%ebx
4a2dc7:	8b f0                	mov    %eax,%esi
4a2dc9:	81 fe 57 00 07 80    	cmp    $0x80070057,%esi
4a2dcf:	75 16                	jne    0x4a2de7
4a2dd1:	8d 44 24 14          	lea    0x14(%esp),%eax
4a2dd5:	8d 4c 24 24          	lea    0x24(%esp),%ecx
4a2dd9:	50                   	push   %eax
4a2dda:	68 a0 35 4b 00       	push   $0x4b35a0
4a2ddf:	6a 07                	push   $0x7
4a2de1:	55                   	push   %ebp
4a2de2:	51                   	push   %ecx
4a2de3:	ff d3                	call   *%ebx
4a2de5:	8b f0                	mov    %eax,%esi
4a2de7:	3b f5                	cmp    %ebp,%esi
4a2de9:	7c 1b                	jl     0x4a2e06
4a2deb:	8b 54 24 14          	mov    0x14(%esp),%edx
4a2def:	52                   	push   %edx
4a2df0:	ff 15 08 35 4b 00    	call   *0x4b3508
4a2df6:	8b f0                	mov    %eax,%esi
4a2df8:	3b f5                	cmp    %ebp,%esi
4a2dfa:	7d 17                	jge    0x4a2e13
4a2dfc:	8b 44 24 14          	mov    0x14(%esp),%eax
4a2e00:	50                   	push   %eax
4a2e01:	8b 08                	mov    (%eax),%ecx
4a2e03:	ff 51 08             	call   *0x8(%ecx)
4a2e06:	89 77 04             	mov    %esi,0x4(%edi)
4a2e09:	5f                   	pop    %edi
4a2e0a:	5e                   	pop    %esi
4a2e0b:	5d                   	pop    %ebp
4a2e0c:	33 c0                	xor    %eax,%eax
4a2e0e:	5b                   	pop    %ebx
4a2e0f:	83 c4 24             	add    $0x24,%esp
4a2e12:	c3                   	ret
4a2e13:	89 77 04             	mov    %esi,0x4(%edi)
4a2e16:	8b 54 24 14          	mov    0x14(%esp),%edx
4a2e1a:	89 17                	mov    %edx,(%edi)
4a2e1c:	5f                   	pop    %edi
4a2e1d:	5e                   	pop    %esi
4a2e1e:	5d                   	pop    %ebp
4a2e1f:	b8 01 00 00 00       	mov    $0x1,%eax
4a2e24:	5b                   	pop    %ebx
4a2e25:	83 c4 24             	add    $0x24,%esp
4a2e28:	c3                   	ret
4a2e29:	90                   	nop
4a2e2a:	90                   	nop
4a2e2b:	90                   	nop
4a2e2c:	90                   	nop
4a2e2d:	90                   	nop
4a2e2e:	90                   	nop
4a2e2f:	90                   	nop
4a2e30:	56                   	push   %esi
4a2e31:	8b 74 24 0c          	mov    0xc(%esp),%esi
4a2e35:	8b 06                	mov    (%esi),%eax
4a2e37:	85 c0                	test   %eax,%eax
4a2e39:	74 0c                	je     0x4a2e47
4a2e3b:	8b 08                	mov    (%eax),%ecx
4a2e3d:	50                   	push   %eax
4a2e3e:	ff 51 08             	call   *0x8(%ecx)
4a2e41:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4a2e47:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
4a2e4e:	5e                   	pop    %esi
4a2e4f:	c3                   	ret
4a2e50:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4a2e54:	33 c0                	xor    %eax,%eax
4a2e56:	83 39 00             	cmpl   $0x0,(%ecx)
4a2e59:	0f 94 c0             	sete   %al
4a2e5c:	c3                   	ret
4a2e5d:	90                   	nop
4a2e5e:	90                   	nop
4a2e5f:	90                   	nop
4a2e60:	8b 44 24 08          	mov    0x8(%esp),%eax
4a2e64:	83 ec 28             	sub    $0x28,%esp
4a2e67:	8b 08                	mov    (%eax),%ecx
4a2e69:	56                   	push   %esi
4a2e6a:	85 c9                	test   %ecx,%ecx
4a2e6c:	8b f0                	mov    %eax,%esi
4a2e6e:	75 0e                	jne    0x4a2e7e
4a2e70:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a2e77:	33 c0                	xor    %eax,%eax
4a2e79:	5e                   	pop    %esi
4a2e7a:	83 c4 28             	add    $0x28,%esp
4a2e7d:	c3                   	ret
4a2e7e:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
4a2e85:	00
4a2e86:	8b 00                	mov    (%eax),%eax
4a2e88:	8d 54 24 04          	lea    0x4(%esp),%edx
4a2e8c:	8b 08                	mov    (%eax),%ecx
4a2e8e:	52                   	push   %edx
4a2e8f:	68 b0 35 4b 00       	push   $0x4b35b0
4a2e94:	50                   	push   %eax
4a2e95:	ff 11                	call   *(%ecx)
4a2e97:	85 c0                	test   %eax,%eax
4a2e99:	89 46 04             	mov    %eax,0x4(%esi)
4a2e9c:	74 07                	je     0x4a2ea5
4a2e9e:	33 c0                	xor    %eax,%eax
4a2ea0:	5e                   	pop    %esi
4a2ea1:	83 c4 28             	add    $0x28,%esp
4a2ea4:	c3                   	ret
4a2ea5:	8b 4c 24 40          	mov    0x40(%esp),%ecx
4a2ea9:	8b 54 24 04          	mov    0x4(%esp),%edx
4a2ead:	8d 44 24 08          	lea    0x8(%esp),%eax
4a2eb1:	50                   	push   %eax
4a2eb2:	51                   	push   %ecx
4a2eb3:	52                   	push   %edx
4a2eb4:	e8 b7 f4 ff ff       	call   0x4a2370
4a2eb9:	83 c4 0c             	add    $0xc,%esp
4a2ebc:	89 46 04             	mov    %eax,0x4(%esi)
4a2ebf:	85 c0                	test   %eax,%eax
4a2ec1:	74 07                	je     0x4a2eca
4a2ec3:	33 c0                	xor    %eax,%eax
4a2ec5:	5e                   	pop    %esi
4a2ec6:	83 c4 28             	add    $0x28,%esp
4a2ec9:	c3                   	ret
4a2eca:	8b 44 24 30          	mov    0x30(%esp),%eax
4a2ece:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a2ed1:	48                   	dec    %eax
4a2ed2:	83 f8 02             	cmp    $0x2,%eax
4a2ed5:	7c 16                	jl     0x4a2eed
4a2ed7:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a2eda:	8d 54 94 3c          	lea    0x3c(%esp,%edx,4),%edx
4a2ede:	83 3a 00             	cmpl   $0x0,(%edx)
4a2ee1:	75 0a                	jne    0x4a2eed
4a2ee3:	49                   	dec    %ecx
4a2ee4:	48                   	dec    %eax
4a2ee5:	83 ea 0c             	sub    $0xc,%edx
4a2ee8:	83 f8 02             	cmp    $0x2,%eax
4a2eeb:	7d f1                	jge    0x4a2ede
4a2eed:	33 c0                	xor    %eax,%eax
4a2eef:	8d 54 24 4c          	lea    0x4c(%esp),%edx
4a2ef3:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a2ef7:	52                   	push   %edx
4a2ef8:	89 44 24 14          	mov    %eax,0x14(%esp)
4a2efc:	8b 54 24 08          	mov    0x8(%esp),%edx
4a2f00:	89 44 24 18          	mov    %eax,0x18(%esp)
4a2f04:	51                   	push   %ecx
4a2f05:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a2f09:	89 44 24 20          	mov    %eax,0x20(%esp)
4a2f0d:	8d 44 24 14          	lea    0x14(%esp),%eax
4a2f11:	50                   	push   %eax
4a2f12:	6a 02                	push   $0x2
4a2f14:	51                   	push   %ecx
4a2f15:	52                   	push   %edx
4a2f16:	e8 a5 f4 ff ff       	call   0x4a23c0
4a2f1b:	89 46 04             	mov    %eax,0x4(%esi)
4a2f1e:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a2f22:	83 c4 18             	add    $0x18,%esp
4a2f25:	8b 08                	mov    (%eax),%ecx
4a2f27:	50                   	push   %eax
4a2f28:	ff 51 08             	call   *0x8(%ecx)
4a2f2b:	8b 44 24 0c          	mov    0xc(%esp),%eax
4a2f2f:	33 f6                	xor    %esi,%esi
4a2f31:	66 3d 08 00          	cmp    $0x8,%ax
4a2f35:	74 4c                	je     0x4a2f83
4a2f37:	8b 54 24 10          	mov    0x10(%esp),%edx
4a2f3b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a2f3f:	89 54 24 20          	mov    %edx,0x20(%esp)
4a2f43:	33 d2                	xor    %edx,%edx
4a2f45:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a2f49:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4a2f4d:	8b 44 24 14          	mov    0x14(%esp),%eax
4a2f51:	89 54 24 10          	mov    %edx,0x10(%esp)
4a2f55:	89 44 24 24          	mov    %eax,0x24(%esp)
4a2f59:	89 54 24 14          	mov    %edx,0x14(%esp)
4a2f5d:	89 4c 24 28          	mov    %ecx,0x28(%esp)
4a2f61:	6a 08                	push   $0x8
4a2f63:	8d 44 24 20          	lea    0x20(%esp),%eax
4a2f67:	52                   	push   %edx
4a2f68:	8d 4c 24 14          	lea    0x14(%esp),%ecx
4a2f6c:	50                   	push   %eax
4a2f6d:	51                   	push   %ecx
4a2f6e:	89 54 24 28          	mov    %edx,0x28(%esp)
4a2f72:	ff 15 e8 31 4b 00    	call   *0x4b31e8
4a2f78:	85 c0                	test   %eax,%eax
4a2f7a:	7c 16                	jl     0x4a2f92
4a2f7c:	8b 54 24 14          	mov    0x14(%esp),%edx
4a2f80:	52                   	push   %edx
4a2f81:	eb 05                	jmp    0x4a2f88
4a2f83:	8b 44 24 14          	mov    0x14(%esp),%eax
4a2f87:	50                   	push   %eax
4a2f88:	e8 83 f3 ff ff       	call   0x4a2310
4a2f8d:	83 c4 04             	add    $0x4,%esp
4a2f90:	8b f0                	mov    %eax,%esi
4a2f92:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4a2f96:	51                   	push   %ecx
4a2f97:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a2f9d:	8b c6                	mov    %esi,%eax
4a2f9f:	5e                   	pop    %esi
4a2fa0:	83 c4 28             	add    $0x28,%esp
4a2fa3:	c3                   	ret
4a2fa4:	90                   	nop
4a2fa5:	90                   	nop
4a2fa6:	90                   	nop
4a2fa7:	90                   	nop
4a2fa8:	90                   	nop
4a2fa9:	90                   	nop
4a2faa:	90                   	nop
4a2fab:	90                   	nop
4a2fac:	90                   	nop
4a2fad:	90                   	nop
4a2fae:	90                   	nop
4a2faf:	90                   	nop
4a2fb0:	55                   	push   %ebp
4a2fb1:	8b ec                	mov    %esp,%ebp
4a2fb3:	83 ec 2c             	sub    $0x2c,%esp
4a2fb6:	8b 45 0c             	mov    0xc(%ebp),%eax
4a2fb9:	56                   	push   %esi
4a2fba:	8b f0                	mov    %eax,%esi
4a2fbc:	83 38 00             	cmpl   $0x0,(%eax)
4a2fbf:	75 0c                	jne    0x4a2fcd
4a2fc1:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a2fc8:	5e                   	pop    %esi
4a2fc9:	8b e5                	mov    %ebp,%esp
4a2fcb:	5d                   	pop    %ebp
4a2fcc:	c3                   	ret
4a2fcd:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4a2fd4:	8b 00                	mov    (%eax),%eax
4a2fd6:	8d 55 fc             	lea    -0x4(%ebp),%edx
4a2fd9:	8b 08                	mov    (%eax),%ecx
4a2fdb:	52                   	push   %edx
4a2fdc:	68 b0 35 4b 00       	push   $0x4b35b0
4a2fe1:	50                   	push   %eax
4a2fe2:	ff 11                	call   *(%ecx)
4a2fe4:	85 c0                	test   %eax,%eax
4a2fe6:	89 46 04             	mov    %eax,0x4(%esi)
4a2fe9:	0f 85 66 01 00 00    	jne    0x4a3155
4a2fef:	8b 4d 18             	mov    0x18(%ebp),%ecx
4a2ff2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a2ff5:	8d 45 f8             	lea    -0x8(%ebp),%eax
4a2ff8:	50                   	push   %eax
4a2ff9:	51                   	push   %ecx
4a2ffa:	52                   	push   %edx
4a2ffb:	e8 70 f3 ff ff       	call   0x4a2370
4a3000:	83 c4 0c             	add    $0xc,%esp
4a3003:	89 46 04             	mov    %eax,0x4(%esi)
4a3006:	85 c0                	test   %eax,%eax
4a3008:	0f 85 47 01 00 00    	jne    0x4a3155
4a300e:	8b 45 08             	mov    0x8(%ebp),%eax
4a3011:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a3014:	48                   	dec    %eax
4a3015:	83 f8 02             	cmp    $0x2,%eax
4a3018:	7c 16                	jl     0x4a3030
4a301a:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a301d:	8d 54 95 14          	lea    0x14(%ebp,%edx,4),%edx
4a3021:	83 3a 00             	cmpl   $0x0,(%edx)
4a3024:	75 0a                	jne    0x4a3030
4a3026:	49                   	dec    %ecx
4a3027:	48                   	dec    %eax
4a3028:	83 ea 0c             	sub    $0xc,%edx
4a302b:	83 f8 02             	cmp    $0x2,%eax
4a302e:	7d f1                	jge    0x4a3021
4a3030:	33 c0                	xor    %eax,%eax
4a3032:	8d 55 24             	lea    0x24(%ebp),%edx
4a3035:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4a3038:	52                   	push   %edx
4a3039:	89 45 d8             	mov    %eax,-0x28(%ebp)
4a303c:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a303f:	89 45 dc             	mov    %eax,-0x24(%ebp)
4a3042:	51                   	push   %ecx
4a3043:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4a3046:	89 45 e0             	mov    %eax,-0x20(%ebp)
4a3049:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4a304c:	50                   	push   %eax
4a304d:	6a 02                	push   $0x2
4a304f:	51                   	push   %ecx
4a3050:	52                   	push   %edx
4a3051:	e8 6a f3 ff ff       	call   0x4a23c0
4a3056:	89 46 04             	mov    %eax,0x4(%esi)
4a3059:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a305c:	83 c4 18             	add    $0x18,%esp
4a305f:	8b 08                	mov    (%eax),%ecx
4a3061:	50                   	push   %eax
4a3062:	ff 51 08             	call   *0x8(%ecx)
4a3065:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4a3068:	81 e2 ff ff 00 00    	and    $0xffff,%edx
4a306e:	8d 42 fe             	lea    -0x2(%edx),%eax
4a3071:	83 f8 11             	cmp    $0x11,%eax
4a3074:	0f 87 bd 00 00 00    	ja     0x4a3137
4a307a:	ff 24 85 5c 31 4a 00 	jmp    *0x4a315c(,%eax,4)
4a3081:	8b 45 dc             	mov    -0x24(%ebp),%eax
4a3084:	25 ff 00 00 00       	and    $0xff,%eax
4a3089:	89 45 08             	mov    %eax,0x8(%ebp)
4a308c:	db 45 08             	fildl  0x8(%ebp)
4a308f:	dd 5d e4             	fstpl  -0x1c(%ebp)