55cc47:	8b 46 08             	mov    0x8(%esi),%eax
55cc4a:	ff 76 30             	push   0x30(%esi)
55cc4d:	ff 70 0c             	push   0xc(%eax)
55cc50:	8d 45 c0             	lea    -0x40(%ebp),%eax
55cc53:	50                   	push   %eax
55cc54:	ff 37                	push   (%edi)
55cc56:	e8 15 f2 ff ff       	call   0x55be70
55cc5b:	ff 46 1c             	incl   0x1c(%esi)
55cc5e:	8b 43 08             	mov    0x8(%ebx),%eax
55cc61:	99                   	cltd
55cc62:	52                   	push   %edx
55cc63:	50                   	push   %eax
55cc64:	8d 45 c0             	lea    -0x40(%ebp),%eax
55cc67:	50                   	push   %eax
55cc68:	e8 f3 f0 ff ff       	call   0x55bd60
55cc6d:	8b 33                	mov    (%ebx),%esi
55cc6f:	83 c4 20             	add    $0x20,%esp
55cc72:	85 f6                	test   %esi,%esi
55cc74:	0f 84 92 00 00 00    	je     0x55cd0c
55cc7a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
55cc80:	8b 06                	mov    (%esi),%eax
55cc82:	8b 7e 04             	mov    0x4(%esi),%edi
55cc85:	99                   	cltd
55cc86:	85 d2                	test   %edx,%edx
55cc88:	77 3b                	ja     0x55ccc5
55cc8a:	72 05                	jb     0x55cc91
55cc8c:	83 f8 7f             	cmp    $0x7f,%eax
55cc8f:	77 0c                	ja     0x55cc9d
55cc91:	24 7f                	and    $0x7f,%al
55cc93:	88 45 f0             	mov    %al,-0x10(%ebp)
55cc96:	b8 01 00 00 00       	mov    $0x1,%eax
55cc9b:	eb 36                	jmp    0x55ccd3
55cc9d:	85 d2                	test   %edx,%edx
55cc9f:	77 24                	ja     0x55ccc5
55cca1:	72 07                	jb     0x55ccaa
55cca3:	3d ff 3f 00 00       	cmp    $0x3fff,%eax
55cca8:	77 1b                	ja     0x55ccc5
55ccaa:	8b c8                	mov    %eax,%ecx
55ccac:	0f ac d1 07          	shrd   $0x7,%edx,%ecx
55ccb0:	80 c9 80             	or     $0x80,%cl
55ccb3:	c1 ea 07             	shr    $0x7,%edx
55ccb6:	24 7f                	and    $0x7f,%al
55ccb8:	88 4d f0             	mov    %cl,-0x10(%ebp)
55ccbb:	88 45 f1             	mov    %al,-0xf(%ebp)
55ccbe:	b8 02 00 00 00       	mov    $0x2,%eax
55ccc3:	eb 0e                	jmp    0x55ccd3
55ccc5:	52                   	push   %edx
55ccc6:	50                   	push   %eax
55ccc7:	8d 45 f0             	lea    -0x10(%ebp),%eax
55ccca:	50                   	push   %eax
55cccb:	e8 70 45 fb ff       	call   0x511240
55ccd0:	83 c4 0c             	add    $0xc,%esp
55ccd3:	50                   	push   %eax
55ccd4:	8d 45 f0             	lea    -0x10(%ebp),%eax
55ccd7:	50                   	push   %eax
55ccd8:	8d 45 c0             	lea    -0x40(%ebp),%eax
55ccdb:	50                   	push   %eax
55ccdc:	e8 bf ef ff ff       	call   0x55bca0
55cce1:	ff 36                	push   (%esi)
55cce3:	8d 46 08             	lea    0x8(%esi),%eax
55cce6:	50                   	push   %eax
55cce7:	8d 45 c0             	lea    -0x40(%ebp),%eax
55ccea:	50                   	push   %eax
55cceb:	e8 b0 ef ff ff       	call   0x55bca0
55ccf0:	83 c4 18             	add    $0x18,%esp
55ccf3:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
55ccf7:	75 09                	jne    0x55cd02
55ccf9:	56                   	push   %esi
55ccfa:	e8 91 e0 f8 ff       	call   0x4ead90
55ccff:	83 c4 04             	add    $0x4,%esp
55cd02:	8b f7                	mov    %edi,%esi
55cd04:	85 ff                	test   %edi,%edi
55cd06:	0f 85 74 ff ff ff    	jne    0x55cc80
55cd0c:	ff 75 e8             	push   -0x18(%ebp)
55cd0f:	8d 45 c0             	lea    -0x40(%ebp),%eax
55cd12:	89 33                	mov    %esi,(%ebx)
55cd14:	50                   	push   %eax
55cd15:	e8 d6 f0 ff ff       	call   0x55bdf0
55cd1a:	83 c4 08             	add    $0x8,%esp
55cd1d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55cd20:	5f                   	pop    %edi
55cd21:	5e                   	pop    %esi
55cd22:	33 cd                	xor    %ebp,%ecx
55cd24:	5b                   	pop    %ebx
55cd25:	e8 b0 47 08 00       	call   0x5e14da
55cd2a:	8b e5                	mov    %ebp,%esp
55cd2c:	5d                   	pop    %ebp
55cd2d:	c3                   	ret
55cd2e:	cc                   	int3
55cd2f:	cc                   	int3
55cd30:	55                   	push   %ebp
55cd31:	8b ec                	mov    %esp,%ebp
55cd33:	83 ec 10             	sub    $0x10,%esp
55cd36:	a1 d4 89 72 00       	mov    0x7289d4,%eax
55cd3b:	33 c5                	xor    %ebp,%eax
55cd3d:	89 45 fc             	mov    %eax,-0x4(%ebp)
55cd40:	8b 4d 08             	mov    0x8(%ebp),%ecx
55cd43:	53                   	push   %ebx
55cd44:	8b 5d 10             	mov    0x10(%ebp),%ebx
55cd47:	56                   	push   %esi
55cd48:	57                   	push   %edi
55cd49:	8b 7d 0c             	mov    0xc(%ebp),%edi
55cd4c:	8d 75 f4             	lea    -0xc(%ebp),%esi
55cd4f:	89 4d f0             	mov    %ecx,-0x10(%ebp)
55cd52:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
55cd59:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
55cd60:	ff 33                	push   (%ebx)
55cd62:	8d 43 08             	lea    0x8(%ebx),%eax
55cd65:	50                   	push   %eax
55cd66:	ff 37                	push   (%edi)
55cd68:	8d 47 08             	lea    0x8(%edi),%eax
55cd6b:	50                   	push   %eax
55cd6c:	8d 45 f8             	lea    -0x8(%ebp),%eax
55cd6f:	50                   	push   %eax
55cd70:	8b 41 20             	mov    0x20(%ecx),%eax
55cd73:	51                   	push   %ecx
55cd74:	ff d0                	call   *%eax
55cd76:	83 c4 18             	add    $0x18,%esp
55cd79:	85 c0                	test   %eax,%eax
55cd7b:	7f 10                	jg     0x55cd8d
55cd7d:	89 3e                	mov    %edi,(%esi)
55cd7f:	8d 77 04             	lea    0x4(%edi),%esi
55cd82:	8b 3e                	mov    (%esi),%edi
55cd84:	85 ff                	test   %edi,%edi
55cd86:	74 1c                	je     0x55cda4
55cd88:	8b 4d f0             	mov    -0x10(%ebp),%ecx
55cd8b:	eb d3                	jmp    0x55cd60
55cd8d:	89 1e                	mov    %ebx,(%esi)
55cd8f:	8d 73 04             	lea    0x4(%ebx),%esi
55cd92:	8b 1e                	mov    (%esi),%ebx
55cd94:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
55cd9b:	85 db                	test   %ebx,%ebx
55cd9d:	74 1b                	je     0x55cdba
55cd9f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
55cda2:	eb bc                	jmp    0x55cd60
55cda4:	8b 45 f4             	mov    -0xc(%ebp),%eax
55cda7:	5f                   	pop    %edi
55cda8:	89 1e                	mov    %ebx,(%esi)
55cdaa:	5e                   	pop    %esi
55cdab:	5b                   	pop    %ebx
55cdac:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55cdaf:	33 cd                	xor    %ebp,%ecx
55cdb1:	e8 24 47 08 00       	call   0x5e14da
55cdb6:	8b e5                	mov    %ebp,%esp
55cdb8:	5d                   	pop    %ebp
55cdb9:	c3                   	ret
55cdba:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55cdbd:	8b 45 f4             	mov    -0xc(%ebp),%eax
55cdc0:	33 cd                	xor    %ebp,%ecx
55cdc2:	89 3e                	mov    %edi,(%esi)
55cdc4:	5f                   	pop    %edi
55cdc5:	5e                   	pop    %esi
55cdc6:	5b                   	pop    %ebx
55cdc7:	e8 0e 47 08 00       	call   0x5e14da
55cdcc:	8b e5                	mov    %ebp,%esp
55cdce:	5d                   	pop    %ebp
55cdcf:	c3                   	ret
55cdd0:	55                   	push   %ebp
55cdd1:	8b ec                	mov    %esp,%ebp
55cdd3:	83 ec 24             	sub    $0x24,%esp
55cdd6:	8b 55 08             	mov    0x8(%ebp),%edx
55cdd9:	53                   	push   %ebx
55cdda:	56                   	push   %esi
55cddb:	57                   	push   %edi
55cddc:	8a 42 3b             	mov    0x3b(%edx),%al
55cddf:	33 ff                	xor    %edi,%edi
55cde1:	33 f6                	xor    %esi,%esi
55cde3:	89 7d fc             	mov    %edi,-0x4(%ebp)
55cde6:	8d 5f 07             	lea    0x7(%edi),%ebx
55cde9:	3c 01                	cmp    $0x1,%al
55cdeb:	76 19                	jbe    0x55ce06
55cded:	0f b6 c0             	movzbl %al,%eax
55cdf0:	50                   	push   %eax
55cdf1:	e8 4a e6 ff ff       	call   0x55b440
55cdf6:	8b 55 08             	mov    0x8(%ebp),%edx
55cdf9:	8b f8                	mov    %eax,%edi
55cdfb:	83 c4 04             	add    $0x4,%esp
55cdfe:	89 7d fc             	mov    %edi,-0x4(%ebp)
55ce01:	85 ff                	test   %edi,%edi
55ce03:	0f 44 f3             	cmove  %ebx,%esi
55ce06:	33 c9                	xor    %ecx,%ecx
55ce08:	89 4d e8             	mov    %ecx,-0x18(%ebp)
55ce0b:	85 f6                	test   %esi,%esi
55ce0d:	0f 85 62 01 00 00    	jne    0x55cf75
55ce13:	89 4d ec             	mov    %ecx,-0x14(%ebp)
55ce16:	8d 5a 40             	lea    0x40(%edx),%ebx
55ce19:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
55ce20:	0f b6 42 3b          	movzbl 0x3b(%edx),%eax
55ce24:	3b c8                	cmp    %eax,%ecx
55ce26:	0f 8d 64 01 00 00    	jge    0x55cf90
55ce2c:	8b 43 1c             	mov    0x1c(%ebx),%eax
55ce2f:	85 c0                	test   %eax,%eax
55ce31:	0f 84 29 01 00 00    	je     0x55cf60
55ce37:	99                   	cltd
55ce38:	33 ff                	xor    %edi,%edi
55ce3a:	89 45 f0             	mov    %eax,-0x10(%ebp)
55ce3d:	b9 10 00 00 00       	mov    $0x10,%ecx
55ce42:	8b c2                	mov    %edx,%eax
55ce44:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
55ce4b:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
55ce52:	89 45 e4             	mov    %eax,-0x1c(%ebp)
55ce55:	3b f8                	cmp    %eax,%edi
55ce57:	7f 21                	jg     0x55ce7a
55ce59:	8b 55 f0             	mov    -0x10(%ebp),%edx
55ce5c:	7c 04                	jl     0x55ce62
55ce5e:	3b ca                	cmp    %edx,%ecx
55ce60:	73 18                	jae    0x55ce7a
55ce62:	8b c7                	mov    %edi,%eax
55ce64:	0f a4 cf 04          	shld   $0x4,%ecx,%edi
55ce68:	40                   	inc    %eax
55ce69:	c1 e1 04             	shl    $0x4,%ecx
55ce6c:	3b 7d e4             	cmp    -0x1c(%ebp),%edi
55ce6f:	7c f3                	jl     0x55ce64
55ce71:	7f 04                	jg     0x55ce77
55ce73:	3b ca                	cmp    %edx,%ecx
55ce75:	72 ed                	jb     0x55ce64
55ce77:	89 45 f8             	mov    %eax,-0x8(%ebp)
55ce7a:	8b 43 1c             	mov    0x1c(%ebx),%eax
55ce7d:	0f 57 c0             	xorps  %xmm0,%xmm0
55ce80:	66 0f 13 45 dc       	movlpd %xmm0,-0x24(%ebp)
55ce85:	83 f8 10             	cmp    $0x10,%eax
55ce88:	7f 19                	jg     0x55cea3
55ce8a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
55ce8d:	51                   	push   %ecx
55ce8e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
55ce91:	51                   	push   %ecx
55ce92:	50                   	push   %eax
55ce93:	53                   	push   %ebx
55ce94:	e8 a7 e4 ff ff       	call   0x55b340
55ce99:	8b 55 f4             	mov    -0xc(%ebp),%edx
55ce9c:	83 c4 10             	add    $0x10,%esp
55ce9f:	8b f0                	mov    %eax,%esi
55cea1:	eb 7f                	jmp    0x55cf22
55cea3:	6a 10                	push   $0x10
55cea5:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
55ceac:	e8 8f e5 ff ff       	call   0x55b440
55ceb1:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
55ceb4:	8b d0                	mov    %eax,%edx
55ceb6:	83 c4 04             	add    $0x4,%esp
55ceb9:	89 55 f0             	mov    %edx,-0x10(%ebp)
55cebc:	85 d2                	test   %edx,%edx
55cebe:	b8 07 00 00 00       	mov    $0x7,%eax
55cec3:	0f 44 f0             	cmove  %eax,%esi
55cec6:	33 ff                	xor    %edi,%edi
55cec8:	85 c9                	test   %ecx,%ecx
55ceca:	7e 56                	jle    0x55cf22
55cecc:	0f 1f 40 00          	nopl   0x0(%eax)
55ced0:	85 f6                	test   %esi,%esi
55ced2:	75 7a                	jne    0x55cf4e
55ced4:	2b cf                	sub    %edi,%ecx
55ced6:	89 75 e4             	mov    %esi,-0x1c(%ebp)
55ced9:	b8 10 00 00 00       	mov    $0x10,%eax
55cede:	3b c8                	cmp    %eax,%ecx
55cee0:	0f 4c c1             	cmovl  %ecx,%eax
55cee3:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
55cee6:	51                   	push   %ecx
55cee7:	8d 4d dc             	lea    -0x24(%ebp),%ecx
55ceea:	51                   	push   %ecx
55ceeb:	50                   	push   %eax
55ceec:	53                   	push   %ebx
55ceed:	e8 4e e4 ff ff       	call   0x55b340
55cef2:	8b f0                	mov    %eax,%esi
55cef4:	83 c4 10             	add    $0x10,%esp
55cef7:	85 f6                	test   %esi,%esi
55cef9:	75 1a                	jne    0x55cf15
55cefb:	ff 75 e4             	push   -0x1c(%ebp)
55cefe:	ff 75 f0             	push   -0x10(%ebp)
55cf01:	ff 75 f4             	push   -0xc(%ebp)
55cf04:	ff 75 f8             	push   -0x8(%ebp)
55cf07:	53                   	push   %ebx
55cf08:	e8 c3 f5 ff ff       	call   0x55c4d0
55cf0d:	83 c4 14             	add    $0x14,%esp
55cf10:	8b f0                	mov    %eax,%esi
55cf12:	ff 45 f4             	incl   -0xc(%ebp)
55cf15:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
55cf18:	83 c7 10             	add    $0x10,%edi
55cf1b:	3b f9                	cmp    %ecx,%edi
55cf1d:	7c b1                	jl     0x55ced0
55cf1f:	8b 55 f0             	mov    -0x10(%ebp),%edx
55cf22:	85 f6                	test   %esi,%esi
55cf24:	75 2b                	jne    0x55cf51
55cf26:	8b 7d fc             	mov    -0x4(%ebp),%edi
55cf29:	85 ff                	test   %edi,%edi
55cf2b:	74 1a                	je     0x55cf47
55cf2d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
55cf30:	8b 47 0c             	mov    0xc(%edi),%eax
55cf33:	83 c1 30             	add    $0x30,%ecx
55cf36:	03 c1                	add    %ecx,%eax
55cf38:	50                   	push   %eax
55cf39:	52                   	push   %edx
55cf3a:	53                   	push   %ebx
55cf3b:	e8 40 da ff ff       	call   0x55a980
55cf40:	83 c4 0c             	add    $0xc,%esp
55cf43:	8b f0                	mov    %eax,%esi
55cf45:	eb 16                	jmp    0x55cf5d
55cf47:	8b fa                	mov    %edx,%edi
55cf49:	89 7d fc             	mov    %edi,-0x4(%ebp)
55cf4c:	eb 0f                	jmp    0x55cf5d
55cf4e:	8b 55 f0             	mov    -0x10(%ebp),%edx
55cf51:	52                   	push   %edx
55cf52:	e8 99 e1 ff ff       	call   0x55b0f0
55cf57:	8b 7d fc             	mov    -0x4(%ebp),%edi
55cf5a:	83 c4 04             	add    $0x4,%esp
55cf5d:	8b 55 08             	mov    0x8(%ebp),%edx
55cf60:	ff 45 e8             	incl   -0x18(%ebp)
55cf63:	83 c3 48             	add    $0x48,%ebx
55cf66:	83 45 ec 38          	addl   $0x38,-0x14(%ebp)
55cf6a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
55cf6d:	85 f6                	test   %esi,%esi
55cf6f:	0f 84 ab fe ff ff    	je     0x55ce20
55cf75:	57                   	push   %edi
55cf76:	e8 75 e1 ff ff       	call   0x55b0f0
55cf7b:	8b 45 0c             	mov    0xc(%ebp),%eax
55cf7e:	83 c4 04             	add    $0x4,%esp
55cf81:	5f                   	pop    %edi
55cf82:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
55cf88:	8b c6                	mov    %esi,%eax
55cf8a:	5e                   	pop    %esi
55cf8b:	5b                   	pop    %ebx
55cf8c:	8b e5                	mov    %ebp,%esp
55cf8e:	5d                   	pop    %ebp
55cf8f:	c3                   	ret
55cf90:	85 f6                	test   %esi,%esi
55cf92:	75 e1                	jne    0x55cf75
55cf94:	8b 45 0c             	mov    0xc(%ebp),%eax
55cf97:	89 38                	mov    %edi,(%eax)
55cf99:	8b c6                	mov    %esi,%eax
55cf9b:	5f                   	pop    %edi
55cf9c:	5e                   	pop    %esi
55cf9d:	5b                   	pop    %ebx
55cf9e:	8b e5                	mov    %ebp,%esp
55cfa0:	5d                   	pop    %ebp
55cfa1:	c3                   	ret
55cfa2:	cc                   	int3
55cfa3:	cc                   	int3
55cfa4:	cc                   	int3
55cfa5:	cc                   	int3
55cfa6:	cc                   	int3
55cfa7:	cc                   	int3
55cfa8:	cc                   	int3
55cfa9:	cc                   	int3
55cfaa:	cc                   	int3
55cfab:	cc                   	int3
55cfac:	cc                   	int3
55cfad:	cc                   	int3
55cfae:	cc                   	int3
55cfaf:	cc                   	int3
55cfb0:	55                   	push   %ebp
55cfb1:	8b ec                	mov    %esp,%ebp
55cfb3:	83 ec 10             	sub    $0x10,%esp